Klaus D. Witzel
klaus.witzel at cobss.com
Wed Jan 2 19:01:16 UTC 2008
On Wed, 02 Jan 2008 19:33:11 +0100, Igor Stasenko wrote:
> On 02/01/2008, tim Rowledge <tim at rowledge.org> wrote:
>> On 2-Jan-08, at 10:09 AM, Tony Garnock-Jones wrote:
>> > Then I went looking. CompiledMethod is a direct subclass of ByteArray,
>> > and has no instance variables.
>> Yes, there have been plans to fix that for years but the work to do
>> (what was once a simple change) is sufficiently complicated by traits,
>> existing .pr files, tool related hacks and so on that it has become a
>> major change that would require considerable resources. I tried again
>> last year but it just grew into too much work.
> Btw, this is one of the biggest things what i dislike in squeak.
Are you aware of the consequences of such dislikeness? :) CompiledMethod
has a dozen or so accessors which, to the average Smalltalk developer are
"gettable" instance variables (some are even "settable").
Encapsulation rules! :)
You dislike accessors? :) Try adding a new one to CompiledMethod. Still
dislike accessors ? :)
> As CompiledMethod class comment reads:
> "My instances are methods suitable for interpretation by the virtual
> machine. This is the only class in the system whose instances
> intermix both indexable pointer fields and indexable integer fields."
> There is a lot of dirty hacks around this in VM, around attaching a
> reference to source code, around using primitive index (FFI/external
> Lot of stinking code, just to make it working properly, and very hard
> to add anything new.
> How this can be called a 'standard' by any means?
> Are we brave enough to fix things which holding progress? Any chance?
More information about the Squeak-dev