On 2013-11-29 06:14, brad clawsie wrote:
this has been a great thread and I've found a lot of the replies very
insightful. I've been programming in Go at work for about a year or so
now, so I have some opinions on Go that I believe are reasonably
informed, while I am still a D novice but hope to continue learning.

First, let me say that it is obvious that, by design, D is a more
powerful language than Go. Go's simplicity will either be an advantage
or a deal-breaker based on who you ask.

On my vps instance last night I tried to create an initial D programming
environment, with the following tools:

- dmd
- dub
- vibe.d
- ldc (not strictly necessary but I've heard so many good things about it)

First I tried installing dmd from source, which was fine but then I
would get strange errors about referring to a file "object.d" when
trying to build dub. Some poking around on the web resulted in the
advice of installing the pre-built dmd binary that is in the release
distribution. Now I was able to build dub, although it was strange to
see two completely different build mechanisms for dmd and dub - dmd
using a makefile and dub using a sh script wrapper. vibe.d was easier to
install once dub worked. Over an hour just to get basic tools installed,
although I feel HTTP serving is so common that it should be one of the
accepted "batteries included" by default.

If this were Go, I would have installed the default build for my
platform and had an http server in my standard sdk and everything else
available by "go get", which has never failed to work flawlessly for me
in a year of dealing with code from the web. This is one reason why
there are already so many libraries for Go - it is trivial to expose
your code to other developers via the supported toolchain.

Why did you install dmd from source and not the same way as Go? It's a bit unfair comparison. Dub is a package manager for D, with many libraries available.

--
/Jacob Carlborg

Reply via email to