Pizza (langage de programmation)
Pizza est un langage de programmation destiné à étendre les versions 1.1 à 1.4 de Java avec des concepts de programmation plus évolués.
| Pizza | |
| Date de première version | |
|---|---|
| Paradigme | Programmation générique |
| Dernière version | 1.1 (3 janvier 2002) |
| Typage | Statique, fort |
| Influencé par | C++ |
| A influencé | Java |
| Implémentations | Liste de JVM |
| Site web | pizzacompiler.sourceforge.net |
| Extensions de fichiers | .pizza |
Les 3 principales fonctionnalités ajoutées par le langage Pizza sont :
- la programmation générique ;
- les pointeurs sur les fonctions ;
- et le filtrage par motif.
Aujourd'hui, Pizza est peu utilisé parce que la plupart des fonctionnalités citées ci-dessus sont désormais nativement supportées par Java depuis la version 5.0 de 2004. Ainsi la version actuelle de Pizza est la 1.1 depuis le 3 janvier 2002.
Au niveau de l'implémentation, les fonctionnalités nouvelles pour Java à l'époque, étaient déjà bien connues des développeurs C++. C'est pourquoi la syntaxe proposée par Pizza est proche du langage C++.
Des sources au bytecode Java
Les codes sources écrits en langage Pizza doivent être placés dans un fichier texte avec l’extension .pizza.
Ces codes sources sont transformés en bytecode Java pour pouvoir fonctionner sur une machine virtuelle Java (JVM). Cette transformation est effectuée par un compilateur appelé Pizza Compiler. Comme celui-ci se présente sous la forme d'une archive Java à l'extension .jar la commande de compilation est un peu particulière. En effet, pour compiler HelloWord.pizza, la commande à taper est la suivante :
java -jar pizza-x-x.jar HelloWorld.pizza
Pour se ramener à une syntaxe plus classique, il est courant de définir un alias de la forme :
alias pizzac='java -jar pizza-x-x.jar'
Ainsi la compilation de HelloWorld.pizza se réduit à la simple commande suivante :
pizzac HelloWorld.pizza
Documentation des classes Pizza
De la même manière que Java a son Javadoc, Pizza a son Pizzadoc qui permet de générer automatiquement une documentation au format HTML.
Là encore, la syntaxe brute est assez lourde. En effet, pour générer la documentation de la classe HelloWorld, il faut taper :
java -jar pizza-x-x.jar -pizzadoc HelloWorld.pizza
Donc pour se ramener à une syntaxe plus simple, il est courant de définir un alias de la forme[1] :
alias pizzadoc='java -jar pizza-x-x.jar -pizzadoc'
Ainsi la génération de la documentation de HelloWorld se réduit à la simple commande suivante :
pizzadoc HelloWorld.pizza
Notes et références
- « Pizzadoc documentation », sur pizzacompiler.sourceforge.net (consulté le )
Voir aussi
Articles connexes
Liens externes
- (en)Site officiel
- (en)Définition du langage : http://pizzacompiler.sourceforge.net/doc/pizza-language-spec.pdf
- (en)Implémentation de Pizza en Java : http://pizzacompiler.sourceforge.net/doc/pizza-translation.pdf