Alexander Kellett wrote:
> yes
> i've coded in c++ also in which pass by ref is possible
> and abhor it
> pass by ref is just plain evil
> pass by ref in which the *caller* states that
> its a ref, (as in c via a ref and a de-ref of ptrs),
> is okay in my books, but implicit anything sucks

Actually, I absolutely agree with you. I do beleive in functional
design. the idea that the effect are coming out on the left side and
the input is gogin in on the right. Very good. Unfortunately Ruby isn't
pure by-val. I don't know why exactly, maybe there are good reasons
--probably performace related. But since it isn't by-val I don't think
it does a whole lot of good to a have a partial barrier. The fact is,
one must be aware the parameters going in to a method, might be altered
in route. Giving the odus of duck-typing, i.e. we may not know what
type of object is being fed our methods necessarily, this might or
might not happen dependent soley on the type of object.

A quick example just to make myself clear:

class A
def mud(x) ; x + 1 ; end
end

class B
def mud(x) ; @x += 1  ; end
end

def quasi_mud(x)
x.mud
end

a = A.new
b = B.new

quasi_mud(a)  # a remains just as it was
quasi_mud(b)  # b is no longer the same

T.