In math we also have the set-notation like:
A = { a | a > 0 }
which means something like: A is set of elements,
greater then 0… and so on. This could also
be read similar to block-syntax. We get a set of elements
on which we perform some operations (like map+lambda
call in funcional languages, anonymous function +
set of elements).
regards.
In math the absolute value is typically
the double pipe:
|x| = 27
This reminds me stuff like:
Stuff.each { |x| puts 'hello '+x }
Are these two related in any way?
IIRC, the block syntax in Ruby is reminiscent to Smalltalk syntax,
which used blocks like this:
[ :x | Transcript show: 'hello ', x ] “the equivalent of Ruby
block { |x| puts 'hello '+x }”
and used | vars | to declare some temporary variables in a piece of
code.
| x y |
^ x + y
Square brackets are not square anymore (as they are used in Ruby for
indexing purposes - C inheritance). The odd variable names with
markers (:x) were replaced by the delimited block of names (| x |) and
voilà.
Regards,
Adriano.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.