www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Why not throw everything at dmd

reply %u <hagenkaiser googlemail.com> writes:
Hello,
First of all I want to congratulate Walter to this totally brilliant language
and compiler he gives to us.
Im just fascinated everyday a little more.
I was watching D for half a year now and a week ago I began to implement my
diploma thesis with dmd
2 on snow leopard. Its a computer vision application that has to operate in
real time.
I already had implemented 30 % of it in C++ using OpenCV, Qt and boost.
I ended with something horribly overcomplicated. Not that it was only horrible
to read because of the
lots of different used boost techniques. In the end even my editor gave
(QtCreator) up. The program
compiled and the editor showed me false syntax errors.
The program was then running far to slow (5 fps or something).  Probably
because of some stupid
errors.

So I decided to give dmd a try: I used descent and a simple make script.
My program is running blazingly fast now. And it took me no time to port c
headers from opencv opengl
and glut. The bad thing was of course that on osx i dont have a debugger. The
wonderful thing is I really
didnt need one right now. I use unittets which reduced this need a lot. And
furthermore I simply dont
make mistakes in this language because this language doesnt let you. It lets
you conentrate on the
matter not on things like :
Do I need a scoped boost ptr or rather a tr1 sharedptr or a boost shared ptr or
a pointercontainer
whatever...etc.
But you all know that anyway.

And now to the Subject:
Im using a simple makefile which just throws every source file at the compiler
and also all the link
commands. Just because I was lazy and thought i can change it later if it hurts
too much.
So everytime i hit  the compile button im doing a complete rebuild.
Its a really quite big project now. (using templates ctfe and etc).
It takes about ONE SECOND to rebuild. Its just fascinating. Its faster to
rebuild the whole project than
compilng only one sourcefile of the corresponding c++ project with g++.
Working at siemens for a big project in c++ on win, I know that  I am sitting
most of the day there
waiting until it compiled. dmd is magic. and the language is just the language
ive ever dreamed of.

In the end this brings me to a sad thing: I nearly never get dsource projects
to compile. And most of the
time (I guess) its about build system problems. So why dont you all write these
very simple makefiles
and throw everything at the compiler? Such makefiles would be very easy to
debug and furthermore
they really work everywhere.

cheers
Jan 19 2010
next sibling parent Trass3r <un known.com> writes:
You may give http://bitbucket.org/h3r3tic/xfbuild/wiki/Home a try.
Though it still lacks some configuration file feature you don't need to  
specify every source file yourself ;)
Jan 19 2010
prev sibling parent reply downs <default_357-line yahoo.de> writes:
%u wrote:
 In the end this brings me to a sad thing: I nearly never get dsource projects
to compile. And most of the
 time (I guess) its about build system problems. So why dont you all write
these very simple makefiles
 and throw everything at the compiler? Such makefiles would be very easy to
debug and furthermore
 they really work everywhere.
 
DMD is fast. GDC and LDC however, aren't. :)
 cheers
You too.
Jan 22 2010
parent strtr <strtr spam.com> writes:
downs Wrote:

 %u wrote:
 In the end this brings me to a sad thing: I nearly never get dsource projects
to compile. And most of the
 time (I guess) its about build system problems. So why dont you all write
these very simple makefiles
 and throw everything at the compiler? Such makefiles would be very easy to
debug and furthermore
 they really work everywhere.
Together with the tango/phobos/dmd1/dmd2 incompatibilities I rarely ever actually compile anything from dsource.
 
DMD is fast. GDC and LDC however, aren't. :)
Interesting, I didn't know that. I also rebuild my whole project every build and love that I can program in really small increments building every few minutes or so. ( And debug/refactor by just repeatedly building/fixing ) It even kind of annoys me that builing (bud) takes something like 10 seconds on my p4. This means I will keep using DMD as long as I can and only maybe in at the end try GDC and LDC for any performance improvement.
 
 cheers
You too.
Cheers to you two as well :)
Jan 22 2010