Skip to content

alan-if/alan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jenkins Status  Travis CI Status  Coverage Status  License

Alan — the Adventure Language

Alan is a language for developing and running interactive fiction, a.k.a adventure games, i.e. the games are text-based, in the best of worlds reads like interactive literature, and gives you "the best graphics device available — the human brain".

What is this?

This repository is part of the larger ALAN-IF set of repositories with tools, examples and documentation for the Alan system.

This particular repository contains the source code and build environment for the Alan compiler, interpreters and an Alan v2 to Alan v3 source converter.

How to build?

The build system is fairly self-configuring, you should be able to just clone and 'make' on the following platform:

  • Cygwin
  • Msys2, both native and 32/64-bit Windows-compatible
  • Linux, most flavours including WSL (Windows Subsystem for Linux)
  • MacOS/Darwin, both native and with Homebrew GCC

To run unittests you need Cgreen, and to run all the regression tests you need a Java runtime.

What's in the box?

From the repo you can build

  • command line compiler and interpreter for your OS
  • GLK-based interpreter, you need a GLK-library
  • Gargoyle plug-in, which can be used instead of the plug-in that comes with Gargoyle

And if your environment allows cross-compilation to Windows you can build

  • WinArun, a WindowsGLK based GUI-interpreter
  • WinAlan, a Windows "GUI" compiler (but a better choice is probably the AlanIDE)

To cross-compile (Cygwin, MSYS2 and most Linuxen can be made to do this) you have to install the cross-compilation tools (sudo apt install mingw-w64 or equivalent) and a matching iconv (sometimes a separate package like win-iconv-mingw-w64-dev).

What's missing?

A lot probably, but I wanted this Readme to exist as quickly as possible. Please, join, fork, pull request or file issues if there is something you want included here.

Useful Links