Qq chose comme let

Le
Vincent Belaïche
Bonjour,

Une petite question d'emacs-lisp.

Est-il possible de faire quelque chose comme

(let ((toto 1) (titi 2)) (ma-fonction toto titi))

mais où la liste ((toto 1) (titi 2)) serait le résultat d'une évaluation. Je
pense que c'est possible en construisant une lambda-expression mais je me
demande si il n'y a pas plus simple.

À+,
Vincent.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Matthieu M
Le #21767301
On Oct 18, 9:46 pm, Vincent Belaïche wrote:
Bonjour,

Une petite question d'emacs-lisp.

Est-il possible de faire quelque chose comme

(let ((toto 1) (titi 2)) (ma-fonction toto titi))

mais où la liste ((toto 1) (titi 2)) serait le résultat d'une évalu ation. Je
pense que c'est possible en construisant une lambda-expression mais je me
demande si il n'y a pas plus simple.



ELISP> (setq l1 '(foo 1))
(foo 1)

ELISP> (setq l2 '(bar 2))
(bar 2)

ELISP> (eval `(let (,l1 ,l2) (message "%S %S" foo bar)))
"1 2"

(les trucs magiques, c'est « eval » et `/,)
Vincent Belaïche
Le #21767291
Merci pour la réponse !

Vincent.

Matthieu M a écrit :
On Oct 18, 9:46 pm, Vincent Belaïche wrote:
Bonjour,

Une petite question d'emacs-lisp.

Est-il possible de faire quelque chose comme

(let ((toto 1) (titi 2)) (ma-fonction toto titi))

mais où la liste ((toto 1) (titi 2)) serait le résultat d'une évaluation. Je
pense que c'est possible en construisant une lambda-expression mais je me
demande si il n'y a pas plus simple.



ELISP> (setq l1 '(foo 1))
(foo 1)

ELISP> (setq l2 '(bar 2))
(bar 2)

ELISP> (eval `(let (,l1 ,l2) (message "%S %S" foo bar)))
"1 2"

(les trucs magiques, c'est « eval » et `/,)
Publicité
Poster une réponse
Anonyme