Tout ce qui se transforme en Javascript

Décembre 2012

Altjs est un site qui présente une grosse liste de langage pouvant se compiler en Javascript.

Pour ceux qui se demandent de quoi il est question, il s'agit d'un site qui présente tous les langages qui ont un lien avec Javascript. Par exemple CoffeeScript est un langage de script qui peut se compiler (transformer) en Javascript.

Voici donc une traduction rapide de la page pour ceux qui maîtrisent mal l'anglais :

Nouveaux langages basés sur JavaScript

Il s'agit de langages qui utilise un système de remplacement de syntaxe pour se transformer (ou convertir) en Javascript. Ils ne proposent pas forcément toutes les possibilités de Jvascript.

  • CoffeeScript une alternative à Javascript.
  • Coco Du CoffeeScript avec quelques trucs en plus.
  • Contracts.coffee
  • Jack un langage qui met l'accent sur la simplicité et le fun.
  • JS11 un outil pour débugguer.
  • Sibilant un langage dans le style de Lisp.
  • Kaffeine pour les professionnels, il s'agit d'un langage qui enrichi Javascript.
  • Move un langage simplifié pour les débutants.
  • Parsec CoffeeScript un fork de CoffeeScript.
  • Zedscript une alterntive en pseudo-code à la syntaxe de ECMAScript.
  • LiveScript Coco mais un peu plus compatible avec CoffeeScript.

Les améliorations de JavaScript

En matière de sécurité

  • ADsafe un script côté client pour sécurisé les libs externes.
  • Caja
  • Dojo Secure un framework pour créer des mashups sécurisés.
  • FBJS Facebook JavaScript, utilisé pour les gadgets Facebook.
  • Jacaranda un vérificateur statique avec des fonctions objets.
  • Gatekeeper Microsoft Research project.
  • Microsoft Web Sandbox Technology preview, la sécurité par l'isolation.

Typage statique

  • SafeJS
  • Script# [commercial] compile du C# en JS.
  • MileScript [commercial] en langage dans l'esprit C# et Java, mais qui compile en JS. gratuit pour une utilisation non-commerciale (ou éducative).
  • Mascara [commercial] Améliore JavaScript avec des fonctionnalités puissantes comme les classes, namespaces et type-checking.
  • Roy langage fonctionnel qui tente de rester proche de Javascript
  • Prefix dans le style de C# .
  • Elm langage fonctionnel qui se compile en HTML, CSS, et JavaScript
  • Pit compilateur de F# vrs Javascript
  • JSX une alternative rapide et facile à JavaScript

Synchrone vers asynchrone

Extensions de Language

Next-Generation JavaScript

Il s'agit de proposition comme futur standard Javascript. Le futur standard se trouve peut être dans cette liste :

Portages Ruby

  • HotRuby Exécute l'opcode, compilé par YARV sur Ruby dans un navigateur web ou en Flash.
  • rb2js conversion de Ruby vers JavaScript.
  • Red écrire comme Ruby et exécuter comme JavaScript.
  • Quby utiliser pour coder des jeux (pas open source par contre).

Portages Python

  • PYXC-PJ Python vers JS.
  • Pyjamas Python vers Javascript.
  • Skulpt Python. côté client.
  • PyCow Python vers MooTools JavaScript.
  • PyvaScript une syntaxe à la Python qui se transforme en JavaScript.

Java Ports

  • GWT Google Web Toolkit, compiles java to JavaScript
  • Java2Script Eclipse Java to JavaScript compiler plugin and JavaScript version of SWT.
  • j2js Java bytecode to JavaScript.
  • STJS (Strongly-Typed JavaScript) Maven plugin that generates JS from Java source.
  • BicaVM A JVM in JavaScript

Portage Lisp, Clojure & Scheme

Portage OCaml/ML Ports

Portages Haskell

  • UHC
  • YHC
  • JSHC un compilateur de Haskell vers JavaScript programmé en JavaScript.
  • ghcjs Haskell vers Javascript (intégré à GHC)
  • Haste générer du code JS depuis Haskell

Dérivés de Smalltalk

  • Clamato
  • Silver Smalltalk [commercial] Smalltalk dans un navigateur web.
  • JTalk implémentation du langage Smalltalk qui s'exécute dans le JavaScript runtime.
  • Lively Kernel - développement smalltalk dans un navigateur.

Portages C/C++

  • Emscripten LLVM vers JavaScript.
  • mala vala (gobject) vers JavaScript.
  • Clue compilateur de C vers d'autres langages (Lua, JS, Perl 5, C, Java, CL).

Portages vers BASIC (si si on utilise encore cela)

  • NS Basic/App Studio [commercial] comilateur Visual Basic-style BASIC vers JavaScript compiler. avec un IDE et utilisé avec les mobiles comme cibles.
  • qb.js QBASIC en JavaScript.

Multi-cibles

  • Haxe compile pour beaucoup de choses (C++, Flash, JS, Neko, PHP).
  • Fantom
  • Monkey [commercial] langage massivement multi-plateforme (HTML5, Native OpenGL/OpenAL (Windows + Mac), Android, Flash, iOS, XNA).
  • Clue compilateur de C vers d'autres langages (Lua, JS, Perl 5, C, Java, CL).
  • jsc [experimental] .NET vers JavaScript, ActionScript, PHP ou Java.
  • JSIL compile le bytecode .NET (CIL) vers JavaScript.
  • IL2JS génère JavaScript, CSS et HTML depuis les DLL .NET

Langages qui produisent à la fois la partie client et la partie serveur

  • Opa
  • Fun
  • Ur dans le genre de ML ou d'Haskell
  • WebSharper compilation de F# vers JS.
  • mobl un langage pour le web et le mobile.
  • E compilation de E vers JS.
  • Sugar un nouveau langage de programmation pour le web et destiné (ou pas) à remplacer Javascript.

AutresProjets

Outils pour écrire un compilateur

Générateurs de parser JavaScript

Javascript AST (Abstract Syntax Tree)

Vous pouvez retrouver la page originale en anglais ici : altjs.

Pour d'autres articles, cliquez ICI.