Commit graph

17567 commits

Author SHA1 Message Date
Leonardo de Moura
ce487517d1 chore: update stage0 2019-10-04 14:37:33 -07:00
Leonardo de Moura
a2abbdbf9a chore: fix imports using script
This is just a draft.
```
for f in `find . -name '*.lean'`; do echo $f; gsed "/^import/s/\b\(.\)/\u\1/g" $f > tmp; gsed "/^Import/s/Import/import/g" tmp > $f; done
```
2019-10-04 14:34:58 -07:00
Leonardo de Moura
de4d3152f1 chore: use CamelCase to name files and directories 2019-10-04 14:23:08 -07:00
Leonardo de Moura
93207e99f4 chore: preparing for new naming convention 2019-10-04 14:22:23 -07:00
Leonardo de Moura
b44e9c8d64 chore: update stage0 2019-10-04 14:20:22 -07:00
Leonardo de Moura
63babfd478 chore: preparing for new file naming convention 2019-10-04 14:18:56 -07:00
Leonardo de Moura
e596089a2d chore: one module per import command 2019-10-04 12:27:47 -07:00
Sebastian Ullrich
264fd2b987 chore: remove obsolete prepare-commit-msg script 2019-10-04 10:51:24 +02:00
Leonardo de Moura
a47bbf747d chore: minor fixes after rebase 2019-10-03 17:27:05 -07:00
Daniel Selsam
ba06fd335b test: add new elab issue from @joehendrix 2019-10-03 17:23:53 -07:00
Daniel Selsam
1a1daf8aba fix(typeclass/context): standardize eUnify fail message 2019-10-03 17:23:53 -07:00
Daniel Selsam
7e63caa47e chore(typeclass): slight refactor 2019-10-03 17:23:53 -07:00
Daniel Selsam
0590def0bc perf(typeclass/context.lean): quick fail in eUnify 2019-10-03 17:23:53 -07:00
Daniel Selsam
5de5aa37cf chore(lean/typeclass): distinguish 'TmpMVar' from 'MVar' 2019-10-03 17:23:53 -07:00
Daniel Selsam
62c8d4cc57 perf(lean/typeclass/context.lean): quick checks 2019-10-03 17:23:53 -07:00
Daniel Selsam
59ff6ff850 chore(lean/typeclass): standardize indents 2019-10-03 17:23:53 -07:00
Daniel Selsam
e071501342 chore(lean/typeclass): 'synth_command' -> 'synthCommand' 2019-10-03 17:23:53 -07:00
Daniel Selsam
710b115885 chore(library/init): macro version of panic 2019-10-03 17:23:53 -07:00
Daniel Selsam
1d0e0378c0 chore(library/init/lean): Mvar -> MVar 2019-10-03 17:23:53 -07:00
Daniel Selsam
9c4f33593b chore(typeclass): use Option.toBool 2019-10-03 17:23:53 -07:00
Daniel Selsam
8b461ccdaa fix(library/init/data/queue): need not be inhabited 2019-10-03 17:23:53 -07:00
Daniel Selsam
a82266c652 feat(library/init/lean/typeclass): #synth with tabled resolution 2019-10-03 17:23:53 -07:00
Leonardo de Moura
b4a002f0f2 feat: abstract interpreter entry point, and missing stuff
TODO: widening to ensure termination
2019-10-03 16:50:47 -07:00
Leonardo de Moura
938c018e40 feat: helper functions 2019-10-03 16:50:38 -07:00
Leonardo de Moura
ce80a6d749 chore: naming convention 2019-10-03 16:50:30 -07:00
Leonardo de Moura
b316dc24c8 feat: more array goodies and naming convetion 2019-10-03 16:50:23 -07:00
Leonardo de Moura
c056894da3 feat: add Option.get!, Option.getOrElse ==> Option.getD 2019-10-03 16:50:07 -07:00
Leonardo de Moura
338c9359fa feat: add find! to maps 2019-10-03 16:49:57 -07:00
Leonardo de Moura
680ee21161 feat(library/init/lean/compiler/ir): add unreachbranches.lean
New optimization pass for eliminating unreachable branches that occur
very often when using `ExceptT` and `EState`.

The current commit implements an abstract interpreter for computing
an approximation of the kinds of values returned by a function.
TODO:
- Implement `FnBody.jmp`.
- Implement `interpDecl`
- Remove unreachable branches in `FnBody.case`
2019-10-02 19:57:43 -07:00
Leonardo de Moura
45d664ff25 fix(library/init/lean/compiler/ir/livevars): bug at updateLiveVars 2019-10-02 16:50:37 -07:00
Leonardo de Moura
874dd1d55c chore(library/init/lean/compiler/ir/basic): remove unnecessary function 2019-10-02 16:50:37 -07:00
Leonardo de Moura
e9bcbd5b0d fix(library/init/lean/compiler/ir/unboxresult): reject recursive types 2019-10-02 16:50:37 -07:00
Leonardo de Moura
c41667bf13 feat(library/init): mark Prod, Except, Sigma and Option with [unbox] 2019-10-02 16:50:37 -07:00
Leonardo de Moura
4a219b6bd2 feat(library/init/lean/compiler/ir): add [unbox] attribute 2019-10-02 16:50:37 -07:00
Sebastian Ullrich
31aecbca97 fix(shell.nix): fix overriding LLVM once more... 2019-10-02 20:02:55 +02:00
Leonardo de Moura
cc18c0ef91 feat(library/init/lean/expr): add Expr.hasFVar and Expr.hasMVar
cc @dselsam
2019-10-02 10:07:26 -07:00
Leonardo de Moura
a8b39346d3 chore(tests/bench): fix tests 2019-10-02 10:07:26 -07:00
Leonardo de Moura
902e564517 chore(stage0): update 2019-10-02 10:07:26 -07:00
Leonardo de Moura
db75c8e5cf chore(library/init/data/list): renamed basic_aux ==> basicaux
@kha we are currently avoiding `_` in file names.
I am not super happy with names such as `neverextractattr.lean`.
I am open to a new name convention for .lean files in the stdlib.
2019-10-02 10:07:26 -07:00
Sebastian Ullrich
bf9b5c21f8 fix(shell.nix): propagate arguments 2019-10-02 17:49:10 +02:00
Sebastian Ullrich
941aeb113a chore(tests/bench/speedcenter.yaml): update temci config 2019-10-02 14:14:49 +02:00
Sebastian Ullrich
0397c0fb46 fix(azure-pipelines.yml): remove old build config and downgrade macOS build to LLVM 8 for now
https://github.com/NixOS/nixpkgs/issues/70243
2019-10-02 13:26:33 +02:00
Sebastian Ullrich
cae1009175 fix(library/init/data/list/aux): rename to basic_aux.lean
`aux` is a reserved filename on Windows

/cc @leodemoura
2019-10-02 12:30:29 +02:00
Sebastian Ullrich
dc3745712e chore(shell.nix): update temci 2019-10-02 11:05:48 +02:00
Sebastian Ullrich
c61c4ddcd5 chore(default.nix): update to LLVM 9 2019-10-02 10:50:42 +02:00
Leonardo de Moura
509a5db284 chore(stage0): update 2019-10-01 16:48:04 -07:00
Leonardo de Moura
fdab3b90b9 refactor(library/init/data/array): new name convention for Array functions 2019-10-01 16:46:05 -07:00
Leonardo de Moura
411f397654 refactor(library/init/data/list): new name convention for List functions
cc @dselsam @kha
2019-10-01 15:15:02 -07:00
Leonardo de Moura
6ad9d58b0f fix(library/init/lean/compiler/neverextractattr): auxiliary declarations should inherit @[neverExtract] attribute 2019-10-01 14:57:16 -07:00
Leonardo de Moura
70a90ca73e feat(library/init/lean/parser/identifier): allow ! and ? in the identifiers 2019-10-01 14:45:07 -07:00