Saturday, August 21, 2010

Google Go, or Digital Mars D?

Recently I learned of the Go programming language.  It is, according to the header on the main golang web page, an expressive, concurrent, garbage-collected, systems programming language. It looks kind of cool.  There is a compiler (6g) which works on my system.  I would prefer to use the gcc  front-end (gccgo), but at this point I cannot get it running.

Then there is the D programming language.  It is, according to the D main page, also a systems programming language.  It looks appealing as well.  D comes with its own compiler, dmd, and a front end for gcc (gdc).

Apparently, it kind of seems that these two languages have some overlap in their audience/goals.  This thread has some discussion about that from a primarily pro D perspective.  This is another thread, but more from a pro Go perspective.

My dilemma is that I want to learn a new language.  I am a hobby programmer, with a pretty good handle on C.  I have made stabs at C++ before, and while I think it is a wonderful language (string handling and memory management are so much easier than C) it is also a lot more to learn than C.  I am wondering if D or Go might be more suitable.  Ultimately, I might have to dive into both to make my decision.  I am hoping not to have to do that though.  One thing that will help make my decision is the documentation available.  I cannot learn a new language without some help.  So I will have to look into that aspect as well.  If you are a Go programmer, or a D programmer, (or both) and you feel like offering any suggestions as to what path I should take, please leave a comment.  I would appreciate any sound advice.

No comments:

Post a Comment