понедельник, 8 февраля 2021 г.

Добавил стековые фреймы и конвертеры значений

 Пришлось отдыхать три раза, но за сегодня сделал конвертеры значений и стековые фреймы. Теперь перед вызовом функции тип параметра проверяется, соответствует ли он типу параметра функции, и для типа параметра функции вызывается метод его класса convert_value.

Конвертирование значений на стеке функцией convert_value

Это как бы метод convert from. Думал сделать наоборот - через метод convert to. Но convert from - метод статичный, а convert to - регулярный. Я решил сделать через статичный.

Думаю, что convert to тоже потом появится, ведь он удобнее для пользовательских классов. Сейчас пока только интегральные типы.

Придумал, как будет выглядеть ввод массива.

[   // Квадратная скобка открывает ввод массива
... // Здесь любой код
]   // Квадратная скобка завершает ввод массива

При открытии ввода массива будет создаваться новый фрейм на стеке, а при завершении - все данные из этого фрейма программа будет помещать в массив.

Это видится мне очень удобным, но нужно будет добавить в адресацию значений на стеке $$x - взять значение из предыдущего фрейма. Иначе не получится добавлять в массив те данные, которые уже есть на стеке.


Комментариев нет: