Software Architecture and Design

Formal Language of Chemistry (FLoC)
Building on the work of Cardelli, Priami, Regev and others, we provide a simple language for expressing chemical equations and compiling them to concurrent programs. These concurrent programs allow users to simulate the evolution of solutions of chemicals subject to a network of reactions. In the context of the codestore project the provides the basis of searching networks of chemical reactions on the basis of a language of behavior and structure that derives from their interpretation as concurrent programs.
Codestore Recognizing that
- • Code is rapidly becoming one of the largest data assets to manage
- • Model-checking, provides the basis of a query language for searching code
- • Logics enabling both structural and behavioral observation have efficient translations to modern query languages
we are developing a database for storing and retrieving code on the basis of what it does and how it does, not what keywords occur most frequently...
ParallelogramFollowing up on the development of the reflective higher-order calculus (a.k.a. the \rho-calculus), Parallelogram is an effort to design a full, general purpose programming language with reflection and concurrency as the basic primitives.
Knots to πRecognizing that knots are sitting at the confluence of several crucial lines of research from
- • quantum computing to
- • quantum gravity to
- • protein folding
we have developed an encoding of knots into a class of concurrent programs. This project, in conjunction with the codestore project, enables a database for storing and retrieving knots on the basis of a new kind of query language for knot properties derived from their encoding as concurrent programs.
Check out the arXiv paper