Languages targeting parrot ^

Any language that targets parrot should be listed here. In addition, any languages bundled with parrot that work with the unified test suite will have their test results listed under the smokes marked 'languages' at http://smoke.parrotcode.org/smoke/.

Amber for parrot ^

Author

Roger Browne

Description

Scripting language inspired by Eiffel and ruby.

Status

Incomplete - but all examples and test cases are working.

Last verified with parrot version

0.3.1

Location

http://xamber.org/

BASIC/compiler ^

Author

Clint Pierce, Will Coleda (work with parrot 0.3.0+)

Description

BASIC Compiler

Status

Most of the samples work.

Last verified with parrot version

0.3.0

Location

languages/BASIC/compiler

BASIC/interpreter ^

Author

Clint Pierce

Description

BASIC Interpreter written in pure Parrot

Status

Broken - probably due to recent deprecations.

Last verified with parrot version

0.0.11

Location

languages/BASIC/interpreter

bc ^

Author

Bernhard Schmalhofer

Description

Based on ANTLR and Python. ANTLR is needed only for maintainance, for generation of Python runtime files.

Status

Very simple arithmetic expressions are working. Some test failures

Last verified with parrot version

0.3.0

Location

languages/bc

befunge ^

Author

Jerome Quelin

Description

Functioning -93 interpreter (input routines may be funky).

Status

Broken with recent deprecation of push[simp]/pop[simp]. Samples working, README explain how to build/use. (waiting for Parrot objects for a befunge-98 version).

Last verified with parrot version

0.0.11

Location

languages/befunge

bf ^

Author

Leon Brocard

Description

bf

Status

Passes all tests.

Last verified with parrot version

0.3.1

Location

languages/bf

Cardinal ^

Author

Mark Spashett

Description

Implementation of Ruby.

Status

Not active.

Last verified with parrot version

Unknown

Location

http://rubyforge.org/projects/cardinal/

Cola ^

Author

Melvin Smith

Description

Java like language with some hybrid Perl features like regex operators planned.

Status

Functioning, all samples working, lacks IO routines

Last verified with parrot version

0.0.11

Location

languages/cola

Common Lisp ^

Author

Cory Spencer

Description

Aspires to implement a significant subset of the Common Lisp language.

Status

broken due to recent deprecations

Last verified with parrot version

0.1.2

Location

languages/lisp

conversion ^

Author

Unknown

Description

An early attempt to support grammars in Bachus-Naur-Format

Status

Unknown

Last verified with parrot version

Unknown

Location

languages/conversion

forth ^

Author

Dan Sugalski

Description

forth

Status

Unknown

Last verified with parrot version

0.0.13

Location

languages/forth

Jako ^

Author

Gregor Purdy

Description

C/Perl like language, first compiler for Parrot

Status

Functioning, although not all examples work. Calling conventions and NCI have changed since the Jako subroutine and NCI code generation was written, causing some breakage.

Last verified with parrot version

0.0.11

Location

languages/jako

lazy-k ^

Author

Leopold Tötsch

Description

lazy-k is a pure functional programming language according to the SKI calculus.

Status

Unknown

Last verified with parrot version

0.2.2

Location

http://homepages.cwi.nl/~tromp/cl/lazy-k.html

Lua for Pirate (formerly known as Pirate, a new name is sought) ^

Author

Klaas-Jan Stol

Description

Making Lua work on Parrot

Status

Unknown

Last verified with parrot version

Unknown

Location

http://members.home.nl/joeijoei/parrot/

Parrot m4 ^

Author

Bernhard Schmalhofer

Description

Port of GNU m4 to PIR.

Status

Functioning for handcrafted test cases. Eval compiler and loading frozen state are currently broken. Far from complete. Revision 0.0.14

Last verified with parrot version

0.3.1

Location

languages/m4

miniperl ^

Author

Jeff Goff

Description

miniperl

Status

Broken, last update in 2002. Should probably be removed.

Last verified with parrot version

Unknown

Location

languages/miniperl

Ook ^

Author

Jerome Quelin

Description

Functioning compiler targeting pasm.

Status

Samples working, README explain how to build/use.

Last verified with parrot version

0.3.0

Location

languages/ook

OpenComal ^

Author

Unknown

Description

Compiler emiting parrot being added to interpreter

Status

Under development; nowhere near anything yet

Last verified with parrot version

0.0.11

Location

