Classical computing has well-established formalisms for specifying, refining, composing, proving, and otherwise reasoning about computations. These formalisms have matured over the past 70 years or so.
Unconventional Computing includes the use novel kinds of substrates from black holes and quantum effects, through to chemicals, biomolecules, even slime moulds to perform computations that do not conform to the classical model. Although many of these substrates can be tortured to perform classical computation, this is not how they naturally compute.
Our ability to exploit unconventional computing is partly hampered by a lack of corresponding programming formalisms: we need models for building, composing, and reasoning about programs that execute in these substrates. What might, say, a slime mould programming language look like?
Here I outline some of the issues and properties of these unconventional substrates that need to be addressed to find natural approaches to programming them. Important concepts include embodied real values, processes and dynamical systems, generative systems and their meta-dynamics, and embodied self-reference.
@inproceedings(SS-NUC12, author = "Susan Stepney", title = "Unconventional Computer Programming", pages = "12-15", crossref = "NUC12" ) @proceedings(NUC12, title = "Symposium on Natural/Unconventional Computing and Its Philosophical Significance, Birmingham, UK, July 2012", booktitle = "Symposium on Natural/Unconventional Computing and Its Philosophical Significance, Birmingham, UK, July 2012", editor = "Gordana Dodig-Crnkovic and Raffaela Giovagnoli", year = 2012 )