Hi All,
Recently I found a slightly annoying behavior in Ruby -- local variable
scoping: Example of code:
Javascript version:
var aNumber = 3
function doSomething()
{
var anotherNumber = aNumber *2
}
Translate to Ruby:
aNumber = 3
def doSomething
anotherNumber = aNumber * 2
end
This does not work because aNumber is defined outside of the function.
In most other languages, a variable defined in the "parent" name space
of a function will be visible to the function. This is not the case in
Ruby. Now my question is, how can I do this in the Ruby Way:
def min(*params)
_min = nil
params.each do |p|
next if p.nil?
if _min.nil? or eval(p) < eval(_min) then
_min = p
end
end
return _min
end
a = 1
b = 2
c = 3
d = 4
puts min("a", "b", "c", "d")
Purpose of this function is to get the NAME of the variable that has
minimum value.
Thank you!
Shannon