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

Support offline computation of Anoma programs #2837

Open paulcadman opened 1 week ago

paulcadman commented 1 week ago

Users will write Anoma programs against transaction functions which are the interface to Anoma applications.

These transaction functions take user input and return transaction candidates that we actually submit to Anoma.

The transaction function to transaction candidate execution does not happen in Anoma, it happens 'offline'. The Anoma node's job is to check the resulting logic function in the transaction candidate.

An example of offline execution is the signing of transactions.

The “Transaction functions” will need to be executed in a way that produces Nockma output. There are several options: