LiveScript est un langage de programmation fonctionnel qui se compile en JavaScript. Il a été créé par Jeremy Ashkenas - également créateur de CoffeeScript - avec Satoshi Muramaki, George Zahariev, et bien d'autres. LiveScript a aussi été le premier nom de JavaScript durant une brève période dans les années 1990.

Syntaxe LiveScript est un descendant indirect de CoffeeScript. Le programme hello world suivant est écrit en LiveScript, mais est également compatible avec CoffeeScript : hello = -> console.log 'hello, world!'Si l'appel d'une fonction peut se faire avec des parenthèses vides, hello(), LiveScript traite le point d'exclamation comme une abréviation à un seul caractère pour les appels de fonctions avec zéro argument : hello!

LiveScript introduit un certain nombre d'autres idiomes spécifiques :

Name mangling Au moment de la compilation, l'analyseur LiveScript convertit implicitement la casse kebab (variables pointillées et noms de fonctions) en casse camel.hello-world = -> console.log 'Hello, World!'Avec cette définition, les deux appels suivants sont valables. Toutefois, il est recommandé d'utiliser la même syntaxe en tirets.hello-world! helloWorld!Cela n'empêche pas les développeurs d'utiliser explicitement la casse camel ou d'utiliser la casse snake. Le nommage en pointillés est cependant courant en LiveScript idiomatiques.

Tubes À l'instar d'un certain nombre d'autres langages de programmation fonctionnels tels que F# et Elixir, LiveScript prend en charge l'opérateur pipe, |> qui transmet le résultat de l'expression à gauche de l'opérateur comme argument à l'expression à droite de celui-ci. Notez que dans F#, l'argument passé est le dernier argument, alors que dans Elixir, il est le premier."hello!" |> capitalize |> console.log # > Hello!

Opérateurs en tant que fonctions Entre parenthèses, les opérateurs tels que not ou + peuvent être inclus dans les pipelines ou appelés comme s'ils étaient des fonctions.111 |> (+) 222 # > 333

(+) 1 2 # > 3

Références

Liens externes

Site officiel

Catégorie:Logiciel libre sous licence MIT