Skip to content
TiMBuS edited this page Sep 13, 2010 · 33 revisions

Fun: An even happier Joy.

‘Fun’ is an implementation (or some might say bastardization) of the elegant functional stack-based language ‘joy.’ It is mostly a pet project that I spent far too much time on, but will hopefully result in a usable, enjoyable fun language for people to play with.
A lot of the underlying mechanics are implemented, and the language is already fairly usable right now. All that needs doing for the most part is adding built-in functions, and the rest is just tidying up the underlying nuts and bolts.

Installing fun

Fun is hosted on the Parrot Virtual Machine, and as such requires it, along with a C compiler and Perl 5 to compile and run. There are instructions for downloading the source code and compiling Parrot on their website, and it is fairly straightforward.
Once you have downloaded Parrot, make sure you have permissions to the ‘languages’ directory, change to it, and then checkout a copy of fun from github. You will need to parrot to generate the fun makefile which can be done with a full parrot reconfigure or by using

tools/dev/reconfigure.pl --step=gen::languages --languages=fun

The whole process on linux can be done like so:
bq.

svn co https://svn.perl.org/parrot/trunk parrot
cd parrot/languages/
git clone git://github.com/TiMBuS/fun.git
cd ..
perl Configure.pl --languages=fun
make
cd languages/fun
make</pre>

After that, invoke the REPL by using ../../parrot fun.pbc

Project Status

Well, it works…

User Testimonies

bahblah: Fun is absolute…fun!

Fun links

An informal joy tutorial

Clone this wiki locally