Каква е разликата между макросите в Racket и Clojure?


Отговор 1:

Очевидна разлика е така наречената хигиена - хигиенен макрос

И има много неочевидни. Racket има (сигурен съм в това) най-модерната макро система от всички езици. Той се справя с много много фини и сложни проблеми, свързани с разработването и използването на макроси. Хигиената е само най-известната и добре разбирана от тях.

Напротив, Clojure има много ясна „практична“ макро система. Въпреки това е полезно, но общата насока е да избягвате макросите да не въвеждате фини бъгове. И това работи на практика, има много хубави библиотеки, които разчитат на макроси до голям успех.