Software
Design
The
same principles involved in joining the donkey to
the teapot would be used to create software. Each part of
a flow chart script would be drawn into morphing relationships
with software primitives. The challenge of software design
is similar to the long division problem - only very small
fragments can be held in simulation at one time. Software
is the application of language rules to - 'direct the structured
animated progression of data bits'. Just like normal language
is used to script the animation of everyday objects. With
software, pen and paper are often used to 'fix' the framework
using language tags in order to maintain animation persistence
and build complexity. And just like for real world animation,
where atoms are aggregated to forms and forms to behaviors
- so bits are often aggregated to higher data abstractions.
Like floating point numbers, arrays, memory containers or
pointers with animated behaviors of their own.


Using
prior knowledge of indexed memory containers, a simple symbol
substitution layer can form to match the data in our example.
The initial 'means' are still the bars substituted for 1's
and 0's. The 'ends', the decimal digits with the previously
learned simulated decode script in between. But this script
is neither a formal flow chart nor software. It includes
all sorts of miracles and beliefs to get from the bars to
the numbers. (Bars turn into symbols, symbols to patterns.
Patterns are compared to other patterns). There needs to
be discovered, through trial and error, linking morph translations
between the means and ends using software animation characters.
To
start, the traditional 'for-next' loop might be used as
an initial script trial skeleton, upon which to attach elements
of the known model. It doesn't much matter how the 'for-next'
animation is initially understood or remembered. Whether
a cart wheel with spokes marking along a track, or a string
of beads passing through some grading point. As experience
has always shown digits to be the predominant substitution,
they themselves will likely become the animation characters.
And so for someone familiar with the C-language, the expression
'for(x=4;x;--x)' will invoke this abstract animation, but
with roots firmly embedded to real world behaviors and thus
connected in some way to all other knowledge. There are
only two variables in the original simulation, 16 inputs
and 4 results. So any loop substitutions are likely to be
based around these two numbers, rather than say 42 or 365.
The simulation iterations will then run by substituting
the only elements possible to change, yielding:
1)
for(x=16;x;--x) do something with 'means'
2)
for(y=4;y;--y) do something with 'ends'
Morph
attempts can now be made between these loop fragments and
the original decode script. (As the donkey animation was
merged with a teapot). Disparate parts of the two scripts
will find tentative bindings, which will strengthen or weaken
upon introspection - i.e. running the animations to discover
anomalies. And using the framework from persistent language
layers (as humans use pen and paper), to build and hold
animation complexity. In this way, animated fragments will
bind to the original decode script to generate code trials
with subsequent C-language script formation.
Wider
scope accounting would expand the extent of simulation to
close loose ends by explicitly defining memory container
sizes; initial conditions; test flexibility to handle longer
barcodes or discover optimizations through further substitution
experiments. But more importantly, for this code fragment
to be understood in any context, it must be integrated into
a wider causal framework of just how the barcode widths
will become input data; what host device will be running
this computation and how the results will be used. Thus
the software code fragment will come to have a relationship
with a material existence in the real world; as the motion
of real electron charges on real atoms within the microcontroller
of a real product. It is these linkages that are far more
important to intelligent understanding than software - the
awkward mental construction of abstract pattern animations
and beliefs.
