Aquarium Technical Report Preprint
In this technical report, we present the core calculi for two of the domain specific languages comprising the Aquarium kernel synthesis project. First, we present a machine modeling language named Cassiopea that is used to describe the semantics of individual processor ISAs. Then, we present a specification language named Alewife that allows a developer to describe a block of code, such as a kernel module, such that the specification can be used to verify and synthesize code for any machine described in Cassiopea that meets a set of necessary requirements defined in the Alewife specification. We note that this is work in progress, and does not yet present a final or complete view of either the Aquarium system or the calculi presented.
READ FULL TEXT