add a few hunit tests for parser
parser nixList: consume whitespace between items
Remove unused symbol parser

'symbol' had a different type for parsec/trifecta and
wasn't used anywhere.
trifecta: don't allow reserved in identifier

trifecta should not parse reserved words as identifiers. Before
this commit, `in` would parse as an identifier name and thus
`let a = b; in c` fails to parse.
trifecta: allow _ at identifier start
tests and fixes for identifier name parsing
More tests (one currently failing) and fixes
Merge branch 'master' into tests-and-fixes
fix compile errors
fix parsing of "$cdef" on parsec

'string' doesn't imply 'try' on parsec (on trifecta, 'string' does use 'try')
tests: use new lambda arg AST representation
factor out "inherit" keyword in binding parser

When parsing '{ inherit a; }' without this fix, the `scopedInherit`
parser would be tried first. Because this parser already consumes the
`inherit` keyword, it won't backtrack anymore and the non-scoped
`inherit` parser will never be tried, so we get a parse failure which is
of course not correct.

The solution is to first parse `inherit` (in both cases) and then decide
whether it is a scoped import or not by looking for a following '('.
Extend tests for set / let (inherit, rec, ...)
fix / simplify parsing of lambda arguments

lambda arguments can be parsed without using try at all:

First, we decide if we have a set or an identifier. If we have a set,
there are two cases:

  * the lambda argument is a plain set (not followed by an `@` character)
  * or the set is optionally followed by `@<identifier>`, in which
    case the argument is a <right at> pattern.

If we got an identifier, we can do a similar thing, there are also two
cases:

  * plain identifier: not followed by `@`.
  * the idenfitifier is followed by `@<set>`. In this case, the argument
    is a <left at> pattern.

Avoiding excess use of try should improve performance and lead to better
error messages.
tests for parsing of lambda args (patterns, ...)
Merge pull request #11 from bennofs/tests-and-fixes

Tests and fixes for the parser