[Pharo-dev] Closure vs BlockClosure

Sebastian Sastre sebastian at flowingconcept.com
Thu Apr 17 13:15:36 EDT 2014

On Apr 17, 2014, at 1:54 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:

> I don't think this is right.  Yesterday Clément and I had lunch with Dan Ingalls and we talked about the origin of blocks.  At first blocks were not even real objects; instead they were just a syntactic construct for delayed evaluation.  Over time the original Smalltalk team found they needed more and more useful features, and they wanted everything to be objects so they introduced both the syntax for blocks and the class BlockContext, but they didn't look at other languages and so they didn't implement blocks as closures.
> So I think its more accurate to say
>    Over time Smalltalkers found blocks were /really/ useful.  Later on they found out that they could implement blocks as closures, with the result that they were even more useful and much cleaner, leading to a more efficient virtual machine.
> But ok, this is not a pressing thing. Was just a tough.

That historic connection is really important. 

I love to hear grey haired people’s advice :)

Thanks a lot for sharing it here Eliot.

> If it ain't broke don't fix it.  




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20140417/4d9d85a1/attachment-0002.html>

More information about the Pharo-dev mailing list