Tiny Bow is the nonprofit organization responsible for Ribbon.
Ribbon is comprised of two sibling projects, inspired by a history in game development, as well as a deep love for high performance systems, modding, formal systems, and analysis.
-
A programming language striking a new balance between high level programmer experience and low level systems access, by adapting influences from the latest in academia and industry
-
A realtime software engine, utilizing the insights of the Ribbon language to enable new approaches to extensibility and performance, particularly in game development
Focal points of both designs include:
- High performance
- Zero GC
- Composable allocation strategies
- Tracked thread affinity
- Expressive effect system without allocating continuations
- Embedding into other applications in the style of Lua and C#/MonoGame
- Bindings for compiling at runtime
- Simple glue to host applications
- Toolkit presentation
- Strong types with full inference
- Big static analysis benefits
- Retain the flexibility and joy-of-programming from dynamic languages
- Row polymorphism for structural data and procedures
- Rich API encodings through the use of new kinds of phantom types and effect handlers