Re: Differences between SmartEiffel and ECMA
Piotr Galuszkiewicz <[email protected]> Fri, 28 Oct 2011 11:32:33 +0200
| Newsgroups | gmane.comp.lang.eiffel.smalleiffel |
|---|---|
| Message-ID | <bgvnhpccfctzddzhyhjj@tawa> |
Hi Howard, Thank you for your reply. I=E2=80=99m currently a .NET developer, but I=E2=80=99m passionate about th= e Eiffel language. It=E2=80=99s very sad that it is so unpopular, because i= t=E2=80=99s far more better than all the current =E2=80=9Cmain-stream=E2=80= =9D ones. I=E2=80=99m most familiar with the ISE implementation, but that one is eith= er very expensive or GPL (so you are forced to be hobbyist only) and the Sm= artEiffel seems to be the only one which is feature-full, stable and really= free. How do you judge it =E2=80=93 is it really production stable (at the= time of its latest version) or it=E2=80=99s rather an academic =E2=80=9Cpr= oof of concept=E2=80=9D with many gaps here and there ? Based on what you wrote, it seems that SmartEiffel doesn=E2=80=99t miss any= substantial features of the ECMA variant (at least from language point of = view). You mentioned differences in kernel and libraries =E2=80=93 what kin= d of differences ? Are they just another approach to solutions, or they are= somehow feature-limited or not well-finished ? I also know about the Gobo project (would be another free option), but if I= look at (for example) the compiler description, it=E2=80=99s full of missi= ng basic features, co basically can=E2=80=99t be used=E2=80=A6 Best regards, Piotr "Howard Thomson" <[email protected]> pisze: > Hi Piotr, >=20 > I don't recall that there is anywhere specific for this, unfortunately. >=20 > I am an ex-user of SmartEiffel, and as it hasn't changed much, if at > all, since I stopped using it, I should be able to highlight the > substantive differences ... >=20 > The two most prominent differences are in letter case acceptability for > identifiers, and non-conforming inheritance, with other substantial > differences in the kernel and other core libraries. >=20 > SmartEiffel does not follow the case-insensitiveness of ECMA and all > non-SmartEiffel implementations of Eiffel, rejecting as invalid > identifiers that do not follow the recommended selection of > all_lower_case for routines and variables, Initial_upper_case for > constants [and possible once routines] and ALL_UPPER_CASE for class > names. >=20 > As a substantial corpus of code that I have worked on originated from C > and C++ source and does not follow these constraints, I ended up > spending more time re-adapting SmartEiffel to be smart enough to be able > to continue compiling my Eiffel conformant code than getting useful work > done ... >=20 >=20 > For non-conforming inheritance, SmartEiffel introduced the keyword > 'insert' following 'inherit' to denote that the functionality of the > inserted classes be available to the current class, but that the current > class be not conformable with [assignable to] variables of the inserted > class. >=20 > ECMA specifies the 'inherit {NONE} ...' syntax for the above. >=20 >=20 > There are substantial differences in the libraries as well, together > with differences in kernel expanded classes such as INTEGER_8/16/32/64, > REAL_32/64 vs FLOAT/DOUBLE. >=20 >=20 > I have since moved to using the Gobo libraries and my own variant of the > 'gec' compiler as my primary toolset, which does maintain source code > [although not configuration file] compatibility with EiffelStudio. >=20 > Good luck with your research, >=20 > Regards, >=20 > Howard >=20 >=20 >=20 >=20 >=20 >=20 > -----Original Message----- > From: [email protected] > To: [email protected] > Subject: Differences between SmartEiffel and ECMA > Date: Mon, 24 Oct 2011 13:16:50 +0200 (CEST) >=20 > Hello, > Can somebody point me to a resource where I can find the language differe= nces > between SmartEiffel and the ECMA standard ? >=20 > Piotr >=20 > --=20 > Howard Thomson=20 >=20 >=20 ---------------------------------------------------------------- Twoj wlasny dom za 675 zl/m-c! http://linkint.pl/f2a56