![]() |
Это вы расскажите дюжине подписавшихся под ECMAScript документами. Они это токеном назвали.
Ну просто зло берет, когда изза какого-то идиотизма приходится делать кучу работы, которая ну ничего же не улучшит. И, сорри, я вообще злой такой, потому что сегодня еще и спецификацию XMPP читал, и его очевидно прийдтся воплощать в жизнь. Такое впечатление, что интернет был придуман религиозной сектой марсиан аутистов-мазoхистов... fish_r: Проблема не в том, что не видит, а в том, что +"b" - вполне себе валидное выражение, и с точки зрения парсера, имеет место быть два выражения идущие подряд, а не одно с переносом строки посередине. А вот если перенести плюс на первую строчку, тогда выражение "a"+ будет невалидным, и парсер продолжит читать на следующей строчке. Но еще большая проблема в том, что нет однозначности в том, что считать переносом строки, и если, например, кто-то автоматом сделал мердж, и в части кода строки заканчиваются по-одному, а в другой - по-другому, тогда можно получить какие-то вообще необъяснимые баги, опять же, на ровном месте.... |
по поводу ES самый умный Олег на свете как всегда не прав в очевидных случаях. в ES у токенизера есть такой необычный метод isSemicolon, или типа того. в общем стукнись, я тебе дзен открою.
Добавлено через 5 минут а ваще почитай кнута. у тебя пробелы в теории компиляторов. |
Блуд, не спорь пожалуйста. Это к компилятору имеет только косвенное отношение, т.как компиляторы тоже используют парсеры. В данном случае я делаю LL(1), вернее, пытаюсь сделать LL(1) парсер, а вот изза такого замечательного планирования это оказалось невозможно. И как бы методов там в принципе быть не может / это не от той стенки гвозди... я вообще говорил про правила вида A -> B | C.
PS. http://www.youtube.com/watch?v=6QI9gF95UxA ;) |
ANTLR пробовал?
|
Давно когда-то, и умаялся настраивать (но пробовал для других целей, для генерации а не парсинга) + Metaas. Bison проще в обращении (никаких заморочек с Явой не нужно) и как бы по-серьезнее будет :).
|
я в качестве примера. они генерят парсеры.
|
Встречал фразы "генераторы компиляторов", "генераторы трансляторов". А вот с преступником Фунтиком я не знаком.
Парсер по мнению Википедии занимается синтаксическим анализом. Компилятор довольно сложная штука, включающая лексический анализ, синтаксический анализ и семантический анализ ) |
http://www.gnu.org/software/bison/ - Знакомтесь, Bison, GNU parser generator :) Что он делает - берет набор правил описаных на его собственном языке (очень напоминающем значки которые используют для описания контекстно-независимых грамматик), и на основании этих правил генерирует парсрер (на Си). Для чего можно было бы использовать: примитивный, но очень быстрый поиск ошибок в исходниках, подсветка кода. Если совершить подвиг и прицепить к нему еще каких-нибудь утилит, то можно было бы, например AS3 байткод оптимизировать с помощью gcc... но это уже для меня очень сильное колдунство :)
|
Ладно, почитаю еще. Очень интересная тема.
|
| Часовой пояс GMT +4, время: 04:53. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.