Re: SmartEiffel shortcomings?
Wolfgang Jansen <[email protected]> Wed, 13 Jul 2005 11:37:53 +0200
| Newsgroups | gmane.comp.lang.eiffel.smalleiffel |
|---|---|
| Organization | University of Potsdam, Institute of Informatics |
| Message-ID | <[email protected]> |
Dominique Colnet wrote: > Wolfgang Jansen wrote: > >> Do you know that I published introspection, storable, and >> evaluation and printing of expressions from the debugger >> more than two years ago? > > I understand your feeling. It is sad to see that the work done is not > included. Yes, you are right. > To come back on introspection, did you look at the Eiffel type used > in the new version ? > It was not like this 2 years ago. > But again, I understand your feeling and I am sorry for that. A few weeks or month ago I tried to adapt my old STORABLE class to the new SE2.* version, so I had a look into the new type system. As an outsider (in fact, as a hacker), I had problems to understand some new developments, in particular, what the precise (and distinguishing) meaning of classes TYPE, LIVE_TYPE, TYPE_MARK, ... and their relations (similar for FEATURE_* and others) is. This is at least one more level of granularity than the previous E_TYPE, RUN_CLASS ... system. I hoped to find the old classes just under a new name (and with slight changes). This was a misleading approach and I'm not sure whether I've understood the concept. It remains the impression that the fine-grained system of TYPE, LIVE_TYPE ... is overdeveloped. There are so many casts (sic!) between *TYPE* classes (more than for the old system) that a common class (or a different splitting of the intended purpose) seems to be appropriate. I did not look for classes designed for introspection (and did not find one by access). But not the possible misunderstanding of the new type concept prevented the complete adaption of my own introspection, it was the new agent management. It is really too complicated to identify agents by their type-class-line-column. Persistence of objects of developing classes, for example, needs the identification of types and attributes by name, identification of agents by type and routine names as well asthe pattern of open and closed arguments. The type-class-line-column (in particular the line) is subjected to elementary class text editing and cannot be used for agent identification. I gave up. So far I could not compile any of the persistence examples coming with SE2*. Thus, introspection and persistence do not exists in SE2.* (or are hot air). Taking all together, I'm not sure whether I've got the qualification to estimate the new type system -- in general as well as especially for introspection. I just have observed some effects. Wolfgang Jansen