GOO(1)

NAME
goo, g2c - generic object-orientator (programming language)

SYNOPSIS
goo
g2c

DESCRIPTION
This manual page documents briefly the goo and g2c commands.

goo and g2c interactively evaluate statements in GOO, a dynamic, type-based, object-oriented language in the same family as Dylan and Scheme. The language is designed to be simple, productive, powerful, extensible, dynamic, efficient, and real-time.

goo and g2c support two evaluation modes, controlled by the environment variable GOO_EVAL_MODE; the two commands differ only in which mode is the default. In ast mode (short for "abstract syntax tree", and the default for goo), they directly interpret parsed goo expressions. In g2c mode (the default for g2c), they instead translate expressions into dynamically compiled C code.

OPTIONS
None.

USAGE
Typing goo or g2c at your shell will start up a goo read-eval-print loop, which accepts s-expressions and top-level commands commencing with a comma. The following is a list of available commands:

,quit
    Exit the program.

^C (control-C)
    Invoke a recursive read-eval-print loop.

,g2c-eval
    Change to dynamic compilation evaluation.

,ast-eval
    Change to ast evaluation.

,in ,name
    Change to module name.

ENVIRONMENT

GOO_EVAL_MODE
    Determines evaluation mode, as documented in DESCRIPTION above.

GOO_ROOT
    Installation root (/usr on Debian systems); files needed at runtime can be found under ${GOO_ROOT}/lib/goo.

SEE ALSO
The full GOO reference manual: /usr/share/doc/goo/goo.pdf.gz or /usr/share/doc/goo/manual/goomanual.html .

AUTHOR
goo was written by Jonathan Bachrach.

This manual page was written by Aaron M. Ucko <ucko@debian.org>, for the Debian project based on Jonathan's documentation (but may be used by others).