peephole macros
От: xeno.by xeno.by
Дата: 28.09.11 21:03
Оценка:
В свете недавнего обсуждения механизмов работы линка
Автор: xeno.by
Дата: 28.09.11
, пришла мысль обобщить идею Скальского на тему декларативной активации макросов. Не пинайте, если сморожу глупость — я с макросами Немерле знаком совсем недолго.

Итак, к делу. Дополнительно к явному вызову макросов (функционально или атрибутами), возможно, имеет смысл реализовать автоматическую активацию макросов по шаблону. Скажем, встретился в коде вызов <[ $(foo: Foo).Bar(..$args) ]> — вызываем для него макрос, который, возможно, решит немножко подпилить или вообще заменить этот вызов. Некоторым образом, это напоминает лисповский defadvice, но мы не обязаны ограничиваться только подпиливанием определенных методов. С помощью этой фичи можно было бы реализовать "честную" поддержку LINQ — обращения к методам IQueryable автоматически бы вызывали преобразование выражений Немерле в выражения сишарпа.

Какие здесь могут быть проблемы? Будет ли это практично в реализации?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.