Quand Henri Cohen et ses collaborateurs décidèrent d’écrire la bibliothèque PARI il y a vingt ans, la création d’un langage et d’un interpréteur pour la manipuler a été un effet secondaire, presque accidentel. Bien que le langage GP soit devenu l’interface de la bibliothèque PARI de très loin la plus utilisée, et permette la manipulation d’objets de très haut niveau, il est resté très primitif, de même que son interprèteur gp, venant directement des années 70.
Nous avons réécrit gp comme un compilateur/évaluateur, implantant plusieurs functionnalités de haut-niveau, qui devrait permettre à GP d’entrer dans les années 90.
When Henri Cohen and his coworkers set out to write PARI twenty years ago, GP was an afterthought. While GP has become the most commonly used interface to the PARI library by a large margin, both the gp interpretor and the GP language are primitive in design. Paradoxically, while gp allows to handle very high-level objects, GP itself is a low-level language coming straight from the seventies.
We rewrote GP as a compiler/evaluator pair, implementing several high-level features (statically scoped variables, anonymous functions, closures as first class objects) that should move GP into the nineties.
@article{JTNB_2008__20_3_531_0, author = {Allombert, Bill}, title = {A new interpretor for {PARI/GP}}, journal = {Journal de th\'eorie des nombres de Bordeaux}, pages = {531--541}, publisher = {Universit\'e Bordeaux 1}, volume = {20}, number = {3}, year = {2008}, doi = {10.5802/jtnb.640}, mrnumber = {2523307}, language = {en}, url = {http://archive.numdam.org/articles/10.5802/jtnb.640/} }
TY - JOUR AU - Allombert, Bill TI - A new interpretor for PARI/GP JO - Journal de théorie des nombres de Bordeaux PY - 2008 SP - 531 EP - 541 VL - 20 IS - 3 PB - Université Bordeaux 1 UR - http://archive.numdam.org/articles/10.5802/jtnb.640/ DO - 10.5802/jtnb.640 LA - en ID - JTNB_2008__20_3_531_0 ER -
Allombert, Bill. A new interpretor for PARI/GP. Journal de théorie des nombres de Bordeaux, Tome 20 (2008) no. 3, pp. 531-541. doi : 10.5802/jtnb.640. http://archive.numdam.org/articles/10.5802/jtnb.640/
[1] B. Allombert, GP2C, the GP to C translator , http://pari.math.u-bordeaux.fr/pub/pari/GP2C/, version 0.0.5pl6, 2008.
[2] R. Corbett, R. Stallman, BISON, the GNU parser generator, http://www.gnu.org/software/bison/, version 2.3, 2006.
[3] T. Lindholm, F. Yellin, The Java Virtual Machine Specification , Second Edition, http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html, 1999.
[4] the PARI Group, PARI/GP, http://pari.math.u-bordeaux.fr/ version 2.3.4, 2008.
Cité par Sources :