Commit graph

11 commits

Author SHA1 Message Date
Leonardo de Moura
58e91559d0 feat(*): use new inductive datatype module 2018-09-06 18:09:22 -07:00
Leonardo de Moura
970d14afa9 refactor(frontends/lean/structure_instance): implement structure instances using mdata 2018-06-18 15:57:42 -07:00
Leonardo de Moura
75c63ec921 refactor(*): list<name> ==> obj_list<name> 2018-05-23 15:48:43 -07:00
Leonardo de Moura
0556412f8d refactor(*): add runtime folder
@kha The runtime folder includes what is needed to link a
standalone Lean program. It is still contains some unnecessary files.
We will be able to remove them after we release Lean4.
2018-05-14 14:23:56 -07:00
Sebastian Ullrich
30cfc6cf0b feat(frontends/lean/{parser,elaborator}): structure instance patterns 2017-11-22 12:16:28 -08:00
Sebastian Ullrich
0aacccd8c9 feat(frontends/lean): change structure update notation
`{s with ...}` is now `{..., ..s}`, which more clearly expresses that the
result type is not necessarily equal to the type of `s` (in absence of an
expected type and a structure name, we still default to the type of `s`).

Multiple fallback sources can be given: `{..., ..s, ..t}` will fall back to
searching a field in `s`, then in `t`. The last component can also be `..`,
which will replace any missing fields with a placeholder.

The old notation will be removed in the future.
2017-11-17 16:40:47 -08:00
Gabriel Ebner
31162df650 fix(frontends/lean/structure_instance): compiler warning 2017-06-23 08:31:04 +02:00
Leonardo de Moura
096b437c11 fix(library/equations_compiler, frontends/lean): missing operator== for macro_definition_cell subclasses 2017-06-22 16:13:29 -07:00
Leonardo de Moura
47b66b640f fix(frontends/lean/structure_instance): incorrect assertions 2016-09-23 10:30:30 -07:00
Leonardo de Moura
b55a17614a feat(frontends/lean): structure instances 2016-09-21 22:52:43 -07:00
Leonardo de Moura
e384b5c5f9 refactor(frontends/lean): move structure_instance to separate module 2016-08-16 14:56:09 -07:00