Subtle but incompatible change
Brian Rice
water at tunes.org
Sat Feb 18 08:26:13 PST 2006
Hi all,
I've just changed the VM so that applyTo: no longer takes an
&optionals: optional to pass optional parameters for block applications.
This feature is only used if you make a literal block with optionals
(using a &-prefixed parameter declaration in the header, which had a
bug that is also now fixed) and then tried to use those optional
arguments. It has no impact on message-sends with optionals, since
those are compiled directly to bytecode without the explicit send.
In any case, the &optionals: keyword took an array of alternating
keyword symbol and value pairs, and there was not much safety in this
parameter-passing (which can cause crashes if used incorrectly), so I
extracted the feature out into an #applyTo:optionals: which does
contain the checking and doesn't have to burden the ordinary call
with verification overhead. It is an exercise for the user (should
they choose so) to provide a better facade for that call. :)
Nothing in the Slate libraries uses this functionality, so it's not a
big deal of a change. Just remember that updating VM's and images
should happen concurrently.
--
-Brian
http://tunes.org/~water/brice.vcf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : /archives/slate/attachments/20060218/415a9421/PGP.pgp
More information about the Slate
mailing list