1 year later, I'm still worried about that missed opportunity of stronger 
immutability guarantees in Nim.

The whole distinction between var and let feels useless without this. When 
looking at a proc signature, I have no way to know if its parameters will be 
modified, unless they are value-types and let parameters. I like the new "func" 
keyword, but we could make it even closer to what a pure-function should be by 
implementing this, and forbidding var params for funcs.

I'm not aware of the implementation issues, but Araq said it should be possible 
thanks to his write-tracking pass. It also feels like something that should be 
introduced before 1.0, since it will break things, so...

...may I push this idea again ? :)

Reply via email to