Skip to content

Commit 7bab59b

Browse files
committed
brought IDE construction up to reality
1 parent 5235948 commit 7bab59b

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

courses/Recipes/BasicProgramming/IDEConstruction/IDEConstruction.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,21 +16,22 @@ Extend an IDE with interactive, language-specific, features (Eclipse or VSCode)
1616

1717
Meta-programs become most useful, when they are integrated with an Interactive Development Environment (IDE).
1818

19-
A Rascal program running inside Eclipse can access many of the services provided by Eclipse such as syntax highlighting,
19+
A Rascal program running inside a [language server protocol](https://microsoft.github.io/language-server-protocol/) server that is part of the VScode IDE can service most of the typical IDE features such as syntax highlighting,
2020
outlining, documentation hovering and much more. Similarly Rascal programs running inside VScode have access to all features
21-
of the [language server protocol](https://microsoft.github.io/language-server-protocol/), and more.
21+
of the , and more.
2222

23-
For Eclipse, Rascal uses the services of the IDE Meta-tooling Platform, or [IMP](http://www.eclipse.org/imp/) for short, a collection of API and tools to support constructing IDEs for programming languages and domain specific languages.
24-
25-
For VScode, Rascal builds on top of the [language server protocol](https://microsoft.github.io/language-server-protocol/) for its own services, and for services that
26-
Rascal programmers create for their own languages.
23+
Rascal builds on top of the [language server protocol](https://microsoft.github.io/language-server-protocol/) for its own services, and for services that
24+
Rascal programmers create for their own languages. By default Rascal can instantiate an LSP server for VScode, but there is nothing in the way of using other editors that have LSP clients.
2725

2826
To instantiate an IDE for a language implemented using Rascal, use the following steps:
2927

3028
* Define the grammar for the language.
3129
* Define a parse function for the language.
32-
* Register the language with Eclipse or VScode.
30+
* Register the language with the LSP/VScode, using ((util::LanguageServer))
31+
32+
You find more information on these topics [here]((util::LanguageServer))
33+
34+
> **Notice** We deprecated and then archived the [rascal-eclipse](http://github.com/usethesource/rascal-eclipse) plugin, which offered Rascal IDE support and a IDE plugin generated for DSLs. This functionality is now provided by the [rascal-language-servers](http://github.com/usethesource/rascal-language-servers) project.
3335
34-
You find more information on these topics in the [Rascal Eclipse](http://github.com/usethesource/rascal-eclipse) and [Rascal Language Servers](http://github.com/usethesource/rascal-language-servers) documentation.
3536

3637

0 commit comments

Comments
 (0)