www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - [Phoronix] D Language Still Showing Promise, Advancements

reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
http://www.reddit.com/r/programming/comments/1gpyor/phoronix_d_language_still_showing_promise/

Andrei
Jun 20 2013
next sibling parent reply "Adam D. Ruppe" <destructionator gmail.com> writes:
Is it just me or has Rust completely displaced Go as the go-to 
'why D when we have X' thing on the reddit?

It seems like not even a full year ago, Rust was rarely mentioned 
and all the versus hype was about Go. Will Rust fade away from D 
threads a year from now?
Jun 20 2013
next sibling parent reply "bearophile" <bearophileHUGS lycos.com> writes:
Adam D. Ruppe:

 Is it just me or has Rust completely displaced Go as the go-to 
 'why D when we have X' thing on the reddit?

 It seems like not even a full year ago, Rust was rarely 
 mentioned and all the versus hype was about Go.
Go now is not advertised as a system language, and I think it has found its niche, sufficiently different from D. So there's much less reason for them to be discussed together. One year ago Rust was less developed compared to now. And Rust is meant to be a low level system language (from what I am seeing lately, it seems Rust is gaining a niche at a level lower than D). In threads where both Rust and D are discussed, I suggest everybody to not express bad opinions in general about Rust. If you want to criticize Rust then I suggest to write only on very specific features at a time. Bye, bearophile
Jun 20 2013
next sibling parent reply "w0rp" <devw0rp gmail.com> writes:
The Rust comparisons should end. There is nothing to be gained 
from it.
Jun 20 2013
parent reply "Craig Dillabaugh" <cdillaba cg.scs.carleton.ca> writes:
On Thursday, 20 June 2013 at 17:51:11 UTC, w0rp wrote:
 The Rust comparisons should end. There is nothing to be gained 
 from it.
It was not the D supporters on the Reddit discussion who brought Rust into the mix. Although I agree with you that trashing another language, whatever it may be (maybe C++ is fair game), isn't a good way to sell D. But what should be done if someone says "why choose D over Rust"? You can't just reply, "Oh, I guess you are right, Rust is better ... I am heading back to the D forum now!"
Jun 20 2013
parent reply "TommiT" <tommitissari hotmail.com> writes:
On Thursday, 20 June 2013 at 18:44:43 UTC, Craig Dillabaugh wrote:
 On Thursday, 20 June 2013 at 17:51:11 UTC, w0rp wrote:
 The Rust comparisons should end. There is nothing to be gained 
 from it.
It was not the D supporters on the Reddit discussion who brought Rust into the mix. Although I agree with you that trashing another language, whatever it may be (maybe C++ is fair game), isn't a good way to sell D. But what should be done if someone says "why choose D over Rust"? You can't just reply, "Oh, I guess you are right, Rust is better ... I am heading back to the D forum now!"
Currently, I think they're discussing if it's possible to add mutable external iterators to Rust, which doesn't seem possible, because the strong memory safety Rust has chosen to operate within is quite restrictive. And if you can't have external iteration, you can't have generic algorithms, and no proper generic programming. I think that's a pretty good argument against Rust at the moment, but who knows, maybe they can figure it out. There's some info: http://www.marshut.com/nxyuu/the-future-of-iterators-in-rust.html But I wouldn't go around bashing Rust, it seems a very nice language.
Jun 20 2013
next sibling parent reply "Jonathan M Davis" <jmdavisProg gmx.com> writes:
On Thursday, June 20, 2013 21:05:46 TommiT wrote:
 Currently, I think they're discussing if it's possible to add
 mutable external iterators to Rust, which doesn't seem possible,
 because the strong memory safety Rust has chosen to operate
 within is quite restrictive. And if you can't have external
 iteration, you can't have generic algorithms, and no proper
 generic programming. I think that's a pretty good argument
 against Rust at the moment, but who knows, maybe they can figure
 it out. There's some info:
 http://www.marshut.com/nxyuu/the-future-of-iterators-in-rust.html
 
 But I wouldn't go around bashing Rust, it seems a very nice
 language.
I haven't really looked into Rust, but from everything I've heard, it sounds like it's still very much in research and development mode, so I don't think that we can really have any clue where it'll be when it's actually ready for production use. It sounds like they have a lot of interesting ideas that they're trying out, which may or may not pan out, and we'll just have to wait and see where they end up. - Jonathan M Davis
Jun 20 2013
next sibling parent reply "Michael" <pr m1xa.com> writes:
 From version to another version a changes are very huge in Rust 
even in comparison with D.
Also 3 types of pointers scares me.
Version 1.0 promises be usable for wide public. Now on windows 
it's very slow and buggy.
Jun 20 2013
parent reply "Adam D. Ruppe" <destructionator gmail.com> writes:
On Thursday, 20 June 2013 at 20:47:19 UTC, Michael wrote:
 Also 3 types of pointers scares me.
This actually doesn't scare me because it is kinda useful for certain situations. However, I don't think it needs to be built into the language because library types can do the same kind of thing.
Jun 20 2013
parent reply Marco Leise <Marco.Leise gmx.de> writes:
Am Thu, 20 Jun 2013 22:53:13 +0200
schrieb "Adam D. Ruppe" <destructionator gmail.com>:

 On Thursday, 20 June 2013 at 20:47:19 UTC, Michael wrote:
 Also 3 types of pointers scares me.
This actually doesn't scare me because it is kinda useful for certain situations. However, I don't think it needs to be built into the language because library types can do the same kind of thing.
Yes, once you know about UniquePtr, NotNullable, RefCounted and such, 3 pointer types isn't scary are all. But Rust pointers don't map 100% to library types. They have compiler support which removes the syntactical noise of templates and makes them behave more natural. For example in D everything becomes a struct once you add functionality around it and creates corner cases that aren't supported. I wonder how many D programmers actually use Phobos' library pointer types. -- Marco
Jun 23 2013
next sibling parent "Adam D. Ruppe" <destructionator gmail.com> writes:
On Sunday, 23 June 2013 at 15:30:16 UTC, Marco Leise wrote:
 They have compiler support which removes the syntactical noise 
 of
 templates and makes them behave more natural.
Indeed. I don't mind the syntax (actually, I prefer RefCounted!T to ~T or whatever symbol rust uses) but there's some other things their compiler does like forbid reassigning a refcounted thing if you have a pointer to it still in scope that D can't do in the library. But the library types can do the bulk of it, and disabling certain problematic parts of the struct helps keep it sane.
 I wonder how many D programmers actually use Phobos' library
 pointer types.
Ironically, I don't, but I do use similar recreations for certain tasks.
Jun 23 2013
prev sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Sunday, 23 June 2013 at 15:30:16 UTC, Marco Leise wrote:
 Am Thu, 20 Jun 2013 22:53:13 +0200
 schrieb "Adam D. Ruppe" <destructionator gmail.com>:

 On Thursday, 20 June 2013 at 20:47:19 UTC, Michael wrote:
 Also 3 types of pointers scares me.
This actually doesn't scare me because it is kinda useful for certain situations. However, I don't think it needs to be built into the language because library types can do the same kind of thing.
Yes, once you know about UniquePtr, NotNullable, RefCounted and such, 3 pointer types isn't scary are all. But Rust pointers don't map 100% to library types. They have compiler support which removes the syntactical noise of templates and makes them behave more natural. For example in D everything becomes a struct once you add functionality around it and creates corner cases that aren't supported. I wonder how many D programmers actually use Phobos' library pointer types.
We already have pointer and references, that makes 2.
Jun 24 2013
prev sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
On Thursday, 20 June 2013 at 19:24:52 UTC, Jonathan M Davis wrote:
 On Thursday, June 20, 2013 21:05:46 TommiT wrote:
 Currently, I think they're discussing if it's possible to add
 mutable external iterators to Rust, which doesn't seem 
 possible,
 because the strong memory safety Rust has chosen to operate
 within is quite restrictive. And if you can't have external
 iteration, you can't have generic algorithms, and no proper
 generic programming. I think that's a pretty good argument
 against Rust at the moment, but who knows, maybe they can 
 figure
 it out. There's some info:
 http://www.marshut.com/nxyuu/the-future-of-iterators-in-rust.html
 
 But I wouldn't go around bashing Rust, it seems a very nice
 language.
I haven't really looked into Rust, but from everything I've heard, it sounds like it's still very much in research and development mode, so I don't think that we can really have any clue where it'll be when it's actually ready for production use. It sounds like they have a lot of interesting ideas that they're trying out, which may or may not pan out, and we'll just have to wait and see where they end up. - Jonathan M Davis
Samsung just placed a few of their developers into the Rust team. Their are contributing to Rust development, but the main goal is the improvement of Servo, the web browser that is being written in Rust and used as test field for the language. Why Samsung got involved is anyone's guess, but it might have to do with their handsets, Tizen, or whatever. -- Paulo
Jun 21 2013
prev sibling parent =?UTF-8?B?QWxpIMOHZWhyZWxp?= <acehreli yahoo.com> writes:
On 06/20/2013 12:05 PM, TommiT wrote:

 no proper generic programming. I think that's a
 pretty good argument against Rust at the moment, but who knows, maybe
 they can figure it out.
Interestingly, I have heard the exact same thing about Go.
 But I wouldn't go around bashing Rust, it seems a very nice language.
As far as I understand, I think it is the same with Go. :) Ali
Jun 20 2013
prev sibling parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
On Thursday, 20 June 2013 at 14:59:33 UTC, bearophile wrote:
 Adam D. Ruppe:

 Is it just me or has Rust completely displaced Go as the go-to 
 'why D when we have X' thing on the reddit?

 It seems like not even a full year ago, Rust was rarely 
 mentioned and all the versus hype was about Go.
Go now is not advertised as a system language, and I think it has found its niche, sufficiently different from D. So there's much less reason for them to be discussed together. One year ago Rust was less developed compared to now. And Rust is meant to be a low level system language (from what I am seeing lately, it seems Rust is gaining a niche at a level lower than D). In threads where both Rust and D are discussed, I suggest everybody to not express bad opinions in general about Rust. If you want to criticize Rust then I suggest to write only on very specific features at a time. Bye, bearophile
Go reminds me of the days I used to play around with Native Oberon, given its Oberon-2 influences. On my view it is a bit too opinionated. Rust appeals to my ML soul, given the time I spend with Caml Light, Haskell and OCaml. I used to dislike the pointer syntax, now I would say I can live with it. D is C++ done right and its design pleases me. I like all three of them and sadly can't use any of them on a JVM/.NET enterprise world I live on. Plus all of them have a very nice feature, direct compilation to native code. Maybe, just maybe, the increase on their usage can make the industry move slowly back to native code, as it did back in the day P-Code VMs were eventually abandoned. That is the main reason why nowadays I try to think several times, before posting about the known issues Go has. As a language geek I think all might have their place. -- Paulo
Jun 21 2013
parent reply "qznc" <qznc web.de> writes:
On Friday, 21 June 2013 at 07:04:41 UTC, Paulo Pinto wrote:
 As a language geek I think all might have their place.
Me too. The only-thread-local-garbage-collection of Rust is quite interesting in my opinion. Since many-cores (e.g. Xeon Phi) are coming, a stop-the-world garbage collector might become unacceptable. If this is a good solution will be seen (maybe). I certainly do not want D to adopt this experimental feature. Let them do the research. ;)
Jun 21 2013
next sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-06-21 14:11, qznc wrote:

 Me too.

 The only-thread-local-garbage-collection of Rust is quite interesting in
 my opinion. Since many-cores (e.g. Xeon Phi) are coming, a
 stop-the-world garbage collector might become unacceptable. If this is a
 good solution will be seen (maybe). I certainly do not want D to adopt
 this experimental feature. Let them do the research. ;)
The garbage collector in Mac OS X, which has been around for a while, is a thread-local collector. It contains a global collector as well for the global data. -- /Jacob Carlborg
Jun 22 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Friday, 21 June 2013 at 12:11:18 UTC, qznc wrote:
 On Friday, 21 June 2013 at 07:04:41 UTC, Paulo Pinto wrote:
 As a language geek I think all might have their place.
