Sebastian Ullrich
70232f7ad9
fix: lean4-mode: attributes are not documentation
...
and in particular should not be spell-checked
2021-03-09 17:41:36 +01:00
Sebastian Ullrich
f7e5fec4d1
feat: lean4-mode: add more suffix characters to word category
2021-02-07 18:27:55 +01:00
Leonardo de Moura
61f1fde40d
feat: add register_builtin_option keyword
2021-01-26 17:46:08 -08:00
Leonardo de Moura
9576f4a390
chore: highlight elab
2021-01-09 14:10:11 -08:00
Leonardo de Moura
f4a51ac201
chore: add deriving to keyword lists
2020-12-12 15:42:01 -08:00
Leonardo de Moura
6c4072cd4a
chore: add keyword "scoped"
2020-12-04 11:28:40 -08:00
Leonardo de Moura
e21b4a6399
feat: nicer syntax for unification hints
2020-11-27 19:18:18 -08:00
Leonardo de Moura
b72a3c69b6
fix: ambiguity at induction/cases
...
See efc3a320fe
2020-11-24 14:59:12 -08:00
Leonardo de Moura
6c6595cd9b
feat: only allow variables declared with mut to be reassigned
2020-11-07 17:32:13 -08:00
Leonardo de Moura
df2cae4f90
chore: remove some old keywords
2020-11-05 07:05:01 -08:00
Leonardo de Moura
82dc155f0f
chore: add builtin_initialize keyword
2020-10-19 15:09:17 -07:00
Leonardo de Moura
66e0ebc120
chore: add #lang to list of keywords
2020-10-14 17:38:17 -07:00
Leonardo de Moura
3f8566f4d1
chore: add initialize to list of keywords
2020-10-10 06:45:28 -07:00
Leonardo de Moura
0a09706b0b
chore: add try, catch, and finally to the list of keywords
2020-10-08 19:39:04 -07:00
Leonardo de Moura
ac16393ae9
chore: add break and continue keywords
2020-10-05 15:37:01 -07:00
Leonardo de Moura
3caa683626
chore: add unless to keyword list
2020-10-02 19:16:14 -07:00
Leonardo de Moura
45a98d5739
chore: add "for" to list of keywords
2020-09-26 12:33:11 -07:00
Leonardo de Moura
30a1e0228b
chore: add where to list of keywords
2020-09-21 08:27:29 -07:00
Leonardo de Moura
b36bcf3cf1
feat: admit and done
2020-09-15 10:46:40 -07:00
Leonardo de Moura
c3d91e4228
chore: new keywords
2020-09-10 15:18:32 -07:00
Leonardo de Moura
ba4fdce508
feat: expand helper macros
2020-09-10 14:25:07 -07:00
Leonardo de Moura
095e07d52d
chore: letrec => let rec
...
cc @Kha
2020-09-01 13:27:41 -07:00
Leonardo de Moura
d129d93dde
chore: add letrec to the list of keywords
2020-08-26 09:37:50 -07:00
Leonardo de Moura
11ed525c69
chore: add new_frontend
2020-06-17 21:28:03 -07:00
Sebastian Ullrich
e5f7334e2d
chore: lean4-mode: operators are punctuation, '!' and '?' are symbol parts
2020-03-19 17:18:27 -07:00
Leonardo de Moura
2fee8059b6
feat: add induction tactic parser
2020-02-21 11:30:36 -08:00
Leonardo de Moura
be730fa27f
feat: add #check_failure as keyword
2020-02-12 12:52:51 -08:00
Sebastian Ullrich
fdfbb9a435
chore: lean4-mode: remove '.' from symbol table
2020-02-03 16:37:02 +01:00
Leonardo de Moura
5fffecfb53
chore: add macro_syntax syntax highlight
2019-12-17 13:32:52 -08:00
Daniel Selsam
a82266c652
feat(library/init/lean/typeclass): #synth with tabled resolution
2019-10-03 17:23:53 -07:00
Leonardo de Moura
b221b09ad5
chore(library/init, frontends/lean): ensure old and new parser use the same command for initializing quotient module
2019-07-31 17:07:05 -07:00
Leonardo de Moura
b2e1ff8b3e
feat(library/init): use new "empty match" syntax
2019-07-15 16:25:14 -07:00
Leonardo de Moura
1f11429f98
feat(frontends/lean): add partial keyword
2019-03-26 16:09:55 -07:00
Leonardo de Moura
0b7d987699
feat(frontends/lean, library/init/lean): opaque constants
...
@kha I have added support for opaque constants to the old C++ frontend,
and made sure the new frontend can still parse `library/init/core.lean`.
The kernel should enforce that opaque constants are really opaque, and
the following example should fail
```
constant x : nat := 0
theorem foo : x = 0 := rfl
```
If it doesn't, it is a bug.
Here are some remaining issues:
1- `environment.mk_empty` is currently an axiom because we cannot create
an inhabitant of an opaque type. A possible solution is to use
`option environment` instead of `environment`.
2- There is no support for opaque constants in the new
frontend. However, I modified it to handle axioms, and fixed the literal
values with decl_cmd_kind. I tried to mark some of my changes with
comments, but it is probably much easier for you to just check the
commit change list.
3- I did not add any support for automatically constructing `e`
at `constant x : t := e`. I think we can do this later
after we replace the old frontend with the new one. BTW, it took only a
few minutes to provide the inhabitants manually.
2019-03-15 17:41:44 -07:00
Leonardo de Moura
ecdb9d6df0
feat(library/init, frontends/lean): add abbreviation for abbreviation
2019-03-15 16:01:25 -07:00
Leonardo de Moura
0888dee25e
chore(*): meta ==> unsafe
2019-03-15 15:04:40 -07:00
Sebastian Ullrich
1a4a69679d
chore(lean4-mode): rename files
2018-09-08 18:37:58 -07:00