The MUF Cheat-Sheet, as seen by Sammael (Arthur, The., etc)
                              -or-
           Reference manual for MUCK Forth ("MUF")  -terse

                                                  -modified for MAGE-
                                                  v1.1.1 October 31, 1992

ENTERING EDITING MODE
        @prog <program name>    (creates a new program if none match)
        @edit <program name or number>

EDITING COMMANDS
        <number> i                              insert before <number>
        .                                       exit insert mode
        c                                       compile
        <number1> <number2> l                   list
        <number1> <number2> d                   delete
        <letter> <letter>   a                   show macros (abridged)
        <letter> <letter>   s                   show macros (long)
        <program#> v                            view program header
        h                                       help on edit mode
        u                                       uncompile
        q                                       quit editor mode

PRIMITIVE TERMINOLOGY

        v                                       type variable
        d                                       type dbref
        i                                       type int (boolean)
        s                                       type string
        a                                       type address (word)
        c                                       type connection

SYNTAX

        ( ... )                                 commments
        :                                       begin user-def word
        ;                                       end user-def word
        var <VARNAME>                           variable declaration

        if              ( i -- )
        else            ( -- )
        then            ( -- )
        exit            ( -- )
        execute         ( a -- ??? )
        pop             ( x -- )
        dup             ( x -- x x )
        swap            ( x y -- y x )
        over            ( x y -- x y x )
        rot             ( x y z -- y z x )
        rotate          ( ni ... n1 i -- n(i-1) ... n1 ni )
        pick            ( ni ... n1 i -- n1 ni )
        put             ( ni ... n1 x i -- x ... n1 )

        !               ( x v -- )        store value x in var v.
                                          value may be any type data
        @               ( v -- x )        fetch value x from var v
        atoi            ( s -- i )        string --> integer
        intostr         ( x -- s )        integer || dbref --> string
        dbref           ( x -- d )        string || integer --> dbref
        int             ( x -- i )        string || VAR || object
                                            --> integer
        variable        ( i -- v )        integer --> VAR ref

        prog            ( -- d )          current program
        dbtop           ( -- d )          top of database

        + - * / %       ( i1 i2 -- i )
        < > = <= >=     ( i1 i2 -- i )
        strcmp,
           stringcmp    ( s1 s2 -- i )    strcmp == case sens.
        strncmp, stringncmp
                        ( s1 s2 n -- i )  compares only n letters
        number?         ( s -- i )
        dbcmp           ( d1 d2 -- i )
        and  or         ( i1 i2 -- i )
        not             ( i -- i' )

        strlen          ( s -- i )
        strcat          ( s1 s2 -- s )
        instr           ( s1 s2 -- i )          finds string s2 within s1
        strcut          ( s i -- s1 s2 )        cuts string at pos. i
        explode         ( s1 s2 -- ... i )      s2 is the partition, len >0
        subst           ( s1 s2 s3 -- s )       string, replacement, tobesub
        pronoun_sub     ( d s -- s' )           does % subs ala osucc/ofail
        pronoun_eval    ( d s d -- s' )         does % subs ala MUSH
        read            ( -- s )
        notify          ( d s -- )              object, message
        notify_except   ( d1 d2 s -- )          place, exception, message
        pennies         ( d -- i )
        addpennies      ( d i -- )              player, pennies
        random          ( -- i )

        getpropval      ( d s -- i )            zero if none
        getpropstr      ( d s -- s )            "" if none
        setprop         ( d s1 x -- )           x is string or integer
        remove_prop     ( d s -- )

        name            ( d -- s )              retrieve name
        setname         ( d s -- )              set name

        player?, thing?,
        room?, program?,
        exit?, ok?      ( d -- i )      boolean

        location        ( d -- d' )
        owner           ( d -- d' )
        moveto          ( d1 d2 -- )    moves d1 to d2
        set             ( d s -- )      object, string (flag)
        flag?           ( d s -- i )    object, string, boolean
        call            ( d -- ??? )    call remote program
        match           ( s -- d )      thing, dbref (#-1 = NOTHING,
                                        #-2 = AMBIGUOUS, #-3 = HOME)
        rmatch          ( d s -- d )    object, thing, dbref
        copyobj         ( d -- d' )     returns dbref of new object
        contents        ( d -- ... i )  returns stack of dbrefs and i
        trigobj         ( d s -- )      trigger object to perform
                                        a set of commands
        systime         ( -- t )        seconds since January 1, 1990
        strftime        ( t s -- s1)    format systime
        online          ( -- d d ... i) list and number of users
        awake?          ( d -- i )      # of times player is connected
        wild_match      ( s1 s2 -- i)   s1 can contain a wildcard('*')

        connections     ( -- c c ... i )
                                          returns list of/number of connections
        concount        ( -- i )          returns number of connections
        conidle         ( c -- i )        idle time, in seconds
        contime         ( c -- i )        when connected
        condbref        ( c -- d )        player corresponding to connection
        conhost         ( c -- s )        host name (wiz-only)
        conboot         ( c -- )          boots player (wiz-only)