Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
A68G(1) 		       Programmer's Manual			 A68G(1)

NAME
     a68g - Algol 68 Genie, an Algol 68 compiler-interpreter

SYNOPSIS
     a68g [--apropos | --help | --info [string]]
     [--assertions | --no-assertions] [--backtrace | --no-backtrace]
     [--brackets] [--check | --no-run] [--compile | --no-compile] [--clock]
     [--debug | --monitor] [--echo string] [--execute unit | -x unit]
     [--exit | --] [--extensive] [-f | --file string] [--frame number]
     [--handles number] [--heap number] [--listing] [--moids]
     [-O | -O0 | -O1 | -O2 | -O3] [--object | --no-object] [--overhead number]
     [--optimise | --no-optimise] [--pedantic] [--portcheck | --no-portcheck]
     [--pragmats | --no-pragmats] [--precision number] [--prelude-listing]
     [--pretty-print] [--print unit | -p unit] [--quiet] [--quote-stropping]
     [--reductions] [--rerun] [--run] [--script string] [--source | --no-source]
     [--stack number] [--statistics] [--strict] [--terminal]
     [--time-limit number] [--trace | --no-trace] [--tree | --no-tree]
     [--unused] [--upper-stropping] [--verbose] [--version]
     [--warnings | --no-warnings] [--xref | --no-xref] filename

DESCRIPTION
     Algol  68	Genie  (Algol68G) is an Algol 68 compiler-interpreter. It can be
     used for executing Algol 68 programs or scripts. Algol 68 is a rather  lean
     orthogonal  general-purpose language that is a beautiful means for denoting
     algorithms. Algol 68 was designed as a general-purpose programming language
     by IFIP Working Group 2.1 (Algorithmic Languages and Calculi) that has con-
     tinuing responsibility for Algol 60 and Algol 68.

     Algol 68 Genie and its documentation can be obtained from

	 https://jmvdveer.home.algol68genie.nl/

OPTIONS
     Options are passed to a68g either from the file .a68g.rc in the working di-
     rectory, the environment variable A68G_OPTIONS, the  command-line	or  from
     pragmats.

     Option precedence is as follows: pragmat options supersede command-line op-
     tions,  command-line  options  supersede  options	in  environment variable
     A68G_OPTIONS, A68G_OPTIONS supersedes options in .a68g.rc.

     Listing options, tracing options and -pragmat, -nopragmat, take  their  ef-
     fect when they are encountered in a left-to-right pass of the program text,
     and can thus be used, for example, to generate a cross reference for a par-
     ticular part of the program.

     Where  numeric  arguments	are required, suffices k, M or G are allowed for
     multiplication with 2 ** 10, 2 ** 20 or 2 ** 30 respectively.

     --apropos | --help | --info [string]
	     Print info on options if string is omitted, or print info on string
	     otherwise.

     --assertions | --no-assertions
	     Control elaboration of assertions.

     --backtrace | --no-backtrace
	     Control whether a stack backtrace is done in case	a  runtime-error
	     occurs.

     --brackets
	     Consider  [  ..  ] and { .. } as being equivalent to ( .. ). Tradi-
	     tional Algol 68 syntax allows ( .. ) to replace [ ..  ]  in  bounds
	     and slices.

     --check | --no-run
	     Check syntax only, the interpreter does not start.

     --clock
	     Report execution time excluding time needed for compilation.

     --compile | --no-compile
	     Switch  compilation  of  units on or off. Compilation omits many of
	     the runtime checks offered by the interpreter proper.  The  program
	     is  not  executed	and a shell script is generated combining source
	     code and its shared library. This shell script can  be  used  as  a
	     pseudo-executable.

     --debug | --monitor
	     Start  in	the  monitor. Invoke the monitor in case a runtime-error
	     occurs; the program will pause in the monitor on the line that con-
	     tains the error.

     --echo string
	     Echo string to standout.

     --execute unit | --x unit
	     Execute the Algol 68 unit. In this way one-liners can  be	executed
	     from the command line.

     --exit | --
	     Ignore further options.

     --extensive
	     Generate an extensive listing.

     -f | --file string
	     Accept string as filename in case it conflicts with shell syntax.

     --frame number
	     Set the frame stack size to number bytes.

     --handles number
	     Set the handle space size to number bytes.

     --heap number
	     Set the heap size to number bytes.

     --listing
	     Generate a concise listing.

     --moids
	     Generate an overview of modes in the listing file.

     --object | --no-object
	     Control the listing of C code in the listing file.

     --optimise | --no-optimise
	     Switch  compilation  of  units on or off. Compilation omits many of
	     the runtime checks offered by the interpreter proper.  This  option
	     is equivalent to -O2.

     -O | -O0 | -O1 | -O2 | -O3
	     Switch  compilation of units on and pass the option to the back-end
	     C compiler to set the optimiser level.

     --overhead number
	     Set overhead for stack checking.

     --pedantic
	     Equivalent to --warnings --portcheck

     --portcheck | --no-portcheck
	     Enable or disable portability warning messages.

     --pragmats | --no-pragmats
	     Control elaboration of pragmats.

     --precision number
	     Set the precision for LONG LONG modes to number significant digits.

     --prelude-listing
	     Generate a listing of preludes.

     --pretty-print
	     Pretty-print the source file.

     --print unit | --p unit
	     Print the value yielded by the Algol 68 unit. In this way	one-lin-
	     ers can be executed from the command line.

     --quiet
	     Suppress all warning messages.

     --quote-stropping
	     Use quote stropping.

     --reductions
	     Print reductions made by the parser.

     --rerun
	     Use compiled code of a previous run.

     --run   Override the --no-run option.

     --script string
	     Takes  string as source file name and skips further option process-
	     ing so these can be handled by the script.

     --source | --no-source
	     Control the listing of source lines in the listing file.

     --stack number
	     Set the stack size to number bytes.

     --statistics
	     Generate statistics in the listing file.

     --strict
	     Ignores extensions to Algol 68 syntax.

     --time-limit number
	     Interrupt the interpreter after number seconds, generating  a  time
	     limit exceeded error.

     --trace | --no-trace
	     Control tracing of the running program.

     --tree | --no-tree
	     Control listing of the syntax tree in the listing file.

     --unused
	     Generate an overview of unused tags in the listing file.

     --upper-stropping
	     Use upper stropping, which is the default stropping regime.

     --verbose
	     Use verbose mode.

     --version
	     Print the version of the running image of a68g.

     --warnings | --no-warnings
	     Enable warning messages or suppress suppressible warning messages.

     --xref | --no-xref
	     Control generation of a cross-reference in the listing file.

AUTHOR
     Author of Algol 68 Genie is Marcel van der Veer <algol68g@algol68genie.nl>.

LINUX				  July 6, 2026				 A68G(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=a68g&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help