Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/usethesource/rascal-language-servers
An LSP server for Rascal which includes an easy-to-use LSP generator for languages implemented in Rascal, and an interactive terminal REPL.
https://github.com/usethesource/rascal-language-servers
domain-specific-language dsl generator language-server-protocol lsp-server rascal-mpl vscode-extension vscode-language
Last synced: 6 days ago
JSON representation
An LSP server for Rascal which includes an easy-to-use LSP generator for languages implemented in Rascal, and an interactive terminal REPL.
- Host: GitHub
- URL: https://github.com/usethesource/rascal-language-servers
- Owner: usethesource
- License: bsd-2-clause
- Created: 2020-11-26T11:16:09.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-12-13T15:23:25.000Z (11 days ago)
- Last Synced: 2024-12-15T14:02:32.139Z (10 days ago)
- Topics: domain-specific-language, dsl, generator, language-server-protocol, lsp-server, rascal-mpl, vscode-extension, vscode-language
- Language: Java
- Homepage:
- Size: 23.5 MB
- Stars: 16
- Watchers: 18
- Forks: 9
- Open Issues: 113
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Rascal - Language Servers
This project encapsulates both the Language Server Protocol (LSP) implementation
of Rascal itself, and the LSP "generator" that can instantiate fresh LSPs for
languages defined in or implemented in Rascal.Currently we provide installers and client-specific features for VScode and
no others.This project is in beta stage; under development but used regularly by a group of early adopters.
The VScode extension can be found [here](https://marketplace.visualstudio.com/items?itemName=usethesource.rascalmpl).### Origin story
* 2022 many contributions come from http://SWAT.engineering next to CWI SWAT.
* *2021--...* You can consider this project an evolution of
the [https://github.com/usethesource/rascal-eclipse](rascal-eclipse) project, but it offers more and better features.
On the other hand the rascal-eclipse project is still much more mature.
* * Includes "first level" generation of IDEs from language descriptions, just-like before
* *2009--...* Rascal-eclipse merged from the Eclipse IMP project and the Rascal project, as an evolution of the earlier ASF+SDF Meta-Environment 2.x
* Rascal merges the functionality of ASF, SDF and RScript into a comprehensive and cohesive single language
* Scannerless top-down parsing
* Vallang extends to concepts of the ATerm library to include (immutable) sets and indexed relations
* Includes "first level" generation of IDEs from language descriptions
* *1998-2008* The ASF+SDF Meta-Environment 2.x was a language workbench based on:
* SDF - declarative syntax definition, scannerless GLR parsing
* ASF - conditional rewrite rules over concrete syntax
* RScript - relational calculus DSL for fact analysis
* ToolBus - strict separation of computation from coordination based on ACP
* ATerm library - maximal sharing of terms and automatic garbage collection
* A rewrite of its pre-decessor (see below) in C, Java, T-Script and ASF+SDF
* It offers the generation of interactive programming environments (IDEs)
* *1984-1998* That environment was an evolution of the earlier ASF+SDF system built in Centaur Lisp
* Generating Interactive Programming Environments from language definitions
* Incremental context-free general parser generation
* Incremental term rewriting engines[![CI](https://github.com/usethesource/rascal-language-servers/actions/workflows/build.yaml/badge.svg)](https://github.com/usethesource/rascal-language-servers/actions/workflows/build.yaml)