Welcome to the VPRI FoNC wiki.
FoNC (Fundamentals of New Computing, aka Idst, Jolt, COLA, the SODA languages, etc.) is an ongoing project to create a programming language substrate and springboard for investigating new computing paradigms. Everything in it is late-bound, the intention being that any paradigm (existing or yet to be invented, formal complexity notwithstanding) be easily and efficiently mapped to it and made available to the user. It is a small part (the implementation vehicle) of the Reinvention of Programming project.
The system is slowly evolving towards version 1.0 which
- is completely self-describing (from the metal, or even FPGA gates, up) exposing all aspects of its implementation for inspection and incremental modification;
- treats state and behaviour as orthogonal but mutually-completing descriptions of computation;
- treats static and dynamic compilation as two extremes of a continuum;
- treats static and dynamic typing as two extremes of a continuum; and
- late-binds absolutely everything: programming (parsing through codegen to runtime and ABI), applications (libraries, communications facilities), interaction (graphics frameworks, rendering algorithms), and so on.
Here are a few good places to start within the Documentation:
- Project Overview
- Installation Guide
- The Hacking Guide to the current source code
- XO Hacking for bare-metal OLPC XO programming with Cola
- Glossary, to look up an unfamiliar term
See the Installation Guide
Suggestions and missing features
If you have suggestions about missing features (big or small) that would improve the system or its usability as it evolves towards something completely different, please add them to the Feature Requests.
We're not happy with the name yet. If you have (polite and/or humorous) suggestions, add them to the list of Suggested Names.
Idst (cola, or whatever you want to call it) is distributed under the MIT license, which allows for unrestricted use even in non-open source software.