Vlákno názorů k článku LISPová makra aneb programovatelný programovací jazyk od anonym - Prekvapuje me, ze v jednoduche definici makra je...

  • Článek je starý, nové názory již nelze přidávat.
  • 7. 8. 2007 21:51

    anonymní
    Prekvapuje me, ze v jednoduche definici makra je napsano, ze se vygenerovany kod spusti. Nevim jak v Common Lispu, ale makra ve Scheme se vyhodnocuji v read-time a ne v run-time, takze tam se vygenerovany kod nespusti, ale nahradi na miste , kde se dane makro pouzije.
  • 7. 8. 2007 22:50

    Rejpal (neregistrovaný)
    V read-time? Já myslel, že tehdy běží jen reader makra. Každopádně defmacrovaná makra se vyhodnocují v compile-time, jen v tom prvním příkladě měla ta (asi poměrně nešťastná) formulace znamenat, že v REPLu se výsledná forma vyhodnotí hned po makroexpanzi. (A vyhodnotí ji samozřejmě eval již bez asistence makroexpandéru.)