Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/DSLFoundry/mbeddr.cpp
C++ extension to mbeddr in MPS
https://github.com/DSLFoundry/mbeddr.cpp
cpp jetbrains-mps
Last synced: about 2 months ago
JSON representation
C++ extension to mbeddr in MPS
- Host: GitHub
- URL: https://github.com/DSLFoundry/mbeddr.cpp
- Owner: DSLFoundry
- License: epl-1.0
- Created: 2019-12-18T12:12:09.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-18T09:49:25.000Z (5 months ago)
- Last Synced: 2024-07-30T19:19:48.053Z (about 2 months ago)
- Topics: cpp, jetbrains-mps
- Language: JetBrains MPS
- Homepage:
- Size: 930 MB
- Stars: 4
- Watchers: 3
- Forks: 3
- Open Issues: 19
-
Metadata Files:
- Readme: readme.md
- License: license.html
Awesome Lists containing this project
- mps.rocks - mbeddr.cpp - C++ language implementation prototype for JetBrains MPS, built as an extension on mbeddr.core (C language). ([Built with MPS](#built-with-mps) / Languages)
README
![build status](https://github.com/dslfoundry/mbeddr.cpp/actions/workflows/gradle.yml/badge.svg)
# mbeddr.cpp
Implementation of a subset of the C++14 programming language in a [JetBrains MetaProgrammingSystem](https://www.jetbrains.com/mps/) (MPS) language.
mbeddr.cpp has been implemented as an extension to [mbeddr C](http://mbeddr.com), reusing existing concepts from the MISRA C language and extending it with concepts like classes, namespaces, templates, etc..Although mbeddr.cpp does not implement the full C++14 standard, it supports the most commonly used constructions such as classes, methods, exceptions, namespaces, as well as partially operator overloading and templates.
While it is not yet fully engineered, mbeddr.cpp is already a good generation target with a reasonably workable editing experience in MPS.In a similar fashion as baseLanguage that is shipped with MPS and also mbeddr, a big advantage of having C++ as an MPS language, is that it is arbirarily extensible on various C++ language elements (statements, expressions, variables, etc.) with Domain Specific Languages that are implemented in MPS. This gives an unprecedented level of integration on language-to-language level.
We're happy for other uses and contributions!
Have a look at the [documentation directory](https://github.com/DSLFoundry/mbeddr.cpp/tree/master/documentation/cpp) for the original project documentation.
## Credits
Current maintenance: [Hristina Moneva](https://github.com/xmoneva), [Eugen Schindler](https://github.com/eugenschindler), and [Niko Stotz](https://github.com/enikao).Clean-up into a proper extension of mbeddr and setup of build: [Niko Stotz](https://github.com/enikao) with help from [Kolja Dummann](https://github.com/coolya).
Original implementation by "Eded" team of Eindhoven University of Technology in collaboration with Océ:
- Nicholas Donnelly
- Daan Drijver
- Bart van Helvert
- Julia Hofs
- Daan van der Kallen
- Bart Munter
- Joris Rombouts
- Job Savelsberg
- Bart Smit
- Remco Surtel
- Jelle van der SterSupervised by Önder Babur.
Project managed by Wout de Ruiter and Wesley Brants.
Created for customer Dmitrii Nikeshkin.