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

FreeBSD Manual Pages

  
 
  

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-pur-
       pose programming	language by IFIP Working Group 2.1  (Algorithmic  Lan-
       guages and Calculi) that	has continuing responsibility for Algol	60 and
       Algol 68.

       Algol 68	Genie and its documentation can	be obtained from

	   https://jmvdveer.home.xs4all.nl/

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

       Option precedence is as follows:	pragmat	options	supersede command-line
       options,	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
       effect 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 particular	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-er-
	       ror occurs.

       --brackets
	       Consider	[ .. ] and { ..	} as being equivalent to ( .. ).  Tra-
	       ditional	 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 combin-
	       ing 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-er-
	       ror occurs; the program will pause in the monitor on  the  line
	       that contains the error.

       --echo string
	       Echo string to standout.

       --execute unit |	--x unit
	       Execute	the  Algol 68 unit. In this way	one-liners can be exe-
	       cuted 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  syn-
	       tax.

       --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-
	       liners 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 pro-
	       cessing 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 mes-
	       sages.

       --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@xs4all.nl>.

LINUX			       January 12, 2025			       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+14.3.quarterly>

home | help