Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix an issue with some names being ignored when generating unique variable names | Son Ho | 2024-05-28 | 1 | -21/+19 |
| | |||||
* | Fix a bug in SymbolicToPure.translate_loop | Son Ho | 2024-05-28 | 1 | -4/+1 |
| | |||||
* | Factor out the code for Lean and Coq | Son Ho | 2024-05-24 | 1 | -143/+41 |
| | |||||
* | Merge branch 'main' into afromher/recursive_projectors | Son Ho | 2024-05-24 | 51 | -4933/+4787 |
|\ | |||||
| * | Expand debug output in loops fixed points | Aymeric Fromherz | 2024-05-24 | 1 | -1/+16 |
| | | |||||
| * | Rename meta into span | Aymeric Fromherz | 2024-05-24 | 51 | -2939/+2943 |
| | | |||||
| * | Rename span into raw_span | Aymeric Fromherz | 2024-05-24 | 4 | -20/+20 |
| | | |||||
| * | Update charon pin | Nadrieril | 2024-05-24 | 2 | -2/+3 |
| | | |||||
| * | Fix a crash which happens when type definitions are ignored | Son Ho | 2024-05-24 | 1 | -2/+5 |
| | | |||||
| * | Print the name patterns of the definitions which fail to extract | Son Ho | 2024-05-24 | 2 | -15/+24 |
| | | |||||
| * | Update the interpreter so that it is not written in CPS style (#120) | Escherichia | 2024-05-23 | 19 | -2294/+2116 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start turning the compiler in a style which is less CPS * Update a function in InterpreterExpressions.ml * WIP work on cps * WIP * WIP, currently on InterpreterStatements.ml * WIP * Finished CPS-related modification * Fixed some warning related to documentation comments * Finished loop support, fixed a loop * fixed a typed value * Fixed check_disappeared related error * cleaned check_disappeared related error * Start cleaning up * Do more cleanup * Make some cleanup and fix an issue * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Do more cleanup * Rename a function * Do more cleanup * Cleanup the loops code and fix some bugs * Cleanup assign_to_place * Make a minor cleanup --------- Co-authored-by: Son Ho <hosonmarc@gmail.com> | ||||
* | | Add simp, reducible attributes to generated Lean projectors | Aymeric Fromherz | 2024-05-23 | 1 | -0/+10 |
| | | |||||
* | | Do not expand field projector for recursive structs to a let binding in Lean | Aymeric Fromherz | 2024-05-23 | 1 | -5/+0 |
| | | |||||
* | | Improve formatting of Lean struct projectors | Aymeric Fromherz | 2024-05-23 | 1 | -2/+6 |
| | | |||||
* | | Add printing of projectors for recursive structs in Lean backend | Aymeric Fromherz | 2024-05-23 | 1 | -3/+130 |
|/ | |||||
* | Catch new literal variants | Nadrieril | 2024-05-14 | 2 | -0/+6 |
| | |||||
* | Ensure `./charon` points to a valid charon clone | Nadrieril | 2024-05-14 | 2 | -1/+1 |
| | |||||
* | Update charon | Nadrieril | 2024-05-06 | 2 | -3/+12 |
| | |||||
* | Add error when handling mutually recursive traits | Aymeric Fromherz | 2024-05-01 | 1 | -1/+4 |
| | |||||
* | Update compiler/ExtractBuiltin.ml | Son HO | 2024-04-26 | 1 | -1/+1 |
| | | | Co-authored-by: Zyad Hassan <88045115+zhassan-aws@users.noreply.github.com> | ||||
* | Update the backend and ExtractBuiltin.ml | Son Ho | 2024-04-25 | 1 | -1/+4 |
| | |||||
* | Merge branch 'main' into core-option-unwrap | Son Ho | 2024-04-25 | 1 | -0/+25 |
|\ | |||||
| * | Merge branch 'main' into option-take | Son Ho | 2024-04-25 | 10 | -100/+212 |
| |\ | |||||
| * | | compiler: introduce Lean-only translations | Ryan Lahfa | 2024-04-24 | 1 | -10/+25 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the long run, all backends will not have equivalent or equal support for extraction. This introduces a function to filter out some Lean-only definitions in our various arrays of core functions. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | compiler: map `core::option::Option::is_none` to `Option.isNone` | Ryan Lahfa | 2024-04-24 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Our backend already have support for `isNone`, we just map it and filter out passing the actual type as it can be inferred via implicit types. Other backends than Lean are not done in this commit. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | compiler: map `core::mem::swap` to the pure swap | Ryan Lahfa | 2024-04-24 | 1 | -0/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In the pure functional model, `swap` is mostly about borrow checking and should simplify to the pure swap in our backends. Other backends than Lean are not done in this commit. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | compiler: map `core::option::Option::take` to identity function | Ryan Lahfa | 2024-04-17 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | `take` in a pure functional model is the identity function and everything related to borrow checking is handled by the forward/backward mechanism. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
* | | | Add core::option::unwrap builtin | Zyad Hassan | 2024-04-24 | 1 | -0/+2 |
| |/ |/| | |||||
* | | Fix an issue when joining a symbolic value with bottom | Son Ho | 2024-04-22 | 2 | -11/+33 |
| | | |||||
* | | Reformat some files | Son Ho | 2024-04-22 | 5 | -24/+47 |
| | | |||||
* | | Merge pull request #146 from RaitoBezarius/main | Son HO | 2024-04-19 | 1 | -3/+69 |
|\ \ | | | | | | | fix(backends/lean): add a significant amount of keywords | ||||
| * | | fix(backends/lean): extract more keywords from `lstlean.tex` | Ryan Lahfa | 2024-04-18 | 1 | -0/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Taken from https://github.com/leanprover/lean4/blob/master/doc/latex/lstlean.tex#L33 and https://github.com/leanprover/lean4/blob/master/doc/latex/lstlean.tex#L36-L43. This will not extract the tactics. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | fix(backends/lean): extract more keywords from `lstlean.latex` | Ryan Lahfa | 2024-04-18 | 1 | -0/+62 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Taken from https://github.com/leanprover/lean4/blob/master/doc/latex/lstlean.tex#L12 and sorted. Tactics are ignored. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | chore(backends/lean): sort the keyword list | Ryan Lahfa | 2024-04-17 | 1 | -4/+4 |
| | | | | | | | | | | | | | | | | | | OCD. :D Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | fix(backends/lean): `from` is a keyword | Ryan Lahfa | 2024-04-17 | 1 | -0/+1 |
| | | | | | | | | | | | | Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
| * | | fix(backends/lean): `as` is a keyword | Ryan Lahfa | 2024-04-17 | 1 | -0/+1 |
| |/ | | | | | | | | | | | | | | | `as` is a reserved keyword and cannot be used as a variable name. Fixes #139. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr> | ||||
* / | item_meta | Nadrieril | 2024-04-18 | 9 | -80/+81 |
|/ | |||||
* | Add more definitions to the Lean library | Son Ho | 2024-04-12 | 1 | -0/+73 |
| | |||||
* | Start adding integer functions to the Lean library | Son Ho | 2024-04-12 | 4 | -55/+181 |
| | |||||
* | Update the bindings for the extraction | Son Ho | 2024-04-12 | 1 | -14/+11 |
| | |||||
* | Merge branch 'son/clean' into checked-ops | Son Ho | 2024-04-11 | 26 | -259/+517 |
|\ | |||||
| * | Update a comment | Son Ho | 2024-04-11 | 1 | -2/+2 |
| | | |||||
| * | Merge remote-tracking branch 'origin/main' into son/clean | Son Ho | 2024-04-11 | 25 | -88/+250 |
| |\ | |||||
| | * | Reformat the code | Son Ho | 2024-04-11 | 1 | -9/+6 |
| | | | |||||
| | * | Update a comment | Son HO | 2024-04-11 | 1 | -1/+1 |
| | | | |||||
| | * | Trust rustc regarding `Copy` bounds | Nadrieril | 2024-04-10 | 3 | -7/+7 |
| | | | |||||
| | * | Improve the error messages further | Son Ho | 2024-04-07 | 3 | -1/+44 |
| | | | |||||
| | * | Cleanup a bit and improve the error messages | Son Ho | 2024-04-07 | 12 | -82/+91 |
| | | | |||||
| | * | Resolved comments and added the name of the not translated element | Escherichia | 2024-04-05 | 2 | -7/+18 |
| | | | |||||
| | * | resolved comments | Escherichia | 2024-04-05 | 3 | -99/+113 |
| | | |