Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Glk (software)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Portable application programming interface}} '''Glk''' is a portable [[application programming interface]] (API) created by [[Andrew Plotkin]] for use by programs with a text [[user interface|interface]]; these programs mostly include [[interactive fiction]] (IF) [[interpreter (computing)|interpreters]] for [[Z-machine]], [[TADS]], [[Glulx]], and [[Hugo (programming language)|Hugo]] games, and IF games written in more obscure file formats such as those used by [[Level 9 Computing]] and [[Magnetic Scrolls]]. The Glk API specification describes facilities for [[input/output|input]], output, text formatting, [[graphics]], [[sound]], and file I/O. Glk does not describe a [[virtual machine]]. [[Glulx]] is a virtual machine designed to be implemented using the Glk functions,<ref>http://www.eblong.com/zarf/glk/glk-spec-070_0.html#s.2 {{Webarchive|url=https://web.archive.org/web/20090625181507/http://www.eblong.com/zarf/glk/glk-spec-070_0.html#s.2 |date=2009-06-25 }}: 0.2: What About the Virtual Machine? (retrieved 2009-08-23)</ref> and [[Glulxe]] is an interpreter for Glulx. Interpreters for other virtual machines may use Glk while being unrelated to Glulx: for example, [[Nitfol]] is an interpreter for the [[Z-Machine]] that uses Glk.<ref>http://ifwiki.org/index.php/Nitfol {{Webarchive|url=https://web.archive.org/web/20091028014108/http://ifwiki.org/index.php/Nitfol |date=2009-10-28 }}: "Uses the Glk API for I/O.", "Supports versions 1 through 8 of Z-machine" (retrieved 2009-08-23)</ref> The Glk API has many [[implementation]]s, including GlkTerm, [[ScummVM]]'s Glk, WindowsGlk, XGlk.<ref>http://www.eblong.com/zarf/glk/ {{Webarchive|url=https://web.archive.org/web/20041009160813/http://eblong.com/zarf/glk/ |date=2004-10-09 }}: section "Liberation" (retrieved 2009-08-23)</ref> Implementations are available on the following platforms: * [[Java (programming language)|Java]]<ref>http://www.russotto.net/jglulx.html {{Webarchive|url=https://web.archive.org/web/20110724052017/http://www.russotto.net/jglulx.html |date=2011-07-24 }}: Java Glulx and Java Glk (retrieved 2009-08-23)</ref> * [[JavaScript]]<ref>http://eblong.com/zarf/glk/glkote.html {{Webarchive|url=https://web.archive.org/web/20120518193704/http://eblong.com/zarf/glk/glkote.html |date=2012-05-18 }}: GlkOte: a JavaScript library for IF interfaces (retrieved 2012-05-03)</ref> * [[Macintosh]] * [[DOS]] * [[Unix]] ** [[X Window System]] * [[Microsoft Windows]] ** [[Pocket PC]] The existence of the Glk API has made possible the creation of "universal translator" IF interpreters, programs such as ''Gargoyle'' and ''Spatterlight'' which can run all popular IF formats and almost all of the more obscure ones. Such programs are very useful for newcomers to the medium who are unsure of which interpreter to choose, and to experienced players who may possess games in a variety of formats. == References == <references/> ==External links== *[http://www.eblong.com/zarf/glk/ GLK API specification] {{Webarchive|url=https://web.archive.org/web/20041009160813/http://eblong.com/zarf/glk/ |date=2004-10-09 }} *[http://www.ifarchive.org/indexes/if-archiveXprogrammingXglk.html The GLK Section of the Interactive FictionArchive] {{DEFAULTSORT:Glk (Software)}} [[Category:Programming tools for Windows]] [[Category:Unix software]] {{Windows-software-stub}} {{Unix-stub}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Short description
(
edit
)
Template:Unix-stub
(
edit
)
Template:Webarchive
(
edit
)
Template:Windows-software-stub
(
edit
)