Ben,

Like I said on  IRC, I was rather surprised to find that in Disciple,
function parameters are by default passed by reference.

I can see that pass-by-reference has some advantages with regard to
efficiency. I also have no problem at all const references, but 
by default mutable references just seems weird to me. I spend so
much time in when coding in C and C++ adding 'const' to function
and method parameters which are pointers or references.

One of the things I've been saying for some time about imperative
languages is that "Mutable data is the wrong default". I have no
problem with optional mutable references, but I believe the default
should be immutable references, that would require an implicit
local copy to obtain a mutable local value.

In short, my problem is not pass-by-reference, rather that the
the referenced data is by default mutable.

Erik
-- 
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/

-- 
Disciple-Cafe mailing list
http://groups.google.com/group/disciple-cafe

Reply via email to