www.digitalmars.com         C & C++   DMDScript  

D - Killer application for D?

reply Bill Cox <bill viasic.com> writes:
Hi.

I'm seeing more press on D lately.  I think it's gaining some momentum. 
  However, the languages that made it in the past all seemed to have 
some killer application on which to ride to success.  For example:

Fortran: scientific computing
Lisp: AI
BASIC: Language for the masses
Pascal: Structured programming
C: Games and OSs
C++: OO programming, and GUIs
Java: Internet programming
Perl: Text processing
Cobol: Banking
SQL: Database
TCL: Embedded interpreter for tool control
Forth: Embedded systems/low overhead

I can't think of a language that I can get paid to use that doesn't have 
some killer application.  Just being a better language is the motivation 
behind most languages.  However, that doesn't seem to be enough to gain 
widespread acceptance.

I can't think of what D's killer application will be, but I don't think 
it will be any of the ones I've listed, since these already have so much 
momentum in other languages.

Any ideas?

Bill
Jul 29 2003
next sibling parent reply "Walter" <walter digitalmars.com> writes:
You raise a great issue. How about 'robust programming', with the Design by
Contract and unit test support?

"Bill Cox" <bill viasic.com> wrote in message
news:3F2689B9.5070608 viasic.com...
 Hi.

 I'm seeing more press on D lately.  I think it's gaining some momentum.
   However, the languages that made it in the past all seemed to have
 some killer application on which to ride to success.  For example:

 Fortran: scientific computing
 Lisp: AI
 BASIC: Language for the masses
 Pascal: Structured programming
 C: Games and OSs
 C++: OO programming, and GUIs
 Java: Internet programming
 Perl: Text processing
 Cobol: Banking
 SQL: Database
 TCL: Embedded interpreter for tool control
 Forth: Embedded systems/low overhead

 I can't think of a language that I can get paid to use that doesn't have
 some killer application.  Just being a better language is the motivation
 behind most languages.  However, that doesn't seem to be enough to gain
 widespread acceptance.

 I can't think of what D's killer application will be, but I don't think
 it will be any of the ones I've listed, since these already have so much
 momentum in other languages.

 Any ideas?

 Bill
Jul 29 2003
next sibling parent reply "DeadCow" <deadcow-remove-this free.fr> writes:
"Walter" <walter digitalmars.com> a écrit dans le message news:
bg64cv$1rhe$1 digitaldaemon.com...
 You raise a great issue. How about 'robust programming', with the Design
by
 Contract and unit test support?
Eiffel hold this position sir. -- Nicolas Repiquet
Jul 29 2003
parent reply "Walter" <walter digitalmars.com> writes:
"DeadCow" <deadcow-remove-this free.fr> wrote in message
news:bg652o$1s88$1 digitaldaemon.com...
 "Walter" <walter digitalmars.com> a écrit dans le message news:
 bg64cv$1rhe$1 digitaldaemon.com...
 You raise a great issue. How about 'robust programming', with the Design
by
 Contract and unit test support?
Eiffel hold this position sir.
Eiffel pioneered DbC, yes. But Eiffel has not managed to evangelize DbC and bring it into the mainstream consciousness. Eiffel has no unit test support in the language or philosophy, although there is an add-on thing to do it called EiffelUnit.
Jul 29 2003
parent reply "DeadCow" <deadcow-remove-this free.fr> writes:
"Walter" <walter digitalmars.com> a écrit dans le message news:

 Eiffel pioneered DbC, yes. But Eiffel has not managed to evangelize DbC
and
 bring it into the mainstream consciousness. Eiffel has no unit test
support
 in the language or philosophy, although there is an add-on thing to do it
 called EiffelUnit.
Here are my two cents ( in a broken english & with a broken brain ) You said "D is a real-life language for real-life programmers". What a real-life programmer needs : 1) A nice language : well-designed, handy, and that helps avoiding pitfalls to write bugfree softwares ... and you have fun coding with =) 2) A good set of tools : compiler, linker, debuger, editor, ... 3) A standard library : common interfaces are realy mandatory. Im bored to write adaptators to link different proprietary implementations ... so let say for the very minimum : basic data structures ( List,Set,Tree,... ), text processing ( regexp, complex formating ), logging ( very important i think ), streams( file, pipe, socket, ... ), basic type manipulations ( Date ... ), synchronisation ( mutex, lock, semaphore, ... ), infinite precision mathematics. 4) A lib repository & tools : handy, and do a realy good job for people getting involved in projects ( CPAN is a real succes ). Here are the ratting (min * max ***** ) for various languages ( in my opinion ) : - C++ : The real headache 1 language) *** A way to complicated, realy archaic. 2 tools) ***** Great tools available ( even free ) including dmc =) 3 stdlib) * Bored implementing your own chainlist ? 4 repository) * none - Java : The tiny toy 1 language) **** Some lacks. 2 tools) **** Well, its interpreted. 3 stdlib) **** Not perfect, but kind of =) 4 repository) * none - Perl : The geek experience 1 language) * Personnal taste : too cryptic 2 tools) ***** How they can compile that ? 3 stdlib) ** I realy dont like 4 repository) **** Really good idea - D : The big hope 1 language) ***** Great ! 2 tools) **** Im waiting for a debuger 3 stdlib) ** Well, its only a test am i right ? 4 repository) * none I think the D's killer application is the same that C++ : big & fast software. But C++ users need more sexy features for jumping to D. -- Nicolas Repiquet
Jul 29 2003
next sibling parent reply Ilya Minkov <midiclub 8ung.at> writes:
DeadCow wrote:
 Here are the ratting (min * max ***** ) for various languages ( in my
 opinion ) :
 - C++ : The real headache
 3 stdlib)     *      Bored implementing your own chainlist ?
You *vastly* underrate STL. STL is *the* thing, which makes C++ into a really usable programming language. And of course it contains all kinds of lists, maps, sets, ... Just name it. Very few minor omissions. And here comes a surprise: STL sort algorithm is an order of magnitude faster than C's qsort, because it specialises an algorithm by types, instead of using function pointers for simple operations. Expect maximum efficiency from them. :) Now, you consider it worse than a D library and a Perl library? -i.
Jul 29 2003
parent reply "DeadCow" <deadcow-remove-this free.fr> writes:
"Ilya Minkov" <midiclub 8ung.at> a écrit dans le message news:
bg6j4i$2b38$1 digitaldaemon.com...

 You *vastly* underrate STL. STL is *the* thing, which makes C++ into a
 really usable programming language. And of course it contains all kinds
 of lists, maps, sets, ... Just name it.
Ok but only string,containers and some io. chainlist was a bad example i agree.
 Now, you consider it worse than a D library and a Perl library?
So let say ** =) But D deserve a better stdlib than it. It's a main feature. -- Nicolas Repiquet
Jul 30 2003
parent Ilya Minkov <midiclub 8ung.at> writes:
DeadCow wrote:
 Ok but only string,containers and some io. chainlist was a bad example i
 agree.
Well, and some algorithms and such.
 But D deserve a better stdlib than it.
 It's a main feature.
True. But D library design can't get off until there are properties with getters and setters! They are crucial for library design, i believe. .i,
Jul 30 2003
prev sibling parent "Matthew Wilson" <matthew stlsoft.org> writes:
 3 stdlib)     *      Bored implementing your own chainlist ?
You're dreaming here, for all the reasons Ilya gives and more.
 I think the D's killer application is the same that C++ : big & fast
 software.
Agree
 But C++ users need more sexy features for jumping to D.
Agree
Jul 29 2003
prev sibling parent Bill Cox <bill viasic.com> writes:
Hi, Walter.

Robust programming is a possibility.  It's not a clear winner, but if I 
knew what the next big thing was, I'd go do a startup to make money on it.

Robust programming seems to work for Ada.  If robust programming were to 
be a big factor, I'd want to see a compiler test suite to help insure 
that bugs don't get into generated code.  That seems to be a big selling 
point for Ada.  I'll bet that the Ada commitee guys are thinging about 
design by contract and unit test now.

