Hi Frank, It would be cool to have Classboxes back on track. The original version of Classbox requires a new method lookup. This can be achieved either by modifying the VM or wrapping the method to intercept a call (using method wrapper for example).
Interesting variants of classboxes could be realized by: - having a lookup for classes: when you write "Morph new", then the name "Morph" is looked up, pretty much as methods are - having a class Selector that get evaluated into a symbol. You can then achieved selector namespaces, which does not incur a cost at execution. Cheers, Alexandre On Jun 1, 2012, at 10:55 AM, Frank Shearar wrote: > I mused with a colleague about how I'd like to see "lexically scoped > monkey patching", and he pointed me to some guys that want to add that > to Ruby (http://timelessrepo.com/refinements-in-ruby). Note the > inspiration for their work: ClassBoxes! > (http://scg.unibe.ch/research/classboxes) > > I remember reading the paper years ago, and started working through it > again now. Something that's not clear to me is this: does ClassBoxes > require VM-side changes? (Because it changes the method lookup, after > all, searching packages for methods before working up the inheritance > tree.) If so, how invasive are they? If not, do we have a ball-park > estimate of how much work it would be to update ClassBoxes to a more > recent Squeak/Pharo? > > I'm more than happy to do the dogwork. I'd just like to know whether > I'm signing up for months of work or not. > > Thanks! > > frank > -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
