Our MetaChem framework supports the definition and combination of artificial chemistries. Here we describe an implementation of MetaChem in an object oriented language. We briefly define MetaChem, and provide an example in the form of a toy AChem: StringCatChem. We present the class hierarchy used to define MetaChem such that the implementation can run directly from a graph description of some AChem. This matches the description given by the formal framework definition. We also describe some generic functions of MetaChem that have been implemented and used in StringCatChem. This implementation is available on GitHub.
@inproceedings(Rainford2019:ALife:OO, author = "Penelope Faulkner Rainford and Angelika Sebald and Susan Stepney", title = "An Object Oriented Implementation of the MetaChem framework", pages = "119-126", doi = "10.1162/isal_a_00150", crossref = "ALife-2019" ) @proceedings(ALife-2019, title = "ALife 2019, Newcastle, UK, July 2019", booktitle = "ALife 2019, Newcastle, UK, July 2019", publisher = "MIT Press", year = 2018 )