summaryrefslogtreecommitdiff
path: root/ChangeLog
blob: 47644b4e0baf10e474a8278b8f0b43934e0eb740 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
colm 0.10 - April 18, 2013
--------------------------
	* Implemented the colm parser in colm. Bootstrapping with a parse tree
	  construction in C++. Using that generated parser to to parse the colm
	  grammar, from which the primary parser is produced.
	* Improved error reporting.
	* Added some tracking of progress through a stream for better
	  backtracking over includes that are pushed onto a stream.
	* Updated the vim syntax, no longer highlighting parser, list, etc
	  (types).
	* Parse expressions are now returning trees again. Returning the parser
	  results in semantics inconsistent with many other areas of the
	  program.
	* Can now put '.' or eos on the end of a send expression to terminate
	  the parse
	* Removed the original send syntax (<<).
	* Lowercased and otherwise improved the C interface.
	* The default binary name no longer has .bin suffix.
	* Fixed -o option, now using -c to mean compile on (library). The
	  export filename options are now -e and -x.

colm 0.9 - Feb 19, 2013
-----------------------
	* The parse loop now scans data that is owned by the input stream. It
	  is copied into a contiguous block in the scanner when the token is
	  consumed.
	* The syntax of lexical regions was altered to omit the name. The
	  curlies were replaced with lex ... end syntax.
	* The syntax of namespaces were altered. Curlies were replaced with 
	  namespace <ID> ... end.

colm 0.8 - Dec 29, 2012
-----------------------
	* The parse statement now includes a call to the finish operation. It
	  returns a value of type parser<Type>. The result tree and any error
	  message can be retrieved from this object using 'tree' and 'error'
	  members.
	* Dropped curly brackets and the name from the syntax of lexical region
	  defintition. Using "lex ... end"
	* Dropped curly brackets from the syntax of namespaces and context blocks.
	  Using "namespace N ... end N" and "context N ... end N"
	* Now have a growable stack instead of a large, fixed, pre-allocated stack.