This repository has been archived by the owner on Apr 9, 2024. It is now read-only.
Define a "Brillig stdlib" for common functions for which the ACVM handles foreign calls. #464
Labels
enhancement
New feature or request
Problem
Noir is currently replacing the usage of a number of directives with Brillig functions which involve external calls. This is good as it will allow us to remove the
Directive
opcode in future however we're now performing foreign calls for several standard ACVM operations, e.g. checking equality between two values.Happy Case
We should define a set of standard brillig functions such as inversion, division, etc. here in ACVM and have the ACVM catch the relevant foreign calls internally rather than requiring the environment to implement this logic.
Alternatives Considered
No response
Additional Context
ACVM JS currently won't process most Noir programs for this reason unless the caller includes the "invert" foreign call handler.
Would you like to submit a PR for this Issue?
Yes
Support Needs
No response
The text was updated successfully, but these errors were encountered: