Рабочие заметки — различия между версиями
Материал из Deeptown Manual
Korvin (обсуждение | вклад) м |
Korvin (обсуждение | вклад) м |
||
Строка 3: | Строка 3: | ||
* Добавить строки <tt>:string</tt> в схему подсветки | * Добавить строки <tt>:string</tt> в схему подсветки | ||
− | * | + | * Переделать <tt>'''for'''</tt> циклы (объявление управляющей переменной на месте) |
* Динамические переменные теперь быстрые (убрать предупреждения) | * Динамические переменные теперь быстрые (убрать предупреждения) | ||
* Описать необходимость приведения типов (где надо) при работе с динамическими переменными | * Описать необходимость приведения типов (где надо) при работе с динамическими переменными | ||
Строка 12: | Строка 12: | ||
* Автоподстановка хешей foo(hash x) --> foo(:a => 1, :b => 2) | * Автоподстановка хешей foo(hash x) --> foo(:a => 1, :b => 2) | ||
* Свойства вида <tt> '''property''' x '''read''' { ... } '''write''' { |v| ... } </tt> | * Свойства вида <tt> '''property''' x '''read''' { ... } '''write''' { |v| ... } </tt> | ||
+ | * [[Классы и объекты#Расширения]], описать возможность вызова предыдущей копии метода (когда появится возможность) | ||
* Перегрузка функций и операторов теперь (мб временно) невозможна. ИМХО стоит написать примеры того, как это предполагается обходить, потипу: | * Перегрузка функций и операторов теперь (мб временно) невозможна. ИМХО стоит написать примеры того, как это предполагается обходить, потипу: | ||
<source lang="kpp"> | <source lang="kpp"> | ||
Строка 28: | Строка 29: | ||
== Замечания по самому тексту == | == Замечания по самому тексту == | ||
− | * | + | * Коммент в разделе [[Введение,_или_краткий_обзор#Здравствуй,_мир!]] |
== TODO компилятора == | == TODO компилятора == | ||
− | * | + | * Возможность объявлять класс до его реализации, аналогично forward declarations функций |
Версия 12:08, 29 марта 2008
TODO
- Добавить строки :string в схему подсветки
- Переделать for циклы (объявление управляющей переменной на месте)
- Динамические переменные теперь быстрые (убрать предупреждения)
- Описать необходимость приведения типов (где надо) при работе с динамическими переменными
- Постфиксные условия if, unless
- Поля в расширениях теперь можно делать
- Пространства имен
- Функции с переменным списком аргументов (...)
- Автоподстановка хешей foo(hash x) --> foo(:a => 1, :b => 2)
- Свойства вида property x read { ... } write { |v| ... }
- Классы и объекты#Расширения, описать возможность вызова предыдущей копии метода (когда появится возможность)
- Перегрузка функций и операторов теперь (мб временно) невозможна. ИМХО стоит написать примеры того, как это предполагается обходить, потипу:
<source lang="kpp"> class MyClass { public:
operator MyClass + (x) { switch(class_of(x)) { case 'std/int': { /* MyClass + int */ } case 'std/string': { /* MyClass + string */ } default: { /* MyClass + (x as MyClass) */ } } }
} </source>
Замечания по самому тексту
- Коммент в разделе Введение,_или_краткий_обзор#Здравствуй,_мир!
TODO компилятора
- Возможность объявлять класс до его реализации, аналогично forward declarations функций