Purpose: this page lists issues which might be hard to change, or even impossible without breaking current scripts - see also Easy changes for Lua
Edgar Toernig's Son Of Lua (SOL) - The 0.41 snapshot was announced 31/02/2001, and is available at http://lecker.essen.de/~froese/sol/ (with a summary of the changes at [1]).
The key change seems to have been to remove tags and to associate a type/class reference instead. The consequences range from affecting a.f() vs. a:f(), to the fact that no more special tag manipulation calls are needed. Instead, it looks like everything can be done by manipulating the Lua table that gets used to store methods and other OO-like metadata. On the surface, it would seem that this is purely a simplification, and hence a very attractive change - but I am too new to Lua to understand the trade-offs fully.
Can anyone comment and shed more light on this?
-jcw
Another key change (from my understanding... haven't verified it yet) is that Sol doesn't treat the global space as a special case (one of my Lua warts). --John Belmonte
The new handling of methods is only one change in Sol. Where Lua's goal is an embedding language, Sol tries to become a more general stand alone language. The Diffs2Lua is not up to date. A not so verbose change log is available at http://lecker.essen.de/~froese/sol/ChangeLog .
And about the global table: that's right. It is handled like any other table. It's only special role is that global variables are stored in it.
-Edgar Toernig
2001-06-06
(62.54.182.180)
Note: you are looking at
the snapshot of an old wiki
- much of this information
is likely to be very outdated
