| Новости | FAQ | Авторы | Документация | В действии | Библиотека | 
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум | 
G_Z 11.12.2015 22:08 / 11.12.2015 22:17
Пока код проходит {} или () — это присвоение.Я запутался.
Нет, {$code} - это не присвоение.
При присвоении код присваивается, а не выполняется.
Это другой код, в процессе своего выполнения выполняющий первый. Я там выше не случайно написал {===$code===}, чтобы это было нагляднее.Я запутался 2.
@main[]
$h[$.code{^throw[debug]}]
^t{==$h.code==}
@t[j]
^t2{$j}
@t2[j]
Don't touch evil junction.Я примерно так и представляю себе картину: @main[]
$h[$.code{^throw[debug]}]
^t{$h.code}[code]
@t[j;type]
$result(^reflection:is{$j}[$type])
@reflection:is[obj;type]
# тут волшебный C++-код, который может узнать тип $obj не вызвав выполненияЕсли оно до волшебного кода не дойдёт в первозданном виде или если код не волшебный — тогда увы.