Python -> Java -> D ?

Kirk McDonald kirklin.mcdonald at gmail.com
Sun Apr 22 12:31:00 PDT 2007


David Finlayson wrote:
> I am a Python scripter in search of a language with better
> performance. I do a lot of signal processing in my job and I think
> I've pushed Python as far as it will go. Recently, I have written a
> few programs in D and have been impressed with (a) how easy the
> transition from Python has been, (2) the large boost in performance
> for my code.
> 
> Here's the question:
> 
> Should my second language be a new language like D? Or, would I be
> better off mastering something more mainstream such as C or C++?
> 
> The reason I ask is that D is similar enough to Python in terms of
> abstraction that I might be better off in the long run mastering
> something lower level such as C or C++, or higher level such as a
> good functional language like Lisp or Ocaml.
> 
> I've noticed D is still quite immature in some ways. It has no
> printed books (a sign of market share) as compared to the dozen os so
> books written about C/C++ in my specific scientific discipline alone.
> Also,  the standard library is in flux (Phobos vs Tango) whereas more
> mature languages have settled down.
> 
> In short, I like D, but maybe I would be better of learning something
> else. So, some of you alpha-geeks on this list: would you learn D
> next in my position or something else?
> 

Well, maybe I'm a little biased, but I think Python and D are a potent 
combination. You could do worse.

That said, you might do well by picking up a copy of K&R[1] and learning 
C.  It is good to learn the low-level details of the machine. Also, very 
nearly every library in existence speaks C; it is the closest thing to a 
lingua franca in the programming world. And a lot (but not all) of what 
you'd learn doing C would apply to D (not to mention C++).

[1] The C Programming Language, by Brian Kernighan and Dennis Ritchie

-- 
Kirk McDonald
http://kirkmcdonald.blogspot.com
Pyd: Connecting D and Python
http://pyd.dsource.org


More information about the Digitalmars-d-learn mailing list