Новости | 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 не вызвав выполненияЕсли оно до волшебного кода не дойдёт в первозданном виде или если код не волшебный — тогда увы.