Pixie (langage)
Apparence
Pixie | |
Date de première version | 2015 |
---|---|
Paradigmes | Fonctionnel |
Auteur | Timothy Baldridge |
Dernière version | 0.1 ()[1] |
Influencé par | Clojure, Lisp |
Système d'exploitation | Multiplate-forme |
Licence | LGPL |
Site web | https://github.com/pixie-lang/pixie |
modifier |
Pixie est un langage de programmation de type Lisp approprié à la fois pour un usage général ainsi que les scripts shell. La bibliothèque standard est fortement inspiré par Clojure ainsi que plusieurs autres langages de programmation fonctionnels. Il est écrit en RPython et en tant que telle supporte un GC rapide et un "tracing JIT" très efficace[2].
Pixie a été inspiré par Clojure mais n'est pas un simple portage, il y a des différences importantes[3].
Caractéristiques du langage
[modifier | modifier le code]- démarrage rapide
- Données non mutable
- Protocoles avant tout
- "Transducers"
- Utilise un "tracing JIT"
- Interfaces de function d'autres langages (FFI)
Exemple
[modifier | modifier le code];; Ce code additionne de 0 jusqu'à 10000 en utilisant une fonction avec un nombre variable d'arguments.
;; Cette fonction fait alors une réduction avec la liste d'arguments pour additionner tous les arguments donnés.
(defn add-fn [& args]
(reduce -add 0 args))
(loop [x 0]
(if (eq x 10000)
x
(recur (add-fn x 1))))
Références
[modifier | modifier le code]- « Release 0.1 », (consulté le )
- (en) Pixie github page.
- (en) Timothy Balridge interview.
Liens externes
[modifier | modifier le code]- (en) Pixie at Strange Loop 2015
- (en) Embedding Pixie
- (en) Pixie on the Raspberry Pi
- (en) Emacs Pixie-mode
- (en) Hackersome page on Pixie