Any chance to call Tango as Extended Standard Library

Don nospam at nospam.com
Fri Jan 23 23:51:20 PST 2009


Lars Ivar Igesund wrote:
> Don wrote:
> 
>> John Reimer wrote:
>>> Hello Johan,
>>>
>>>
>>>> As a user of D primarily and of the standard libraries secondly I see
>>>> this reluctance to solve the library situation as the single biggest
>>>> threat to D. It creates a division in the community and an uncertainty
>>>> of which library to base my own libraries on. If I use one and the
>>>> other wins the competition I have to redo a lot of work. It's also a
>>>> headache when distributing code as I don't know which functions and
>>>> packages I can assume exists.
>>>>
>>>
>>> I hear you.   But the argument against this would probably be that you
>>> would not have to redo all your work... you just start integrating the
>>> use of the other (more popular) library in your work (since they have
>>> common runtimes). While this is convenient, yet it would seem to be
>>> cumbersome.  Now projects will have dependencies on both full libraries
>>> including the libary that falls from favour (if that in fact happens).
>>>
>>> On the other hand, it wouldn't be so bad if one of Tango or Phobos
>>> became a 3rd-party/extension library (more suitably this should be
>>> Tango), in which case it would seem more natural and familiar to use it
>>> as an addon to the other library.
>>>
>>>
>>> -JJR
>>>
>>>
>> The other option (which I would prefer) is for druntime to get bigger,
>> and encompass more of the common code from both. So that both Phobos and
>> Tango became (crucial) extension libraries over a small core. And the
>> bigger that common core becomes, the smaller the library problem becomes.
> 
> druntime should certainly not become any bigger (in scope), as that would defeat the purpose of separating the runtime from userspace in the first place. The topic of common userspace functionality should be kept separate from the topic of druntime.
> 

I think you are confusing druntime (the project) with the D runtime. 
druntime includes the gc as well the runtime, though they are seperate.
I see no reason why including core modules in the druntime project would 
  destroy the seperation.

Really, this is entirely a question of naming.

core.XXX seems to me to be the perfect namespace, certainly for the key 
math modules which I'm most concerned about (std.math/(tango.math.Math, 
tango.math.IEEE), and possibly also the low-level bigint routines. These 
are all functionality which is closely tied to the compiler).



More information about the Digitalmars-d mailing list