Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vaclav/mpscs
MPS C# implementation
https://github.com/vaclav/mpscs
Last synced: 3 months ago
JSON representation
MPS C# implementation
- Host: GitHub
- URL: https://github.com/vaclav/mpscs
- Owner: vaclav
- License: apache-2.0
- Created: 2019-03-12T20:03:01.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-04-05T12:58:38.000Z (over 1 year ago)
- Last Synced: 2024-07-30T19:27:24.999Z (3 months ago)
- Language: JetBrains MPS
- Size: 7.28 MB
- Stars: 29
- Watchers: 7
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- mps.rocks - CsBaseLanguage - An implementation of the C# 5.0 language. ([Built with MPS](#built-with-mps) / Languages)
README
# CsBaseLanguage
*CsBaseLanguage* is a project of the C# language implementation as a
[JetBrains MPS](https://www.jetbrains.com/mps/)
base language (for further information about *base languages*, see the
[MPS User's Guide](https://www.jetbrains.com/help/mps/mps-user-s-guide.html)).The C# base language is distributed as a JetBrains MPS plugin. You can obtain it via
the JetBrains MPS Marketplace from your installed MPS.## Supported C# Features
The C# base language is based on a subset of the C# 5.0 specification. Detailed specification
can be found [here](./doc/cs_specification.md).Further references of C# are understood to reference this specified version.
## Repository vs. Plugin
This repository contains the most up-to-date version of the C# base language. It is intended for
the C# base language developers, not for its users. The TextGen aspect is auto-generated from the
Editor aspect. To prevent inconsistency, the TextGen is not included in this repository and must
be manually generated.The plugin distributed via JetBrains MPS Marketplace contains a full binary version of the C#
base language, which is time-to-time generated from this repository.Users who do not want to participate on the C# base language's development are
expected neither to use this repository nor to read the documentation contained in
it. **The language should be close enough to the standard C# so no documentation for
users of the plugin is necessary (and therefore is not provided). The documentation in
this plugin is intended for the plugin's developer community**.## Documentation
This is a list of available documentation of the C# base language.
C# base language overview and design:
- [Repositories Diagram]
- [Overview of related projects](./doc/related_projects_overview.md)
- [Structure aspect design notes](./doc/structure_design.md)
- [Editor aspect design notes](./doc/editor_design.md)
- [Testing](./doc/testing.md)
- [External libraries support](./doc/library_stubs.md)Checklists and tutorials:
- [Creating your first C# based MPS program](./doc/tutorial_program.pdf)
- [Creating your first C# based DSL](./doc/tutorial_dsl.pdf)
- [Building the C# base language](./doc/tutorial_build_csbaselanguage.pdf)
- [Usage manual for advanced MPS users](./doc/usage_advanced_users.md)
- [Checklist for keeping the base language up-to-date with MPS version](./doc/mps_upgrade.md)
- [How to run tests](./doc/testing.md)If you have any troubles with the basic tutorials, see the
[advanced tutorial](./doc/usage_advanced_users.md) for more information.Other documentation:
- [LangDoc plugin usage](./doc/langdoc_plugin.md)## Related Projects
- [Simple examples of usage of the C# base langauage](https://github.com/Zeman-Dalibor/mpscs-examples)
- [CsStdLibrary](https://github.com/wirthma/CsStdLibrary): Stubs for the C# standard library
- [LangDoc](https://github.com/vaclav/LangDoc): an MPS plugin allowing better documentation of a
language
- [TextGenGen](https://github.com/Kripner/textGenGen): an MPS plugin for automatic generation of the
TextGen aspect from the Editor aspect
- [CsStubsGenerator](https://github.com/wirthma/CsStubsGenerator)
([StubsGenerator](https://github.com/wirthma/StubsGenerator)),
[DotNetLibraryExporter](https://github.com/Zeman-Dalibor/DotNetLibraryExporter):
MPS plugins and non-MPS tools for generation of C# library stubs## Target Platform
The C# base language is expected to work only in the context of the JetBrains MPS workbench.
It has been primarily tested on Windows 10, 64 bit and Windows 7, 64-bit. It should work on Unix-like platforms
as well, but maybe with minor problems, which should be, however, easily solvable by the
user.## Major Version Release Log
**Version 1.0**, 11/2019
- The first version of the C# base language[Repositories Diagram]: https://www.draw.io/?lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=Repositories%20Diagram#R7VrbcqM4EP0aPzoFyFz8GNuZTKqS3al1aiaeNxlkrAxGXiE7eL9%2BWyAwNyc4IQmztSRVRi3RSN3ntLqBAZpu4muOt%2Bs75pFgYGhePECzgWHoxkiDHyk5pBJbt1KBz6mnBh0Fc%2FoPUUJ1nb%2BjHolKAwVjgaDbstBlYUhcUZJhztlTediKBeW7brFPaoK5i4O69Af1xFpJLU07dnwl1F%2BrW4%2Bzjg3OBitBtMYeeyqI0NUATTljIj3bxFMSSONldkmv%2B3KiN58YJ6Foc8HhmtwsDnfz2%2B%2F70H1cPP756MdDI9Wyx8FOLXhgWAHom3h0LyctDsoS1t87OdPJioViGCV%2BuoQBMAPw9eTYD2e%2B%2FN1sIzcakhhvtgE4UGmF6SWK0zHKMPk9DJgxOBYak6c1FWS%2Bxa7seQJsgWwtNgG0dDjF0Tb19orGxJPTokEwZQHjiSLkmcTxRiCPBGe%2FSKHHMZbIstRCFN7ActlkivZUJt4TLkhcECn7XhO2IYIfYIjqRabytQK7maH%2FqQCdDA%2FrAmpyIVZw9XPdR4%2FCiXLqGQ5GnTi45t1pNBfeKad2oP%2BWLjmWy%2B89bCK4GQ39ewa3mnWEo9GojCNkjC%2FMz0bSqIakWxz6M%2Bb2yh1dsNguW9%2FpgfHNmvFhMeKahPD%2FX7O%2FjvpnfwPVrexBoqCaIQuluTnbhZ40ZBIIGBdr5rMQB7csiQ7S5I9EiIMyGN4JVnYIial4KJwvpCpYfdqaxUpz0jioRuqbLDkxGryIibNym7xouQ5Zrp7zWsR23CXPGEZlcwJzn4iX9yFptGcxwEmABd2Xs6%2B3uPOvyXX09Wf84%2BGe3Xx%2FNOyb%2B9G8Ie0BHhGOBam5WfKswpqA%2BiGcu2AsApacSGhTSBkvVceGel6Q4IHAPoeXiSrpqi2joUjWYk4G5kwaHk0CvCTBBLu%2F%2FAQ%2BBfeskqOBZLJdGKfBgVA2Tk29IT98Ftk1fuY5tVpAKW1t4q12MRqViDtUelr7VKn%2BJs1UiMcZ%2FbPdsKKBrVYRYK%2BKiXyCr2e9VYOJzHt2yzydXfIsJ1H4AZf0KRq%2FR3Jiox4mJ3m8%2Bpj4fIzJi0JPc3wGS%2FND4SLZXBT7jpclrdNx%2FfVR2m4Zpa3PitLPzbpAv%2F%2FJ18PcSB9%2FCPe65IPTkg%2B60ytCODVClIrtlAwzJv4g4oUCunbVVbwFnxD%2B0RU3JDiG25icetbSMj%2BKV%2BPKkxun4cGN2cQq891YpTU4u%2BqF0LuUzzhlMhrgKKLuqe3KMs7YsKDxjXAK65DpbSI7v6Tokq5mW7q2ZGvBq01OzWRvzFutcto6MvNYnelIF64uKz66rWjS9YoqraYqtU1N1Ssy4caCKSNU98%2BJj4VXq8DTl3LsZPlVKdPOLcdy2r%2B5HBtCPWZlG1i3FVlWzSutul1F4%2FuVZHoTEs8Mi12GptFvGZr0cXm7M%2BxXxybYOy9shJChW7ph645dRhyyzAvNHgMSx8jUHAuh94pbzWY3a%2BjoVSKqt4SP0RI%2Bb8WFXs2DHK0VLDrzV43dyXvEOsU%2Fsa4rh%2FXadjCdyg2hm7TUMHv4rCV7g%2F8b1XuoXzTLPxL4JJY17Zm9fZvxhuDatszv12MvvV7mP9zdguALDervJ8peeiEaVotvU%2F41lnHJUQ9u6dEQFDsIduNKwYTM1sHOOj%2FWQfP47U1KrOMXTOjqXw%3D%3D