Namespace for Z-machine parse/translate module

From: Amir Karger (amirkargerweb_at_yahoo.com)
Date: 07/29/04

  • Next message: e: "Win32::API SetLayeredWindowAttributes for Transparent Perl/Tk Window"
    Date: 29 Jul 2004 09:02:51 -0700
    
    

    [Posted to modules@perl.org and Warnocked. I see on module-authors
    that they're trying to re-invigorate lists like modules@perl.org...]

    I've written a module that parses Z-machine files[1] and translates
    them
    into executable Perl scripts. In the future, it'll be translating to
    other languages: first on the list is PIR. I'd like to CPAN-ify it,
    and wanted to ask about namespace.

    Possible names:

    * Language::Zcode - makes sense, but a Z-file contains more than just
      Z-code commands

    * Language::Zmachine - makes more sense, except that Z-machine isn't
      technically a language

    * Games::Zmachine - well, Z-machine isn't technically just for games.
      I say "technically" because the most "useful" Z-machine program I've
      seen is a Befunge interpreter. But this module is really doing more
      munging than gaming.

    * Zmachine - cute, in that it's like Sun:: or MacOS::, but it's
      starting a new top-level namespace, which is probably not considered
      cool. Especially since there probably won't be more than a couple
      modules ever written for this namespace.

    * Perl6::Zmachine - just kidding. But Dan Sugalski's slide saying
         parrot -b:zmachine zork1.dat
      *was* the original impetus for my writing this.

    I'm definitely leaning towards Language::something - maybe
    Language::Zmachine since Z-machine is a more well-known term - but I
    wanted to know what others thought. Any better suggestions?

    Existing modules:

    * Games::Rezrov is an interpreter for Z-machine files. It allows you
      to actually play said games. I've stolen a bunch of its code, but
      my module is definitely doing different stuff, so it wouldn't make
      sense as a sub-namespace of G::R.

    Thanks,

    -Amir Karger
    akarger@cpan.org

    [1]For those unfamiliar with the Z-machine, it's a virtual machine
    used
    for the Infocom text adventure games, and the less moribund
    Inform interactive fiction programming language.
    Files for the Z-machine contain some header information, tables
    containing game data (objects in the game, etc.), text strings to
    print, and a bunch of commands in Z-code. Z-code is Z-machine machine
    language, which is made super-compact (in case you're curious) by
    using as few bits as possible for each command and argument. Which
    makes it even harder to read than regular machine language.


  • Next message: e: "Win32::API SetLayeredWindowAttributes for Transparent Perl/Tk Window"