http://www.josvisser.nl/opencomal

Parakeet ^

Author

Michel Pelletier

Description

Parakeet is a Forth that is extremely machine specific to the Parrot VM. Parakeet also has a lot of features not found in standard Forth, like local variables, nested words and classes and (as a result) nested compile-time and run-time lexical word, class and variable scopes.

Status

Under development; Broken in respect to recent (and upcoming) DEPRECATED items

Last verified with parrot version

0.0.11

Location

languages/parakeet

parrot_compiler ^

Author

Bernhard Schmalhofer played with it.

Description

An example on how the builtin PASM, PIR and PAST compilers can be used from within PASM and PIR programs.

Status

Working. Part of languages smoke testing.

Last verified with parrot version

0.3.1

Location

languages/parrot_compiler

Pint ^

Author

Alan Knowles

Description

An experimental implementation of PHP

Status

This project has been abandoned. Any takers?

Last verified with parrot version

Unknown

Location

http://www.akbkhome.com/svn.php/PintCompiler http://www.akbkhome.com/blog.php/View/44/Latest_in_Vapourware_PintCompiler__dbdo.html

Pugs ^

Author

Autrijus Tang, et al.

Description

Perl6 compiler written in Perl6 and Haskell with multiple backends

Status

Basic IO and control flow elements; mutable variables; assignment.

Last verified with parrot version

0.2.2

Location

http://pugscode.org/

Punie ^

Author

Allison Randal

Description

An implementation of Perl1, implemented in PIR with PGE

Status

There are some TODO thar are not working yet. Only the 'print 1;' test is expected to work, and does so.

Last verified with parrot version

0.3.1

Location

languages/punie

Python ^

Author

Michal J Wallace

Description

python

Status

Mostly working except for classes/exec/import. For licensing reasons, not in parrot's svn tree.

Last verified with parrot version

0.0.11

Location

http://pirate.tangentcode.com/

regex ^

Author

Steve Fink

Description

regex

Status

Working but fairly minimal. Part of languages smoke testing, a lot of tests failing.

Last verified with parrot version

0.3.1

Location

languages/regex

Ruby ^

Author

Jeff Goff

Description

Ruby

Status

Broken. Last updated in 2002. Should probably be removed.

Last verified with parrot version

Unknown

Location

languages/ruby

Span ^

Author

Matt Kennedy

Description

Span can be most concisely described as Smalltalk for C++, C#, and Java programmers. It features an object system modeled on the Smalltalk object system and a language syntax designed to be easy to learn for developers of C-like languages.

Status

Working.

Last verified with parrot version

0.0.11

Location

http://homepage.mac.com/matt.kennedy/Span

Scheme ^

Author

Jeffrey Goff, Juergen Boemmels

Description

Scheme

Status

Functioning, as far as implemented. Lists and functions are working but many functions are missing implementation. 70% pass ratio due to recent deprecations.

Last verified with parrot version

0.3.0

Location

languages/scheme

Tcl ("partcl") ^

Author

Will Coleda, Matt Diephouse, et al.

Description

A from scratch implementation of a Tcl 8.5 compiler in parrot.

Status

Some tests failing due to unimplemented unicode features. Passes about 10% of *tcl*'s test suite (modulo clock). Still many builtins to implement.

Last verified with parrot version

0.3.1

Location

languages/tcl

unlamba ^

Author

Leopold Tötsch

Description

unlambda is a pure functional programming language with mostly eager evaluation following the SKI calculus (+ a few extensions)

Status

Bus error (OS X only?)

Last verified with parrot version

0.2.2

Location

http://www.madore.org/~david/programs/unlambda/

URM ^

Author

Marcus Thiesen

Description

URM

Status

Functioning, all examples working. Language standard is stable and not expected to change soon.

Last verified with parrot version

0.3.1

Location

languages/urm

YAL ^

Author

Leopold Tötsch

Description

Yet Another Language

Status

It's mainly intended to test an AST interface and for checking that code generation plays nicely together with Parrot opcodes.

Last verified with parrot version

0.0.13

Location

http://toetsch.at/yal/

Zcode ^

Author

Amir Karger, Leopold Tötsch

Description

Infocom's Z-machine

Status

25 out of 66 Z3 opcodes all or mostly done. A long way from Zork. Broken with recent deprecations.

Last verified with parrot version

0.2.3

Location

languges/Zcode


parrot