Glulx: Difference between revisions
Cibersheep (talk | contribs) (→Implementations: Used wikitable format, changed to alphabetical order) |
Cibersheep (talk | contribs) |
||
Line 90: | Line 90: | ||
==Status of Interpreters== | ==Status of Interpreters== | ||
This table is up to date as of July 2009, at which time the most recent Glulxe was 0.4.4, the most recent Glulx VM was 3.1.1, and the most recent Glk was 0.7.0. It includes interpreters for major platforms only. | This table is up to date as of July 2009, at which time the most recent [[Glulxe]] was 0.4.4, the most recent [[Glulx]] VM was 3.1.1, and the most recent [[Glk]] was 0.7.0. It includes interpreters for major platforms only. | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 104: | Line 104: | ||
|- | |- | ||
| [[Filfre]] | | [[Filfre]] | ||
| Windows | | [[Windows]] | ||
| Jimmy Maher | | [[Jimmy Maher]] | ||
| 0.981 | | 0.981 | ||
| 07/08 | | 07/08 | ||
Line 114: | Line 114: | ||
|- | |- | ||
| [[FyreVM]] | | [[FyreVM]] | ||
| .NET/Silverlight | | [[.NET]]/[[Silverlight]] | ||
| Textfyre | | [[Textfyre]] | ||
| n/a | | n/a | ||
| 3/09 | | 3/09 | ||
Line 123: | Line 123: | ||
| n/a | | n/a | ||
|- | |- | ||
| [[ | | [[Gargoyle]]<sup>2</sup> | ||
| Windows, Unix | | [[Windows]], [[Unix]] | ||
| Tor Andersson | | [[Tor Andersson]] | ||
| 2008-12-25 | | 2008-12-25 | ||
| 12/08 | | 12/08 | ||
Line 134: | Line 134: | ||
|- | |- | ||
| [[Gelek Vanilla]] | | [[Gelek Vanilla]] | ||
| Ubuntu Touch | | [[Ubuntu Touch]] | ||
| Joan CiberSheep | | Joan [[CiberSheep]] | ||
| 1.5.5 | | 1.5.5 | ||
| 14/May/19 | | 14/May/19 | ||
Line 144: | Line 144: | ||
|- | |- | ||
| [[Git]] | | [[Git]] | ||
| Windows, Unix | | [[Windows]], [[Unix]] | ||
| Iain Merrick | | [[Iain Merrick]] | ||
| 1.2.4 | | 1.2.4 | ||
| 4/09 | | 4/09 | ||
| ?? | | ?? | ||
| 3.1.1 | | 3.1.1 | ||
| Windows Glk 1.46 | | [[Windows Glk]] 1.46 | ||
| 0.7.0 ?? | | 0.7.0 ?? | ||
|- | |- | ||
| [[iphonefrotz]] | | [[iphonefrotz]] | ||
| iOS | | [[iOS]] | ||
| Craig Smith | | [[Craig Smith]] | ||
| 1.7 | | 1.7 | ||
| 21/8/14 | | 21/8/14 | ||
Line 165: | Line 165: | ||
| [[Quixe]] | | [[Quixe]] | ||
| Web | | Web | ||
| Andrew Plotkin | | [[Andrew Plotkin]] | ||
| 1.0.1 | | 1.0.1 | ||
| 29/7/10 | | 29/7/10 | ||
Line 174: | Line 174: | ||
|- | |- | ||
| [[Spatterlight]] | | [[Spatterlight]] | ||
| Mac OS X | | [[Mac OS X]] | ||
| Tor Andersson | | [[Tor Andersson]] | ||
| 0.5.0 | | 0.5.0 | ||
| 6/08 | | 6/08 | ||
Line 183: | Line 183: | ||
| 0.7.0 | | 0.7.0 | ||
|- | |- | ||
| [[Thunderword]] | | [[Thunderword]]<sup>3</sup> | ||
| Android | | [[Android]] | ||
| Stephen Gutknecht | | [[Stephen Gutknecht]] | ||
| pre-release | | pre-release | ||
| 3/11/17 | | 3/11/17 | ||
Line 194: | Line 194: | ||
|- | |- | ||
| [[Windows Glulxe]] | | [[Windows Glulxe]] | ||
| Windows | | [[Windows]] | ||
| David Kinder | | [[David Kinder]] | ||
| 0.4.4.136 | | 0.4.4.136 | ||
| 03/09 | | 03/09 | ||
| 0.4.3 | | 0.4.3 | ||
| 3.1.0 | | 3.1.0 | ||
| Windows Glk 1.36 | | [[Windows Glk]] 1.36 | ||
| 0.7.0 | | 0.7.0 | ||
|- | |- | ||
| [[Zag]] | | [[Zag]] | ||
| Java | | [[Java]] | ||
| Jon Zeppieri | | [[Jon Zeppieri]] | ||
| 12.0.0 / 1.06 | | 12.0.0 / 1.06 | ||
| 3/05 | | 3/05 | ||
Line 213: | Line 213: | ||
| nonstandard | | nonstandard | ||
|- | |- | ||
| [[ | | [[Zoom]]<sup>1</sup> | ||
| Mac OS X, Unix | | [[Mac OS X]], [[Unix]] | ||
| Andrew Hunter | | [[Andrew Hunter]] | ||
| 1.1.4.1 | | 1.1.4.1 | ||
| 6/09 | | 6/09 | ||
| 0.4.2? | | 0.4.2? | ||
| 3.1.0 | | 3.1.0 | ||
| CocoaGlk 1.0.7 | | [[CocoaGlk]] 1.0.7 | ||
| 0.7.0 | | 0.7.0 | ||
|} | |} | ||
<sup>1</sup> Zoom users can choose either standard Glulxe or the faster Git to interpret Glulx | <sup>1</sup> [[Zoom]] users can choose either standard [[Glulxe]] or the faster [[Git]] to interpret [[Glulx]] works. | ||
<sup>2</sup> Gargoyle can use either Git or Glulxe to play | <sup>2</sup> [[Gargoyle]] can use either [[Git]] or [[Glulxe]] to play IF works.. | ||
<sup>3</sup> Thunderword users can choose either standard Glulxe or the faster Git version 1.3.5 to interpret Glulx | <sup>3</sup> [[Thunderword]] users can choose either standard [[Glulxe]] or the faster [[Git]] version 1.3.5 to interpret [[Glulx]] works. | ||
==Compilers targeting Glulx== | ==Compilers targeting Glulx== |
Revision as of 21:49, 19 May 2019
Glulx is a virtual machine designed by Andrew Plotkin which by default uses the Glk Application Programming Interface (API). The Inform language can compile bytecode for Glulx. It imposes far fewer limitations on game size than the Z-machine and offers the I/O features of Glk, allowing Inform programmers to write larger games with more complicated user interfaces, without having to learn another programming language.
Version History
- 3.1.2: Added support for floating point arithmetic.
- 3.1.1: Added support for function acceleration.
- 3.1.0: Added support for block operations and heap memory allocation. Games using Inform 7's "indexed text" or "list" functionality require an interpreter that supports 3.1.0.
- 3.0.0: Added Unicode support.
- 2.0.0: Added modular I/O system system. The default I/O system is no longer Glk, which makes this an incompatible change.
- 1.0.0: Previous versions were all called "1.0.0"
How to play Glulx games
Glulx works can be played with a variety of interpreters. See the FAQ entry for links to the latest version of recommended interpreters for your platform.
Implementations
Name | Author | Glulx version | Release version/date | Packaged in | Language | Notes |
---|---|---|---|---|---|---|
Glulxe | Andrew Plotkin | 3.1.2 | 0.5.4, 23 January 2017 | Gargoyle, Gelek, Spatterlight, Thunderword, Zoom | C | The reference implementation |
Filfre | Jimmy Maher | 3.1.1 | 0.988, 8 April 2010 | C++ | ||
FyreVM | Jesse McGrew | ? | 25 September 2009 | C# (.NET/Mono) | Uses Channel IO rather than Glk | |
Git | Iain Merrick | 3.1.2 | 1.3.5, 30 November 2016 | Gargoyle, Thunderword, Zoom | C | |
Quixe | Andrew Plotkin | 3.1.2 | 1.0.2, 18 August 2010 | Javascript | ||
Unique | Own | ? | Incant, AndroidIF | Java | ||
Zag | Jon Zeppieri and David Turner | 3.1.2 | 1.07, 1 June 2012 | Java | ||
ZMPP | Wei-ju Wu | ? | 1.5-preview, 3 August 2008 | Java |
Status of Interpreters
This table is up to date as of July 2009, at which time the most recent Glulxe was 0.4.4, the most recent Glulx VM was 3.1.1, and the most recent Glk was 0.7.0. It includes interpreters for major platforms only.
Interpreter | Platforms | Author | Version | Latest Release | Glulxe version | Glulx VM version | Glk | Glk Standard |
---|---|---|---|---|---|---|---|---|
Filfre | Windows | Jimmy Maher | 0.981 | 07/08 | ?? | 3.1 | ?? | ?? |
FyreVM | .NET/Silverlight | Textfyre | n/a | 3/09 | n/a | 3.1 | none | n/a |
Gargoyle2 | Windows, Unix | Tor Andersson | 2008-12-25 | 12/08 | 0.4.3 | 3.1.0 | GarGlk | 0.7.0 |
Gelek Vanilla | Ubuntu Touch | Joan CiberSheep | 1.5.5 | 14/May/19 | 0.5.4 | 3.1.2 | RemGlk | 0.7.5 |
Git | Windows, Unix | Iain Merrick | 1.2.4 | 4/09 | ?? | 3.1.1 | Windows Glk 1.46 | 0.7.0 ?? |
iphonefrotz | iOS | Craig Smith | 1.7 | 21/8/14 | n/a | 3.1.2 | ?? | 0.7.4 |
Quixe | Web | Andrew Plotkin | 1.0.1 | 29/7/10 | n/a | 3.1.2 | GlkOte | 0.7.0 |
Spatterlight | Mac OS X | Tor Andersson | 0.5.0 | 6/08 | 0.4.3 | 3.1.0 | ?? | 0.7.0 |
Thunderword3 | Android | Stephen Gutknecht | pre-release | 3/11/17 | 0.5.3 | 3.1.2 | RemGlk | 0.7.5 |
Windows Glulxe | Windows | David Kinder | 0.4.4.136 | 03/09 | 0.4.3 | 3.1.0 | Windows Glk 1.36 | 0.7.0 |
Zag | Java | Jon Zeppieri | 12.0.0 / 1.06 | 3/05 | ?? | 2.0.0 | Zing | nonstandard |
Zoom1 | Mac OS X, Unix | Andrew Hunter | 1.1.4.1 | 6/09 | 0.4.2? | 3.1.0 | CocoaGlk 1.0.7 | 0.7.0 |
1 Zoom users can choose either standard Glulxe or the faster Git to interpret Glulx works.
2 Gargoyle can use either Git or Glulxe to play IF works..
3 Thunderword users can choose either standard Glulxe or the faster Git version 1.3.5 to interpret Glulx works.