A perception of an agent follows as that the act of changing the value of one observable indivisibly entails a predictable accompanying change in that another of can be termed a dependency. Indivisibility in change allows us, as agents, to make our experience of interaction with the 'world' meaningful.
Empirical Modelling (EM) is the name we have given at Warwick to the activity of building artefacts to embody patterns of observables, dependencies and agent actions that are encountered in experience. EM involves the progressive development of understanding through interaction, whereby meaning is continually refined in the light of additional experience. An EM artefact can be physical (cf. the Phillips machine [Phi00]) or computer-based (cf. spreadsheets).
This thesis investigates how dependency can be effectively implemented on a digital computer through the critical evaluation of three contrasting tools to support EM developed at Warwick over the last 16 years. The thesis contribution has three aspects: conceptual insight; critical, historical and empirical review; and technical and practical development.
Slade's original Abstract Definitive Machine (ADM) concept [Sla90] and its implementations are reviewed and linked to the original motivation for development its animating LSD accounts. The main emphasis of the ADM is on agency. Subtleties and inconsistencies in the way in which the ADM concept has developed over time are exposed and an algorithm for an 'Authentic' ADM (AADM) is proposed.
Cartwright's design and implementation of the Definitive Assembly Maintainer (DAM) machine [Car99] is analysed and critiqued. The DAM machine emphasises only dependency. The DAM machine is extended to allow lower-level interaction using a special-purpose code and to exploit the video hardware to create dependency at a very low level.
The primary tool of the EM research group, EDEN [Yun93, Yun90], successfully combines both dependency and agency. Its development is reviewed in its historical context and various extensions, including novel interfacing, are described. The first exposition of EDEN's internal operation is given.
The analysis of existing EM tools motivates the examination of some problematic issues regarding concurrency, moding and higher-order dependency. Some proposals for design and implementation to address these issues are described.
Throughout the thesis, consideration of technical issues is motivated by the possibility that human engagement with computers can have qualities similar to engagement with 'real-world' artefacts, manifest in interaction with meaningful state that is at all times intelligible to the human interpreter, unlike the typically meaningless intermediate states that are generated in the execution of a conventional program. The insights that exploring this possibility brings may be significant in producing programs that are more robust under change.