Даже в определениях идиотизма встречается идиотизм.
Цитата:
Идиотизм — устаревшее название идиомы
Идиома в программировании — понятие близкое к понятию шаблона проектирования. Идиомы представляют собой шаблоны проектирования, учитывающие специфику конкретного языка программирования и потому не универсальные. Это хорошие решения проектирования для конкретного языка или программной платформы.
Идиома в программировании — понятие близкое к понятию шаблона проектирования. Идиомы представляют собой шаблоны проектирования, учитывающие специфику конкретного языка программирования и потому не универсальные. Это хорошие решения проектирования для конкретного языка или программной платформы.
Идиотизмы: !true не всегда false
Запись от BlooDHounD размещена 23.04.2010 в 16:47
мы имеем очень странный компилятор ...
в некоторых случаях компилятор оптимизирует написанный нами код. например он вырезает не исполняемые блоки. такие как, код написанный после return, или блоки условий с заведомым false: этот код вырежется, так как компилятор видит, что этот код не исполняется. но это происходит не всегда. конструкции посложнее он не трогает.
а этот код вкомпилится =) ибо условие усложнилось на столько, что компилятор не может понять, что это выражение будет всегда false =)
Всего комментариев 10
Комментарии
![]() ![]() |
|
Для того чтобы это понять, нужно сначала вычислить значение условие. А это уже стадия исполнения кода. Ведь может быть не только !true, а (false || true) && false и тд.
|
![]() ![]() |
|
неа =) для АС2 компилятор, например, оптимизировал математические выражения. с булевыми значениями ничего сложно не вижу. может быть даже проще.
|
![]() ![]() |
|
Не будем трогать as2. Там и (2 + 3) при компиляции становились 5, в ас3 этого нет
![]() |
![]() ![]() |
|
ну? так что не так? идиотизм же =)
|
![]() ![]() |
|
Либо да, либо мы опять чего-то не знаем
![]() |
![]() ![]() |
|
Можно было сделать галку Super Strict Mode, которую особо нетерпеливые отключали бы
![]() |
![]() ![]() |
|
GAIKER, strict mode тут каким боком? =)
|
![]() ![]() |
|
BlooDHounD,
Цитата:
проверять, были ли инициализированы переменные перед использованием, и что все пути возвращают значение... и много чего еще...
|
![]() ![]() |
|
GAIKER, мдя ... это должна быть автоматическая оптимизация, а не выдавания "Super" ошибки.
|
Последние записи от BlooDHounD
- Обновление blooddy_crypto.swc до версии 0.5.1 (31.03.2016)
- Кто не успел - тот опоздал (19.04.2011)
- Обновление blooddy_crypto.swc до версии 0.3.1 (29.11.2010)
- blooddy_crypto.swc теперь умеет JSON (13.10.2010)
- Загадочный CommaExpression (06.09.2010)