App Animal

I have been interested in Brian Marick's "app-animal" since late 2023/early 2024.

2024-01-03 New Hampshire style (Direct Control Links) – Here are the guidelines or principles or heuristics I’ll be using for early prototypes. page

two-sides

I would like to draw Brian Marick's attention to the following illustration. Replace person_1 with Brian and person_2 with App Animal. post

**NB.** We are now dealing with 2 Environments. post

2024-01-07 A design constraint: Bodies Are Kludges. page

2024-01-10 Just enough Elixir for the prototypes – I’ll be showing Elixir code in future blog posts. Elixir looks a fair amount like Ruby, and a lot of it is pretty straightforward to someone who knows a few languages. However, the way it handles processes (its version of actors) is fairly special and has its own notation. Since I’ll be using processes as a key building block, I’ll explain them here. page

2024-01-17 Styles of perception: predator and prey – In the first prototype (perhaps to be described later), I adopted what I think of as a predator approach to perception. In the next prototype, I’m going to switch to a prey approach. page

> Necessary background: in the prototype, the app-animal is focused on a single paragraph within a script. It’s focused there because that’s the paragraph that contains the cursor (insertion point). But what does “focused” mean?

2024-01-30 Predictable asynchrony problems – The first prototype is not awfully informative, except to reinforce what everyone knows: having a lot of asynchrony in a program is a great way to produce race conditions. page

2024-02-01 Moving a fragment in prototype 2 – This prototype implements a strategy different from that given in the podcast episode. The strategy was in part inspired by how prototype 1 was too hard. In contrast to that one, this seems something worth building on, though issues remain. I’ll show and explain the code in a separate post. page

2024-02-05 Control and implementation in prototype – Here’s the more technical explanation of prototype 2. I describe the modules or, metaphorically, “neural clusters” that information flows through. For the Elixir-curious, I describe some of the Elixir features I rely on. The really nitty-gritty details are in italic text, and I’ve tried to make them skippable. page

2024-05-26 Prototype 3, architecture part 1: building blocks – The architecture of the “app animal” prototype has settled down enough that it’s worth describing in a semi-technical way. This post is about the core building blocks. The next about what’s built with them. Later posts will dive into the Elixir code in a way I hope is friendly to Elixir beginners. page