Provided by: oaklisp_1.3.6-2_amd64 bug

NAME

       oaklisp - An implementation of the Oaklisp language

SYNOPSIS

       oaklisp [ emulator-options ... [ -- oaklisp-options ... ]]

DESCRIPTION

       Oaklisp  is  an object-oriented dialect of Scheme.  This implementation is quite portable,
       compiling to a virtual machine which is emulated by a C program.  Nevertheless, reasonable
       speed is achieved through a variety of sophisticated techniques.

OPTIONS

       Options  are all long, and it makes no difference if you start them with one or two dashes
       (`-').  All options can be abbreviated to  a  unique  prefix.   There  are  two  sorts  of
       options:  for  the  bytecode  emulator,  and  for the Oaklisp world.  You must use a -- to
       separate them.

   EMULATOR OPTIONS
       --help Show summary of emulator options and exit

       --version
              Print version of emulator and exit

       --world file
              file is world to load

       --dump file
              dump world to file upon exit

       --d file
              synonym for --dump

       --dump-base b
              0=ascii, 2=binary; default=2

       --predump-gc b
              0=no, 1=yes; default=1

       --size-heap n
              n is in kilo-refs, default 128

       --size-val-stk n
              value stack buffer, n is in refs

       --size-cxt-stk n
              context stack buffer, n is in refs

       --size-seg-max n
              maximum flushed segment len, n is in refs

       --trace-gc v
              0=quiet, 3=very detailed; default=0

       --verbose-gc v
              synonym for --trace-gc

       --trace-traps

       --trace-files
              trace filesystem operations

   UNOPTIMIZED EMULATOR OPTIONS
       --trace-segs
              trace stack segment writes/reads

       --trace-valcon
              print entire value stack at each instr

       --trace-cxtcon
              print entire context stack at each instr

       --trace-stks
              print the size of the stacks at each instr

       --trace-instructions
              trace each bytecode executed

       --trace-methods
              trace each method lookup

       --trace-mcache
              trace method cache

   OAKLISP OPTIONS
       --help Show summary of Oaklisp options

       --eval expr
              Evaluate Oaklisp expression, which is one arg so be sure to quote for shell.

       --load file
              Load a file.

       --compile file
              Compile file.oak yielding file.oa

       --locale x
              Switch to locale x, eg system-locale (default), compiler-locale, scheme-locale (for
              RnRS compatibility).

       --exit Exit upon processing this option.

EXAMPLES

       This  will  compile  the file myfile.oak in the scheme locale and then leave the user in a
       read-eval-print loop in the scheme locale.

       oaklisp -- --locale scheme-locale --compile myfile

ENVIRONMENT

       The environment variable OAKWORLD will override the default compiled into the  executable,
       but itself can be overridden on the command line.

FILES

       /usr/lib/x86_64-linux-gnu/oaklisp/oakworld.bin  holds  the  world  image.   It is portable
       between  machines  of  the  same  endianity.   The  location  can  vary   depending   upon
       installation-time decisions.

BUGS

       Floating  point  numbers  are  not implemented.  Rationals can be used to make up for this
       lack because rationals can be told to print in floating point format  and  floating  point
       format  input can be made to read as rational numbers.  (There are a couple floating point
       implementations, but they are not merged into the distributed release.)

       In contrast to the error handling system, which is Industrial Strength,  the  debugger  is
       virtually nonexistent.

       There  is  no foreign function interface for loading and calling C routines from a running
       Oaklisp.  (Again, there are a couple implementations of foreign function interfaces  which
       are not merged in.)

       The memory format does not support uninterpreted "blobs".

       Porting the system to 64-bit machines has not been done, and would be quite difficult.

       POSIX threads in the emulator never got quite finished.

       Bug reports and enhancements can be filed on the github issue tracker ⟨https://github.com/
       barak/oaklisp⟩.

REFERENCES

       The programs are documented more fully in the language and implementation manuals lang.pdf
       and   lim.pdf,   along   with  OaklispSummary.pdf,  whose  source  is  included  with  the
       distribution, and installed in /usr/share/doc/oaklisp/.

       The Oaklisp home page is transitioning from its old location ⟨http://www.bcl.hamilton.ie/
       ~barak/oaklisp/⟩ to alioth ⟨https://oaklisp.alioth.debian.org/⟩ and github ⟨https://
       github.com/barak/oaklisp⟩.

       The Implementation of Oaklisp is a chapter in Topics in Advanced  Language  Implementation
       edited by Peter Lee, pp 189-215, MIT Press, 1991.

       Oaklisp:  an  Object-Oriented  Dialect  of Scheme appears in the journal Lisp and Symbolic
       Computation 1(1):39-51, published by Klewer Associates, May 1988.

       Oaklisp: an Object-Oriented Scheme with First Class Types appeared in proceedings  of  the
       ACM conference OOPSLA-86, pp30-37, published as a special issue of SIGPLAN Notices.

       Garbage  collection  with  pointers  to  single  cells,  an article on the Oaklisp garbage
       collector, appeared  in  Communications  of  the  ACM,  39(12):202-206  (online  edition),
       December 1996.

       The Revised^n Report on Scheme is a useful piece of documentation, and is widely available
       online.

DISTRIBUTION

       The Oaklisp copyright belongs to its authors.  It is distributed  under  the  GNU  General
       Public  License,  a  copy  of  which  is  included  in the source distribution in the file
       COPYING.  For further information or to make alternate  arrangements  please  contact  the
       authors, who are surprisingly reasonable people.

AUTHOR

       Oaklisp  was  originally designed, implemented, and documented by Barak A. Pearlmutter and
       Kevin J. Lang.

                                                                                       OAKLISP(1)