goo(1) generic object-orientator (programming language)

Other Alias

g2c

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.

AUTHOR

goo was written by Jonathan Bachrach.

This manual page was written by Aaron M. Ucko <[email protected]>, for the Debian project based on Jonathan's documentation (but may be used by others).