Leonardo de Moura
d5d926b0ef
feat(library/compiler/lcnf): eliminate no_confusion
2018-09-12 10:40:09 -07:00
Leonardo de Moura
9b21287a3e
feat(library/compiler/lcnf): add lean compiler normal form
2018-09-11 18:10:10 -07:00
Leonardo de Moura
efb33ac0a7
chore(library/init/env_ext): update
2018-09-11 13:55:25 -07:00
Sebastian Ullrich
af55cb13e7
fix(library/messages,library/init/lean/message): wrap message_log in structure, reverse in the end
2018-09-11 13:55:25 -07:00
Sebastian Ullrich
99ab0e9d67
refactor(library/messages): make an object_ref
2018-09-11 13:55:25 -07:00
Leonardo de Moura
0691d43153
feat(library/init/lean/parser/basic): define trie using rbnode (char × trie) nested inductice type
2018-09-09 18:19:28 -07:00
Leonardo de Moura
4e6748b55b
feat(library/init/data/rbmap/basic): add rbmap_core low level functions
2018-09-09 18:18:40 -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
Leonardo de Moura
3e5f59d6df
chore(kernel): remove expr.quote constructor
...
In Lean4, we will reify expressions.
2018-09-07 22:08:08 -07:00
Leonardo de Moura
5ae63ea1f2
chore(library/init/data/list/basic): remove unnecessary workaround
2018-09-07 17:10:23 -07:00
Leonardo de Moura
71dd8653bc
feat(library/init/core): decidable_eq is a proper class
...
We need this to take advantage of the new indexing structure we are
going to add to improve performance.
2018-09-07 16:38:11 -07:00
Leonardo de Moura
c48eaed9a4
chore(library): remove relation_manager
2018-09-07 12:35:04 -07:00
Leonardo de Moura
da2de33245
fix(library/init/io): move coroutine_io implementation to io
2018-09-06 18:09:32 -07:00
Sebastian Ullrich
387cd25942
feat(library/init/lean/parser/term): implement Pratt parser
2018-09-06 17:17:50 -07:00
Sebastian Ullrich
c7d8271c84
feat(library/init/lean/parser/token): save lbp in token_config
2018-09-06 17:16:57 -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
Leonardo de Moura
afb9584a63
feat(kernel): store at inductive_val whether the type is reflexive or not
2018-09-05 14:46:03 -07:00
Sebastian Ullrich
d4105e1e16
chore(library/init/lean/parser/basic): avoid nesting rbnode in trie
...
The new two-layer rbnode/list structure is a little faster
2018-09-05 10:37:03 -07:00
Sebastian Ullrich
9c96aec3dc
perf(library/init/lean/parser/parsec): inline pure, bind, and left_over
2018-09-05 09:58:49 -07:00
Sebastian Ullrich
66ebd5d7d6
feat(library/init/lean/parser): implement new tokenizer using trie
...
test execution went down from 3.5s to 1.5s
2018-09-04 14:06:43 -07:00
Leonardo de Moura
517923d362
feat(kernel/inductive): generate recursors in the new inductive datatype module
2018-08-31 17:47:22 -07:00
Sebastian Ullrich
93d13ffea3
chore(library/init/lean): lean.parser.reader ~> lean.parser
2018-08-30 16:34:47 -07:00
Sebastian Ullrich
d60e3a66ce
refactor(library/init/lean/parser/reader): make monad stack not reducible
2018-08-30 15:59:38 -07:00
Sebastian Ullrich
de9d894c14
feat(library/init/lean/parser/reader): use coroutine on the module level
2018-08-29 16:42:24 -07:00
Sebastian Ullrich
2528aee72b
refactor(library/init/lean/parser/reader): use different monad stacks for different parts of the reader
2018-08-29 16:42:24 -07:00
Sebastian Ullrich
cec1ee2564
feat(library/init/lean/parser/parsec): reintroduce parsec_t
2018-08-29 16:42:24 -07:00
Leonardo de Moura
863355c6a0
feat(kernel/inductive): continue new inductive datatype module
...
Add more validation, and create new inductive_val and constant_val objects.
2018-08-29 09:27:06 -07:00
Leonardo de Moura
5d41046170
refactor(library/init/core): remove exists_unique
...
We never used it in the corelib. Users can define it if they need it.
2018-08-28 14:01:33 -07:00
Leonardo de Moura
101886ffae
feat(kernel): proper constant_info and declaration objects for quot type
2018-08-28 13:46:31 -07:00
Sebastian Ullrich
a178f181a8
chore(library/init/lean/parser/macro): remove old name resolution prototype
2018-08-28 13:13:14 -07:00
Sebastian Ullrich
46f734b1b1
refactor(library/init/lean/parser/reader): replace macro with syntax_node_kind
...
Also make sure that the name inside a node kind is the full name of the
declaration. This way, we cannot have accidentally conflicting node kind names.
2018-08-28 13:13:14 -07:00
Sebastian Ullrich
47bff1ddcd
fix(library/init/core): ∃! should not accept multiple binders
2018-08-28 13:13:14 -07:00
Leonardo de Moura
5c47ff82f6
chore(library/init/lean/core): remove dead code
2018-08-28 08:56:03 -07:00
Leonardo de Moura
5313cd3467
fix(library/init/meta/pos): missing file
2018-08-28 07:41:41 -07:00
Leonardo de Moura
776c977742
refactor(kernel): continue constant_info/declaration refactoring
2018-08-27 17:23:26 -07:00
Leonardo de Moura
3f5db74ab4
refactor(library/init/lean/declaration): rename declaration_val ==> constant_val
...
It doesn't make sense to call it `declaration_val` anymore.
2018-08-27 16:07:38 -07:00
Leonardo de Moura
27ef29a50f
refactor(kernel/declaration): continue constant_info/declaration refactoring
2018-08-27 13:22:10 -07:00
Leonardo de Moura
66adac6af6
chore(library/init): avoid calc at corelib
2018-08-27 12:17:30 -07:00
Leonardo de Moura
d334bb1fa7
chore(*): remove more stuff
2018-08-23 15:56:31 -07:00
Leonardo de Moura
17ae59b5b0
chore(*): remove more stuff
2018-08-23 15:27:12 -07:00
Leonardo de Moura
c21555240a
chore(library/tactic): remove more stuff
2018-08-23 15:20:07 -07:00
Leonardo de Moura
646cdfdf40
chore(library/init/meta): remove well_founded_tactics
2018-08-23 15:14:22 -07:00
Leonardo de Moura
8434f43146
chore(library/init/meta): remove interactive.lean
2018-08-23 14:41:47 -07:00
Leonardo de Moura
973eb89e40
chore(library/init/meta/lean): remove old parser support
2018-08-23 14:39:10 -07:00
Leonardo de Moura
d405e54a6f
chore(library/init/meta/tactic): reduce tactic.lean
2018-08-23 14:37:40 -07:00
Leonardo de Moura
ed5d884d8f
chore(library/tactic): remove app_builder_tactics
2018-08-23 14:22:00 -07:00
Leonardo de Moura
a6604dcf56
chore(library/tactic): remove rewrite and apply and interactive tactics
2018-08-23 14:18:16 -07:00
Leonardo de Moura
7a47406c4c
chore(library/tactic): remove simp_lemmas
2018-08-23 14:10:36 -07:00
Leonardo de Moura
e5c3f04937
chore(frontends/lean): remove tactic notation
2018-08-23 13:44:52 -07:00