Здравствуйте, Klapaucius, Вы писали:
K>Честно говоря, принимая во внимание лисповский синтаксис и общую идеологию code is data is code, я вообще с трудом представляю, зачем в LISP нужно (квази)цитирование, как я его понимаю. И термин этот вместе с LISP вообще очень редко встречается. Но я не поленился и поискал статьи по этой теме на CiteSeer. Да, статьи по квазицитированию в LISP есть. Самая старая, что я нашел — 1999 года.
Если эта статья --
Alan Bawden. Quasiquotation in Lisp, то поглядите там раздел History.
В двух словах. Сам термин квазицитирование придуман в 40-х Квином (W.V.O.Quine) -- тем самым логиком, по имени которого называют программы, выводящие свой собственный код. В пралиспе МакКарти (60-е) квазицитирования не было (видимо, он тоже не понимал зачем оно нужно в лиспе). Развитие ИИ в 60-70х, опыт работы с S-expressions привели к тому, что многие лисп-системы поимели новые техники -- в статье говорится о ПМ над S-expr (видимо аналог схемовского syntax-rules) и template instantiation — в общем уже близко в quote/unquote. Наиболее близким аналогом квазицитирования в те годы была нотация языка Conniver (кстати — один из разработчиков — Сусман). Там даже сплайсинг (,@) был. Это у нас 1972 год. Сам Bawden подрубился в 1977 году. Он заявляет, что тогда уже квазицитирование было. В конце 80х оно появилось в стандартах CL и Scheme.
Хотя к предмету спора это и имеет мало отношения.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>