Jusqu'à présent, mon vécu avec emacs s'est limité à "yum install emacs*". Maintenant, quand je clique sur un fichier ".l" ou ".el", ça me lance emacs.
Ma première réaction a été: "J'ai pas besoin de Common Lisp, de elisp ou de Scheme. C'est trop simple, je vais faire mon lisp à moi (perso)".
J'ai commencé ça en C++. Pour l'instant, j'ai un parseur qui fonctionne bien. Il m'affiche un beau message "Syntax error!" à la 8bit avec numéro de ligne et de caractère, contexte du source comment en Java.
Pourquoi faire simple quand on peut faire encore plus simple.
Je prévois de ne gérer que deux opérateurs.
(native "+" (left right)) ;ça appelle l'opérateur "plus" (en C++) sur deux symbols.
(define toto (liste)) ;ajoute un symbole dans la pile des symboles
Avec ça on doit pouvoir tout faire du moment que les opérateurs "natifs" sont implémentés en C++.
Je veux zapper toutes les notations inutiles, les dièzes, les quotes ...
Je vais remplacer ça par une interprétation en fonction du contexte: un lambda est toujours une adresse de lambda, une string est toujours passée par valeur ...
Le PHP fait comme ça, je vois pas pourquoi on pourrait pas faire ça en Lisp.
Franchement, c'est faisable dans un délai raisonnable. Stallmann l'a bien fait.
[^] # Re: Le shell du troisième millénaire!
Posté par datz . En réponse au journal cv, un petit outil pour surveiller vos copies. Évalué à -6.
Merci du tuyau. Je vais me forcer à regarder ça.
Jusqu'à présent, mon vécu avec emacs s'est limité à "yum install emacs*". Maintenant, quand je clique sur un fichier ".l" ou ".el", ça me lance emacs.
Ma première réaction a été: "J'ai pas besoin de Common Lisp, de elisp ou de Scheme. C'est trop simple, je vais faire mon lisp à moi (perso)".
J'ai commencé ça en C++. Pour l'instant, j'ai un parseur qui fonctionne bien. Il m'affiche un beau message "Syntax error!" à la 8bit avec numéro de ligne et de caractère, contexte du source comment en Java.
Pourquoi faire simple quand on peut faire encore plus simple.
Je prévois de ne gérer que deux opérateurs.
(native "+" (left right)) ;ça appelle l'opérateur "plus" (en C++) sur deux symbols.
(define toto (liste)) ;ajoute un symbole dans la pile des symboles
Avec ça on doit pouvoir tout faire du moment que les opérateurs "natifs" sont implémentés en C++.
Je veux zapper toutes les notations inutiles, les dièzes, les quotes ...
Je vais remplacer ça par une interprétation en fonction du contexte: un lambda est toujours une adresse de lambda, une string est toujours passée par valeur ...
Le PHP fait comme ça, je vois pas pourquoi on pourrait pas faire ça en Lisp.
Franchement, c'est faisable dans un délai raisonnable. Stallmann l'a bien fait.
Qu'est ce que t'en penses ?