|
|
|
|
|
by piano
2532 days ago
|
|
> - Pure functions: these allow you to statically guarantee that a piece of code doesn't perform any IO and is a completely deterministic function of its inputs. Is this actually true? As far as I know D's pure isn't the same as eg. Haskell pure, it only prevents modifications of global state, but you can still touch data referenced by arguments. I haven't done much D though so I'm not sure what the semantics really are... |
|
Ironically, sometimes people complain that the purity checks are too stringent :-)
One thing interesting about pure functions in D is the purity restrictions can be relaxed by using a `debug` prefix:
This makes it very, very handy to debug your functional code.