Save Eiffel Configuration File in a non-XML format

One line summary

Instead of using XML to save the Eiffel Configuration File (aka ECF), use a human readable format.


Note started


Before the introduction of ECF in version 5.7, EiffelStudio used to read Lace files as project configuration file. However there were too many limitations to that format and the EiffelStudio development team chose a new format when it added new features that were not backward compatible with Lace.

However some have complained that using XML for that new format was not the best thing and wanted a format that looks more like Lace and thus more like Eiffel.

The idea of this project is to analyze all the features that ECF offers and to propose an alternative file format that will be both forward and backward compatible (i.e. an old version should be able to read a new version and ignore what it does not understand, a new version should be able to read any old versions).

If possible the graphical UI for editing configuration file should be updated to support this new format.

Note that we have an internal representation of ECFs, and ideally the parsing and saving of the configuration files should simply be a translation to and from that internal representation.

Skills needed

Knowledge of parsing. Taste for building nice UI applications.




Student will get a very good knowledge of Eiffel and the project configuration files used by the compiler. He will certainly learn to make compromise as changing a format of something is always challenging since there are as many opinions they are users.

Community will benefit from a possibly nicer to read, easier to extend project configuration format and a nicer GUI.




Internals should be documented in the source code as well as on http://dev.eiffel.com. User documentation on http://docs.eiffel.com


Peter gummer

Possible mentor

Jocelyn Fiat