D is supposed to compile fast.
Chris Katko
ckatko at gmail.com
Sat Nov 24 09:20:08 UTC 2018
On Friday, 23 November 2018 at 10:00:17 UTC, Nicholas Wilson
wrote:
>
> If you pass all the files on the command line then they all get
> (re)compiled.
How are you supposed include files if not passing them to the
compiler?
I'm only using std.regex in one file, IIRC, so whatever the
"proper" way to only compile changed files should improve it
drastically.
Almost all of my templates are incredibly simple like using
generic arguments for taking float and doubles, instead of
hardcoded float.
I am using both Allegro and DAllegro (a D binding for Allegro5).
But until recently, the compile times have been very fast. So
it's definitely been D features cutting things down.
And as for "compile-time doesn't matter" arguments, that's plain
silly. I'm not a junior programmer. I've had builds that took
over 30 minutes to compile and as we all (should!) know, the
longer the build time (especially over 10 seconds), the quicker
the mind loses its train-of-thought and the more difficulty the
brain has with establishing cause-and-effect relationships
between code and bugs. When our builds hit 30 minutes, we ended
up so disconnected from the project we'd end up playing a short
game of Duke Nukem 3-D inbetween builds. (Ha! Builds. Build
engine = the Duke Nukem 3D engine. A super-niche pun.) We were
incredibly unproductive until I re-wrote the entire thing in a
different language. It ran in less than 10 seconds and suddenly
we were powering through new problem after new problem. (A huge
data conversion project between a discontinued, no-documentation
product and a new product by a different company.)
Anyhow, if you REALLY want to look at some very WIP code with
poor documentation and possibly lots of random swearing (hobby
project for trying out D in a game), I'll make the repo public
for now:
https://bitbucket.org/katasticvoyage/ss14/src/master/
extra.d is a main code unit for this application.
ini.d has regex. (and no, it's not a proper lexer. I'm probably
swapping it out with JSON.)
More information about the Digitalmars-d-learn
mailing list