Memory allocation purity
w0rp via Digitalmars-d
digitalmars-d at puremagic.com
Thu May 15 05:37:21 PDT 2014
Ola, you do not understand 'pure.'
To consider the design of pure, you must first consider that you
cannot add functional purity to an imperative language. It cannot
be done. What you can do instead is what D offers with a 'weak
purity' guarantee. That global state is not modified indirectly,
that side-effects do not occur in a function, except through the
function's parameters, except for memory allocation. D allows you
to come pretty close to strong purity when a function is marked
pure, does not allocate memory inside it or through its
arguments, and has only const or immutable arguments. The only
way you can get a better purity guarantee than that is to use a
functional programming language like Haskell.
More information about the Digitalmars-d
mailing list