74 research outputs found

    Formal Component-Based Semantics

    Get PDF
    One of the proposed solutions for improving the scalability of semantics of programming languages is Component-Based Semantics, introduced by Peter D. Mosses. It is expected that this framework can also be used effectively for modular meta theoretic reasoning. This paper presents a formalization of Component-Based Semantics in the theorem prover Coq. It is based on Modular SOS, a variant of SOS, and makes essential use of dependent types, while profiting from type classes. This formalization constitutes a contribution towards modular meta theoretic formalizations in theorem provers. As a small example, a modular proof of determinism of a mini-language is developed.Comment: In Proceedings SOS 2011, arXiv:1108.279

    Control over phase separation and nucleation using a laser-tweezing potential

    Get PDF
    Control over the nucleation of new phases is highly desirable but elusive. Even though there is a long history of crystallization engineering by varying physicochemical parameters, controlling which polymorph crystallizes or whether a molecule crystallizes or forms an amorphous precipitate is still a poorly understood practice. Although there are now numerous examples of control using laser-induced nucleation, the absence of physical understanding is preventing progress. Here we show that the proximity of a liquid–liquid critical point or the corresponding binodal line can be used by a laser-tweezing potential to induce concentration gradients. A simple theoretical model shows that the stored electromagnetic energy of the laser beam produces a free-energy potential that forces phase separation or triggers the nucleation of a new phase. Experiments in a liquid mixture using a low-power laser diode confirm the effect. Phase separation and nucleation using a laser-tweezing potential explains the physics behind non-photochemical laser-induced nucleation and suggests new ways of manipulating matter

    Casl: A Guided Tour of Its Design

    No full text

    Reusable components of semantic specifications

    No full text
    Semantic specifications of programming languages typically have poor modularity. This hinders reuse of parts of the semantics of one language when specifying a different language -- even when the two languages have many constructs in common -- and evolution of a language may require major reformulation of its semantics. Such drawbacks have discouraged language developers from using formal semantics to document their designs.In the PlanCompS project, we have developed a component-based approach to semantics. Here, we explain its modularity aspects, and present an illustrative case study. Our approach provides good modularity, facilitates reuse, and supports co-evolution of languages and their formal semantics. It could be particularly useful in connection with domain-specific languages and language-driven software development

    The Abaco System — An Algebraic Based Action COmpiler

    No full text

    An action semantics for ML concurrency primitives

    No full text
    corecore