Hi Eliot - I've just successfully converted a 3.10.2 image to closures (see follow-on message to Squeak-dev). In the process, the following three problems occurred: 1) DecompilerTests is not present in 3.10 and PreRecompilationPatches.st doesn't load unless you remove the modification to DecompilerTests. 2) #isMessageNode is not understood by ParseNode or MessageNode but sent in the recompilation process. I'm not sure where this is coming from (or where it should be); it could be a bug in 3.10. 3) Recompilation of Preferences results in spurious ERROR listings in the transcript during recompilation. Again, no idea where this comes from. Other than that the conversion went entirely flawless. Cheers, - Andreas |
Hi Andreas, On Fri, Mar 6, 2009 at 11:20 PM, Andreas Raab <[hidden email]> wrote:
Thanks! Usage is building. I got the following classic bug from Lukas Renggli this a.m. (I don't have a fix yet) | col | col := OrderedCollection new. 1 to: 11 do: [ :each | col add: [ each ] ]. col collect: [ :each | each value ]) answers #(12 12 12 12 12 12 12 12 12 12 12) instead of #(1 2 3 4 5 6 7 8 9 10 11).
(Sigh...) Cheers, - Andreas |
Oops. That was intended for Andreas. I'm not sure I like the gmail interface so much :( Apologies. On Sat, Mar 7, 2009 at 10:34 AM, Eliot Miranda <[hidden email]> wrote: Hi Andreas, |
In reply to this post by Eliot Miranda-2
Eliot Miranda wrote: > Thanks! Usage is building. I got the following classic bug from Lukas > Renggli this a.m. (I don't have a fix yet) > > | col | > col := OrderedCollection new. > 1 to: 11 do: [ :each | col add: [ each ] ]. > col collect: [ :each | each value ]) > > answers #(12 12 12 12 12 12 12 12 12 12 12) instead of #(1 2 3 4 5 6 7 8 > 9 10 11). > > (Sigh...) I noticed that. It's optimized to:do: blocks. My first attempt at showing the difference between closure and context VM was: 1 to: 10 do:[:i| WorldState addDeferredUIMessage:[Transcript cr; show: i]. ]. And of course, that prints 11. If you change it to this: (1 to: 10) do:[:i| WorldState addDeferredUIMessage:[Transcript cr; show: i]. ]. it works fine because to:do: is no longer optimized. Cheers, - Andreas |
Free forum by Nabble | Edit this page |