Слова «машина» морфологический и фонетический разбор
Объяснение правил деление (разбивки) слова «машина» на слоги для переноса.
Онлайн словарь Soosle.ru поможет: фонетический и морфологический разобрать слово «машина» по составу, правильно делить на слоги по провилам русского языка, выделить части слова, поставить ударение, укажет значение, синонимы, антонимы и сочетаемость к слову «машина».
Содержимое:
- 1 Слоги в слове «машина» деление на слоги
- 2 Как перенести слово «машина»
- 3 Разбор слова «машина» по составу
- 4 Сходные по морфемному строению слова «машина»
- 5 Синонимы слова «машина»
- 6 Ударение в слове «машина»
- 7 Фонетическая транскрипция слова «машина»
- 8 Фонетический разбор слова «машина» на буквы и звуки (Звуко-буквенный)
- 9 Предложения со словом «машина»
- 10 Сочетаемость слова «машина»
- 11 Значение слова «машина»
- 12 Склонение слова «машина» по подежам
- 13 Как правильно пишется слово «машина»
Слоги в слове «машина» деление на слоги
Количество слогов: 3
По слогам: ма-ши-на
Как перенести слово «машина»
ма—шина
маши—на
Разбор слова «машина» по составу
машин | корень |
а | окончание |
машина
Сходные по морфемному строению слова «машина»
Сходные по морфемному строению слова
Синонимы слова «машина»
1. автомобиль
2. аппарат
3. установка
4. автомат
5. механизм
6. робот
7. средство передвижения
8. транспорт
9. транспортное средство
10. техника
11. микроэвм
12. компьютер
13. инструмент
14. спортсмен
15. силач
16. вышибала
Ударение в слове «машина»
маши́на — ударение падает на 2-й слог
Фонетическая транскрипция слова «машина»
[машына]
Фонетический разбор слова «машина» на буквы и звуки (Звуко-буквенный)
Буква | Звук | Характеристики звука | Цвет |
---|---|---|---|
м | [м] | согласный, звонкий непарный (сонорный), твёрдый | м |
а | [а] | гласный, безударный | а |
ш | [ш] | согласный, глухой парный, твёрдый, шипящий, шумный | ш |
и | [ы] | гласный, ударный | и |
н | [н] | согласный, звонкий непарный (сонорный), твёрдый | н |
а | [а] | гласный, безударный | а |
Число букв и звуков:
На основе сделанного разбора делаем вывод, что в слове 6 букв и 6 звуков.
Буквы: 3 гласных буквы, 3 согласных букв.
Звуки: 3 гласных звука, 3 согласных звука.
Предложения со словом «машина»
На каждой боевой машине авиаполка мог, в принципе, летать любой пилот.
Источник: А. И. Табаченко, Покрышкинский авиаполк. «Нелакированные» боевые хроники. 16-й гвардейский истребительский авиационный полк в боях с люфтваффе. 1943-1945, 2014.
Но тут, вслед за особенно гнусным оскорблением по адресу хозяина, отец рывком остановил машину.
Источник: Кадзуо Исигуро, Остаток дня, 1989.
Переходя улицу, я слышал за спиной сирены полицейских машин.
Источник: Игорь Белов, Вспомнить вечность.
Сочетаемость слова «машина»
1.
2. новая машина
3. боевая машина
4. машина скорой помощи
5. машина человека
6. боевая машина пехоты
7. дверца машины
8. поток машин
9. дверь машины
10. машина остановилась
11. машина тронулась
12. машина уехала
13. выйти из машины
14. сесть в машину
15. остановить машину
16. (полная таблица сочетаемости)
Значение слова «машина»
МАШИ́НА , -ы, ж. 1. Механизм или совокупность механизмов, совершающие какую-л. полезную работу путем преобразования одного вида энергии в другой. Паровая машина. Счетная машина. Печатная машина. Швейная машина. (Малый академический словарь, МАС)
Склонение слова «машина» по подежам
Падеж | Вопрос | Единственное числоЕд.ч. | Множественное числоМн.ч. |
---|---|---|---|
ИменительныйИм. | что? | машина | машины |
РодительныйРод. | чего? | машины | машин |
ДательныйДат. | чему? | машине | машинам |
ВинительныйВин. | что? | машину | машины |
ТворительныйТв. | чем? | машиной, машиною | машинами |
ПредложныйПред. | о чём? | машине | машинах |
Как правильно пишется слово «машина»
Правописание слова «машина»
Орфография слова «машина»
Правильно слово пишется: маши́на
Нумерация букв в слове
Номера букв в слове «машина» в прямом и обратном порядке:
- 6
м
1 - 5
а
2 - 4
ш
3 - 3
и 4 - 2
н
5 - 1
а
6
Группа разбора , страница 1 | Ирсити.Ру
- Где пробки хуже всего? — опрос
- Майнеров — на север!
- Затраты мэрии на Новый год
- «Гроб сына стоял на чердаке»
- Джингл белс — 2023
- Кому дифтариф?
- Погибшие солдаты из Приангарья
- Мы в Telegram
- Спецоперация на Украине
Разбор типичных аварий, в которых сложно определить виновного
Уточнить запросАвто
Подробности
Видеозапись аварии показала, что водителя Ford Fiesta вынудили совершить роковой маневр
1 186
ОбсудитьАвто
Спецпроект
Разбираем популярный сценарий конфликта на круговом движении
1 355
ОбсудитьАвто
Обзор
Водитель Volkswagen уворачивалась от опасно маневрировавшей «шестерки»
908
ОбсудитьДевушка на электросамокате ехала через переход
651
ОбсудитьАвто
Обзор
Водителя могут осудить, даже если ребенок возник внезапно
931
ОбсудитьАвто
Спецпроект
Авария случилась на регулируемом переходе
1 138
ОбсудитьАвто
Спецпроект
Один летел на желтый, второй очень странно крался
1 061
ОбсудитьАвто
Подробности
Близкие погибшей возмущены отказом МВД наказать водителя
1 076
ОбсудитьАвто
Спецпроект
Такие обозначения парковки для инвалидов сбивают водителей с толку
1 038
ОбсудитьАвто
Спецпроект
Семью ребенка возмутило отношение водителя и дознавателя
2 331
ОбсудитьАвто
Обзор
Ребенок пропускал машины, а потом резко побежал
1 297
ОбсудитьАвто
Подробности
По решению суда семья мальчика должна выплатить автомобилисту крупную сумму
1 387
ОбсудитьАвто
Обзор
Попутно мы выяснили, когда именно нужно уступать дорогу автобусам
1 449
ОбсудитьАвария случилась в месте резкого уширения шоссе
3 025
ОбсудитьДорожники забыли установить знаки, но виновным признали одного из участников
2 605
ОбсудитьПроисшествия
Подробности
Посмотрите видео — как по-вашему, виноват ли водитель грузовика?
2 490
ОбсудитьАвто
Спецпроект
Изучите это видео, чтобы переключить мозги в зимний режим вождения
2 917
ОбсудитьАвто
Спецпроект
Оба автомобилиста перестраивались, но крайним стал один. И не самый очевидный
2 217
ОбсудитьЗанос возник, казалось бы, на ровном месте
2 000
ОбсудитьАвто
Спецпроект
Она шла на зеленый. Автомобиль тоже проехал стоп-линию на зеленый, но через перекресток стартовал на желтый
1 938
ОбсудитьНесмотря на внезапность появления девочки, водителя могут сделать крайним
597
ОбсудитьАвто
Спецпроект
Ему не уступили дорогу, но, по словам очевидцев, он сильно превышал
519
ОбсудитьРебёнок выскочил на переход, когда автомобиль уже начал манёвр
736
ОбсудитьАвто
Спецпроект
Водители не всегда понимают, как проезжать остроугольные перекрёстки
496
ОбсудитьВодитель вышел на обгон, когда машина впереди мерцала поворотником
596
ОбсудитьАвто
Обзор
Один водитель перестраивался, второй испугался, третий «щемился»
507
ОбсудитьАвто
Обзор
Женщина дошла до середины дороги, когда уличные фонари внезапно выключились
582
ОбсудитьПредприниматель обгонял в запрещённой зоне, спровоцировав Vesta уйти на встречку
585
ОбсудитьАвто
Обзор
Наезд произошёл вне перехода, но вопросы к автомобилисту остаются
567
ОбсудитьВ этой аварии могут быть два виновника
5 307
ОбсудитьВот примеры ДТП, косвенной виновницей которых стала зимняя резина
539
ОбсудитьАвто
Обзор
Авария выглядит дико, но подобные трагедии случаются регулярно
Авто
Обзор
В этом ДТП виновник вроде бы очевиден, хотя на деле всё не так однозначно
5 106
ОбсудитьАвто
Обзор
«Волга» вылетела навстречу Land Cruiser, и оба попытались съехать на обочину
500
ОбсудитьАвто
Обзор
Lexus маневрировал очень странно, но часть вины могут возложить на его «соперника»
481
ОбсудитьАвто
Обзор
Велосипедист считается водителем, а если у него есть права, то их, получается, можно отнять
429
ОбсудитьПроисшествия
Обзор
Вызывает вопросы виновность водителя, который в этот момент перестраивался
431
ОбсудитьПохоже, режим самоизоляции плохо влияет и на водителей, и на пешеходов
414
ОбсудитьАвто
Спецпроект
Выясняем, кто больше виноват в эффектной аварии в Самаре
427
ОбсудитьАвто
Спецпроект
По такому сценарию бьются каждую неделю
339
ОбсудитьРуководство по концепции синтаксического анализа
Руководство по концепции синтаксического анализаЗачем нужен парсинг
Важным аспектом соответствия данных назначению является их структура. встречается в . Зачастую сама конструкция не подходит для нужд данных. Например:
- В системе сбора данных нет полей для каждая отдельная часть информации с различным использованием, что приводит к тому, что пользователь обходные пути, такие как ввод большого количества отдельных фрагментов информации в единственное свободное текстовое поле или использование неправильных полей для информации, которая не имеет очевидного места (например, размещение информации о компании в отдельных полях контактов).
- Данные необходимо перенести в новую систему с другая структура данных.
- Необходимо удалить дубликаты из данных, и трудно определить и удалить дубликаты из-за структуры данных (например, идентификаторы ключевых адресов, такие как номер помещения, не разделяются от остальной части адреса).
В качестве альтернативы структура данных может быть правильной, но использование оно недостаточно контролируется или подвержено ошибкам. Например:
- Пользователи не обучены собирать все необходимые информацию, вызывая такие проблемы, как ввод контактов с помощью «читов данных», а не реальных имена в полях имени
- Приложение отображает поля в нелогичном порядок, что приводит к тому, что пользователи вводят данные не в те поля
- Пользователи вводят повторяющиеся записи способами, трудно обнаружить, например, ввод неточных данных в несколько записей, представляющих один и тот же сущности, либо введя точные данные, но не в те поля.
Все эти проблемы приводят к ухудшению качества данных, что во многих случаях может дорого обходиться бизнесу. Поэтому для бизнеса важно быть в состоянии анализировать данные для этих проблем, и решить их там, где необходимый.
Анализатор OEDQ
Процессор OEDQ Parse предназначен для использования разработчиками. процессов качества данных для создания пакетных парсеров для понимания и преобразование конкретных типов данных — например, данных имен, Адресные данные или описания продуктов. Тем не менее, это общий парсер в котором нет правил по умолчанию, специфичных для любого типа данных. Зависит от данных правила могут быть созданы путем анализа самих данных и установки Parse конфигурация.
Терминология
Синтаксический анализ — часто используемый термин как в области качества данных, и в вычислительной технике в целом. Это может означать что угодно, от простого «нарушения данные до полного синтаксического анализа естественного языка (NLP), который использует сложные искусственный интеллект, позволяющий компьютерам «понимать» человеческий язык. Также часто используется ряд других терминов, связанных с синтаксическим анализом. Опять таки, они могут иметь немного разные значения в разных контекстах. это поэтому важно определить, что мы подразумеваем под синтаксическим анализом и связанным с ним термины в OEDQ.
Обратите внимание на следующие термины и определения:
Срок | Определение |
Разбор | В OEDQ синтаксический анализ определяется как применение заданных пользователем бизнес-правила и искусственный интеллект, чтобы понимать и проверять массивы любых типов данных и, при необходимости, улучшать их структуру для того, чтобы сделать его пригодным для использования. |
Жетон | Маркер — это часть данных, которая распознается как единица синтаксическим анализом. процессор с помощью правил. Заданное значение данных может состоять из одного или нескольких токенов. Маркер может быть распознан с помощью синтаксического или семантического анализа. данных. |
Токенизация | Первоначальный синтаксический анализ данных, чтобы разбить их на свои наименьшие единицы (базовые токены) с использованием правил. Каждому базовому токену присваивается тег, например , который используется для представления непрерывной последовательности буквенных символов. |
Базовый жетон | Начальный токен, распознаваемый Tokenization. Последовательность базы Жетоны позже могут быть объединены для формирования нового Токена в Классификации или Реклассификация. |
Классификация | Семантический анализ данных для придания значения базовым токенам, или последовательности базовых токенов. Каждая классификация имеет тег, например «Здание», и уровень классификации (Действительный или Возможный), который используется при выборе лучшее понимание неоднозначных данных. |
Проверка токена | Набор правил классификации, применяемый к атрибуту в для проверки определенного типа токена. |
Реклассификация | Необязательный дополнительный этап классификации, который позволяет классифицированные токены и неклассифицированные (базовые) токены, подлежащие реклассификации как один новый токен. |
Образец токена | Объяснение строки данных с использованием шаблона тегов токена, либо в одном атрибуте или в нескольких атрибутах. Строка данных может быть представлена с использованием нескольких различных токенов. узоры. |
Выбор | Процесс, с помощью которого процессор Parse пытается выбрать «лучший» объяснение данных с использованием настраиваемого алгоритма, где запись имеет множество возможных объяснений (или шаблонов токенов). |
Резолюция | Категоризация записей с заданным выбранным объяснением (токен образец) с результатом (пройдено, просмотрено или не пройдено) и необязательным комментарием. Разрешение также может разрешать записи в новую структуру вывода, используя правила на основе выбранного шаблона токена. |
Обзор процессора OEDQ Parse
На следующей диаграмме показано, как OEDQ Parse процессор работает:
См. страницы справки для OEDQ. Разберите процессор для получения полных инструкций по его настройке.
Справка по Oracle ® Enterprise Data Quality, версия 9.0
Copyright ©
2006,2011 Oracle и/или ее дочерние компании. Все права защищены.
Multi-Machine Parsing #1: Введение — CodeProject
Использование нескольких алгоритмов синтаксического анализа в одном синтаксическом анализаторе позволяет анализировать любой язык по вашему вкусу. В первой части этой серии статей мы приводим ряд аргументов в пользу многомашинного подхода.
Мотивация
При конструировании синтаксического анализатора для нового (или даже уже существующего) языка приходится сталкиваться с двумя стандартными вариантами:
- использовать генератор синтаксических анализаторов (Википедия скромно перечисляет около 80 из них), который включает передача грамматики вашего языка генератору и получение готового парсера с другой стороны; и
- чтобы самому написать весь парсер с нуля.
Независимо от сделанного выбора, очень вероятно, что при написании синтаксического анализатора с нуля для большей части будет использоваться один стандартный алгоритм синтаксического анализа, такой как LALR/GLR с Bison, или рекурсивный спуск LL(k)/LL-регулярный синтаксический анализ. .
Это вызывает проблемы , и именно этот подход «один алгоритм подходит всем для моей грамматики» является одной из основных причин, по которой эффективный синтаксический анализ остается сложной проблемой даже через 50 лет после его золотого века. , несмотря на множество изобретенных алгоритмов синтаксического анализа и генераторов.
Мы можем классифицировать наиболее распространенные проблемы, связанные с использованием одного генератора синтаксического анализа, на четыре группы:
- слепота к желательной существенной неоднозначности
- создание несущественной неоднозначности
- непомерный размер анализатора
- неоптимальный анализатор производительность
В оставшейся части этой статьи мы рассмотрим каждую из этих проблем, приведем примеры, где это уместно, и подскажем, как многомашинный синтаксический анализатор решит проблему, связанную с тем, что мы ограничимся одним алгоритмом синтаксического анализа, рисуя решение широкими мазками. В следующих статьях этой серии будут подробно описаны решения этих проблем.
Проблемы
Проблема № 1: Слепота к желательной существенной неоднозначности
Грамматика языка программирования может страдать от конструктивной омонимии : мы строим то, что, по нашему мнению, является достаточно простой грамматикой, отражающей структуру нашего языка, и затем обнаружите, что существует вход, который можно понять несколькими способами (т. е. для одной и той же строки терминалов можно построить несколько эквивалентных деревьев синтаксических анализаторов).
Для некоторых (редких) языков это функция, для этого существенная неоднозначность (т. е. такая, которая является атрибутом грамматики, а не используемого метода синтаксического анализа) может отражать лежащую в основе реальность существования семантической неоднозначности. Заимствуя пример из основополагающей статьи Хомского 1956 года, грамматика…
Предложение -> Фраза существительного Глагольная фраза VerbPhrase -> Verb NounPhrase Глагол -> летят Глагол -> есть Существительное -> они Словосочетание -> летающие самолеты Фраза Существительное -> самолеты
. .. может понимать
Цитата:
они летают на самолетах
… двояко,
- «они» — те точки на горизонте — «существуют» — существуют как — «летающие самолеты» — транспортные средства для полета в процессе полета, и
- «они» — пилоты — «летят» — управляют полетом — «самолеты» — транспортных средств для полетов
Семантическое значение примера приведено только для иллюстрации, важное отличие здесь заключается в синтаксическом понимании входной строки.
В таком сценарии может быть желательно распознать обе альтернативы, а затем позволить фазе семантического анализа, которая следует за синтаксическим анализом, решить, что имелось в виду, исходя из контекста.
Хотя существуют алгоритмы, которые могут довольно эффективно находить все возможные интерпретации входных данных грамматики (Earley, 1970; Hext and Roberts, 1970), их внутреннее устройство синтаксического анализа становится огромным для обычных грамматик, в больших размерах они слишком медленны, чтобы их можно было использовать. развернуты для синтаксического анализа современных универсальных языков программирования, и трудно найти генераторы, которые бы их производили. На данный момент они представляют собой скорее древнюю вазу в музее методов синтаксического анализа, чем надежный инструмент, который разработчик компилятора использовал бы для решения более специфической задачи.
Таким образом, мы приходим к проблеме: любой распространенный, хорошо понятный стандартный алгоритм, скорее всего, будет слеп к двусмысленности, которая может быть желательна сама по себе или даже быть особенностью языка; но именно тот факт, что мы настолько привыкли к использованию единого алгоритма синтаксического анализа, заставляет нас удалять весь недетерминизм из нашего языка на уровне синтаксического анализа. Реальный пример из C++: использование ключевого слова typename
.
Многомашинное решение
Изолируйте часть грамматики, содержащую желаемую существенную двусмысленность. Если вы разрабатываете язык самостоятельно, вы можете намеренно использовать такие случаи двусмысленности, но держите их небольшими.
Как только вы изолируете критическую часть грамматики, обработайте ее с помощью одного из алгоритмов, хорошо обрабатывающих двусмысленность (см. ссылки выше), используя один из эффективных детерминированных подходов для остальной части грамматики.
Проблема № 2: Создание несущественной неоднозначности
Это, безусловно, самая распространенная проблема. Предположим, вы решили использовать алгоритм синтаксического анализа A
. Поскольку действительно общих эффективных алгоритмов разбора не существует, будет существовать сложность, введение которой делает невозможным построение анализатора типа 9.0240 А .
Для канонических синтаксических анализаторов LL(k) такой сложностью является наличие двух продукций, которые отличаются только своими хвостами, отделенными от их начала нетерминалами произвольной длины. Для канонических синтаксических анализаторов LR(k) такой сложностью является любая корректировка грамматики, которая вводит конфликт сдвиг/свертка или сведение/свертка, а для менее общих вариантов синтаксического анализа LR(k) (таких как SLR или LALR), Нарушение ограничений выбранного метода синтаксического анализа еще проще.
Сообщение здесь состоит в том, что использование одного метода синтаксического анализа вынуждает вас приспосабливать вашу грамматику к ограничениям этого метода .
Продемонстрируем это на конкретном примере. Рассмотрим следующий фрагмент кода, написанный на языке, предназначенном для настройки складских сортировочных роботов:
Сортировщик узлов : OutputTrackSolids OutputTrackLiquids { использовать ввод InputTrackA; // описание процесса сортировки }
Захваченный с помощью Bison-подобной контекстно-свободной грамматики (CFG), синтаксический каркас языка может быть описан как:
NodeDefinition = KW_NODE IDENTIFIER OP_COLON NodeOutputList OP_LCURLY NodeBody OP_RCURLY; NodeOutputList = ИДЕНТИФИКАТОР NodeOutputList | /* пустой */; ...
Остальная часть грамматики может (хорошо) быть разработана как LL(k), а синтаксический анализатор может быть построен с помощью методов учебника.
Предположим, что готовится новая версия языка, в которой любой сортировщик может иметь произвольное количество входных дорожек — желательно что-то вроде следующего:
Сортировщик узлов : OutputTrackSolids OutputTrackLiquids с входными данными TrackA TrackB { // описание процесса многодорожечной сортировки // директива use input запрещена; входы уже указаны }
Опять же, эта структура может быть захвачена другой грамматикой LL(k), содержащей следующее:
NewNodeDefinition = KW_NODE IDENTIFIER OP_COLON NodeOutputList KW_WITH_INPUTS NodeInputList ...
Теперь предположим, что любой синтаксический анализатор для этого нового языка должен быть обратно совместимым, т. Е. Первый фрагмент кода также должен быть правильно распознан. Нет канонического синтаксического анализатора LL(k), даже LL(конечный) синтаксический анализатор не может успешно устранять неоднозначность между нетерминалами NodeDefinition
и NewNodeDefinition
, поскольку никакое фиксированное количество опережающего просмотра не может видеть произвольно длинный нетерминальный NodeOutputList.
Есть несколько вещей, которые можно сделать, чтобы решить эту проблему, но каждый из них включает в себя своего рода «взлом» (например, использование предиката) или некоторую другую корректировку вашей грамматики.
Опять же, суть вот в чем:
Цитата:
… взяв на себя обязательство использовать единственный метод синтаксического анализа, вы были лишены свободы использовать грамматику, которую вы хотите использовать , и, следовательно, разработать язык, который вы хотите разработать.
Многомашинное решение
Продуманное сочетание нескольких типов синтаксических анализаторов может устранить эту проблему. В приведенном выше примере синтаксический анализатор LL(k), использующий выделенный конечный автомат при просмотре NodeOutputList
для устранения неоднозначности между NodeDefinition
и NewNodeDefinition
будет работать даже при линейной сложности времени. Этот пример будет более подробно рассмотрен позже в этой серии.
Проблема №3: Недопустимый размер анализатора
Анализаторы занимают место пропорционально размеру базовой грамматики. Кроме того, как правило, чем более выразительным может быть метод разбора грамматики M
, тем больше M
-парсеры.
Проблема, связанная с использованием одного метода синтаксического анализа, состоит в том, что наиболее сложная часть грамматики определяет метод синтаксического анализа для всего синтаксического анализатора.
В качестве примера рассмотрите возможность написания синтаксического анализатора для языка, который поддерживает обычные C-подобные арифметические выражения, например, путем реализации процедур синтаксического анализа для следующей небольшой подграмматики.
Выражение -> Выражение - Термин Выражение -> Выражение + Термин Выражение -> Термин Term -> NUMBER /* числовая константа */ Term -> IDENTIFIER /* имя переменной */ Термин -> '('Выражение')'
Синтаксический анализатор для остальной части языка может быть реализован с помощью простого анализатора LL(1), однако наличие одних только арифметических выражений заставляет вас использовать другой метод разбора, который, скорее всего, создаст более крупный анализатор.
Многомашинное решение
Изолируйте наиболее сложную часть вашей грамматики, обработайте ее сложной машиной, а затем подключите эту машину к более простому суперпарсеру, который обрабатывает остальную часть грамматики.
В приведенном выше примере грамматика для арифметических выражений может быть изолирована, и для ее анализа может использоваться приоритет оператора или синтаксический анализатор LR(1). Остальную часть нашей грамматики можно обрабатывать по-разному, и синтаксический анализатор OP/LR(1) будет вызываться только тогда, когда это необходимо.
Проблема № 4: Неоптимальная производительность синтаксического анализатора
Методы синтаксического анализа, предназначенные для обработки более сложных грамматик, обычно достаточно эффективны для одного типа грамматик, но несколько менее эффективны для некоторых конкретных типов синтаксических структур.
Искусственный, но реальный пример — сгенерированный ANTLR синтаксический анализатор LL(*) для следующей грамматики:
А = а* б* В; В = а б + с;
. .. работающие над строками вида n b m c с неотрицательными n
и положительный m
. Этот пример имитирует конкуренцию без двусмысленности за прилагательные между двумя существительными в предложении на некоторых славянских языках и запускает синтаксический анализатор в наихудшем случае с экспоненциальным временем синтаксического анализа. Однако из теории LL-регулярных грамматик мы точно знаем, что синтаксический анализатор с линейным временем существует — если бы только мы могли использовать такой синтаксический анализатор для этой части грамматики, а синтаксический анализатор LL(*) — для всего остального.
Решение для нескольких машин
Зная об ограничениях вашего основного выбора машины для синтаксического анализа, найдите части вашей грамматики, которые вызывают неоптимальную производительность. Для этого можно использовать специализированную машину синтаксического анализа, в то время как основная машина синтаксического анализа может обрабатывать общий скелет грамматики.