GitHub PushEvent at 2014-08-13 21:43:50
Repository: hnix
Actor: bennofs
Payload: {"shas":[["e8e129a7592adb6164b051d84238a31059207fac","52a70820ecd7a0ea34dd5639534e93546b5e0b21@gmail.com","factor out \"inherit\" keyword in binding parser\n\nWhen parsing '{ inherit a; }' without this fix, the `scopedInherit`\nparser would be tried first. Because this parser already consumes the\n`inherit` keyword, it won't backtrack anymore and the non-scoped\n`inherit` parser will never be tried, so we get a parse failure which is\nof course not correct.\n\nThe solution is to first parse `inherit` (in both cases) and then decide\nwhether it is a scoped import or not by looking for a following '('.","Benno Fünfstück",true],["a620e4c387448a1ea5dbab3cf7d362d910712e54","52a70820ecd7a0ea34dd5639534e93546b5e0b21@gmail.com","Extend tests for set / let (inherit, rec, ...)","Benno Fünfstück",true],["457d55e81a74dd39a58f128337e2c21acabf95ff","52a70820ecd7a0ea34dd5639534e93546b5e0b21@gmail.com","fix / simplify parsing of lambda arguments\n\nlambda arguments can be parsed without using try at all:\n\nFirst, we decide if we have a set or an identifier. If we have a set,\nthere are two cases:\n\n  * the lambda argument is a plain set (not followed by an `@` character)\n  * or the set is optionally followed by `@<identifier>`, in which\n    case the argument is a <right at> pattern.\n\nIf we got an identifier, we can do a similar thing, there are also two\ncases:\n\n  * plain identifier: not followed by `@`.\n  * the idenfitifier is followed by `@<set>`. In this case, the argument\n    is a <left at> pattern.\n\nAvoiding excess use of try should improve performance and lead to better\nerror messages.","Benno Fünfstück",true],["e81145094debafffe93b18d8c0cddf9c68238d93","52a70820ecd7a0ea34dd5639534e93546b5e0b21@gmail.com","tests for parsing of lambda args (patterns, ...)","Benno Fünfstück",true]],"size":4,"ref":"refs/heads/tests-and-fixes","head":"e81145094debafffe93b18d8c0cddf9c68238d93"}