program.org

Program

A reactive programming language where values recompute themselves. Declare what things are and the runtime works out when to update them, keeping everything in step.

The program.org home page

About

State can live anywhere. There is no store to set up and no single place state has to live: a value can sit right where it is used, a context can flow down to everything beneath it, and the dependencies between them track themselves, so the structure of your code is the structure of your program.

Highlights

Beautifully simple

A compact definition, a small core you can hold in your head.

Effortlessly asynchronous

Asynchronous values are ordinary reactive values; a network result updates the screen the moment it lands.

Completely composable

Every module is a boundary with a small reactive surface, and the dependencies between modules track themselves.

Batteries included

A broad standard library covers data, the interface and networking.

Animation and graphics

Animation, graphics, charts and games are part of the language.

Immediate polyglot

One source renders into many languages, and back into Program itself.

Online playgroundModule libraryLanguage reference

More research