Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lambdas #6

Open
kustosz opened this issue Nov 5, 2024 · 0 comments · May be fixed by #16
Open

Lambdas #6

kustosz opened this issue Nov 5, 2024 · 0 comments · May be fixed by #16
Assignees

Comments

@kustosz
Copy link
Contributor

kustosz commented Nov 5, 2024

Lambda functions should be supported by the tool. This needs a level of indirection to avoid non-termination issues. This can be achieved by shoving their runtime reps (which is going to be HList Tp.denote argTypes -> Expr Tp.denote outType) onto the heap and pass them around in references.

AST, syntax and semantics need to be extended to support lambda calls.

A good test case for this would be a module that

  1. Defines Slice.reduce
  2. Calls it with e.g. a lambda that adds numbers
  3. The postcondition that this is a sum of all items in the slice should be provable with all hoare-logic steps skipped by automation (steps and sl)
@utkn utkn linked a pull request Nov 15, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants