Brian Harvey wrote: >> Conflating >> the transformation phase with the evaluation phase [...] >> makes code harder to reason about. > > If there's a REPL, there aren't any phases. The REPL keeps shifting back > and forth between syntax and semantics.
"Shifting back and forth" is shifting between phases. The phases don't go away if you try to ignore them. (They just figure out ways to bite you harder.) > If you're telling me that the only way I can reasonably understand hygienic > macros is by thinking about different phases, that sounds like a good reason > to leave them out of WG1-Scheme, which maybe we should start calling > "REPL Scheme" to keep everyone's eyes on the ball about this! I'm saying that no matter what you do to achieve macro functionality, even using FEXPRs to implement it, it introduces phases in which some operations involve transforming code and others involve evaluating the transformed code. You can only ignore that at the cost of not understanding what's going on. Anton _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
