tyrrell at canis.uiuc.edu
Sat Sep 23 01:38:35 UTC 2000
In Oasis, when my loader hits something like this it merely creates the class
so that it will be present for the methods that follow. Same thing for individual
method definitions- in any circumstance requiring that a class be present, Oasis
makes sure that the class gets created if it does not already exist. This allows
me to look at arbitrarily complete or incomplete chunks of code without hassle.
It also eliminates all of the class ordering problems ( except for the class
initialization ordering problem- that one is a deeper problem ).
When the file-in is complete, I know which classes were defined and which were not-
that is, Oasis knows the difference between classes which had a definition provided
for them, and those that did not. Either way, I can look at the code and see what was
in the file-in.
As for the rest of the story, at this time I can't help you there- that will
take something else, such as SCAN or Collage.
> Often, when I try to file in some code that looks interesting and has
> been posted to this list, the filein starts OK but then I get the
> MessageNotUnderstood methodsFor:stamp:
> issued from the compiler.
> Now, as a moderately accomplished Smalltalker, I poke around in the
> debugger and I find on the stack something like
> ^ TheWorldMenu methodsFor: 'as yet unclassified' stamp: 'mdr
> 9/4/2000 11:05'
> and I figure out that because of the way that a fileIn actually
> executes the code in the file the problem is that a class called
> TheWorldMenu is being extended by the filein, but my image does not
> define that class at all, hence the problem.
> However, if I were even more of a novice than I am, I think that I
> would be really confused an surprised by this MessageNotUnderstood,
> when what I might expect is a warning like "undefined class
> TheWorldMenu". Better, I might expect the filein to complete, and
> then get a warning that I also need to filein the class "The
> Thinking about this even more, what both the novice and myself really
> need is some sort of dependence mechanism that would tell me where
> the H*ll to go looking for "TheWorldmemu".
> Thoughts, anyone?
More information about the Squeak-dev