RascalMPL

Rascal is a domain-specific language for metaprogramming and language oriented programming, such as static code analysis, program transformation, program generation and implementation of domain-specific languages. It is a general meta language in the sense that it does not have a bias for any particular software language. It includes primitives from relational calculus and term rewriting. Its syntax and semantics are based on procedural (imperative) and functional programming.

Generating [[Integrated development environment]]s

  • Rascal derives Eclipse plugins for any Rascal-implemented software language
  • Rascal derives VScode extensions based on the Language Server Protocol for any Rascal-implemented software language

{{Infobox Software

| name = Rascal

| caption =

| developer = SWAT [http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/] group at the CWI [http://www.cwi.nl]

| latest release version = 0.30.1

| latest release date = 5 July 2023

| operating system = Linux, Unix, Windows, Mac OS X

| genre = program transformation system, program analysis system, language-oriented programming

| license = BSD, EPL

| website = http://www.rascal-mpl.org

}}

See also

References

{{reflist|refs=

{{Citation

|first1=Paul

|title=2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation

|last1=Klint

|first2=Tijs

|last2=van der Storm

|first3=Jurgen

|last3=Vinju

|chapter=RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation

|place=Edmonton, Alberta, Canada

|series=2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation (SCAM)

|year=2013

|pages=168–177

|chapter-url=http://homepages.cwi.nl/~jurgenv/papers/SCAM-2009.pdf

|access-date=8 December 2015

|doi=10.1109/SCAM.2009.28|isbn=978-0-7695-3793-1

|citeseerx=10.1.1.513.2410

|s2cid=206553849

|publisher=IEEE

}}

}}