Кіріспе

Жоғарыдан Төменге Қарай Синтаксистік Тіл (ЖТҚТ) – 1970 жылдардың басында Александр Бирман жасаған аналитикалық формальды грамматиканың бір түрі. Бұл тіл, шектеулі кері іздеуді қолдайтын, кең таралған жоғарыдан төменге қарай талдайтын құралдардың қалай жұмыс істейтінін формальды түрде зерттеу мақсатымен әзірленген. Бирман бастапқыда өзінің формализмін TMG Schema (TS) деп атады, бұл атау TMG, алғашқы талдау генераторының атынан алынған, бірақ кейіннен Ахо мен Ульманның «Синтаксистік талдау, аударма және компиляция теориясы» атты классикалық антологиясында ЖТҚТ деп атау берді.

Жалпыланған TDPL

TDPL-дің Generalized TDPL немесе GTDPL деп аталатын шағын өзгеруі TDPL-дің айқын экспрессивтілігін күрт арттырады, бірақ сонымен бірге сол минималистік көзқарасты сақтайды (бірақ олар іс жүзінде эквивалентті). GTDPL-де TDPL-дің рекурсивті ереже түрі A → BC/D орнына A → B[C,D] түрі қолданылады. Бұл ереже былай түсіндіріледі: Егер терминалды емес A белгілі бір кіріс жолы бойынша шақырылса, ол бірінші кезекте B-ні рекурсивті түрде шақырады. Егер B сәтті орындалса, A кейін C-ні B-нің пайдаланбаған кіріс бөлігіне шақырады және C-нің нәтижесін бастапқы шақырушыға қайтарады. Ал егер B орындалмаса, A бастапқы кіріс жолы бойынша D-ні шақырады және нәтижені шақырушыға жібереді. Бұл ереже түрі мен TDPL-де қолданылатын A → BC/D ереже түрінің маңызды айырмашылығы – C және D ешқашан A-ға бір шақыруда бірдей шақырылмайды: яғни GTDPL ережесі B-ні шарт ретінде пайдалана отырып, "таза" егер/әйтпесе конструкциясы сияқты жұмыс істейді. GTDPL-де {anbncn} сияқты классикалық мысалдармен бірге контекстсіз тілдерді тікелей көрсету оңай. GTDPL грамматикасын сол тілді танитын эквивалентті TDPL грамматикасына дейін қысқартуға болады, бірақ бұл процесс оңай емес және қажетті ережелер санын арттыруы мүмкін. Сонымен қатар, TDPL және GTDPL екеуі де грамматиканың бір класын ұсынатын өрнектерді талдаудың өте шектеулі түрлері болып табылады.