2009-06-05 4 views
4

Je veux vraiment apprendre des macros de Scheme. J'ai jeté un coup d'œil sur le contenu de "On Lisp" et beaucoup de chapitres ont été consacrés aux macros Lisp. Cependant je ne connais pas le lisp commun. Puis-je l'utiliser pour apprendre les macros Scheme?Apprenez les macros dans le schéma de On Lisp

+2

Greg a raison, les macros de Common Lisp sont trop différentes de celles de Scheme pour apprendre les spécificités de On Lisp. Mais l'intention des macros dans On Lisp s'applique à n'importe quelle langue avec des macros. Il pourrait être intéressant de lire les chapitres de macro pour des idées plutôt qu'un code spécifique. –

Répondre

10

Les macros de schéma ("macros hygiéniques") sont complètement différentes des macros Lisp traditionnelles. Certaines implémentations de Scheme offrent des macros Lisp en plus des macros Scheme, mais cela n'est pas requis par la norme Scheme.

Je vous recommande de rechercher des matériels didactiques spécifiques aux macros Scheme si vous souhaitez en savoir plus sur ce style de macro. Google présente de nombreuses pages proposant une introduction aux macros de Scheme.

+0

Je ne sais rien à propos des macros. Ce que je ne comprends pas est: Les macros Lisp sont-elles totalement inutilisables dans Scheme ou Scheme? Les macros sont juste "meilleures"? – unj2

+0

Schéma Les macros sont généralement meilleures; niveau supérieur, si vous voulez. Je pense que vous pouvez créer des macros Scheme à partir de macros CL, mais pas l'inverse. Les macros de schémas sont beaucoup plus agréables à utiliser, car elles ne capturent pas les variables sur vous. –

5

Re: Nathan Sanders

Sur Lisp vaut vraiment la lecture; vous avez un avant-goût d'un style de macros et de quelques solutions intéressantes aux problèmes. En outre, vous trouverez peut mieux comprendre le problème que les macros hygiéniques résolvent.

Je ne peux pas encore commenter ou je l'aurais fait en ligne.