Vat

From Erights

Jump to: navigation, search

See [1].


Example: How to create a new Vat

? introducer.onTheAir()
# value: ["3DES_SDH_M2", "3DES_SDH_M"]

? def seedVat := <elang:interp.seedVatAuthor>(<unsafe>).virtualize(introducer)
# value: <virtualSeedVat>

? def source := "def run(thing) {println(`Thing: $thing`)}"
# value: "def run(thing) {println(`Thing: $thing`)}"

? def [farObj, vat] := seedVat(source)
# value: [<Promise>, <Vat newVirtualSeedVat in <runs in newVirtualSeedVat>>]

? farObj <- ("Hello Vat")
# value: <Promise>

? Thing: Hello Vat

# shutting down the vat
? def ack := vat <- orderlyShutdown("because I said so")
# value: <Promise>

Personal tools
more tools