## Changelog
#### 0.9.0
- Transition to parsing Text using a simplified alex lexer and happy parser
#### 0.8.0
- We can now parse Unicode strings from UTF-8 encoded files. By default these
literals are not interpreted, and we have
`StringLiteral.interpretStringLiteral` for interpretation and
`StringLiteral.constructStringLiteral` for constructing Lua string literals
from UTF-8 encoded ByteStrings.
Main invariant is that if you print a parsed Lua string, it should be printed
the same way. (including long strings)
- Empty statements(`EmptyStat`) are now printed by pretty printer to avoid
ambiguous printing. Previously these two statements were printed the same:
```lua
f();(f)()
f()(f)()
```
But the first line does not have the parse ambiguity(3 function applications
in one statement or two function application statements).
- Forgotten `Annotated` instance for `Name` implemented.
- Some warnings are fixed for GHC < 7.10.
#### 0.7.1
- Integer division parsing fixed.
#### 0.7.0
- `language-lua` now supports Lua 5.3.
- Some warnings printed with `base >= 4.8` are fixed.
#### 0.6.3.3
- Some bugs related with assignment statement parsing are fixed(#22).
- Wrong error message for expected `==` operator is fixed(#23).
#### 0.6.3.2
- Build fixed for GHC 7.10.
#### 0.6.3.1
- `Build-tools` field is added to Cabal file.
#### 0.6.3
- Fixed some issues with string parsing. (#17)
- Added `named` variant of text parsers to allow specifying source names. (#18)
#### 0.6.2.1
- Missing test files are added to Cabal package.
#### 0.6.2
- `base` dependency is relaxed for GHC 7.10. Note that alex version
>3.1.4 is required to compile with GHC 7.10.
#### 0.6.1
- `Generic` and `NFData` instances are implemented for syntax trees.
#### 0.6.0
- Fixed a long string literal parsing bug which was causing long strings to
terminate at wrong points.
- \\z escape characters in strings are now scanned and interpreted correctly.
- This is first version that parses all of Lua 5.2.2 test suite.
#### 0.5.0
- 2-years-old operator parsing bug fixed. Chained/nested operator expressions
are now properly parsed.
#### 0.4.6
- Language.Lua.Annotated.Lexer module exposed.
#### 0.4.5
- Fixed a bug that made lexer accept invalid escape sequences in strings.
- Strings are now interpreted \-\- string "\\n" is now parsed to Haskell string
"\\n", instead of "\\\\n".
- Fixed character code parsing.
#### 0.4.4
- Printer now takes operator precedences into account while printing `Binop`
and `Unop` expressions and prints parenthesis as necessary.
- Printer now does not put line break in `Binop` expressions.
#### 0.4.3
- `Data` and `Typeable` instances are implemented for syntax tree.
#### 0.4.2
- More tweaks in pretty printer.
- Started using 2 spaces for indentation(instead of 4 as before).
#### 0.4.1
- Some tweaks in pretty-printer.
#### 0.4.0
- `Table` and `FunDef` nodes are removed from simplified syntax.
#### 0.3.1
- Fixed incorrectly exported name `exp` in `Language.Lua.Parser` module.
#### 0.3.0
- Added non-annotated syntax to make code-generation easier.
#### 0.2.3
- Minor internal changes.
#### 0.2.2
- Some tweaks in pretty-printer.
#### 0.2.0
- Syntax tree is annotated. All parsers(`parseText`, `parseFile`) annotate
resulting tree with source positions.