J'ai une macro Scheme et une longue liste, et je voudrais mapper la macro sur la liste, comme s'il s'agissait d'une fonction. Comment puis-je faire cela en utilisant R5RS?Comment mapper une macro dans une liste dans Scheme?
La macro accepte plusieurs arguments:
(mac a b c d)
La liste a
(define my-list ((a1 b1 c1 d1)
(a2 b2 c2 d2)
...
(an bn cn dn)))
et je voudrais avoir ceci:
(begin
(mac a1 b1 c1 d2)
(mac a2 b2 c2 d2)
...
(mac an bn cn dn))
(Soit dit en passant, comme vous peut voir que je voudrais épisser la liste des arguments aussi)
Je pense que rendre votre question plus concrète pourrait être utile. –
Qu'est-ce que a1 b1 ...? Sont-ils atomiques? Sont-ils du code? Sans en savoir plus sur les données et la macro z5H a probablement la meilleure réponse. – Davorak
Aucune restriction sur ce que a1 b1 ... sont. Pourrait être des atomes, pourrait être des listes, peu importe ... – josh