Category:Rascal

From Rosetta Code
Revision as of 15:58, 29 May 2012 by rosettacode>TMR
Language
Rascal
This programming language may be used to instruct a computer to perform a task.
Official website
Execution method: Interpreted
Garbage collected: Yes
Parameter passing methods: By value
Type safety: Safe
Type strength: Strong
Type expression: Partially implicit
Type checking: Dynamic
See Also:


Listed below are all of the tasks on Rosetta Code which have been solved using Rascal.

Rascal is a domain specific language for source code analysis and manipulation a.k.a. meta-programming. It is currently being developed and tested at CWI. No formal release has been made yet, but alpha quality "previews" are available on the Download page.[1]

Facts

Here's a list of facts about Rascal that you might find interesting:

  1. Rascal is the successor of the ASF+SDF Meta-Environment.
  2. Like ASF+SDF, it fully supports embedded concrete syntax fragments for "syntax safe" matching and construction of source code.
  3. Like StringTemplate, it supports recursive string templates for code generation in the absence of a context-free grammar.
  4. Tobias Baanders designed the Rascal logo.
  5. It employs a parsing architecture inspired by Scott and Johnstone's GLL parsing.
  6. It's fundamental run-time data representation and manipulation API (pdb.values) is a part of Eclipse IMP.
  7. PDB.values was inspired (mostly) by the ATerm library and RScript.
  8. We used Rascal itself to transform its Java-based interpreter from the Visitor design pattern to the Interpreter design pattern automagically.

References