Leonardo de Moura
|
2be87ecd92
|
chore(library/init): Bool.tt => Bool.true and Bool.ff => Bool.false
|
2019-03-21 15:06:44 -07:00 |
|
Leonardo de Moura
|
04e20623e6
|
chore(*): use lowercase dir names
|
2019-03-21 15:06:44 -07:00 |
|
Leonardo de Moura
|
67fb78bb47
|
chore(*): renaming files
|
2019-03-21 15:06:44 -07:00 |
|
Sebastian Ullrich
|
beda5f5f43
|
chore(library): capitalize types and namespaces
|
2019-03-21 15:06:43 -07:00 |
|
Sebastian Ullrich
|
b939162168
|
chore(library): switch from snake_case to camelCase
|
2019-03-21 15:06:43 -07:00 |
|
Leonardo de Moura
|
ecdb9d6df0
|
feat(library/init, frontends/lean): add abbreviation for abbreviation
|
2019-03-15 16:01:25 -07:00 |
|
Sebastian Ullrich
|
e0bbc094ad
|
chore(library/init): remove coroutines from stdlib
|
2019-03-08 15:34:17 +01:00 |
|
Sebastian Ullrich
|
234e4d1e8a
|
refactor(library/init/lean/elaborator): replace coroutines with explicit state
|
2019-03-08 15:23:01 +01:00 |
|
Sebastian Ullrich
|
81615fc856
|
refactor(library/init/lean/parser/module): replace coroutines with explicit snapshot state
|
2019-03-07 10:32:28 -08:00 |
|
Sebastian Ullrich
|
6f83faaee0
|
perf(library/init/lean/parser/command): index command parsers by first token
|
2019-03-07 11:28:42 +01:00 |
|
Sebastian Ullrich
|
cfce916438
|
perf(library/init/lean/parser/module): make sure commands_aux is tail-recursive
|
2019-03-06 13:58:26 +01:00 |
|
Sebastian Ullrich
|
85bc52b9f2
|
feat(library/init/lean/frontend): profile frontend
|
2019-03-06 11:08:38 +01:00 |
|
Sebastian Ullrich
|
bd70dc1fc9
|
perf(library/init/lean/parser): move backtrackable state from parser_core_t to module_parser_m
|
2018-11-08 15:58:41 +01:00 |
|
Sebastian Ullrich
|
41f4a34d4b
|
feat(library/init/lean/parser/token): cache hit statistics
|
2018-11-08 14:52:54 +01:00 |
|
Sebastian Ullrich
|
090c4c0ce7
|
feat(library/init/lean/syntax): add lazily propagated macro scopes to syntax_node
|
2018-11-06 16:46:50 +01:00 |
|
Sebastian Ullrich
|
0d7ea62f9a
|
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 |
|
Sebastian Ullrich
|
2e0d6649be
|
perf(library/init/lean/parser/basic): make basic_parser_m semireducible
|
2018-10-30 17:43:05 +01:00 |
|
Leonardo de Moura
|
89afabae29
|
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 |
|
Sebastian Ullrich
|
ca8e75be9e
|
fix(library/init/lean/elaborator): check for and consume end of input
|
2018-10-03 16:00:08 -07:00 |
|
Sebastian Ullrich
|
097b7be14f
|
refactor(library/init/lean/parser/token): change raw view type to option syntax_atom and create raw_str to give some raw parsers view defaults
|
2018-10-02 14:55:28 -07:00 |
|
Sebastian Ullrich
|
df278096c4
|
fix(library/init/lean): fixes fixes fixes
|
2018-09-28 13:08:25 -07:00 |
|
Sebastian Ullrich
|
2e5ea16e2f
|
perf(library/init/lean/parser): cache consecutive calls to token at the same position
Parser performance improved by about 33%
|
2018-09-27 16:08:19 -07:00 |
|
Sebastian Ullrich
|
e661aaeacf
|
refactor(library/init/lean/parser): store registered parsers in configs, use config hierarchy to avoid mutually recursive types
And other refactorings along the way
|
2018-09-27 10:05:10 -07:00 |
|
Sebastian Ullrich
|
2c07922327
|
refactor(library/init/lean/parser): minimize parser_state, have the module coroutine take and return parser_config
|
2018-09-26 13:20:07 -07:00 |
|
Sebastian Ullrich
|
07901fcfcb
|
refactor(library/init/lean/parser/module): put prelude and imports into non-optional header parser to make the life of the elaborator and other consumers a bit easier
|
2018-09-26 13:20:07 -07:00 |
|
Sebastian Ullrich
|
1d01e81de8
|
refactor(library/init/lean/parser): do not construct final syntax tree independent from intermediate outputs
This makes sure we have a single consistent view of the file
|
2018-09-25 18:28:53 -07:00 |
|
Sebastian Ullrich
|
c7c459d47b
|
Revert "perf(library/init/lean/parser): collect tokens in trie instead of list, do not inline"
This reverts commit e4c50b2b09.
Lists are efficient enough and make it easier to customize the trie construction.
Keep the `donotinline` though.
|
2018-09-20 09:38:10 -07:00 |
|
Leonardo de Moura
|
5ff9e24b17
|
feat(library/init/control): do not use unnecessary structures
It confuses the compiler.
|
2018-09-20 08:39:25 -07:00 |
|
Sebastian Ullrich
|
e4c50b2b09
|
perf(library/init/lean/parser): collect tokens in trie instead of list, do not inline
|
2018-09-19 12:36:34 -07:00 |
|
Sebastian Ullrich
|
a6f25e2ae7
|
refactor(library/init/lean/parser/token): id ~> ident, ident ~> ident.parser
|
2018-09-17 18:47:50 -07:00 |
|
Sebastian Ullrich
|
ae7df32428
|
refactor(library/init/lean/parser/syntax): setting source_info.leading is much easier after parsing
|
2018-09-14 16:33:04 -07:00 |
|
Sebastian Ullrich
|
5e180cd170
|
feat(library/init/lean/parser/token): create structure-preserving syntax trees for identifiers
Also generalize `raw_symbol` to `raw`
|
2018-09-14 16:33:04 -07:00 |
|
Sebastian Ullrich
|
98e09c274f
|
feat(library/init/lean/parser/{pratt,level}): factor out pratt combinator, implement level parsers
|
2018-09-13 16:38:40 -07:00 |
|
Leonardo de Moura
|
afd54039ab
|
chore(library): remove >>, we should use *>
|
2018-09-12 17:31:21 -07:00 |
|
Sebastian Ullrich
|
0d865b37dd
|
feat(library/init/lean/{message,parser}): enhance lean.message
Small regression: order of messages flipped, should eventually be sorted by
position
|
2018-09-08 18:37:58 -07:00 |
|
Sebastian Ullrich
|
1a53d4444b
|
feat(library/init/lean/parser): parameterize recursive term parser with rbp
|
2018-09-06 17:16:22 -07:00 |
|
Sebastian Ullrich
|
149dd2a5e3
|
refactor(library/init/lean/parser): move command parsers into separate file
|
2018-09-06 10:46:29 -07:00 |
|
Sebastian Ullrich
|
93d13ffea3
|
chore(library/init/lean): lean.parser.reader ~> lean.parser
|
2018-08-30 16:34:47 -07:00 |
|