Download Latest Version CocoS-0.7.zip (284.3 kB)
Email in envelope

Get an email when there's a new version of Coco/S Parser Generator

Home / prerelease
Name Modified Size InfoDownloads / Week
Parent folder
readme.txt 2014-08-28 1.7 kB
CocoS-0.5-src.zip 2014-08-28 189.1 kB
CocoS-0.5.zip 2014-08-28 120.9 kB
Totals: 3 Items   311.7 kB 0
Coco/S Parser Generator

Coco/S is a development effort to build a SAX style callback API on top of 
the mature Coco/R (http://www.ssw.uni-linz.ac.at/Research/Projects/Coco/) parser generator.

Notable differences to Coco/R:

* The grammar should not be attributed. Instead a default class "ParserListener" will be
  generated with call back method for all productions of the grammar. This ParserListener
  must be extended in a custom class that implements the semantic actions.
  Support for attributed grammar constructs will be removed in a future version.
  
* The compiler supports a property declarations before the declaration of the character sets.
  The syntax is:
  
  propert_declaration = "PROPERTIES" {property} .
  property = ident '=' ident .
  
  Property names are not case sensitive. At present the following properties are defined:
  ignorecase: (true|false) Setting this property to true has the same effect as the IGNORECASE flag. 
  		The generated scanner will not considder letter case as relevant. The IGNORECASE flag is deprecated.
  reportWhitespace: (true|false) If set to true, whitespace tokens will be reported to the parser.
  		The ParserListener will receive a whitespace notification.
  skipUndefinedSymbol: (true|false) If set to true, the parser will drop undefined symbols (tokens),
  		and continue parsing as if the token was not reported. The parser will generate an error though.
  		The default behaviour is to abort parsing immediately.	
  		
* There is no default whitespace definition anymore. All whitespace, including ' ' (space) must
  explicitely be defined throught the IGNORE directive.
  
Read the documentation at http://cocos-parsergen.sourceforge.net/ for more detailed information.
Source: readme.txt, updated 2014-08-28