Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
moko 05.10.2015 20:57 / 05.10.2015 21:01
1. Возможность сквозного автосоздания хешаВ самом парсере так сделать нельзя, поскольку при обращении к пустому элементу неправильно возвращать пустой хеш, а без этого не получится. Но на парсере это реализуется в несколько строк:
@main[] $o[^O::create[]] $o.a.b.c.d[test] $o.a.b.c.d @CLASS O @create[] @GET_DEFAULT[name] $result[^O::create[]] $self.$name[$result]
2. Глубокое копирование hash как разновидность конструктораОсобой разницы в скорости не будет, максимум в раза в полтора.
Да, реализация есть на самом парсере, но крутить эти циклы на каждый чих,
лучше бы парсер это умел нативно.
3. Операции вставки!Вот это пожалуй может быть, хотя мне если честно ни разу не было нужно. Но синтаксис надо продумывать, индекс/название ключа вероятно лучше первым.
4. Функции стека/очередиВсе это замечательно реализуется и так, достаточно сделать ключами хеша числа.
@push[v] $n($stack+1) $stack.$n[$v] @pop[] $n($stack) $result[$stack.$n] ^stack.delete[$n]В случае очереди будут кода понятно немного больше, будут два числа $head и $tail, но все равно это порядка десятка строк.
5. Инвертирование порядка ключей хеша.Боюсь не мне. :)
Причина Очевидна.