Commit graph

26011 commits

Author SHA1 Message Date
Leonardo de Moura
8399e41a5b feat(library/class): simpler get_class function
It does not depend on `type_context.h`, and we will used it as a
template to implement the Lean version.
2019-06-27 10:42:14 -07:00
Leonardo de Moura
6727c1fa68 feat(library/compiler/specialize): switch to specExtension in Lean 2019-06-27 10:08:39 -07:00
Leonardo de Moura
235b4c02c1 feat(library/init/lean/compiler/specialize): implement specExtension in Lean 2019-06-27 09:58:19 -07:00
Leonardo de Moura
4bc0346c17 chore(library/init/lean/compiler): specializeattrs.lean ==> specialize.lean 2019-06-27 09:38:21 -07:00
Leonardo de Moura
3c0caee73b chore(library/compiler/specialize): cleanup
Preparing to implement environment extension in Lean.
2019-06-27 09:32:25 -07:00
Leonardo de Moura
cf6f6bc96d chore(stage0): update 2019-06-27 09:30:53 -07:00
Leonardo de Moura
dfa3b6d9af chore(frontends/lean): compilation warnings 2019-06-27 08:00:48 -07:00
Leonardo de Moura
1a40a38bf1 feat(library/init/lean/class): add helper functions 2019-06-26 19:43:12 -07:00
Leonardo de Moura
9037595ead chore(stage0): update 2019-06-26 19:09:20 -07:00
Leonardo de Moura
14e6a62a19 feat(library/init/lean/class): class extension in Lean
TODO: declare attributes
2019-06-26 19:07:48 -07:00
Leonardo de Moura
f05df7c511 fix(library/init/lean/compiler/ir/simpcase): missing optimization 2019-06-26 19:07:07 -07:00
Leonardo de Moura
bd58525080 chore(library/class): simplify 2019-06-26 16:51:36 -07:00
Leonardo de Moura
d55f99d345 chore(library/init/env_ext): remove leftover 2019-06-26 15:57:52 -07:00
Leonardo de Moura
14f05d2001 feat(library/init/lean/compiler): register [implementedBy] attribute using new attribute manager 2019-06-26 15:55:51 -07:00
Leonardo de Moura
1f53c4fd33 feat(library/init/lean/eqncompiler): register [matchPattern] attribute using new attribute manager 2019-06-26 15:38:14 -07:00
Leonardo de Moura
14d77f8204 feat(library/compiler/specialize): use new attribute manager 2019-06-26 15:09:14 -07:00
Leonardo de Moura
3a1aff1687 feat(library/init/lean/compiler): register [specialize] and [nospecialize] attributes using new attribute manager 2019-06-26 15:08:12 -07:00
Leonardo de Moura
e6e71a1f79 chore(init/lean/compiler): inline.lean ==> inlineattrs.lean 2019-06-26 14:10:00 -07:00
Leonardo de Moura
105ca4f76b feat(library/init/lean/compiler/inline): use EnumAttributes to declare inlining attributes 2019-06-26 14:01:30 -07:00
Leonardo de Moura
9f358649ec feat(library/init/core): avoid [macroInline] + [inline] in same declaration
It will be rejected in the future.
2019-06-26 13:54:58 -07:00
Leonardo de Moura
34ca44cca1 chore(frontends/lean,library): remove unnecessary #includes and dead code 2019-06-26 11:36:23 -07:00
Leonardo de Moura
e00dc873a8 chore(library/pattern_attribute): [pattern] ==> [matchPattern] 2019-06-26 11:26:49 -07:00
Leonardo de Moura
7e60c6063e chore(library/compiler): remove dead code 2019-06-26 11:08:23 -07:00
Leonardo de Moura
5cfdd2452a chore(library/init/lean/compiler/externattr): remove unnecessary [export] annotations 2019-06-26 11:06:38 -07:00
Leonardo de Moura
16d423dab6 feat(frontends/lean): switch to [extern] implemented in Lean
This commit also changes how we represent attribute parameters as
Syntax objects.
2019-06-26 10:57:33 -07:00
Leonardo de Moura
c7597b8975 fix(library/init/lean/syntax): typo at isNatLit 2019-06-26 10:48:47 -07:00
Leonardo de Moura
64ee4e01a8 refactor(library/init/lean/attributes): split getParam into getParam and afterSet 2019-06-26 10:09:57 -07:00
Leonardo de Moura
be6ca5ba30 feat(library/init/lean/compiler/externattr): @[extern] attribute in Lean 2019-06-26 08:42:57 -07:00
Leonardo de Moura
ff07ec70f4 core(library/projection): switch to Lean implementation 2019-06-26 08:12:06 -07:00
Leonardo de Moura
0e86ae7a8c feat(library/init/lean): projection info in Lean 2019-06-26 07:57:10 -07:00
Leonardo de Moura
7ca4607ef3 chore(library/init/lean): move name_mangling.lean to compiler directory 2019-06-26 07:05:23 -07:00
Leonardo de Moura
2c39ecdbff chore(library/init/lean/disjoint_set): remove dead code 2019-06-26 06:30:24 -07:00
Leonardo de Moura
8a1e2bf79b chore(library/projection): preparing to port projection_info to Lean 2019-06-25 13:17:59 -07:00
Leonardo de Moura
5148497e8c feat(library/init/lean/compiler/externattr): add mkExternAttr skeleton 2019-06-25 13:16:11 -07:00
Leonardo de Moura
5188eb2d3b feat(library/init/lean/compiler/externattr): decode [extern ...] parameters 2019-06-25 12:05:34 -07:00
Leonardo de Moura
1972f9a426 fix(stage0): missing files 2019-06-25 11:23:34 -07:00
Leonardo de Moura
aa111df0ec feat(library/init/lean/syntax): add Syntax.isIdOrAtom 2019-06-25 11:20:31 -07:00
Leonardo de Moura
2e01ac508a feat(library/init/lean/syntax): primitives for creating and testing string and nat literals 2019-06-25 10:39:23 -07:00
Leonardo de Moura
d870b8af85 chore(stage0): update 2019-06-25 09:18:38 -07:00
Leonardo de Moura
1ff6ee3155 feat(library/init/lean/attributes): allow getParam at ParametricAttribute registration to update environment 2019-06-25 09:15:55 -07:00
Leonardo de Moura
70a1589817 refactor(library/init/lean): move extern.lean to compiler subdirectory 2019-06-25 08:59:55 -07:00
Leonardo de Moura
6cb35bd8a1 chore(frontends/lean/elaborator): replace C++ elaborator attributes with new ones implemented in Lean 2019-06-25 08:37:19 -07:00
Leonardo de Moura
74f0c77915 feat(library/init/lean/elaborator): implement elaborator strategy attributes in Lean 2019-06-25 08:24:56 -07:00
Leonardo de Moura
8206ef0dab feat(library/reducible): use new Lean implementation 2019-06-24 15:48:12 -07:00
Leonardo de Moura
00ad43fcfe chore(stage0): update 2019-06-24 15:48:12 -07:00
Leonardo de Moura
34586b185c feat(library/init/lean): implement reducibility attributes in Lean 2019-06-24 15:48:12 -07:00
Leonardo de Moura
5d27fd279b feat(library/init/lean/attributes): add EnumAttributes 2019-06-24 15:48:12 -07:00
Leonardo de Moura
061e13eaea chore(library/reducible): remove dead code 2019-06-24 15:48:12 -07:00
Leonardo de Moura
45dc2cd49a feat(library/init/lean/compiler): [export] attribute in Lean 2019-06-24 15:48:12 -07:00
Leonardo de Moura
bc0c0ee9bc chore(tests): fix tests 2019-06-24 15:48:11 -07:00