Effectivement ma question ne portait pas sur le langage dans lequel est écrit l'interpréteur, mais bien le langage qu'interprète l'interpréteur.
Je pense par exemple à Blender. Il me semble (presque sûr quand même) que l'interface est en python, et ça appelle la partie en C++ au travers de l'API du logiciel. On peut customiser à la volée une partie de l'interface en faisant "clic droit" + "edit source", et là on arrive direct sur le code python. Pareil pour toutes les actions, ce sont des fonctions python qui utilisent l'API derrière.
Atom ça doit être un peu pareil d'ailleurs mais avec du JS.
Après comme tu me le dis, Python n'a apparemment pas toute la puissance d'expression du Lisp, et une syntaxe avec indentation uniquement.
Pour le rust, je pensais bel et bien au langage d'extension :D. C'est pas possible de compiler du rust à la volée, le charger dynamiquement et l'executer ? Et puis c'est un langage plutôt très expressif. Après c'est peut-être totalement overkill et pas facile facile à apprendre.
Enfin bref, qu'importe le langage, ça serait un gigantesque travail de tout porter, et peut-être pas très utile.
[^] # Re: en fait Emacs est très facile. Enfin le lisp.
Posté par datross . En réponse au journal Participer à l'amélioration de l'expérience utilisateur d'Emacs (c'est facile). Évalué à 0.
Effectivement ma question ne portait pas sur le langage dans lequel est écrit l'interpréteur, mais bien le langage qu'interprète l'interpréteur.
Je pense par exemple à Blender. Il me semble (presque sûr quand même) que l'interface est en python, et ça appelle la partie en C++ au travers de l'API du logiciel. On peut customiser à la volée une partie de l'interface en faisant "clic droit" + "edit source", et là on arrive direct sur le code python. Pareil pour toutes les actions, ce sont des fonctions python qui utilisent l'API derrière.
Atom ça doit être un peu pareil d'ailleurs mais avec du JS.
Après comme tu me le dis, Python n'a apparemment pas toute la puissance d'expression du Lisp, et une syntaxe avec indentation uniquement.
Pour le rust, je pensais bel et bien au langage d'extension :D. C'est pas possible de compiler du rust à la volée, le charger dynamiquement et l'executer ? Et puis c'est un langage plutôt très expressif. Après c'est peut-être totalement overkill et pas facile facile à apprendre.
Enfin bref, qu'importe le langage, ça serait un gigantesque travail de tout porter, et peut-être pas très utile.