lean4-htt/library/init/lean/parser
Leonardo de Moura 182812a278 chore(library/init/lean/parser/token): make sure generate code does contain partially applied reader_t.or_else and reader_t.bind
@kha This one was crazy, the compiler created a join point for the
continuation of the match-expression. Each case of the match was
invoking the join point with a different parser. Two of the branches
were the partially applied `reader_t.bind` and `reader_t.orelse`.
This change did not improve the performance much, but it makes sure we
don't waste time trying to figure out why we have these two partial
applications in the call graph.
2018-11-08 17:39:46 -08:00
..
basic.lean chore(library/init/lean/parser): do not expose the parser cache as monad_state 2018-11-08 16:01:19 +01:00
combinators.lean chore(library/init/lean/parser/combinators): node: small simplification 2018-11-08 10:43:17 +01:00
command.lean perf(library/init/lean/parser/command): move common command parsers to the beginning of the list 2018-11-08 14:45:34 -08:00
declaration.lean fix(library/init/lean/parser/declaration): precedence for attribute arguments 2018-10-30 17:43:05 +01:00
identifier.lean refactor(library/init/lean/parser/parsec): make sure custom error message doesn't need to be inhabited 2018-10-21 10:57:23 -07:00
level.lean chore(library/init/lean/parser): do not expose the parser cache as monad_state 2018-11-08 16:01:19 +01:00
module.lean perf(library/init/lean/parser): move backtrackable state from parser_core_t to module_parser_m 2018-11-08 15:58:41 +01:00
notation.lean perf(frontends/lean/elaborator,library/init/lean): put out_params first to benefit from instance pre-filtering 2018-10-30 17:43:05 +01:00
parsec.lean perf(library/init/lean/parser/parsec): optimize str and raw_str 2018-11-08 11:18:21 -08:00
pratt.lean chore(library/init/lean/parser): remove unnecessary class constraints 2018-11-06 21:45:08 +01:00
rec.lean refactor(library/init/lean/parser/parsec): make sure custom error message doesn't need to be inhabited 2018-10-21 10:57:23 -07:00
string_literal.lean refactor(library/init/lean/parser/parsec): make sure custom error message doesn't need to be inhabited 2018-10-21 10:57:23 -07:00
syntax.lean feat(library/init/lean/syntax): add lazily propagated macro scopes to syntax_node 2018-11-06 16:46:50 +01:00
term.lean perf(library/init/lean/parser/term): avoid eta-expansion issues 2018-11-08 16:21:37 -08:00
token.lean chore(library/init/lean/parser/token): make sure generate code does contain partially applied reader_t.or_else and reader_t.bind 2018-11-08 17:39:46 -08:00
trie.lean refactor(library/init/data): avoid indirection at rbmap 2018-10-26 17:14:09 -07:00