csabahruska / flrc-lib

Pillar compiler, Pillar runtime, garbage collector.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Libraries for the Functional Language Research Compiler Build Status

This repository contains the following libraries and tools that are part of the overall FLRC tool-chain. Strictly speaking, they are a pre-requisite to using FLRC, but not for compiling FLRC. But due to installation path dependencies, flrc-lib should be installed before flrc.

  1. A translator from Pillar to C++ (pilla2c).

  2. Pillar Runtime (prt).

  3. Pillar Toolkit (ptkfuture).

  4. Garbage collector (tgc), and its pillar interface (pgc).

  5. Bash scripts (pilicl and pilink) to help compile and link Pillar programs.

Installation

All released code has only been tested to work on x86 64-bit Linux distros, although they were originally written for x86 32-bit Windows.

The installation uses the typical autoconf/automake facilities on Linux. It also requires a C/C++ compiler (gcc or icc), and an assembler (nasm) to compile.

To install:

sh bootstrap.sh
./configure --prefix=${PREFIX}
make && make install

If successful, all related libraries and scripts will be installed under the given path ${PREFIX}.

Usage and FAQ

These libraries and tools are mostly intended to be used by FLRC. Please use the issue track if you have questions.

Related Publication

Todd Anderson, Neal Glew, Peng Guo, Brian T. Lewis, Wei Liu, Zhanglin Liu, Leaf Petersen, Mohan Rajagopalan, James M. Stichnoth, Gansha Wu, and Dan Zhang. 2007. Pillar: A Parallel Implementation Language. In Languages and Compilers for Parallel Computing, Vikram Adve, María Jesús Garzarán, and Paul Petersen (Eds.). Lecture Notes In Computer Science, Vol. 5234. Springer-Verlag, Berlin, Heidelberg 141-155. (PDF).

Todd A. Anderson. 2010. Optimizations in a Private Nursery-based Garbage Collector. In International Symposium on Memory Management 2010. (PDF).

License

This software carries a BSD style license. See LICENSE_INFO for more information.

About

Pillar compiler, Pillar runtime, garbage collector.

License:Other


Languages

Language:C++ 85.7%Language:C 5.1%Language:Assembly 4.3%Language:Yacc 3.7%Language:LLVM 0.6%Language:Makefile 0.2%Language:Shell 0.2%Language:Objective-C 0.1%Language:M4 0.1%