The US government seems to be sold on robust programming through Ada.  I 
wonder if it will make it into comercial industry.

Bill

Walter wrote:
 You raise a great issue. How about 'robust programming', with the Design by
 Contract and unit test support?
 
 "Bill Cox" <bill viasic.com> wrote in message
 news:3F2689B9.5070608 viasic.com...
 
Hi.

I'm seeing more press on D lately.  I think it's gaining some momentum.
  However, the languages that made it in the past all seemed to have
some killer application on which to ride to success.  For example:

Fortran: scientific computing
Lisp: AI
BASIC: Language for the masses
Pascal: Structured programming
C: Games and OSs
C++: OO programming, and GUIs
Java: Internet programming
Perl: Text processing
Cobol: Banking
SQL: Database
TCL: Embedded interpreter for tool control
Forth: Embedded systems/low overhead

I can't think of a language that I can get paid to use that doesn't have
some killer application.  Just being a better language is the motivation
behind most languages.  However, that doesn't seem to be enough to gain
widespread acceptance.

I can't think of what D's killer application will be, but I don't think
it will be any of the ones I've listed, since these already have so much
momentum in other languages.

Any ideas?

Bill
Jul 29 2003
prev sibling next sibling parent reply Frank Wills <name host.com> writes:
   I think two things are the most essential to
get people using D:

like to see this for both Windows and Linux, not just
Windows.
  - A fully integrated IDE for D:
	* An editor with all the current tricks.
	* Visual window and component editing
	would be very good, and I think doable
	in D.
	* A good class and project browser.
	* Project management and starter templates
	which people can use to get started creating
	applications and libraries.
	* A fully integrated debugger.
   I think basically programmers like to code and work
with good tools. From my perspective, D is the best
language solution for the time, incorporating all of
the features that I have been looking for since Java
was introduced. Package D with a modern development
environment and I think you would be giving programmers
a great incentive to adapt D.
   I may be speaking from a perspective of personal bias,
because this is what my thoughts have been running to
lately. I think it would be a great project.

Bill Cox wrote:
 Hi.
 
 I'm seeing more press on D lately.  I think it's gaining some momentum. 
  However, the languages that made it in the past all seemed to have some 
 killer application on which to ride to success.  For example:
 
 Fortran: scientific computing
 Lisp: AI
 BASIC: Language for the masses
 Pascal: Structured programming
 C: Games and OSs
 C++: OO programming, and GUIs
 Java: Internet programming
 Perl: Text processing
 Cobol: Banking
 SQL: Database
 TCL: Embedded interpreter for tool control
 Forth: Embedded systems/low overhead
 
 I can't think of a language that I can get paid to use that doesn't have 
 some killer application.  Just being a better language is the motivation 
 behind most languages.  However, that doesn't seem to be enough to gain 
 widespread acceptance.
 
 I can't think of what D's killer application will be, but I don't think 
 it will be any of the ones I've listed, since these already have so much 
 momentum in other languages.
 
 Any ideas?
 
 Bill
 
Jul 29 2003
parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
   - A fully integrated IDE for D:
 * An editor with all the current tricks.
 * Visual window and component editing
 would be very good, and I think doable
 in D.
 * A good class and project browser.
 * Project management and starter templates
 which people can use to get started creating
 applications and libraries.
 * A fully integrated debugger.
    I think basically programmers like to code and work
 with good tools. From my perspective, D is the best
 language solution for the time, incorporating all of
 the features that I have been looking for since Java
 was introduced. Package D with a modern development
 environment and I think you would be giving programmers
 a great incentive to adapt D.
