User Tools

Site Tools


people:david_ringo:project_ideas

This is an old revision of the document!


Blue Sky Project Ideas

Radiation-hardened 2D Pong

Name shamelessly derived from this monstrosity.

This idea is described in a series of successive approximations of the final goal.

First Approximation - A Bouncing Ball

The first approximation of this idea is simple, zero-player (zero-AI) Pong, with a single Ball atom, and immovable Paddle atoms along all edges of the MFM universe. The Ball would move in a consistent direction (if not at a constant rate) and rebound off the Paddle atoms.

Second Approximation - Message-passing Board Substrate

The next step would be a large one, implementing a message-passing substrate Board type that could broadcast information about the state of the Ball that Paddles can (eventually) respond to. Taking a page from joaquin's Ant model, the Ball would likely be the (movable) center of the universe, and Paddles would receive relative offsets and maybe a movement vector.

Third Approximation - Robust, Multi-cellular Ball

With robustness being a primary goal of the MFM architecture and the accompanying philosophy, simply creating a Pong-like “game” does not make for a very interesting project. This phase would add robustness to the Ball, hopefully taking on some multi-cellular form. Ideally it would retain some ball-like shape, and be tolerant to bit-flips and partial population-loss. The board may play an integral role in achieving this, being a source of data redundancy.

Final Approximation - Autonomous Paddles

At this stage, the Paddle walls will be reduced in size to make the model looks something like real Pong. Ideally, they will also be fault-tolerant (self-replicating, in some way) but also resource-bounded (Res?) to discourage overgrowth into impermeable walls.

Stretch Goal: Human Input

I have no idea how feasible it would be to bind keyboard events into the MFM. If this would involve significant C++ hackery, I suspect it's beyond my abilities. I need to do research here.

Bignum Arithmetic

After Sridivya's comments about the viability of the MFM for correctness-sensitive applications (e.g. a calculator), I thought it might be interesting to try to construct a system for arbitrary precision arithmetic with extremely high probability of correctness, roughly on par with the expectation of correctness in traditional computing paradigms.

This idea feels at odds with the robust-first philosphy, but it seems like it would be worthwhile to show that robustness and correctness aren't mutually exclusive (or, in the event of failure, make no strong claims).

people/david_ringo/project_ideas.1505267700.txt.gz · Last modified: 2017/09/13 01:55 by davidringo