?

Log in

No account? Create an account

Метапрограммирование в Агде и немного философии - Excelsior

Aug. 27th, 2013

09:49 am - Метапрограммирование в Агде и немного философии

Previous Entry Share Next Entry

Comments:

From:Valentin Budaev
Date:August 29th, 2013 09:43 am (UTC)
(Link)
Была одна годная, но не могу сейчас найти, если найду, то дам ссылку.

Например, это используется в Racket в паттерн-матчинге по структурам - форма (struct struct-name ...) связывает со struct-name статическую информацию о свойствах структуры (гетеры, ацессоры, базовая структура и т.п.), потом когда мы делаем (match x [(struct-name ...) ...]), то match проверяет (статически, во время экспанда) - действительно ли struct-name структура, и, если да, то разбирает ее с помощью указанных в полученной информации геттеров.

Но тут все делается на ручном приводе, ага :)

А если сумеем трекать биндинги - то сможем автоматически туда-сюда гонять.

Edited at 2013-08-29 09:44 am (UTC)
(Reply) (Parent) (Thread)