brain fever
David Farber
dfarber at numenor.com
Sat Nov 23 05:46:32 UTC 2002
Imagine a read-eval-print session that went like this:
> []
ObjectLiteral[0xD000]
> [] value
ObjectActivation[0xD001]
> `d
Character[`d]
> [`d] value
Character[`d]
> [:char | `d] value :`c
Character[`d]
> [:char | char] value :`c
Character[`c]
> [| char :[`d] |
[> self char] value
Character[`d]
> [:char | char :[char] |
[> self char] value :`c
Character[`c]
> [:char | char :`d |
[> self char] value :`c
Character['d]
> ([:char | char :[char] |] value :`c) char
Character[`c]
> ([:char |
+|> char :[char]
+|> change :[char :`d] |]
(> value :`c) change; char
Character[`d]
>
OK, so I did gratuitously change some syntax around:
`d => $d
object msg :arg => object msg: arg
var :object => var := object
I'm sure there is lots to nit-pick about; for instance, I think a lone vertical bar is ambiguous.
But I mostly just let the ideas play themselves out; and I must admit that I am very pleasantly surprised--that, of course, must mean that someone already had this idea long ago.
david
--
David Farber
dfarber at numenor.com
More information about the Squeak-dev
mailing list
|