<br /><br />06.12.07, 14:20, Denis Evdokimov (evdokimov.denis@gmail.com): <br /><br /><blockquote style="padding-left: 1em; margin: 0pt 0pt 0pt 0.8ex; border-left: #cccccc 1px solid"><br /><div><blockquote style="padding-left: 1ex; margin: 0pt 0pt 0pt 0.8ex; border-left: #cccccc 1px solid">Очевидно, что делать my в цикле медленнее, чем сделать my единожды.</blockquote><div><br /><br />Это как раз очевидно.<br /><br />Но, во всех руководствах по each ни разу об этом не говорится.<br />Всегда используется запись вида<br />while(my($key, $value) = each %hash)<br />&nbsp;Вот примеры руководств:<br /></div></div><a href="http://www.google.ru/search?q=while%28my%28%24key%2C+%24value%29+%3D+each+%25hash%29&amp;start=0&amp;ie=utf-8&amp;oe=utf-8&amp;lr=lang_ru"><br />http://www.google.ru/search?q=while%28my%28%24key%2C+%24value%29+%3D+each+%25hash%29&amp;start=0&amp;ie=utf-8&amp;oe=utf-8&amp;lr=lang_ru</a><br /><br />Меня интересует, почему такая частая операция не оптимизирована.<br />Как я понимаю, оба варианта полностью идентичны, так почему первый вариант автоматом не переводится во второй при интерпретации? <br /><br /><br /></blockquote><p><br />И&nbsp;правильно, что не говориться.</p><p>Преждевременная оптимизация -- зло. Читабельный и краткий код -- добро! :)</p><p><br />-- <br />Яндекс.Открытки - Анонсы новых открыток: http://cards.yandex.ru/subscribe.xml</p>