modus
Menu

The program life

A demonstration: Conway's Game of Life.

pointer, left button: draw cells space: pause r: random c: clear

This program is also a service: another program reads and changes the cells with isolated calls, while the game runs.

FactValue
Sourceprograms/life
Boot imagein the boot image; the image is not built, so its size is not known
Importsnone
Imported bynone

Exports

ExportWhat it does
population() -> Integergives the count of live cells
empty()removes all the cells
glider(column: Integer, row: Integer)adds a glider: five cells that move down and right
entry()

Read from the source of the module, as the build reads it to describe the exports (tools/kerneltool/describe.odin).

What the root service gives it

WhatValueAs the root service says
Grants{.Serve}sample: the module of the tables, started as a program when a caller connects.
Budget: pages, programs, threads{pages = 2048, programs = 1, threads = 1}Not named in things_of: the budget of each other program.

Read from grants_of and things_of in programs/root/main.odin; budget_of in the same file adds the limits of processor time and of log records.