Me too. The only-thread-local-garbage-collection of Rust is quite interesting in my opinion. Since many-cores (e.g. Xeon Phi) are coming, a stop-the-world garbage collector might become unacceptable. If this is a good solution will be seen (maybe). I certainly do not want D to adopt this experimental feature. Let them do the research. ;)
That isn't experimental, OCaml does that for ages and it is godamn efficient.
Jun 24 2013
prev sibling parent Marco Leise <Marco.Leise gmx.de> writes:
Am Fri, 21 Jun 2013 14:11:17 +0200
schrieb "qznc" <qznc web.de>:

 The only-thread-local-garbage-collection of Rust is quite 
 interesting in my opinion. Since many-cores (e.g. Xeon Phi) are 
 coming, a stop-the-world garbage collector might become 
 unacceptable. If this is a good solution will be seen (maybe). I 
 certainly do not want D to adopt this experimental feature. Let 
 them do the research. ;)
Rust is called rust exactly because they don't use bleeding edge features in the language. -- Marco
Jun 25 2013
prev sibling parent reply "Dicebot" <public dicebot.lv> writes:
On Thursday, 20 June 2013 at 14:37:51 UTC, Adam D. Ruppe wrote:
 Is it just me or has Rust completely displaced Go as the go-to 
 'why D when we have X' thing on the reddit?

 It seems like not even a full year ago, Rust was rarely 
 mentioned and all the versus hype was about Go. Will Rust fade 
 away from D threads a year from now?
Hype is usual reaction to anything new and uncertain. More interesting question is "what will be left after hype ends?". Go has fit its narrow niche and it became obvious that it won't directly compete to something as wide-purpose as D. Lot of people like opinionated restrictions and minimalistic design but that does not deal well with generic usage. However it has somewhat taken away one of many possible D niches. It is close to impossible to reason about possible niche Rust may finally find because it is so new and in early design stage. However, its toolset is already much more rich than Go one and in that sense it provides more interesting competitor to D. I am quite sure it will fade away from D threads soon, but will it fade away from D landscape - no idea :)
Jun 21 2013
parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
On Friday, 21 June 2013 at 10:10:31 UTC, Dicebot wrote:
 On Thursday, 20 June 2013 at 14:37:51 UTC, Adam D. Ruppe wrote:
 Is it just me or has Rust completely displaced Go as the go-to 
 'why D when we have X' thing on the reddit?

 It seems like not even a full year ago, Rust was rarely 
 mentioned and all the versus hype was about Go. Will Rust fade 
 away from D threads a year from now?
Hype is usual reaction to anything new and uncertain. More interesting question is "what will be left after hype ends?". Go has fit its narrow niche and it became obvious that it won't directly compete to something as wide-purpose as D. Lot of people like opinionated restrictions and minimalistic design but that does not deal well with generic usage. However it has somewhat taken away one of many possible D niches. It is close to impossible to reason about possible niche Rust may finally find because it is so new and in early design stage. However, its toolset is already much more rich than Go one and in that sense it provides more interesting competitor to D. I am quite sure it will fade away from D threads soon, but will it fade away from D landscape - no idea :)
It all depends what Mozilla and Samsung do with the language. If you have powerful entities pushing a language down developers throats, it will get used. That is how many mainstream languages got where they are now. -- Paulo
Jun 21 2013
next sibling parent reply "Dicebot" <public dicebot.lv> writes:
On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
 If you have powerful entities pushing a language down 
 developers throats, it will get used. That is how many 
 mainstream languages got where they are now.
It will be used if its capabilities suit target domain. In other standard in many places. And even Google influence won't bring Go there. Same goes for Rust - I have no doubts it will get used if it technically can be used. But the latter can't be clear right now.
Jun 21 2013
parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
On Friday, 21 June 2013 at 12:01:31 UTC, Dicebot wrote:
 On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
 If you have powerful entities pushing a language down 
 developers throats, it will get used. That is how many 
 mainstream languages got where they are now.
It will be used if its capabilities suit target domain. In de-facto standard in many places.
This is why Microsoft killed C in their tooling. Unless they change their mind, C++ will be the lowest you can get in a few Visual Studio interactions.
 And even Google influence won't bring Go there.
