Skip to content

ibotha/Aether

Repository files navigation

Aether

A dynamic medium heavily inspired by the work over at Dynamicland.

You will have to forgive the odd naming, I enjoy names that make you imagine and thinking of this project as a new kind of air with a choir of harmonizing voices is just the kind of flavour I need.

Blue skies

Aether will function as a sort of live database, programs can connect to tell the aether about the world and in what ways it would wish the world to be different. In exchange the aether tells the programs what they want to know. The end goal is that some of these programs will fulfill wishes, and the collection of these programs can solve more complex problems.

During initial development most of these programs will be entirely contained on the computer, but the goal is to have them live more in the physical world. Like the paper in dynamicland.

The other key here is that eventually this system needs to become more that some black box written by a computer scribe (or programmer if you prefer). I want people to be able to pick this up and make it their own, without having to study programming for years first.

Short term goals

Right now I just want to focus on getting the basic structure, and that centers on 2 things:

Communication

The programs need to be able to communicate in some standard and flexible manner. A balance must be found between the complete rigidness of an API and the infinite complexity of understanding arbitrary input.

This will undergo A LOT of iteration, I am by no means an expert here and will be figuring this our for a while. I am to achieve this flexibility through the simplicity of what is being communicated. such that more complex communication can emerge from the creation of collaborating programs for a specific use case.

Bards

Bards are programs that interact with some aspect, a file bard can tell you about and modify a filesystem for instance. A video bard would Handle anything with the gpu potentially. See the readmes of the individual bards for more information.

Bard Design

We should try write logic declaratively where possible. A state of claims and wishes should dictate much of the more complicated compositions leaving only the messy ends as imperative. This isn't a rule, just a suggestion to practice programming this way and make the transition easier later on. This experience will also be invaluable when it comes to designing the language for the Aether.

About

Laying the groundwork for the setup of a Humane Dynamic Medium

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published