I think it's important to have a consistent answer to the question: "Can you treat symbols as blocks?". Niko On Tue, Aug 30, 2011 at 2:30 PM, Tudor Girba <tudor@tudorgirba.com> wrote:
I proposed this some one or two years ago. I got shut down, but I still find it a good idea.
And I even have a semantic reason: - A Block represents a piece of functionality that can be evaluated with some input - A Symbol often represents a selector which in turns represents a piece of functionality that can be evaluated with some input.
From this point of view, they have similar responsibilities and we should be able to treat them the same.
Cheers, Doru
On 30 Aug 2011, at 14:12, niko.schwarz@googlemail.com wrote:
Hi,
Symbol responds to #value:, but not to #value:value:.
At some point, Symbol and Block were decided to have the invocation protocol in common. I find this great. Therefore, I think, Symbol should also respond to #value:value:, as follows:
value: anObject value: anotherObject    ^ anObject perform: self with: anotherObject
Of course, it should also respond to #value:value:value: and #value:value:value:value:
Niko
-- http://scg.unibe.ch/staff/Schwarz twitter.com/nes1983 Tel: +41786126354
-- www.tudorgirba.com
"Speaking louder won't make the point worthier."
-- http://scg.unibe.ch/staff/Schwarz twitter.com/nes1983 Tel: +41786126354