www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - The proper case for D.

reply Steve Teale <steve.teale britseyeview.com> writes:
Can this group come up with a proper, sober (OK, I'm not), case for D.

This would clearly have to steer clear of the standard libraries, I can't see
how any outside observer is going to be impressed by the fact that we have two.

And D is a computer programming language. So we should deal with it as that
first.

Andrei's article had a lot of good points primarily revolving around the need
to concentrate on concurrency, but I suspect that we should probably stress the
basics.

When Bjarne Stroustrup was originally promoting C++, he made a strong point
that you could at least consider it to be a 'better C'. This point, it seemed
to me, was lost on many. Now we are looking for radical arguments as to why D
is a cool language. Maybe we should remember the basics, and concentrate less
on the vapor.

Bearophile made a counter-argument. But this also did not stress our basic
weaknesses. Most of us are using DMD, which on Windows uses a 20 year old
linker, and utilizes an antique object file format. Under Linux, it can't
produce the position-independent code that's required to create reliable shared
libraries.

Unless you use alpha-level code, you can't load arbitrary D modules at run-time.

There isn't a decent debugger for either Windows or Linux. There may never be
one if the potential authors see the constant focus on meta-programming - that
must make life hell for them.

I'm not advocating a return to D1, but I do want to see closure on D2, and an
ascent from the constant alpha state. Then after that, I'd like to see a more
formal system of RFCs for library proposals, and a recognized pattern for
voting on them so that anyone who kept up-to-date with the process would not be
surprised by what suddenly appeared in Phobos, or perhaps it should be the D
Standard Library (DSL).

When all that had happened I could forget computer programming and get on with
my woodwork relatively secure in the knowledge that I had chosen to support a
winner, and the Walter's efforts were not in vain.
Jun 19 2009
next sibling parent reply superdan <super dan.org> writes:
Steve Teale Wrote:

 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.
Jun 19 2009
next sibling parent reply grauzone <none example.net> writes:
superdan wrote:
 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

You just gave a flying fuck.
Jun 19 2009
parent superdan <super dan.org> writes:
grauzone Wrote:

 superdan wrote:
 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

You just gave a flying fuck.

negative. i stopped readin' after da first line. dat counts at most for a crawlin' fuck.
Jun 19 2009
prev sibling parent reply Steve Teale <steve.teale britseyeview.com> writes:
superdan Wrote:

 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

Love you man. You're on the spot! I have no excuse.
Jun 21 2009
parent reply superdan <super dan.org> writes:
Steve Teale Wrote:

 superdan Wrote:
 
 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

Love you man. You're on the spot! I have no excuse.

not shure u r bein' sarcastic but i'm a gonna take dat at face value. akshully steve u got an excuse. u and i r part of a larger social phenom. i saw many times in da group: sum'thin' good happens with d. then da group reacts negatively with da speed o' light. its like physix: ackshon and reackshon. walt adds features. den we bitch fuck them features, he has 3000 bugs up his ass. walt fixes bugs. den we bitch that not'n' new is cummin' down da pike. andre asks about ranges. we get motherfuckin' bikeshed fight. andre implements them ranges. we bitch about namez syntax and all shit up to the motherfuckin' wazoo. of course if we dun understand ranges dats his fault too. been busy work past week but saw good things. andreis book is on amazon so ppl know it's cummin'. then da case fer d comes out. loved it. even better reddit loves it. momentum iz there. den wat do we do. bearophile writes other side of the coin. what in the name of fuck is his problem. backstabbin' mo'fucker are da nicest words that cum 2 mind after racking 'n' waterboarding my brain. EXIT_SUCCESS up yer ass. den cums da proper case fer d. only good thing is sean's cumback o' da year. thanx sean. den cherry on da cake. finally grauzone. where therez any negative shit about d u bet grauzone is on it like flies on shit. so we get this piece of brain vomit. leave them threadz alone. focus all on rewritin' da windows linker. what an assfucked strategy dat iz. i bet soon ppl will say yeah d is a shitty language but hey it got a great linker. what da fuck. anyway steve. my point is we r part of some weird twilite zone. if d ever becumz successful theres gonna be murder in dis group.
Jun 21 2009
parent reply Pete O'dowd <respw1008 romulus.co.uk> writes:
superdan Wrote:

 Steve Teale Wrote:
 
 superdan Wrote:
 
 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

Love you man. You're on the spot! I have no excuse.

not shure u r bein' sarcastic but i'm a gonna take dat at face value. akshully steve u got an excuse. u and i r part of a larger social phenom. i saw many times in da group: sum'thin' good happens with d. then da group reacts negatively with da speed o' light. its like physix: ackshon and reackshon. walt adds features. den we bitch fuck them features, he has 3000 bugs up his ass. walt fixes bugs. den we bitch that not'n' new is cummin' down da pike. andre asks about ranges. we get motherfuckin' bikeshed fight. andre implements them ranges. we bitch about namez syntax and all shit up to the motherfuckin' wazoo. of course if we dun understand ranges dats his fault too. been busy work past week but saw good things. andreis book is on amazon so ppl know it's cummin'. then da case fer d comes out. loved it. even better reddit loves it. momentum iz there. den wat do we do. bearophile writes other side of the coin. what in the name of fuck is his problem. backstabbin' mo'fucker are da nicest words that cum 2 mind after racking 'n' waterboarding my brain. EXIT_SUCCESS up yer ass. den cums da proper case fer d. only good thing is sean's cumback o' da year. thanx sean. den cherry on da cake. finally grauzone. where therez any negative shit about d u bet grauzone is on it like flies on shit. so we get this piece of brain vomit. leave them threadz alone. focus all on rewritin' da windows linker. what an assfucked strategy dat iz. i bet soon ppl will say yeah d is a shitty language but hey it got a great linker. what da fuck. anyway steve. my point is we r part of some weird twilite zone. if d ever becumz successful theres gonna be murder in dis group.

Wow - Boyz n da Hood... Are you writing with a full keyboard? P.O.
Jun 21 2009
parent superdan <super dan.org> writes:
Pete Odowd Wrote:

 superdan Wrote:
 
 Steve Teale Wrote:
 
 superdan Wrote:
 
 Steve Teale Wrote:
 
 Can this group come up with a proper, sober (OK, I'm not)

den pretty please explain why anyone should give a flyin' fuck fer yer drunken rant.

Love you man. You're on the spot! I have no excuse.

not shure u r bein' sarcastic but i'm a gonna take dat at face value. akshully steve u got an excuse. u and i r part of a larger social phenom. i saw many times in da group: sum'thin' good happens with d. then da group reacts negatively with da speed o' light. its like physix: ackshon and reackshon. walt adds features. den we bitch fuck them features, he has 3000 bugs up his ass. walt fixes bugs. den we bitch that not'n' new is cummin' down da pike. andre asks about ranges. we get motherfuckin' bikeshed fight. andre implements them ranges. we bitch about namez syntax and all shit up to the motherfuckin' wazoo. of course if we dun understand ranges dats his fault too. been busy work past week but saw good things. andreis book is on amazon so ppl know it's cummin'. then da case fer d comes out. loved it. even better reddit loves it. momentum iz there. den wat do we do. bearophile writes other side of the coin. what in the name of fuck is his problem. backstabbin' mo'fucker are da nicest words that cum 2 mind after racking 'n' waterboarding my brain. EXIT_SUCCESS up yer ass. den cums da proper case fer d. only good thing is sean's cumback o' da year. thanx sean. den cherry on da cake. finally grauzone. where therez any negative shit about d u bet grauzone is on it like flies on shit. so we get this piece of brain vomit. leave them threadz alone. focus all on rewritin' da windows linker. what an assfucked strategy dat iz. i bet soon ppl will say yeah d is a shitty language but hey it got a great linker. what da fuck. anyway steve. my point is we r part of some weird twilite zone. if d ever becumz successful theres gonna be murder in dis group.

Wow - Boyz n da Hood... Are you writing with a full keyboard? P.O.

menace ii society akshully. heh.
Jun 22 2009
prev sibling next sibling parent reply "Adam D. Ruppe" <destructionator gmail.com> writes:
On Fri, Jun 19, 2009 at 03:00:17PM -0400, Steve Teale wrote:
 Can this group come up with a proper, sober (OK, I'm not), case for D.

It is a better C; D is what C++ wishes it was. My biggest love of D is two words: nested functions. I tend to write it as if it was just C with the suck yanked out. D2 is a better D1; you can write it in a similar way, but get even more help from the compiler to catch errors. D is the safe AND convenient language.
 There isn't a decent debugger for either Windows or Linux. 

I find gdb works well enough for me on linux. I use the -gc "pretend to be C" option. But I rarely really need the debugger, thanks to the compiler. -- Adam D. Ruppe http://arsdnet.net
Jun 19 2009
parent Steve Teale <steve.teale britseyeview.com> writes:
Adam D. Ruppe Wrote:

 On Fri, Jun 19, 2009 at 03:00:17PM -0400, Steve Teale wrote:
 Can this group come up with a proper, sober (OK, I'm not), case for D.

It is a better C; D is what C++ wishes it was. My biggest love of D is two words: nested functions. I tend to write it as if it was just C with the suck yanked out. D2 is a better D1; you can write it in a similar way, but get even more help from the compiler to catch errors. D is the safe AND convenient language.
 There isn't a decent debugger for either Windows or Linux. 

I find gdb works well enough for me on linux. I use the -gc "pretend to be C" option. But I rarely really need the debugger, thanks to the compiler. -- Adam D. Ruppe http://arsdnet.net

Yes, you're right about not needing a debugger. Walter's compilers have always given you a good idea of where you should look. But there are lots of potential users who do not know how to debug without an IDE debugger. After all, the seat-of-the-pants way is quite hard work.
Jun 21 2009
prev sibling next sibling parent BCS <ao pathlink.com> writes:
Reply to Steve,

 When Bjarne Stroustrup was originally promoting C++, he made a strong
 point that you could at least consider it to be a 'better C'. This
 point, it seemed to me, was lost on many. Now we are looking for
 radical arguments as to why D is a cool language. Maybe we should
 remember the basics, and concentrate less on the vapor.

"D is a low level language that can masquerade as a high level language" It has the low level stuff but if you just choose not to use them it looks and to a great extent acts like a high level one.
 Bearophile made a counter-argument. But this also did not stress our
 basic weaknesses. Most of us are using DMD, which on Windows uses a 20
 year old linker, and utilizes an antique object file format.

DMD now has 3 (or is it 4) different object file outputters. it shouldn't be hard from somone who knows somthing about a better format to be able to figure out how to patch one in and send Walter a patch.
 or perhaps it should be the D Standard Library (DSL).

No, DSL is already used. DSR? D standard runtime?
Jun 19 2009
prev sibling next sibling parent reply Sean Kelly <sean invisibleduck.org> writes:
Uppercase.  Calling it 'd' lacks a certain punch.
Jun 19 2009
next sibling parent "Danny Wilson" <bluezenix gmail.com> writes:
Op Fri, 19 Jun 2009 22:53:54 +0200 schreef Sean Kelly  
<sean invisibleduck.org>:

 Uppercase.

Thats awesome, made me chuckle. :-)
  Calling it 'd' lacks a certain punch.

Jun 19 2009
prev sibling next sibling parent Jarrett Billingsley <jarrett.billingsley gmail.com> writes:
On Fri, Jun 19, 2009 at 4:53 PM, Sean Kelly<sean invisibleduck.org> wrote:
 Uppercase. =A0Calling it 'd' lacks a certain punch.

"The groan heard 'round the world"
Jun 19 2009
prev sibling parent Daniel Keep <daniel.keep.lists gmail.com> writes:
Sean Kelly wrote:
 Uppercase.  Calling it 'd' lacks a certain punch.

You know, that's exactly what I assumed the post was going to be about when I saw the title... :D
Jun 20 2009
prev sibling next sibling parent Tim Matthews <tim.matthews7 gmail.com> writes:
Many will argue that D has lots of features found in many other 
languages but I think that it was born from and is still chosen for need 
for the need to run high performance code on the bare metal without 
using C++ so try this:

1. Find code written in C++.
2. Attempt to re write it as D.

This 2 step should expose the cases not to use D.
Jun 19 2009
prev sibling next sibling parent hasen <hasan.aljudy gmail.com> writes:
Steve Teale wrote:
 Can this group come up with a proper, sober (OK, I'm not), case for D.
 
 This would clearly have to steer clear of the standard libraries, I can't see
how any outside observer is going to be impressed by the fact that we have two.
 
 And D is a computer programming language. So we should deal with it as that
first.
 
 Andrei's article had a lot of good points primarily revolving around the need
to concentrate on concurrency, but I suspect that we should probably stress the
basics.
 
 When Bjarne Stroustrup was originally promoting C++, he made a strong point
that you could at least consider it to be a 'better C'. This point, it seemed
to me, was lost on many. Now we are looking for radical arguments as to why D
is a cool language. Maybe we should remember the basics, and concentrate less
on the vapor.
 
 Bearophile made a counter-argument. But this also did not stress our basic
weaknesses. Most of us are using DMD, which on Windows uses a 20 year old
linker, and utilizes an antique object file format. Under Linux, it can't
produce the position-independent code that's required to create reliable shared
libraries.
 
 Unless you use alpha-level code, you can't load arbitrary D modules at
run-time.
 
 There isn't a decent debugger for either Windows or Linux. There may never be
one if the potential authors see the constant focus on meta-programming - that
must make life hell for them.
 
 I'm not advocating a return to D1, but I do want to see closure on D2, and an
ascent from the constant alpha state. Then after that, I'd like to see a more
formal system of RFCs for library proposals, and a recognized pattern for
voting on them so that anyone who kept up-to-date with the process would not be
surprised by what suddenly appeared in Phobos, or perhaps it should be the D
Standard Library (DSL).
 
 When all that had happened I could forget computer programming and get on with
my woodwork relatively secure in the knowledge that I had chosen to support a
winner, and the Walter's efforts were not in vain.
 
 

I think the proper case for D has to be in the form of (several) real-world applications/system-utilities that people outside this newsgroup will *want* to use, not because they're written in D, but because these programs actually do something useful that a lot of people would really want. Games are certainly a good use case for D, but developing a good game takes a long time and in the end it won't compete with any of the available commercial games. There are (surprisingly) many small utilities that do something very simple, yet they're very useful and are used by a lots of people, Just to name a few ... - Launchy - safarp (simple and fast add/remove programs) - Sumatra PDF viewer - WinDjView - Fotografix (extremely tiny image editor, http://lmadhavan.com/software/fotografix/ ) - Rapid Environment Editor - WinDirStat - Unlocker These are very useful "system" (kinda?) utilities ,IMO there's lots of room for programs in this category to be written in D, either programs that are not written yet, or written but have sub-optimal performance. (for instance, launchy can be slow sometimes). Of course, the end users of such utilities might not care much about what language they're written in; but that's exactly the point.
Jun 20 2009
prev sibling next sibling parent Bruno Deligny <bruno.deligny gmail.com> writes:
Steve Teale a écrit :
 Can this group come up with a proper, sober (OK, I'm not), case for D.
 
 This would clearly have to steer clear of the standard libraries, I can't see
how any outside observer is going to be impressed by the fact that we have two.
 
 And D is a computer programming language. So we should deal with it as that
first.
 
 Andrei's article had a lot of good points primarily revolving around the need
to concentrate on concurrency, but I suspect that we should probably stress the
basics.
 
 When Bjarne Stroustrup was originally promoting C++, he made a strong point
that you could at least consider it to be a 'better C'. This point, it seemed
to me, was lost on many. Now we are looking for radical arguments as to why D
is a cool language. Maybe we should remember the basics, and concentrate less
on the vapor.
 
 Bearophile made a counter-argument. But this also did not stress our basic
weaknesses. Most of us are using DMD, which on Windows uses a 20 year old
linker, and utilizes an antique object file format. Under Linux, it can't
produce the position-independent code that's required to create reliable shared
libraries.
 
 Unless you use alpha-level code, you can't load arbitrary D modules at
run-time.
 
 There isn't a decent debugger for either Windows or Linux. There may never be
one if the potential authors see the constant focus on meta-programming - that
must make life hell for them.
 
 I'm not advocating a return to D1, but I do want to see closure on D2, and an
ascent from the constant alpha state. Then after that, I'd like to see a more
formal system of RFCs for library proposals, and a recognized pattern for
voting on them so that anyone who kept up-to-date with the process would not be
surprised by what suddenly appeared in Phobos, or perhaps it should be the D
Standard Library (DSL).
 
 When all that had happened I could forget computer programming and get on with
my woodwork relatively secure in the knowledge that I had chosen to support a
winner, and the Walter's efforts were not in vain.
 
 

I totally agree! Everybody i know that tried D have the same problems, so they all stick with C++. The D language is amazing but the tools are awful. There is tools but nothing works together out of the box! The user experience of D is very bad! The D needs a global strategy like C# did (language, compiler, library formats, IDE, debugger...) and all that with one click installers for all platforms. We don't need to reinvent the wheel, just create a synergy between projects! Walter, if you don't want to be the production manager that will put all theses pieces together, you should stick to the language development and hire somebody to handle the development environment!
Jun 20 2009
prev sibling parent reply Walter Bright <newshound1 digitalmars.com> writes:
Steve Teale wrote:
 Most of us are using DMD, which on Windows uses a
 20 year old linker, and utilizes an antique object file format.

Knowing the guts of object file formats, the MachO format (used on the Mac) is by far the worst of the three (OMF, MachO, ELF).
 Under
 Linux, it can't produce the position-independent code that's required
 to create reliable shared libraries.

Use the -fPIC switch, which has been there for years.
Jun 20 2009
parent Steve Teale <steve.teale britseyeview.com> writes:
Walter Bright Wrote:

 Steve Teale wrote:
 Most of us are using DMD, which on Windows uses a
 20 year old linker, and utilizes an antique object file format.

Knowing the guts of object file formats, the MachO format (used on the Mac) is by far the worst of the three (OMF, MachO, ELF).
 Under
 Linux, it can't produce the position-independent code that's required
 to create reliable shared libraries.

Use the -fPIC switch, which has been there for years.

OK Walter, I'd have to go back again and cover that, but at the time I had problems. Steve
Jun 21 2009