On Monday, March 5, 2018 at 6:36:09 PM UTC, Alexis King wrote: > I will say this, however: while I have developed over the years a reasonably > strong intuition for how Racket macros operate, when I was learning the macro > system for the first time, I did not find some parts of the hygiene algorithm > terribly intuitive.
I am new to both Racket and Scheme in general. When I learned about Scheme's hygienic macros, my (incorrect) understanding has always been close to André van Tonder’s system. I have been programming with this mental modal for months, and only upon reading this discussion did I realize both R6RS and Racket macro systems disagree with my mental modal. I find the existing macro system easier to understand and use, but I am concerned that it may introduce unintentional symbol collisions. From a programmer's perspective, care must be taken when using phase-1 functions, and gensym or others must be used to avoid unintended symbol collision. The situation seems to be similar to that of using unhygienic macros. The problem seems to be a fundamental one, and syntax/parse is only one instance arising from this problem. I recently started switching my projects to Racket because I find it powerful and elegant. I sincerely hope Racket to move in a good direction -- whatever that means. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.