Пришлось отдыхать три раза, но за сегодня сделал конвертеры значений и стековые фреймы. Теперь перед вызовом функции тип параметра проверяется, соответствует ли он типу параметра функции, и для типа параметра функции вызывается метод его класса convert_value.
Это как бы метод convert from. Думал сделать наоборот - через метод convert to. Но convert from - метод статичный, а convert to - регулярный. Я решил сделать через статичный.
Думаю, что convert to тоже потом появится, ведь он удобнее для пользовательских классов. Сейчас пока только интегральные типы.
Придумал, как будет выглядеть ввод массива.
[ // Квадратная скобка открывает ввод массива
... // Здесь любой код
] // Квадратная скобка завершает ввод массива
При открытии ввода массива будет создаваться новый фрейм на стеке, а при завершении - все данные из этого фрейма программа будет помещать в массив.
Это видится мне очень удобным, но нужно будет добавить в адресацию значений на стеке $$x - взять значение из предыдущего фрейма. Иначе не получится добавлять в массив те данные, которые уже есть на стеке.
Комментариев нет:
Отправить комментарий