The goal of this project is to create a programming environment that is fun and efficient, where you can directly see and interact with the code you are editing.
There are two elements: Circa, a programming language; and Plastic, a cross-platform graphical tool for creating Circa code.
Features of Circa are:
Live coding. Has a rich API for examining or modifying code at runtime.
State is preserved across most code changes.
Supports live code changes made by external tools (such as separate text editors), as well as changes made within the system.
Code is stored in a (relatively) simple format, allowing for easy introspection and static reasoning.
Visual programming is supported.
Compiled code can be unparsed back to text, with all comments and formatting preserved. This allows for a hybrid approach of textual and visual code editing.
