Commit graph

27 commits

Author SHA1 Message Date
Leonardo de Moura
a29a61b728 chore: remove dead code 2022-08-19 11:56:22 -07:00
Leonardo de Moura
6d11dc9b62 feat: add mkAuxDeclName 2022-08-19 11:31:56 -07:00
Leonardo de Moura
d0c8ad1d22 feat: reduce number of simp steps 2022-08-19 05:54:50 -07:00
Leonardo de Moura
651d4044b3 fix: bug at attachJp 2022-08-17 19:22:53 -07:00
Leonardo de Moura
6561fc259f feat: add MonadBacktrack instance for CompilerM 2022-08-17 18:51:26 -07:00
Henrik Böving
70ef3875d1 feat: add join point detector 2022-08-17 14:38:46 -07:00
Leonardo de Moura
2820958f64 doc: attachJp 2022-08-17 11:14:56 -07:00
Leonardo de Moura
1d936e2d6b feat: sanity checking at attachJp 2022-08-17 09:47:59 -07:00
Leonardo de Moura
f0370749f9 feat: check whether there are jumps to out of scope join points
In a local function declaration, we can only jump to local join
points.
2022-08-17 09:38:19 -07:00
Leonardo de Moura
0d52a3f92b fix: add attachJp
Auxiliary function for attaching jump to a join point to an existing
let-code block.
2022-08-17 07:32:11 -07:00
Leonardo de Moura
2f57a0e6d5 refactor: cleaup compiler simplifier 2022-08-16 18:23:49 -07:00
Leonardo de Moura
daa833d5c9 feat: preserve internal let-declaration binder names 2022-08-16 18:23:49 -07:00
Leonardo de Moura
7ca3535820 refactor: add mkJump 2022-08-15 18:39:27 -07:00
Leonardo de Moura
142b9bec36 feat: add ensureUniqueLetVarNames 2022-08-15 12:59:36 -07:00
Henrik Böving
afbe296edb doc: doc-strings for CompilerM 2022-08-14 09:33:58 -07:00
Henrik Böving
8e29fa88eb fix: address code review for jp checker 2022-08-14 09:33:58 -07:00
Henrik Böving
ff9c9032b4 feat: join point validator 2022-08-14 09:33:58 -07:00
Leonardo de Moura
d2c0aa4d6d chore: remove dead code 2022-08-13 11:24:51 -07:00
Leonardo de Moura
0a423b3699 fix: ensure the the terminal expression in let-declaration block is not a lambda 2022-08-13 09:47:59 -07:00
Leonardo de Moura
e04453a89e chore: improve getMaxLetVarIdx 2022-08-11 19:01:41 -07:00
Leonardo de Moura
073e72181d fix: bug at Compiler.inferType
Check whether declaration type mismatch at `Compiler.Decl.check`
2022-08-11 18:40:13 -07:00
Leonardo de Moura
6a67c13044 feat: generalize helper functions 2022-08-11 18:40:13 -07:00
Leonardo de Moura
e67a43ab01 refactor: disable old LCNF and TerminalCases
TODO: finish porting them to the new format.
2022-08-10 20:25:59 -07:00
Leonardo de Moura
3c6c395e44 feat: add TerminalCases.lean 2022-08-07 22:05:19 -07:00
Leonardo de Moura
c16bec6e30 refactor: move auxiliary let declaration support to CompilerM.lean 2022-08-07 17:27:40 -07:00
Leonardo de Moura
ee70805c35 feat: add LCNF missing cases 2022-08-06 20:23:29 -07:00
Leonardo de Moura
9a16d4afce feat: add CompilerM.lean and LCNF.lean 2022-08-05 21:14:39 -07:00