Comment by arohner
15 years ago
He was definitely clueless about the implementation of Ruby. MRI started as a half-assed Scheme implementation, which is easy to see when you read the MRI source code. Scheme has lexical scoping, while Ruby has...python/perl-style scoping.
Scheme has first class anonymous functions, while Ruby has blocks, which are a hack around MRI's slow function calls.
while Ruby has blocks, which are a hack around MRI's slow function calls
Is this really the reason? I thought Ruby has blocks because Smalltalk has blocks.
I believe smalltalk block are BlockClosure objects that can be passed around like any other parameter.