Neha Patil (Editor)

EC (programming language)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Implementation language
  
eC

Paradigm
  
Multi-paradigm: procedural, object-oriented, generic

Designed by
  
Jérôme Jacovella-St-Louis

First appeared
  
2004; 13 years ago (2004)

Stable release
  
Ecere SDK 0.44.15 / 4 August 2016; 7 months ago (2016-08-04)

Typing discipline
  
Static, nominative, partially inferred

eC (Ecere C) is an object-oriented programming language, defined as a super-set of the C language.

eC was initially developed as part of the Ecere Cross-platform Software Development Kit project.

The goals of the language are to provide object-oriented constructs, reflection, properties and dynamic modules on top of the C language while maintaining C compatibility and optimal native performance.

eC currently relies on GCC or Clang to perform the final steps of compilation, using C as an intermediate language. There are, however, plans to integrate directly with LLVM to skip the intermediate C files.

eC is available as part of the ecere-sdk package in Debian/Ubuntu and other derived Linux distributions. A Windows installer also bundling MinGW-w64 is available from the main website. The free and open-source SDK including the eC compiler can also be built for a number of other platforms, including OS X, FreeBSD and Android.

It is also possible to deploy eC applications to the web by compiling them to JavaScript through Emscripten.

Sample code

"Hello, World!" program:

GUI "Hello, World":

References

EC (programming language) Wikipedia