LINUX.ORG.RU

История изменений

Исправление geekless, (текущая версия) :

А что в руби уже можно подставлять что-то в компайл-тайме?

Нет, но не все ж знакомы с семантикой Ruby. Поэтому уточнил.

Я так понимаю, что эта «псевдо» операция просто разворачивается в вызов метода, который делает сплайсинг. Ну такой вот малополезный синтаксис.

Да, но разворачивается она на уровень выше по синтаксическому дереву, чем дано в исходнике. Я хочу проэмулировать это поведение: макрос указан во внутреннем списке, а макроподстановка выполняется во внешнем списке.

> В идеале, хотелось бы, чтобы backquote не было, а функция его выполнялась.
И как вы предлагаете различать, что выполнять при компиляции, а что в рантайме?

В данном случае нам надо не «вообще» от него отказаться, а чтобы квотирование «магически» проявлялось вокруг списка, если в одном из его дочерних списков пристутствует указанный (псевдо)макрос.

Да, это всё из разряда «хочу странного». :} Но хочу.

Исходная версия geekless, :

А что в руби уже можно подставлять что-то в компайл-тайме?

Нет, но не все ж знакомы с семантикой Ruby. Поэтому уточнил.

Я так понимаю, что эта «псевдо» операция просто разворачивается в вызов метода, который делает сплайсинг. Ну такой вот малополезный синтаксис.

Да, но разворачивается она на уровень выше по синтаксическому дереву, чем дано в исходнике. Я хочу проэмулировать это поведение: макрос указан во внутреннем списке, а макроподстановка выполняется во внешнем списке.

> В идеале, хотелось бы, чтобы backquote не было, а функция его выполнялась.
И как вы предлагаете различать, что выполнять при компиляции, а что в рантайме?

В данном случае нам надо не «вообще» от него отказаться, а чтобы квотирование «магически» обнаруживалось проявлялось вокруг списка, если в одном из его дочерних списков пристутствует указанный (псевдо)макрос.

Да, это всё из разряда «хочу странного». :} Но хочу.