Link Search Menu Expand Document

Installation

This page lists the software required for using the various features of the CBS IDE, and gives links to sites from where the software can be downloaded.

Contents

CBS IDE

The CBS IDE supports generating editors and translators for languages from their specifications in the CBS frameowrk.

Spoofax

The CBS IDE is implemented as a language project in the Spoofax language workbench.

Sunshine

You can run Spoofax menu actions in batch mode using the Sunshine JAR command line utility.

(Sunshine is not needed for interactive use of Spoofax.)

MacOS Catalina and Big Sur

To build editors and translators generated by the CBS IDE:

  • Install Docker
  • Install GNU coreutils
  • Open the Spoofax app from a terminal (instead of double-clicking its icon)

CBS language project

Download the prototype branch of the cbs-beta-tools repository.

The cbs-beta-tools repository is currently private. To request access, email your name, affiliation, and GitHub name to plancomps@gmail.com.

  • Import CBS into Spoofax as a Maven project. The version number in pom.xml and .mvn/extensions.xml needs to match the Spoofax version number (2.5.16).

  • In case of Maven errors:

    • Right-click the project
    • Select Maven > Update project...
    • Check Force Update of Snapshots/Releases
    • Click OK
  • Build the CBS language project (it can take 3–4 minutes).

CBS-beta repository

The CBS-beta repository includes collections of funcon definitions as projects. These are reused in language specifications using symbolic links.

The repository also contains illustrative language specifications as projects. These projects are independent of each other.

You can browse all specifications in the CBS-beta repository online on the CBS-beta website, as source files, web pages, and PDFs. For local browsing, download the math branch of the repository. To serve the web pages locally, install the Jekyll static website generator.

Funcon interpreters

Apart from running funcon terms directly, funcon interpreters can run programs via their translation to funcons.

Install Funcons-Tools 0.2.11.

Installation requires the Haskell and Cabal toolchain.

LaTeX

The CBS IDE can generate LaTeX from (literate) CBS specifications. To produce PDFs, install TeX Live, or use an online LaTeX editor such as Overleaf.