On 29 Oct 2009, at 7:37 pm, John Cowan wrote: > Alaric Snell-Pym scripsit: > >> First, some definitions. I think we can take it as a given that a >> desirable feature of a macro system is that macro expansions should >> be >> decidable "before run time". It's overspecifying to call that >> "compile >> time", "link time", or "tea time"; > > I just call it "macro-expansion time". But no, there is a small but > vocal minority that is absolutely opposed to this notion.
Aye... politics, eh? ;-) > >> That desire for being able to expand all the macros away before run >> time, revealing a semantically equivalent program without any macros >> in it (and from which all the macro definitions can therefore be >> stripped or ignored), is part of what makes fexprs bad. > > Unfortunately, this argument is easily caricatured: > > # That desire for being able to expand all the typecases away before > # run time, revealing a semantically equivalent program without any > # polymorphism in it, is part of what makes dynamic typing bad. Which is also a valid argument, albeit one that doesn't stand up so well when considered in context ;-) > Indeed, that's what alexpander is. Alexpander is only written in > Scheme > for Al* Petrofsky's convenience: it could perfectly well be written in > Cobol (only with extra added pain) and would work in exactly the > same way. For painful interpretations of "perfectly well", indeed! ABS -- Alaric Snell-Pym Work: http://www.snell-systems.co.uk/ Play: http://www.snell-pym.org.uk/alaric/ Blog: http://www.snell-pym.org.uk/archives/author/alaric/ _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
