On Mon, Oct 18, 2010 at 4:40 AM, Oscar E A Callau <oalvarez@dcc.uchile.cl> wrote:
Hello all,

I was wondering what actually the inspector does in the following case:

When you explore (or inspect) the expression: Class environment
you get all classes in the system dictionary. If you navigate inside a class, for example AColorSelectorMorph, you can see all its properties and one of them is environment, if you go inside it, you get again all classes in the system dictionary. So, you can repeat this infinitely (or until you get run out of memory, I guess)

Is it the behavior of a lazy inspector? If true, why I cannot inspect a mutually-recursive class definition, like this:

Object subclass: #Foo
� � � �instanceVariableNames: 'bar'
� � � �classVariableNames: ''
� � � �poolDictionaries: ''
� � � �category: ''

Foo>>initialize
� � � �bar:= Bar new

Object subclass: #Bar
� � � �instanceVariableNames: 'foo'
� � � �classVariableNames: ''
� � � �poolDictionaries: ''
� � � �category: ''

Foo>>initialize
� � � �bar:= Foo new

here should be foo := Foo new.

Anyway, you should be able to browse these classes without problems.
The problems is in instance creation. For example, if you evaluate: Foo new.

Cheers

mariano


Thanks in advance.

P.S.: How can I stop my execution in the pharo image when it is in a infinite loop? I can't remember what the shortcut was.


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project