ANTLR3

ANTLR3

Az ANTLR (ejtsd: entler) a számítógépes nyelvfelismerés szakterületén használatos szoftver. LL(*) típusú szintaktikus elemzőket állít elő. AZ ANTLR az 1989-ben kifejlesztett Purdue Compiler Construction Tool Set (PCCTS) utódja. Fejlesztője Terence Parr, a San Franciscói Egyetem professzora.

Az ANTLR bemenete egy nyelvet leíró formális nyelvtan, kimenete pedig egy ezen nyelvet felismerő véges automata forráskódja. Az ANTLR a következő kimeneti programnyelveket támogatja: Ada, ActionScript, C, C#, Java, JavaScript, Objective-C, Perl, Python, és Ruby. A nyelvet környezetfüggetlen nyelvtan írja le a kiterjesztett Backus–Naur forma segítségével.

Az ANTLR alkalmas nyelvi elemzők, lexikális elemzők, faelemzők, és kombinált nyelvi-lexikális elemzők generálására. Az elemzők képesek automatikusan szintaxisfákat alkotni, amelyek tovább vizsgálhatók a faelemzők segítségével. Az ANTLR mindegyik célra egységes leírónyelvet biztosít, amely egyszerűsíti a használatát.

Alapértelmezés szerint az ANTLR beolvassa a megadott nyelvtant, és létrehozza a nyelvtanhoz tartozó elemzőt (egy olyan programot, amely hibát jelez, ha a bemenete nem felel meg a nyelvtan szintaxisának). Ha nincsenek szintaktikus hibák, az elemző egyszerűen üzenet nélkül kilép. A nyelvtani elemekhez azonban akciókat is lehet kapcsolni. Az akciók ugyanazon a nyelven íródnak, amelyen az elemző, ezek a kódrészletek a megfelelő helyeken beépülnek az elemző kódjába. Akciók segítségével szimbólumtáblákat építhetünk és ellenőrizhetünk, vagy fordítók esetében a célnyelven utasításokat adhatunk. Forrás

Reklámok

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s