[ The Types Forum (announcements only), http://lists.seas.upenn.edu/mailman/listinfo/types-announce ]
SUMMARY The beta-release of the CBS framework is now available: https://plancomps.github.io/CBS-beta It provides a library of reusable components of language specifications, called 'funcons', and examples of their use. DETAILS CBS is a framework for component-based specification of programming languages. The main idea is to specify languages by translation to pre-defined 'funcons' (fundamental programming constructs) that correspond closely to common concepts of high-level programming languages. A translation to funcons can be significantly simpler - both to read and to write - than a direct specification of program behaviour. It is also highly modular, supporting co-evolution of languages and their specifications. Funcons are reusable components: their definitions can be reused, unchanged, in the specifications of different languages. Crucially, the behaviour of each funcon is to be fixed, and adding new funcons does not involve changes to the definitions of existing funcons. The PLanCompS project (http://plancomps.org) has developed an initial library of funcons, together with several language specifications that illustrate their use. A beta-release of them is now available: https://plancomps.github.io/CBS-beta The aim of the beta-release is to allow those who might be interested in using CBS to review the funcons and their definitions before the full release, which is planned for October 2018. New funcons are likely to be introduced during the beta-release period, and further examples of language specification will be provided. Demonstration of scaling-up to major languages (e.g., C#) is a longer-term goal. The current funcon definitions cover only their dynamic semantics, but are to be extended to static semantics. The current tool support for CBS (including a language workbench and interpreter generation for rapid prototyping) will be released as soon as it is sufficiently robust and well-documented. If you would like to contribute to PLanCompS (e.g., by using CBS to define a new or existing language, or by suggesting new or improved funcons) please email Peter Mosses <planco...@gmail.com>.