This will change the day Android requires Go instead of Java. Not sure why they still fighting with Oracle, but who know what goes on enterprise top management.
 Same goes for Rust - I have no doubts it will get used if it 
 technically can be used. But the latter can't be clear right 
 now.
Agreed.
Jun 21 2013
parent reply "eles" <eles eles.com> writes:
On Friday, 21 June 2013 at 13:16:07 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 12:01:31 UTC, Dicebot wrote:
 On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
This is why Microsoft killed C in their tooling. Unless they change their mind, C++ will be the lowest you can get in a few Visual Studio interactions.
As long as you still can wrap everything in extern "C" {} for mangling purposes and that you have all those standard C headers... it is C++ only by the name.
Jun 21 2013
parent reply "Paulo Pinto" <pjmlp progtools.org> writes:
On Friday, 21 June 2013 at 13:52:58 UTC, eles wrote:
 On Friday, 21 June 2013 at 13:16:07 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 12:01:31 UTC, Dicebot wrote:
 On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
This is why Microsoft killed C in their tooling. Unless they change their mind, C++ will be the lowest you can get in a few Visual Studio interactions.
As long as you still can wrap everything in extern "C" {} for mangling purposes and that you have all those standard C headers... it is C++ only by the name.
That is C++ nevertheless. It would be same issue if I present you a D or Objective-C code snippet where the syntax overlaps with the one from C. As anecdote, back when MS-DOS 5 was the latest version of MS-DOS, I had access to a C++ application composed of plain functions with pure asm bodies in a .cpp files. -- Paulo
Jun 21 2013
parent reply "eles" <eles eles.com> writes:
On Friday, 21 June 2013 at 14:16:44 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 13:52:58 UTC, eles wrote:
 On Friday, 21 June 2013 at 13:16:07 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 12:01:31 UTC, Dicebot wrote:
 On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
 As anecdote, back when MS-DOS 5 was the latest version of
OMG, did those days really exist? I only knew 6.22...
Jun 21 2013
parent reply Paulo Pinto <pjmlp progtools.org> writes:
Am 21.06.2013 16:35, schrieb eles:
 On Friday, 21 June 2013 at 14:16:44 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 13:52:58 UTC, eles wrote:
 On Friday, 21 June 2013 at 13:16:07 UTC, Paulo Pinto wrote:
 On Friday, 21 June 2013 at 12:01:31 UTC, Dicebot wrote:
 On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
 As anecdote, back when MS-DOS 5 was the latest version of
OMG, did those days really exist? I only knew 6.22...
My first MS-DOS version was 3.3 :)
Jun 21 2013
parent Walter Bright <newshound2 digitalmars.com> writes:
On 6/21/2013 8:41 AM, Paulo Pinto wrote:
 My first MS-DOS version was 3.3 :)
1.1 here!
Jun 21 2013
prev sibling parent "SomeDude" <lovelydear mailmetrash.com> writes:
On Friday, 21 June 2013 at 11:13:49 UTC, Paulo Pinto wrote:
 It all depends what Mozilla and Samsung do with the language.

 If you have powerful entities pushing a language down 
 developers throats, it will get used. That is how many 
 mainstream languages got where they are now.

 --
 Paulo
I wonder why hasn't any *big* corp backed up D so far.
Jun 24 2013
prev sibling parent reply "deadalnix" <deadalnix gmail.com> writes:
On Thursday, 20 June 2013 at 11:29:13 UTC, Andrei Alexandrescu 
wrote:
 http://www.reddit.com/r/programming/comments/1gpyor/phoronix_d_language_still_showing_promise/

 Andrei
The article is quite void of any real content. Still, it means that D is gaining traction, which is always a good news !
Jun 20 2013
parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 6/21/13, deadalnix <deadalnix gmail.com> wrote:
 The article is quite void of any real content. Still, it means
 that D is gaining traction, which is always a good news !
Yeah, I was gonna say despite it being nice for D being mentioned, nowadays these popular websites do nothing more than aggregate content. There's no actual journalism or research in that post.
Jun 20 2013