Copyleft or permissively licensed language implementations?

I’m looking for a tool for implementing parser-based (not CYOA) interactive fiction that meets the following requirements:

  • The source code of the compiler has been released to the public.
  • The source code of the compiler is available under permissive or copyleft licensing terms.
  • The source code of the compiler must be written in a language for which at least one copyleft or permissively licensed implementation exists.
  • The compiler will run on Linux/x86 and Linux/amd64 without using WINE. (Running on Windows is a bonus.)
  • The compiler can be rebuilt on Linux/x86 and Linux/amd64 without using WINE.
  • The compiler’s output must run under a cross-platform environment that has at least one copyleft or permissively licensed implementation. (Examples of acceptable output: Z-machine or GLULX story files; Java jars; Javascript/Lua/Perl/Python/Ruby programs.)
  • The stock parser is at least as good as Zork I (and preferably at least as good as HHGttG).

Things that don’t fit the bill:

  • Inform 7 and ADRIFT: closed source.
  • Inform 6, TADS, and HUGO: source code licence does not permit the creation of derivative works.
  • Quest: implemented in Visual Basic, a language for which (as far as I am aware) no copyleft or permissively licensed implementation exists.

Anyone got any suggestions, or am I going to have to roll my own to get something that fits the bill?

Quest is a mix of VB and C#, but it doesn’t run in Mono currently as far as I know. For your requirements something like pyf might work. Systems like that will be much less field-tested than the ones you’ve ruled out though.

(edited after I looked at Codeplex myself)

The site has a link to the codeplex site housing Quest’s source, and it took me about ten seconds to find files with .vb extensions :slight_smile:

Or create a Quest game and export to HTML & JavaScript - more likely to be adaptable to run under Mono (if you made a CLI version, the WPF GUI certainly won’t run under Mono).

Curveship? I’ve never been able to make head nor tail of it, but I believe it’s Python-based and copyleft.

I think Inform 6 is actually your best bet. The Inform 6 compiler for Inform 7 is available under the Artistic License 2.0.

Ooh. I’d managed to miss the detail about the licensing change for I6N. Neat.

Thanks, dfabulich!

Good to know! What about the license of the Inform standard library?

The copyright notices at the top of the files comprising Inform standard library 6/11 say:

“Copyright Graham Nelson 1993-2004 but freely usable (see manuals)”

and there is no Inform 6 manual with a cover date post-dating the adoption of the option to use the Artistic License 2.0 with the Inform 6 compiler.

According to the Standard Rules are available under an Artistic License, but I think that’s just the I7 version.

I agree that this is all a bit of a mess, but I’m pretty sure the entire I6 standard library is supposed to be available under Artistic License.

In the worst case, I suppose you could compile the I7 standard rules to I6N under AL2, and then use the resulting output in an I6 game. :slight_smile:

ah, yes: the gnu weenie demanding copyleftism rule for life…

they don’t seem to get it that the Concept of Ultimate Software Freedom (TM by FSF) has its very roots on classic software such as Colossal Cave, itself freely shared and modified in the 70’s

Graham said “freely usable”. That’s enough to me

I think so too.

namekuseijun, you are not responding to anybody in this thread. Nobody has demanded a GNU license on anything. Please do not jump into threads just to show off how contemptuous you are.

I know the Inform6 compiler is covered by the Artistic License. I’m sure the Library is too, but I have yet to get Graham’s attention despite repeated emails asking for clarification.

Aetheria Game Engine (you can find descriptions of the system in this forum) is full released under BSD and runs in windows, linux and osx.


some time ago I was in the same situation
looking for some OS IF to fiddle with.
The license change of Inform 6 surprises me a lot.
It didn’t look like changing at all at the time.

Apart from working on my own system (pre pre pre alpha or so and no time for it)
I used ADL (
which is GPLv2 but a very old code base in plain C (Compiler + Interpreter).
Can’t tell you how crossplatform the interpreter is thouth,
I’m only using it on Linux (but I guess it works everywhere where gcc works).

Matthias Kievernagel

Earlier today I received an email from Graham Nelson confirming that both the Inform6 compiler and Inform6 library may be distributed under the Artistic License (version 2.0). The user also has the option of using the old DM4 license. I have updated to reflect this.

Ah, good news.