Enum and CTFE function call
Everlast
Everlast at For.Ever
Tue Aug 14 17:14:24 UTC 2018
On Tuesday, 14 August 2018 at 16:54:09 UTC, ixid wrote:
> On Tuesday, 14 August 2018 at 13:38:16 UTC, Everlast wrote:
>> etc
>
> Thanks all for the comprehensive responses. I was not clearly
> separating CTFE and the compilation of the function in thinking
> about it. Much clearer now.
Yeah, if you don't think's can get pretty confusing because the
language really does not cleanly separate it... which is
intention because they are virtually identical things but used
slightly differently(technically RT and CT are not separate
things, we could assume the OS is a compiler of some sorts).
I will say that once you do some meta programming in D(say 10k
lines of code, even if basically junk but in some higher context)
it will just sorta of magically start to separate pretty quickly.
Since they are so similar you really are not learning anything
new if you already know how to program well(have a good
conceptual basis of what programming is and how it works, say
about ~5 years of decent programming experience).
Just remember that it won't all suddenly be crystal clear, the
more you program this stuff the more clear the divisions
become(And everything D in general).
Initially when I started messing with D the concepts were not
obvious but once I recognized the power unadulterated power that
they posses(which was quick since I love meta programming in
general) and the ease of use(I just had to think in basically
those 3 categories without changing much actually programming
"logic") I was hooked. Of course, it's not perfect, but nothing
out there like it that is like C++(which was my background). I'm
not much in to Haskell, which is effectively even a more powerful
logic device, but just unlike the rigor that is required to use
it. (When I want to be risky I want to be risque!). D provides
that balance, as a language, for me... all though it isn't a
perfect marriage by any means(are any?).
More information about the Digitalmars-d-learn
mailing list