Selected papers of the Second Workshop on Concurrency and compositionality
Programming by multiset transformation
Communications of the ACM
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
Journal of Computer and System Sciences
Proving termination with multiset orderings
Communications of the ACM
Artificial chemistries—a review
Artificial Life
Proceedings of the 5th International Workshop on Languages and Compilers for Parallel Computing
Introducing a Calculus for Higher-Order Multiset Programming
COORDINATION '96 Proceedings of the First International Conference on Coordination Languages and Models
Gamma and the Chemical Reaction Model: Fifteen Years After
WMP '00 Proceedings of the Workshop on Multiset Processing: Multiset Processing, Mathematical, Computer Science, and Molecular Computing Points of View
Higher-Order chemical programming style
UPP'04 Proceedings of the 2004 international conference on Unconventional Programming Paradigms
Service Orchestration Using the Chemical Metaphor
SEUS '08 Proceedings of the 6th IFIP WG 10.2 international workshop on Software Technologies for Embedded and Ubiquitous Systems
The Chemical Reaction Model Recent Developments and Prospects
Software-Intensive Systems and New Computing Paradigms
Using chemical reactions to model service composition
Proceedings of the second international workshop on Self-organizing architectures
Adaptive instantiation of service workflows using a chemical approach
Euro-Par 2010 Proceedings of the 2010 conference on Parallel processing
A protocol for the atomic capture of multiple molecules on large scale platforms
ICDCN'12 Proceedings of the 13th international conference on Distributed Computing and Networking
Fault tolerant autonomic computing systems in a chemical setting
Dependable and Historic Computing
The chemical machine: an interpreter for the higher order chemical language
Euro-Par'11 Proceedings of the 2011 international conference on Parallel Processing
Decentralized workflow coordination through molecular composition
ICSOC'11 Proceedings of the 2011 international conference on Service-Oriented Computing
Adaptive atomic capture of multiple molecules
Journal of Parallel and Distributed Computing
Rule-driven service coordination middleware for scientific applications
Future Generation Computer Systems
Hi-index | 0.01 |
Gamma is a programming model in which computation can be seen as chemical reactions between data represented as molecules floating in a chemical solution. This model can be formalised as associative, commutative, conditional rewritings of multisets where rewrite rules and multisets represent chemical reactions and solutions, respectively. In this article we generalise the notion of multiset used by Gamma and present applications through various programming examples. First, multisets are generalised to include rewrite rules, which become first-class citizens. This extension is formalised by the $\gamma$-calculus, which is a chemical model that summarises in a few rules the essence of higher-order chemical programming. By extending the $\gamma$-calculus with constants, operators, types and expressive patterns, we build a higher-order chemical programming language called HOCL. Finally, multisets are further generalised by allowing elements to have infinite and negative multiplicities. Semantics, implementation and applications of this extension are considered.