The Wyvern Programming LanguageWyvern is a new programming language designed to help developers be highly productive when writing high-assurance applications. The first major innovation in Wyvern is type-specific languages, a feature that allows programmers to create literals of a given type (e.g. a SQLQuery type) in a language appropriate to that type (e.g. SQL). We are currently working on the Wyvern object model and on providing architects with more architectural control.
The ongoing implementation of Wyvern is available on GitHub.
NewsOur ECOOP 2014 paper won a distinguished paper award! See CMU's press release and coverage by SD Times.
Publications Related to Wyvern
- Safely Composable Type-Specific Languages. Cyrus Omar, Darya Kurilova, Ligia Nistor, Benjamin Chung, Alex Potanin, and Jonathan Aldrich. Proc. European Conference on Object-Oriented Programming, 2014.
- Language-Based Architectural Control. Jonathan Aldrich, Cyrus Omar, Alex Potanin, and Du Li. In International Workshop on Aliasing, Capabilities, and Ownership (IWACO '14), 2014.
- Wyvern: A Simple, Typed, and Pure Object-Oriented Language. Ligia Nistor, Darya Kurilova, Stephanie Balzer, Benjamin Chung, Alex Potanin, and Jonathan Aldrich. In Mechanisms for Specialization, Generalization, and Inheritance (MASPEGHI), 2013.
- Type-Directed, Whitespace-Delimited Parsing for Embedded DSLs. Cyrus Omar, Benjamin Chung, Darya Kurilova, Alex Potanin, and Jonathan Aldrich. In Globalization of Domain Specific Languages (GlobalDSL), 2013.
Other Wyvern Documentation
- A Specification and Rationale document for Wyvern, unfortunately incomplete and now somewhat out of date. The papers above are the best reference for Wyvern's research contributions.