Home | About | Partners | Contact Us
SourceForge Logo

Quick Links

Home
The new XL web site
News
Thoughts and Rants
License
SourceForge Info
Download
Browse CVS
Mailing Lists

XL Links

XL Home
The XL Touch
Basic XL features
Why use XL?
Compiler Status
Frequently Asked Questions
XL Mailing list

Understanding...

Concept programming
Moka
XL
Thin Tools
Active Libraries
Refactoring
Optimizations
Coda
Notes

More Info

Contributors
Related Ideas
Some history
Applications
Other links
The GNU Project

The XL Programming Language

XL is a general purpose extensible programming language. The key word is extensible: XL can safely be extended through libraries and compiler plug-ins, in ways that are very difficult or limited with languages such as C++ or Java. This makes XL a good tool for concept programming.

XL borrowed ideas from quite a few languages: Ada, Basic, C, C++, C#, Eiffel, Erlang, Java, Intercal, Lisp, Pascal, Perl, Prolog, Python are some of the languages that were considered during its design. XL borrowed a lot from these respected ancestors, trying to at least incrementally improve over them. As a result, XL is believed to be, quite simply, the best programming language you can dream of today. If only the compiler was finished!

News: Now that the language became relatively stable and mature, I decided it was time to break everything, again. See the new development happening on the new XL web site for more info...

What does it look like?

A few examples of XL code, which should all compile with today's compiler, since they are part of the test suite:

Secondary Objectives

The primary objective of XL is to be a good basis for concept programming. Additional objectives in designing the new language included:

More Information

XL compared to other languages
Why use XL? Why is XL useful?
Other Frequently Asked Questions
Status of the XL compiler
Mailing list
Concept Programming
Active Libraries
Thin tools and compiler plug-ins

Copyright Christophe de Dinechin
First published Feb 17, 2000
Version 1.7 (updated 2003/10/29 19:58:07)