![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Oct 2001
Адрес: Россия, Казань
Сообщений: 270
|
2Infinity - Слушай, а Ты всем этим чего добиться хочешь, а главное - зачем? Только честно, угу?
__________________
The war does not determine who is right. Only who is left. |
|
|||||
|
Регистрация: Jul 2002
Адрес: Ст.-Петербург
Сообщений: 268
|
Как я понял, мы говорим не о чтении текстового файла swf, а о работе интерпретатора...
Рассмотрим приведенный код: Поясняю: Код 1: В данном случае Используется индексная адресация(!). Байткод: setVariable push 'a' getVariable push 1, 'xxx' Выполнение команды trace производится с конвертацией строкового типа в индекс массива(на уровне интерпретатора). Код 2: Компилятор байткода записывает единицу как строку "1". Байткод: setVariable push 'a' getVariable push '1', 'xxx' Интерпретатор, получая такую строку скорее всего конвертирует ее в индекс (по крайней мере я бы именно так писал интерпретатор). Далее рассуждаем... Если мы пишем: Байткод: constants 'a', 'Object', 'xxx' push 'a', 0.0, 'Object' new setVariable push 'a' getVariable push 'a', 'xxx' setMember А если мы запишем так: Байткод: constants 'a', 'Array', 'xxx' push 'a', 0.0, 'Array' new setVariable push 'a' getVariable push 'a', 'xxx' setMember По моему ясно, что в обоих случаях мы получаем объект с именем "a" и свойством "a", хотя во втором случае мы имеем доступ еще и к свойствам массива, так как(естественно) Array - есть экземпляр от Object, и любой потомок Array наследует его свойства и методы (такие как length и т.п)... Все... По моему достаточно рассуждений. С уважением... ![]() |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
Цитата:
благодарю AnGL'а за комментарии к байткоду и присоединяюсь к вопросу Aib'a... верю в Ваш творческий литературный энтузиазм :))))) |
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
Все, что ты онаписал еще в третьем письме этого треда, есть свойство большинства скриптовых языков -- от PHP до Tcl. И как показывает практика, работает это хоть и медленнее доступа по целочисленному индексу, но с вполне достаточной скоростью.
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
Регистрация: Mar 2002
Адрес: Россия, Курск
Сообщений: 20
|
Ну написали, еле до конца дошел!
![]() |
|
|||||
|
Регистрация: Feb 2002
Адрес: Kyiv
Сообщений: 173
|
не прошло и года...
сорри за длительное отсутствие - с инетом подсос итак, о чем же мы это там... 2AnGL ну если интерпретатор проверяет строки и в зависимости от содержания генерирует разный байт код, то это ладно, может в этом вопросе я был неправ - в байт код флэша я сильно не вникал, но то, что переменные адресуются по строковому ключу, это факт и я рад что НАКОНЕЦ ТО все согласились с этим. только вот рассказывают, что это их устраивает (соответствующая производительность) ну да ладно, другого я и не ожидал. странно, что вас всех интересует, чего я хочу добится. итак, внимание! ответ: а собсвенно говоря НИЧЕГО я добится не хочу, да и собственно говоря, чего можно вообще добится на форуме? морального удовлетворения всеобщего признания? глупости.если интересно, скажу, что открыл эту тему, еще когда работал флешером, и назрела куча недовольства по поводу реализации плеера (вирт.машина или что-там, не важно). просто вопрос скриптовых движков мне был интересен и до этого, я скриптил на разных языках до этого плюс как раз писал собственный скриптовый движок в это время и паралельно используя АС сравнивал реализацию некоторых вещей в АС с возможной (теоретической, если угодно) реализацией. так вот некоторые моменты не терпели никакого сравнения если брать во внимание специфическую задачу АС. Говоря проще, разработчики макромедии ТУПО взяли за основу - ECMA-262 спецификацию (от которой я кстати тоже не особо в восторге), которая довольно неплохо подходила в качестве скриптового языка для браузера, и вставили во флеш, не особо задумываясь о целесообразности. строковые индексы я просто для смеха привел как всего лишь один из упущений, и как реальный пример того, почему даный скриптовый язык (ECMAScript) не подходит для флеш начиная еще со спецификации. так вот, о чем это я? ага, значит увидел я, что реализация АС оставляет желать лучшего (мой опыт в области работы со скриптовыми языками позволяет сделать определенные субъективные выводы) и поэтому решил написать здесь, чтобы проверить реакцию ярых поклонников даной технологии. начал дискуссию в шутливом тоне чтобы этот топик не пропустили, но народ меня принял за ламера, начал попускать итд, хотя мне в принципе пофиг... если хотите, подитожу все мои мысли по поводы этой темы: СПЕЦИФИКАЦИЯ ECMA-262(КАК ОСНОВА ACTIONSCRIPT) НЕ ПОДХОДИТ ДЛЯ ФЛЭШ В СИЛУ СПЕЦИФИЧНОСТИ ЗАДАЧ, ДЛЯ РЕШЕНИЯ КОТОРЫХ И ПРЕДНАЗНАЧЕНА ДАННАЯ ТЕХНОЛОГИЯ. вот собственно одним предложением... а Вы все (как истинные фанаты ) все восприняли в штыки, и всем скопом начали переубеждать меня, вместо того, чтоб понять, что я пытаюсь объяснить. (только AnGL попытался что-то объяснить, за что ему отдельное спасибо )вот такие вот пирожки с котятами где еще я точки над i не расставил? ![]()
__________________
нам показалось, что это конец... но оказалось, что не казалось... |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
оо.... вообще-то это должен был быть первый пост в теме
![]() ты наконец объяснил, как умел, в чем суть всех этих буковок на предыдущих пяти страницах ![]() ай да маладес... возьми с полки да-да, с котятами не бери - это нам ![]() нет, серьезно... очень забавно... ты вот такой мудрый программер, с опытом разработки всего того бла-бла-бла и прочая и прочая, почти месяц объяснял нам, глупеньким фанатикам тупой спецификации чего ты хочешь сказать ![]() ну ладно мы тут тупые и ограниченные - но ты-то... есть такая фишка... бритва оккама зовется... "entia non sunt multiplicanda praeter necessitatem" что в переводе означает: "необходимое достаточно" или, более точно: "ХОРОШ ТРЕПАТЬСЯ" ![]() |
|
|||||
|
Регистрация: Feb 2002
Адрес: Kyiv
Сообщений: 173
|
лол так ты то не фанат тупой спецификации? или как? я то в принципе тупым никого не называл, но раз ты хочешь за собой такой титул, чтож... я не возражаю кстати не сказал бы, что ты тоже ярый поклонник строго содержательных бесед ![]()
__________________
нам показалось, что это конец... но оказалось, что не казалось... |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
Цитата:
Цитата:
вторая - я никому и не пытаюсь доказать обратное =)) |
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
К оппонентам infinity: вы забываете Первый Закон Спора...
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
![]() |
Часовой пояс GMT +4, время: 14:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|