Status of D and Concurrency
Hi all. Some of you might remember me from this news group some five or six years ago; since then I've been doing mostly Java but I've had my eye on D for a new project I'm contemplating. It appears that D 2 has settled compared to its former state of flux and that the standard library situation has also settled somewhat. The main thing I'm looking for and don't see right now is out-of-box work queue and concurrent collections support. If this can be accomplished easily I'd love to know how (think of Java's concurrency infrastructure to get an idea what I'm looking for). If it can't I'd like to do something to make it workable; it would be nice to know what has been implemented, what needs to be implemented, and any conventions/protocols that have been put in place. On a somewhat related note: I was looking through the language spec and didn't see any information on what exactly 'shared' does. If I had to guess I'd say it was supposed to guarantee some degree of atomicity which would be particularly useful to me but I don't see that spelled out anywhere. Any help you guys can provide would be greatly appreciated. It's nice to be back. Ameer
Re: Turkish 'I's can't D either
"Daniel Keep" wrote in message news:h70aup$cj...@digitalmars.com... > >One thing I think the typesystem should be used more for is attaching > more semantic information to data. So maybe the solution is to > introduce something like a Text type that also stores the language of > the text. Then the library methods WILL have the right context to know > how to act. > > Just a thought. If I'm understanding you correctly, then the hash function would treat Turkish i's the same as any other letter i, because the focus is on internal processing, but writef and friends would make the distinction because the text is meant to be read. Am I right? Ameer
Re: What's the current state of D?
"Walter Bright" wrote in message news:guakkp$285...@digitalmars.com... > Ameer Armaly wrote: >> I see. What about the actual "standard library bits" for common tasks >> like file I/O, strings, date and time, filesystem manipulation, etc. My >> main gripe is having two regularly accepted libraries that do the same >> extremely common functions; it makes us look unpolished, especially when >> there is the "community" versus "official" difference I mentioned >> earlier. Why not just merge the two libraries into the one D standard >> library and be done with it? > > That's being done for D2. It is not for D1, as that would break everyone's > code. Ah. If we're aiming for one standard library, then I'll shut up and try and understand const.
Re: What's the current state of D?
"Walter Bright" wrote in message news:guafcv$1tm...@digitalmars.com... > Ameer Armaly wrote: >>> It has been bashed out for D2. Doing such changes to D1 will break >>> everyone's D1 code, which destroys its mission of being stable. >> Really? I was under the impression that Tango will be ported to D2 to >> continue the battle of standard libs but if I'm mistaken, then it's a lot >> better than I originally figured. > > D2 has the "druntime" core which is designed to be the common root of > Phobos and Tango. Switching to it involved a lot of changes to Phobos that > broke existing user code. I see. What about the actual "standard library bits" for common tasks like file I/O, strings, date and time, filesystem manipulation, etc. My main gripe is having two regularly accepted libraries that do the same extremely common functions; it makes us look unpolished, especially when there is the "community" versus "official" difference I mentioned earlier. Why not just merge the two libraries into the one D standard library and be done with it? I have yet to see a language with two standard libraries like we have now. [1] Thanks though for what's already been done. Ameer [1] I haven't really seen that many though- probably about a dozen.
Re: What's the current state of D?
"Walter Bright" wrote in message news:gua3u3$19c...@digitalmars.com... > Ameer Armaly wrote: >> Yes. This is the showstopper for me and what caused me to quietly walk >> away from D to begin with. In my opinion the fact that having two >> runtimes is not only tolerable but acceptable as normal has and will >> continue to hurt D1. We have Phobos, the "official" runtime and then we >> have Tango, the "community" runtime. Moreover having two runtimes casts >> doubt on the state of D as a whole; if we can't even decide on a uniform >> runtime then people will wonder what other unknown traps of >> incompleteness are in store. The fact that nobody bothered to work all >> this out makes perfect sense- it's a lot more fun to be hashing out new >> features- but if we intend to gain some semblance of mainstream respect >> then it will be much easier with a single robust runtime. > > It has been bashed out for D2. Doing such changes to D1 will break > everyone's D1 code, which destroys its mission of being stable. Really? I was under the impression that Tango will be ported to D2 to continue the battle of standard libs but if I'm mistaken, then it's a lot better than I originally figured.
Re: What's the current state of D?
"Leandro Lucarella" wrote in message news:20090509161148.ga23...@homero.springfield.home... > The Tango vs. Phobos is still a *BIG* issue for D1. I think don't > addressing that is a huge error. It's only hurting D1 and preventing its > adoption. > Yes. This is the showstopper for me and what caused me to quietly walk away from D to begin with. In my opinion the fact that having two runtimes is not only tolerable but acceptable as normal has and will continue to hurt D1. We have Phobos, the "official" runtime and then we have Tango, the "community" runtime. Moreover having two runtimes casts doubt on the state of D as a whole; if we can't even decide on a uniform runtime then people will wonder what other unknown traps of incompleteness are in store. The fact that nobody bothered to work all this out makes perfect sense- it's a lot more fun to be hashing out new features- but if we intend to gain some semblance of mainstream respect then it will be much easier with a single robust runtime. Ameer
What's the current state of D?
Hi all. When I last used D a couple years ago, 2.0 was the experimental branch and 1.0 was stable. Now that I have a little time on my hands I'm wondering: what is the current landscape? Is 2.0 approaching any sort of stability? Are there still two competing runtime libraries or have they been merged? Basically I want to know if it's worth using 2.0 for anything of importance or is it still in flux? Thanks, Ameer