Monday, October 3, 2011

Hello World… again

The first version of the Liberty interpreter was stillborn. It took a year to utter Hello World… and never said anything more.

The second version, based on SmartEiffel, is alive and kicking, after 2 weeks gestating.
The "runner" is screaming: Hello World!


  1. As a newcomer to Eiffel, is there an efficient way for me to find out the exact definition of the (Smart)Eiffel language [as opposed to the ECMA version]?

    I ask because it's my impression that the (Smart)Eiffel language is a move in the right direction. And I'd like to use it fully.

  2. Hi carl37, currently you can have a look at

    The LibertyEiffel conforms to it.

  3. is not perfect to work with: I can look at syntax diagrams, but it would be nice if there was a short description of how the SmartEiffel language extends or is different to the Eiffel defined in the 1992 book "Eiffel: the Language".

    I can see that creation of an object is different and it's possible to create anonymous objects from the syntax diagrams. I can see that agents have been added and there's a document about that. Plus I can see the "insert" inheritance facility, which is great, and read a paper about that. But being new to Eiffel I hoped for an expert to have a summary of these changes. Any advice?

  4. I think you hit an actual deficiency of Eiffel in late years, more or less the last 7-8: beside the defining standards there is almost no manual explaining it from the scratch or at least covering all the changes from the widespread ETL.
    Time to stop wasting my time turning the current C generator to produce scalable deep-copier (i.e. a reentrant/threadable one) and instead write a series of articles about "The Gnu Eiffel Language"

  5. That's great!

    Even just a list of the differences with a brief hint for each would be helpful, never mind anything more in depth.

    And choosing a new name for the language i.e. "The Gnu Eiffel Language", while apparently trivial, is also important: looks like you understand that. Up until now I was calling it (Smart)Eiffel in order to overtly step away from the whole ECMA situation. I will call it Gnu Eiffel starting now.

    Thanks again, this is most constructive.