Toxaris/pts — pull request #11 by Blaisorblade (2013-02-20 22:33:24+00:00)
Title: Fix #9: try expressions first, backtrack to definitions 

Before this fix:
```
test.pts:1: Syntax Error

foo : * = Pi T . T;
^
unexpected ":"
expecting "(", "[", "lambda", "Lambda", "Pi", "if0", "add", "sub", "mul", "div", constant, "$", variable name, "->" or ";"
```
After this fix:
```
test.pts:1: Syntax Error

foo : * = Pi T . T;
^
unexpected "."
expecting ":"
```

At some point during the fixing I had fixed the above, but broken just about everything else.

To be sure I didn't do that again, I tested this on existing code with:
```
$ cabal build && dist/build/pts/pts -l ../tsr-experiments/partial-evaluation.lfos && dist/build/pts/pts -l ../tsr-experiments/system-f.lfo && dist/build/pts/pts test.pts
```
Given the nature of the change, this should be enough, but it'd be nice to have better tests.