Re: Re: Covariance / catcall approach -- RE: [eiffel_software] standardization of ELKS
Helmut Brandl <[email protected]> Thu, 14 Aug 2008 13:33:44 -0500
| Newsgroups | gmane.comp.lang.eiffel.gobo.general |
|---|---|
| Message-ID | <[email protected]> |
Eric Bezault wrote: >>> The Gobo compiler has two modes: either report CAT-calls at compilation >>> time (using the dynamic type sets as described in ETL2), or at run-time. >>> The former is the default. >>> >>> >>> >> Great. I would be interested in your experience with the algorithm >> described in ETL2. I have heard that it is rather pessimistic, i.e. it >> flags many catcalls even if in reality there is no real danger of a catcall. >> > > Yes, it's pessimistic. But all solutions that I heard of are > pessimistic. The advantage of this one is that it exists, and > it does not require any new Eiffel extension (which is very > important for backward compatibility). Note that the fact that > it is pessimistic did not prevent to have the whole Gobo > package (including a program as complex as an Eiffel compiler) > to be compliant. > That's good news. Catcalls are due to programming errors. But your experience leads me to the hypothesis that a code with catcall potential (in the sense, that the pessimistic algorithm flags a catcall potential) has the potential of being bad design as well. > >> I have sent this message to your gobo mailing list as well, because it >> might be more appropriate to discuss it there. >> >> By the way: In your documentation at gobosoft.com (dated march 2006) you >> described a lot of limitations of your compiler. Have you already >> overcome these limitations? >> > > You can have garbage collection with the Boehm GC. > `deep_*' features are implemented, Unique constants as well. > Exceptions are only partially implemented. > > These limitations may seem a lot, but gec is nevertheless able > to compile applications with several thousand classes that were > initially developed with ISE EiffelStudio, and that without having > to modify a single line of code in the source of the applications. > > Sounds good. So gec is actually better than its documentation. Congratulations. What about tuples and agents? Because you decided to be compliant with EiffelStudio, you have the great advantage of being able to test your compiler with existing SW. For tecomp I am currently aiming at an ECMA compliant compiler. But I think in order to have good benchmarks I also have to have a compatibility mode for ISE Eiffel (it does not seem to be that difficult, FreeELKS compatibility would be the first step). Your point is very convincing (but it is definitely some work to do :-()! Regards Helmut The Eiffel Compiler: http://www.sourceforge.net/projects/tecomp Documentation: http://tecomp.sourceforge.net ------------------------------------ To Post a message, send it to: [email protected] To Unsubscribe, send a blank message to: [email protected]! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/gobo-eiffel/ <*> Your email settings: Individual Email | Traditional <*> To change settings online go to: http://groups.yahoo.com/group/gobo-eiffel/join (Yahoo! ID required) <*> To change settings via email: mailto:[email protected] mailto:[email protected] <*> To unsubscribe from this group, send an email to: [email protected] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/