Gobo Eiffel Compiler |

The Gobo Eiffel Compiler, or gec for short, is an open source command-line Eiffel compiler. The Eiffel community is already equipped with several Eiffel compilers, all supporting their own dialect despite the efforts of standardization of the Eiffel language and kernel library. So why yet another Eiffel compiler? The goal of gec is not to augment the number of incompatible Eiffel compilers but to provide both the open source community and the industry with a compiler fully compatible with ISE Eiffel and compliant with the ECMA Eiffel standard. OK, so what is the benefit of having a clone of ISE Eiffel? First gec is not a clone of ISE Eiffel. It uses different compilation techniques which make the compiler and the compiled applications perform better in some contexts or in some parts of the development cycle. Then, gec also provides an alternative to ISE Eiffel for those who invest a lot in the Eiffel technology and don't want to be tied to a single vendor.

gec is the only open source Eiffel compiler that is released under a less constraining license than GNU GPL. To my knowledge it is also the first and only one whose source code can be compiled by all its major Eiffel compiler competitors, as is the case of all other classes provided in the Gobo Eiffel Project. However, note that although it is already able to compile all Eiffel classes included in the Gobo Eiffel Project, gec is still under development. You can have a look at the list of functionalities not yet implemented as well as at the list of possible future developments, should you want to contribute to the project.

This documentation of gec is structured as follows:

> Using gec
>   Configuration, compiler options, ECF files.
> Compiler Technology
>   Compilation techniques used in gec.
> Limitations
>   Limitations, bugs, incompatibilities with ISE Eiffel or the ECMA Eiffel standard, and other deficiencies.
> Future Work
>   List of possible enhancements and future developments.
> Supported Platforms
>   List of C compilers, operating systems, hardware on which gec has been tested.
> See Also
>   Bibliographical references, related resources and acknowledgments.
> Downloading Instructions
>   License agreement and downloading instructions.