GOOSE: Good Object-Oriented System Experience
Description
We present GOOSE (Good Object-Oriented System Experience) – an object-oriented abstraction layer for the Anoma Resource Machine (Anoma RM) that lets developers write applications in terms of classes, objects, and methods while compiling to resource-based transactions and Resource Logics (RLs) that are correct by construction. GOOSE represents objects as RM resources and method calls as messages inducing actions. The RLs enforce class invariants and method logics, ensuring strong object interface safety: any valid transaction that modifies a GOOSE object, whether compiler-generated or hand-crafted, must correspond to a sequence of permitted interface calls. We demonstrate the expressiveness and usability of this approach with a Kudos Bank case study that supports minting, transfers, checks, and auctions.
Files
2025-Czajka-Rovira-GOOSE-Good-Object-Oriented-System-Experience.pdf
Files
(227.6 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:5e4a7300c6c3f294db39cdb528b274c7
|
227.6 kB | Preview Download |