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

Add anoma nockma tests #3134

Merged
merged 29 commits into from
Nov 5, 2024
Merged

Add anoma nockma tests #3134

merged 29 commits into from
Nov 5, 2024

Conversation

janmasrovira
Copy link
Collaborator

@janmasrovira janmasrovira commented Oct 29, 2024

  • Fixes a bug in calling Anoma stdlib from Nock code
  • Runs the anoma compilation test with the anoma node nockma evaluator.

I've classified the tests in 4 categories:

  1. Working. The test works as expected.
  2. Trace. We need more work on our end to get the traces from the anoma node and check that they match the expected result.
  3. NodeError. The anoma node returns failed to prove the nock program.
  4. Wrong. The anoma node returns some value that does not match the expected value.

lukaszcz and others added 5 commits November 4, 2024 18:46
This reverts commit 3b28dbd.
* Closes #2968 
* Implements detection of function-like definitions, which either:
  - have some arguments on the left of `:`, or
  - have at least one clause.
* Only function-like definitions are recursive.
* Non-recursive definitions are not mutually recursive either, and can
be used only after their definition. This necessitates rearranging some
definitions in existing Juvix code.
* Changes the scoping of identifiers in record updates. Now field names
on the right side don't refer to the old values of the record fields but
to identifiers in scope defined outside the record update. To refer to
old values, one needs to explicitly use record projections, e.g.
```
r@Rec{x := Rec.x r}
```
src/Anoma/Effect/Base.hs Outdated Show resolved Hide resolved
The argsPath in stdlib call should be unconditionally [R, L] i.e the
'arguments' slot of the stdlib function.
paulcadman
paulcadman previously approved these changes Nov 5, 2024
| -- | The anoma node returns a response with an error
ClassNodeError
| -- | The anoma node returns a value but it doesn't match the expected value
ClassWrong
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we don't need this one anymore

Copy link
Collaborator

@paulcadman paulcadman Nov 5, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we keep this for now as some of the ClassNodeError and ClassTrace may become ClassWrong once we're able to run them.

@paulcadman paulcadman merged commit 4cdcb2f into main Nov 5, 2024
4 checks passed
@paulcadman paulcadman deleted the anoma-node-tests branch November 5, 2024 13:28
@paulcadman paulcadman added this to the 0.6.7 milestone Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants