XL est un langage de programmation "par concept", permettant au développeur d'ajouter lui même ses propres concepts. Il n'a qu'un seul opérateur "fondamental", ->, qui se lit "se transforme en", et peut être utilisé pour définir des variables (X -> 0
), des fonctions (successor X -> X + 1
), des macros, etc.
La définition de factorielle ressemble à ça:
0! -> 1
N! -> N * (N-1)!
Pour prouver qu'il est possible d'ajouter ses propres concepts, les concepts classiques des autres langages de programmation sont définies dans la librairie. Par exemple, la définition de "if then else" ressemble à ça:
if true then X else Y -> X if false then X else Y -> Y if true then X -> X if false then X -> false
XL est entre autres le langage de base de Tao3D et de ELFE.
I'm a french software developer
who began with video games,
keeps inventing crazy programming languages,
and loves designing operating systems.
I'm also an amateur physics researcher,
and a tinkerer in strange forms of art
I am presently working at Red Hat
on SPICE and 3D virtualization.
Créé le 11 sept. 2017