Hear, hear. In fact, hear, hear! This will be what determines whether D makes it or not. I know it's shallow, but it's true nonetheless.
Jul 29 2003
parent reply "Walter" <walter digitalmars.com> writes:
"Matthew Wilson" <matthew stlsoft.org> wrote in message
news:bg6tbt$2lph$1 digitaldaemon.com...
   - A fully integrated IDE for D:
 * An editor with all the current tricks.
 * Visual window and component editing
 would be very good, and I think doable
 in D.
 * A good class and project browser.
 * Project management and starter templates
 which people can use to get started creating
 applications and libraries.
 * A fully integrated debugger.
    I think basically programmers like to code and work
 with good tools. From my perspective, D is the best
 language solution for the time, incorporating all of
 the features that I have been looking for since Java
 was introduced. Package D with a modern development
 environment and I think you would be giving programmers
 a great incentive to adapt D.
Hear, hear. In fact, hear, hear! This will be what determines whether D makes it or not. I know it's
shallow,
 but it's true nonetheless.
I've got my hands full supporting the compiler and runtime. For the IDE, etc., someone else will need to take the lead on it.
Jul 29 2003
next sibling parent "Matthew Wilson" <matthew stlsoft.org> writes:
Absolutely. It was not my implication to do otherwise. <blush>

It's going to need a good basic extensible design (from someone with more
time that you or I), and then individuals creating the plug-ins that they
are interested/able to implement. If the first part can be done (i.e.
someone smart/experience enough can be found with enough time), and the
second can be managed successfully, then it'll be a go-er.



"Walter" <walter digitalmars.com> wrote in message
news:bg703h$2o83$2 digitaldaemon.com...
 "Matthew Wilson" <matthew stlsoft.org> wrote in message
 news:bg6tbt$2lph$1 digitaldaemon.com...
   - A fully integrated IDE for D:
 * An editor with all the current tricks.
 * Visual window and component editing
 would be very good, and I think doable
 in D.
 * A good class and project browser.
 * Project management and starter templates
 which people can use to get started creating
 applications and libraries.
 * A fully integrated debugger.
    I think basically programmers like to code and work
 with good tools. From my perspective, D is the best
 language solution for the time, incorporating all of
 the features that I have been looking for since Java
 was introduced. Package D with a modern development
 environment and I think you would be giving programmers
 a great incentive to adapt D.
Hear, hear. In fact, hear, hear! This will be what determines whether D makes it or not. I know it's
shallow,
 but it's true nonetheless.
I've got my hands full supporting the compiler and runtime. For the IDE, etc., someone else will need to take the lead on it.
Jul 29 2003
prev sibling parent reply Frank Wills <name host.com> writes:
Walter wrote:
 "Matthew Wilson" <matthew stlsoft.org> wrote in message
 news:bg6tbt$2lph$1 digitaldaemon.com...
 
  - A fully integrated IDE for D:
<snip>
was introduced. Package D with a modern development
environment and I think you would be giving programmers
a great incentive to adapt D.
Hear, hear. In fact, hear, hear! This will be what determines whether D makes it or not. I know it's
shallow,
but it's true nonetheless.
I find myself thinking about Turbo Pascal, which was very inexpensive, fast and easy to use, and hugely successful in it's time. Of course I also think of MS's dominance in the tools department, and this was possible because of all they dedicated to making developing apps so very easy. No small task at all.
 I've got my hands full supporting the compiler and runtime. For the IDE,
 etc.,  someone else will need to take the lead on it.
Absolutely Walter. I think everyone here realizes that you are the one that made all this happen, and who is already doing and giving so much to make what D promises possible.
Jul 29 2003
parent reply "Walter" <walter digitalmars.com> writes:
"Frank Wills" <name host.com> wrote in message
news:bg72c8$2qh3$1 digitaldaemon.com...
 I've got my hands full supporting the compiler and runtime. For the IDE,
 etc.,  someone else will need to take the lead on it.
Absolutely Walter. I think everyone here realizes that you are the one that made all this happen, and who is already doing and giving so much to make what D promises possible.
There are so many C++ ide's around, couldn't one open source one be adapted?
Jul 29 2003
next sibling parent Frank Wills <name host.com> writes:
Walter wrote:
 "Frank Wills" <name host.com> wrote in message
 news:bg72c8$2qh3$1 digitaldaemon.com...
 
I've got my hands full supporting the compiler and runtime. For the IDE,
etc.,  someone else will need to take the lead on it.
Absolutely Walter. I think everyone here realizes that you are the one that made all this happen, and who is already doing and giving so much to make what D promises possible.
There are so many C++ ide's around, couldn't one open source one be adapted?
That could be. I'll spend some time in the next week looking into it.
Jul 29 2003
prev sibling parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
I think it would be better to plug into (a wide variety of) existing ones.
Sure we can do Visual Studio, but what about Metrowerks, Dev C++, Borland,
DM, etc.?

"Walter" <walter digitalmars.com> wrote in message
news:bg7k3b$a9r$1 digitaldaemon.com...
 "Frank Wills" <name host.com> wrote in message
 news:bg72c8$2qh3$1 digitaldaemon.com...
 I've got my hands full supporting the compiler and runtime. For the
IDE,
 etc.,  someone else will need to take the lead on it.
Absolutely Walter. I think everyone here realizes that you are the one that made all this happen, and who is already doing and giving so much to make what D promises possible.
There are so many C++ ide's around, couldn't one open source one be
adapted?

Jul 29 2003
parent reply Ilya Minkov <midiclub 8ung.at> writes:
Matthew Wilson wrote:
 I think it would be better to plug into (a wide variety of) existing ones.
 Sure we can do Visual Studio, but what about Metrowerks, Dev C++, Borland,
 DM, etc.?
Plug into Eclipse. :) -i.
Jul 30 2003
parent reply Mark T <Mark_member pathlink.com> writes:
In article <bg9a56$24e3$1 digitaldaemon.com>, Ilya Minkov says...
Matthew Wilson wrote:
 I think it would be better to plug into (a wide variety of) existing ones.
 Sure we can do Visual Studio, but what about Metrowerks, Dev C++, Borland,
 DM, etc.?
Plug into Eclipse. :)
agreed, it works well on Windows and Linux and is well supported BUT I think an IDE has little to do with acceptance of text based languages everybody has their favorite editor
Jul 30 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
 BUT I think an IDE has little to do with acceptance of text based
languages
 everybody has their favorite editor
I agree, I don't think that an IDE makes or breaks a language. Besides we already have a great IDE, emacs! Charles "Mark T" <Mark_member pathlink.com> wrote in message news:bg9ffi$2an3$1 digitaldaemon.com...
 In article <bg9a56$24e3$1 digitaldaemon.com>, Ilya Minkov says...
Matthew Wilson wrote:
 I think it would be better to plug into (a wide variety of) existing
ones.
 Sure we can do Visual Studio, but what about Metrowerks, Dev C++,
Borland,
 DM, etc.?
Plug into Eclipse. :)
agreed, it works well on Windows and Linux and is well supported BUT I think an IDE has little to do with acceptance of text based
languages
 everybody has their favorite editor
Jul 30 2003
prev sibling next sibling parent Helmut Leitner <helmut.leitner chello.at> writes:
I don't agree with all of your analysis.

Bill Cox wrote:
 I'm seeing more press on D lately.  I think it's gaining some momentum.
   However, the languages that made it in the past all seemed to have
 some killer application on which to ride to success.  For example:
 
 Fortran: scientific computing
This wasn't a killer application. Just a strength in numerical applications.
 Lisp: AI
Ok.
 BASIC: Language for the masses
That's pretty vague. BASIC was a simple high level language on early "PC"s like Commodore PET or APPLE II.
 Pascal: Structured programming
That's not a killer application. Wirth gave the academic authority but only UCSD and Turbo PASCAL made real world programming possible. When MS languages were expensive ($300-500) and error-ridden, Turbo Pascal at $50 made programming for anybody affordable.
 C: Games and OSs
The only real killer application was and is UNIX.
 C++: OO programming, and GUIs
Only filled the void of stagnating C.
 Java: Internet programming
More the "Internet hype". The Java applet never became a reality.
 Perl: Text processing
 Cobol: Banking
Commercial applications.
 SQL: Database
SQL is not a programming language.
 TCL: Embedded interpreter for tool control
Don't know.
 Forth: Embedded systems/low overhead
Small systems. Astronomers. Never really took off. (like MUMPS for medical applications)
 I can't think of a language that I can get paid to use that doesn't have
 some killer application.  Just being a better language is the motivation
 behind most languages.  However, that doesn't seem to be enough to gain
 widespread acceptance.
 
 I can't think of what D's killer application will be, but I don't think
 it will be any of the ones I've listed, since these already have so much
 momentum in other languages.
 
 Any ideas?
While I don't think that your killer application hypthesis really holds, it would surely be a way to push D forward. I see these possible killer applications: - An open source equivalent to MS ACCESS for small database applications (remember that Linux OFFICE systems misses the database component) - A small foot print Windows/Linux compatible development system including database component (rivalling Delphi/Kylix) and good integrated print/preview/report system. - An efficient Wiki server/client system including a client side wiki and a client WYSIWYG browser/editor. - An open source e-Book application with user definable display options and good support for book printing in definable formats. -- Helmut Leitner leitner hls.via.at Graz, Austria www.hls-software.com
Jul 29 2003
prev sibling parent reply Keith Fuller <Keith_member pathlink.com> writes:
In article <3F2689B9.5070608 viasic.com>, Bill Cox says...
Hi.
Hi Bill!
 <snip>
I can't think of a language that I can get paid to use that doesn't have 
some killer application.  Just being a better language is the motivation 
behind most languages.  However, that doesn't seem to be enough to gain 
widespread acceptance.

I can't think of what D's killer application will be, but I don't think 
it will be any of the ones I've listed, since these already have so much 
momentum in other languages.

Any ideas?

Bill
I have some ideas! Look at PowerBasic.com As far as I can tell, that language is not even object oriented, <-- look! but it still seems to sell fairly well at $200 per copy. <-- look! So my suggestion is that D initially goes after this same market, for people who want to build small, self-contained, .EXE's (for example, shareware utilities) without the headache of using C or C++, and without having to do GC. I don't think adding more features would help that much. Ease of use is what is most important. Also it looks like adding CTAGS support for D would not be hard, but would bring a lot of benefit. CTAGS parses a file into things like: classes macro definitions (and #undef names) enumerators function definitions enumeration names class, struct, or union members namespaces function prototypes and declarations structure names typedefs union names variable definitions extern and forward variable declarations Then editors like VIM can use this information to help the user navigate around the code. Does anyone have any better ideas? keith.fuller keithfx ho+mail.com
Jul 29 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
That's a great idea!

Charles

"Keith Fuller" <Keith_member pathlink.com> wrote in message
news:bg7fb7$5ai$1 digitaldaemon.com...
 In article <3F2689B9.5070608 viasic.com>, Bill Cox says...
Hi.
Hi Bill!
 <snip>
I can't think of a language that I can get paid to use that doesn't have
some killer application.  Just being a better language is the motivation
behind most languages.  However, that doesn't seem to be enough to gain
widespread acceptance.

I can't think of what D's killer application will be, but I don't think
it will be any of the ones I've listed, since these already have so much
momentum in other languages.

Any ideas?

Bill
I have some ideas! Look at PowerBasic.com As far as I can tell, that language is not even object oriented, <-- look! but it still seems to sell fairly well at $200 per copy. <-- look! So my suggestion is that D initially goes after this same market, for people who want to build small, self-contained, .EXE's (for example, shareware utilities) without the headache of using C or C++, and without having to do GC. I don't think adding more features would help that much. Ease of use is what is most important. Also it looks like adding CTAGS support for D would not be hard, but would bring a lot of benefit. CTAGS parses a file into things like: classes macro definitions (and #undef names) enumerators function definitions enumeration names class, struct, or union members namespaces function prototypes and declarations structure names typedefs union names variable definitions extern and forward variable declarations Then editors like VIM can use this information to help the user navigate around the code. Does anyone have any better ideas? keith.fuller keithfx ho+mail.com
Jul 29 2003