Diskussion:ANTLR
Beispiel
BearbeitenLiebe (Co-)Autoren,
das Beispiel macht mir Sorgen, ich verstehe einige Passagen einfach nicht, und ich neige dazu anzunehmen, der Autor hatte hiermit ebenfalls Sorgen. Andere Passagen sind kommentiert, obwohl sie weitaus verständlicher sind. Also sollten entweder Kommentare (zumindest einer) eingefügt werden, falls die Optionen wirklich etwas zum Verständnis des Beispiels beitragen oder andernfalls diese Passagen gelöscht werden:
options { k = 1; }
Danke fürs Lesen, danke fürs Kümmern! Grüße --Peu 10:52, 4. Dez. 2008 (CET)
- Hab die Sache selbst erledigt. --Peu 10:36, 10. Dez. 2008 (CET)
Bei mir konnte die Beispielsgrammatik mit ANTLRWorks 1.2.3 nicht kompiliert werden, reduziert auf die folgenden Zeilen konnte er die Grammatik zwar kompilieren aber den einfachen String 1+2+3 konnte er nicht parsen. Er wirft immer die MissingTokenException. Weiss jemand von euch die Lösung?
Im File SimplePlusGrammar.g:
grammar SimplePlusGrammar; statement : INTEGER (PLUS INTEGER)*; PLUS : '+'; DIGIT : ('0'..'9'); INTEGER : DIGIT+;
--Winston Smith2 12:47, 19. Sep. 2009 (CEST)
Habe mal eine Versionshistorie zusammengesucht:
ANTLR 4.0 / March 27, 2011 ANTLR 3.4 / July 18, 2011 ANTLR 3.3 / November 29, 2010 ANTLR 3.2 / September 22, 2009 ANTLR 3.1 / August 12, 2008 ANTLR 3.0 / May 17, 2007 ANTLR 2.7.7 / Nov 1, 2006 ANTLR 2.7.6 / Dec 22, 2005 ANTLR 2.7.5 / January 28, 2005 ANTLR 2.7.4 / May 9, 2004 ANTLR 2.7.3 / March 22, 2004 ANTLR 2.7.2 / January 19, 2003 ANTLR 2.7.1 / October 1, 2000 ANTLR 2.7.0 / Jan 19, 2000 ANTLR 2.6.0 / March 1999 ANTLR 2.5.0 / November 1998 ANTLR 2.4.0 / September 1998 ANTLR 2.3.0 / June 1998 ANTLR 2.2.0 / December 1997 ANTLR 2.1.0 / July 1997 ANTLR 2.0.0 / May 1997 http://www.antlr.org/history.html
Was für eine Art von "Java" ist das?
BearbeitenIch las: "Der Übersetzer selbst ist in Java geschrieben." Offenbar unterschied sich "Java" im Jahre 1989 enorm vom heutigen SUN-Java, das ja erst im Jahre 1996 auf den Markt kam! Hat da jemand detaillierte Infos? Bitte in den Artikel integrieren, danke. --178.197.233.41 08:50, 2. Okt. 2012 (CEST)
- Noch was: "Der Übersetzer selbst ist in Java geschrieben, als freie Software verfügbar und ist auf der Java-Plattform sowie auf .NET und Mono lauffähig." Also ist es kein Java, sondern eine maschinennähere Sprache...denn Java-Programmiercode läuft nun definitiv nicht auf .NET! --178.197.233.41 08:55, 2. Okt. 2012 (CEST)
- ANTLR ist in Java geschrieben - siehe ANTLR download (als *.jar File) und ohloh: Java 86%, XML 14%, shell script <1%. Es gibt aber einen Port nach .Net siehe auch ANTLR download page, der dann auf .Net lauffähig ist ("ANTLR v3.1.x binaries for .NET framework. No dependence on the Java runtime. antlr3.exe and StringTemplate and ANTLR runtime libraries it depends on. Completely independent version written by Sam Harwell (ported from Java).") --Sebastian.Dietrich ✉ 09:03, 2. Okt. 2012 (CEST)
- Na gut, wenn das Java sein soll, dann bin ich der Weihnachtsmann:
PLUS : '+'; DIGIT : ('0'..'9'); INTEGER : (DIGIT)+;
- Ich gehe mal davon aus, das ist C oder so was in der Art, aber bestimmt kein Java, zumindest nicht "offizielles" Java. Zumal wie gesagt Java erst im Jahre 1996 auf den Markt kam...von daher denke ich, dass ANTLR ursprünglich in C bzw. C++ (dem Vorläufer von .NET) geschrieben war und womöglich der Java-compilereigene Parser von SUN direkt auf ANTLR basiert. Aber im Netz gibts diesbezüglich leider keine Infos, scheint ein Insider zu sein. --178.197.233.41 12:32, 2. Okt. 2012 (CEST)
- Bitte einfach nochmal den Artikel lesen. ANTLR selbst ist in Java geschrieben und kann (wie jeder Übersetzer) verschiedene Sprachen in andere übersetzen (also nicht nur Java in Java was ja auch sinnlos wäre). Das von dir genannte Beispiel ist weder C noch Java noch sonst eine Programmiersprache sondern (steht auch im Artikel) "eine Mischung aus formaler Grammatik und Elementen aus objektorientierten Sprachen" --Sebastian.Dietrich ✉ 13:49, 2. Okt. 2012 (CEST)
- Danke, das war durch die seltsamen Formulierungen im Artikel aber keineswegs klar. Deshalb habe ich den Artikel nun ein klein wenig überarbeitet. Grüsse, 178.197.233.117 14:32, 2. Okt. 2012 (CEST)