anoma / juvix

A language for intent-centric and declarative decentralised applications
https://docs.juvix.org
GNU General Public License v3.0
442 stars 54 forks source link

Cairo: pass around the builtins pointer only when necessary #2849

Open lukaszcz opened 1 week ago

lukaszcz commented 1 week ago

Work in progress

lukaszcz commented 1 week ago

Implementing this is more time consuming than I thought, because it requires having two calling conventions: one for functions that need builtins and one for functions that do not. In closure calls, we would need to dynamically decide which one to use, or wrap functions on closure creation to use the convention with builtins.

I defer this PR to 0.6.4