D and the world

Bill Baxter dnewsgroup at billbaxter.com
Sun Apr 22 22:13:37 PDT 2007


janderson wrote:
> Its about time for another round of how D can conquer the world.
> 
> The way I see it D has 2 options, provide an easy way for C++ users to 
> switch over or become D.net.  The problem is, it is extremely 
> impracticable to switch over to D because:
> 
> 1) Everything is already in C++.  It would take months to switch over. 
> Time that no one has.
> 2) Many API's are in C++.  Porting is too dam time consuming.  There are 
> so many API's that companies use, it is impossible to have them all ported.
> 3) Learning.  People are resistant to learning new things.  I think this 
> hurdle is easiest to jump if the other 2 are in place.
> 
> ...
> So if D wants to become big (say in the next year), I think some time 
> invested in supporting C++ is its best bet.

I don't think D needs to become big in the next year.  If it got the 
easy ability to use C++ code (or Java code) directly, that may indeed 
help it take off.  But I don't think it's necessary.

I see D taking off in more the way of scripting languages like Python or 
Ruby.  Python got introduced into companies by people who liked 
programming in it.  I remember there was one guy in the company I worked 
for back in 1995 who used Python.  And I was like Py what? What's wrong 
with Perl?  But it grew slowly in popularity from humble beginnings, not 
because of huge financial backing, but because people in the trenches 
found it easy and *fun* to use.  Today extensive libraries are one of 
the best things about Python.  But I would guess back in 1995 the Python 
library collection was probably pretty weak.  It grew because people 
liked using it and contributed things they needed.

So, just give it time, and D will catch on.  I've come back to 
programming D heavily for the past few days after an extended stay in 
Python land.  And I have to say, I just really like D.  Python is nice 
with it's dynamic everything, but there's something to be said for 
having a compiler that can tell you when you're referring to an 
undefined variable _before_ you spend 2 minutes running your program to 
the point where it executes the function you just added only to find 
that you typed "my_varible" instead of "my_variable".   And Python is 
not without its warts.  I'm always looking for ways to avoid making 
classes in my Python code because having to say 'self.avariable' and 
'self.amethod' everywhere just gets really really annoying.  I also find 
the lack of any notion of 'private' to be annoying.  You need to be 
careful about what and how you import in a python module, because that 
all becomes part of the public interface for your module.  You can 
prefix things with an underscore, but that's the other thing that annoys 
me about python.  For a language with "clean" syntax, it sure does use a 
heck of a lot of underscore characters.

Ahem.  So anyway, D is cool.  And I think it will catch on given time. 
The 1.0 release just came out.  And 2.0 is shaping up to be the greatest 
thing that ever happened to programmer-kind.  I think we're just seeing 
the beginning.

On the other hand, if you want to write a C++ to D translator or 
automatic bridge or whatever to help accelerate the pace, I'm certainly 
not going to stop you.  :-)


--bb



More information about the Digitalmars-d mailing list