Javacc

PARDER / SCANNER-generator voor Java
Download nu

Javacc Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • BSD
  • Prijs:
  • FREE
  • Naam uitgever:
  • Sun Microsystems
  • Uitgever website:
  • http://www.sun.com/software/staroffice/index.jsp
  • Besturingssystemen:
  • Mac OS X
  • Bestandsgrootte:
  • 461 KB

Javacc Tags


Javacc Beschrijving

Parser / scanner generator java JavaCC is de meest populaire parser generator voor gebruik in combinatie met Java-toepassingen. Een parser generator is een instrument dat een grammatica specificatie leest en zet deze om naar een Java-programma dat de wedstrijden om de grammatica kan herkennen. JavaCC voorziet ook in andere standaard mogelijkheden met betrekking tot parser generatie zoals boom gebouw (via een tool genaamd JJTree meegeleverd met JavaCC), het debuggen, acties, enz. Hier zijn een aantal belangrijke eigenschappen van "JavaCC": · TOP-DOWN: JavaCC genereert top-down (recursive descent) parsers in tegenstelling tot bottom-up parsers gegenereerd door YACC-achtige instrumenten. Dit maakt het gebruik van algemenere grammatica (hoewel linker recursie is niet toegestaan). Bovenaf parsers een heleboel andere voordelen (naast algemener grammatica's) zoals het gemakkelijker te debuggen, met de mogelijkheid om ontleden één niet eindstandige binnen de grammatica, en ook met de mogelijkheid om waarden (attributen) door beide up en beneden de parse boom tijdens het ontleden. · Grote gebruikersgroep GEMEENSCHAP: JavaCC is veruit de meest populaire parser generator gebruikt in combinatie met Java-toepassingen. We hebben honderdduizenden downloads had over en schatten serieuze gebruikers in de vele duizenden (misschien zelfs tienduizenden). Onze mailinglijst en nieuwsgroepen hebben samen een paar duizend deelnemers. · Lexicale en grammatica GEGEVENS IN ONE FILE: De lexicale specificaties zoals reguliere expressies, strijkers, enz. En de grammatica specificaties (de BNF) zijn beide geschreven samen in hetzelfde bestand. Het maakt grammatica's gemakkelijker te lezen (aangezien het mogelijk is om reguliere expressies inline te gebruiken in de grammatica specificatie) en ook makkelijker te onderhouden. · BOOM GEBOUW preprocessor: JavaCC geleverd met JJTree, een uiterst krachtige boom gebouw preprocessor. · Extreem aanpasbaar: JavaCC biedt veel verschillende opties om het gedrag en het gedrag van de opgewekte parsers te passen. Voorbeelden van dergelijke opties zijn het soort Unicode bewerking uit te voeren van het ingangssignaal, het aantal tekens onduidelijkheid controle uit te voeren, etc. etc. · Gecertificeerd voor 100% pure Java: JavaCC draait op alle Java-compatibele platforms versie 1.1 of hoger. Het is gebruikt op talloze verschillende machines zonder speciale port-werk - een getuigenis van de "Write once, run overal" aspect van de Java programmeertaal. · DOCUMENT GENERATION: JavaCC bevat een tool genaamd JJDoc dat bekeerlingen grammatica bestanden naar documentatiebestanden (naar keuze in html). · Veel vele voorbeelden: The JavaCC release bevat een breed scala aan voorbeelden, waaronder Java en HTML grammatica. De voorbeelden, samen met hun documentatie, zijn een geweldige manier om kennis te maken met JavaCC. · Geïnternationaliseerde: De lexicale analyse van JavaCC kan omgaan met volledige Unicode input, en lexicale specificaties kunnen tevens alle Unicode-teken. Dit vergemakkelijkt de beschrijvingen van de taal elementen, zoals Java identifiers dat bepaalde Unicode-tekens (die niet ASCII) toe te staan, maar andere niet. · Syntactische en semantische lookahead GEGEVENS: Standaard, JavaCC genereert een LL (1) parser. Echter, er kunnen delen van de grammatica die niet LL (1) zijn. JavaCC biedt de mogelijkheden van syntactische en semantische lookahead voor het oplossen van shift-shift dubbelzinnigheden lokaal op deze punten. Bijvoorbeeld, de parser is LL (k) alleen op die punten, maar blijft LL (1) overal elders voor betere prestaties. Shift-en vermindering-verminderen conflicten zijn geen probleem voor top-down parsers. · Staat verlengd BNF GEGEVENS: JavaCC hiermee uitgebreid BNF specificaties - zoals (A) * (A) +, etc. - in de lexicale en grammaticale specificaties. Extended BNF verlicht de noodzaak van links-recursie tot op zekere hoogte. In feite is verlengd BNF is vaak gemakkelijker te lezen als in A :: = y (x) * versus A :: = Ax | y. · Lexicale STATEN en lexicale ACTIES: JavaCC aanbiedingen lex-achtige lexicale staat en lexicale actie mogelijkheden. Specifieke aspecten met JavaCC die superieur zijn aan andere tools zijn de eerste klasse-status biedt concepten zoals TOKEN, MORE, SKIP, staat veranderingen, enz. Dit maakt het mogelijk Specificaties stofzuiger evenals een betere foutmeldingen en waarschuwingen van JavaCC. · Hoofdletterongevoelige lexicale ANALYSE: lexicale specificaties definiëren tokens niet te hoofdlettergevoelig hetzij op mondiaal niveau de gehele lexicale specificatie of op individuele basis lexicale specificatie. · Uitgebreide DEBUGGING MOGELIJKHEDEN: Met behulp van opties DEBUG_PARSER, DEBUG_LOOKAHEAD en DEBUG_TOKEN_MANAGER, kan men een diepgaande analyse van het ontleden en het token processtappen te krijgen. · Speciale tokens: tokens die worden gedefinieerd als speciale tokens in de lexicale specificatie worden genegeerd tijdens het parseren, maar deze tokens zijn beschikbaar voor verwerking door de tools. Een nuttige toepassing hiervan is in de verwerking van opmerkingen. · Zeer goede foutrapportage: Javacc-foutrapportage behoort tot de beste in parser-generatoren. Javacc gegenereerde parsers kunnen duidelijk wijzen op de locatie van parse fouten met volledige diagnostische informatie. Vereisten: · Java


Javacc Gerelateerde software

Rdoc

Vrije ontwikkelingsoplossing voor het genereren van ondersteuningspagina's voor de documentatie-instrumenten in Core Ruby ...

204 173 KB

Downloaden

Checkstyle

Open source tool waarmee ontwikkelaars een Java-code kunnen schrijven die zich aan een coderingsstandaard hecht ...

176 4.1 MB

Downloaden

Mcocoa

Open source .NET Wrappers voor Apple's Cocoa-toepassingskader ...

133 880 KB

Downloaden