Life is so diverse and complex that is seems impossible to extract the general principles governing each individual living system. Fortunately, however, the unrelenting growth of the power of modern computers has opened up entirely unexpected avenues of opportunity for us in exploring the construction of artificial living systems. This has created the possibility to design and conduct dedicated experiments with these systems, and has generated interest in the idea of formulating a set of "general principles of the living state" which are quite independent of a particular implementation. Such a "theory of living systems" might equally well-predict the outcome of experiments performed on the protean living system which gave rise to life on earth, e.g., and RNA world, and those worlds in which information is coded in binary strings compiled to programs that have the ability to self-replicate: thus and instance of "Artificial Life." This book and CD-ROM have been developed in a lab-oriented course taught at Cal Tech in 1995 and 1996, and simultaneously augmented by Artificial Life research conducted there. The courses have been attended by an interdisciplinary group of students from backgrounds in physics, computer science, and the computational neural sciences. Pre- requisite understanding of statistical physics and thermodynamics, basic biology, as well as familiarity with computer architectures and scientific computing techniques are assumed. This project is an attempt to bring together the necessary theoretical groundwork for understanding the dynamics of systems of self-replicating information, as well as the result from initial experiments carried out with artificial living systems based on this paradigm.