Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sumo 14.12.2006 08:19
... тут обратная совместимость просто необходима - это очень кардинальное изменение, которое может привести к крайне трудноотлавливаемым ошибкам при работе со "старым" кодом, а пользы нет никакой. Вобще говоря, при нормальном проектировании, количество локальных переменных в методах большим быть не должно - с трудом верится, что код из 5-15 строчек может требовать "декларации локальных переменных по 300 символов" - тут явно повод для "рефакторинга".auto.p @method[aValue] $result[$aValue] class.p @CLASS class.p @create[] $_test[test] # здесь мы хотели, чтобы вызвался метода класса, # а вызовется "глобальный" метод $_len[^method[test]] # никто не мешает сделать так, чтобы вызывался метод # класса, а если нужен оператор, то позвать его можно так: $_res[^MAIN:method[test]] @method[aValue] $result(^aValue.length[])Писать постоянно ^self.method или не иметь возможности ввести в класс переменную $cache достаточно неудобно.