On 12/26/2012 8:34 AM, Russel Winder wrote:
But isn't that the whole point, in functional programming there is only
immutable data.  Thus a programming language that allows mutable data
cannot really be said to be usable for functional programming style.

In D, you can declare immutable data and immutable data structures. This makes it usable for FP style (along with checkable function purity).

But D also does something I think is fairly unique. A function can be pure, but inside that function, mutation is allowed as long as that mutation does not "leak" outside of the function. A pure function with immutable parameters does completely specify the function in its signature. What happens inside the function is not relevant, it is not necessary that locals be immutable.


Reply via email to