1.\" Copyright (c) 1980, 1990 The Regents of the University of California. 2.\" All rights reserved. 3.\" 4.\" %sccs.include.redist.roff% 5.\" 6.\" @(#)liszt.1 6.4 (Berkeley) 05/06/91 7.\" 8.Dd 9.Dt LISZT 1 10.Os BSD 4 11.Sh NAME 12.Nm liszt 13.Nd compile a Franz Lisp program 14.Sh SYNOPSIS 15.Nm liszt 16.Op Fl mpqruwxCQST 17.Op Fl e Ar form 18.Op Fl o Ar objfile 19.Op Ar name 20.Sh DESCRIPTION 21.Nm Liszt 22takes a file whose names ends in `.l' and compiles the 23.Tn FRANZ LISP 24code there leaving an object program on the file whose name is that of the 25source with `.o' substituted for `.l'. 26.Pp 27The following options are interpreted by 28.Nm liszt . 29.Bl -tag -width Fl 30.It Fl e 31Evaluate the given form before compilation begins. 32.It Fl m 33Compile a 34.Tn MACLISP 35file, by changing the readtable to conform to 36.Tn MACLISP 37syntax and including a macro-defined compatibility package. 38.It Fl o 39Put the object code in the specified file, rather than the default `.o' file. 40.It Fl p 41places profiling code at the beginning of each non-local function. 42If the lisp system is also created with profiling in it, this allows 43function calling frequency to be determined (see 44.Xr prof 1 . ) 45.It Fl q 46Only print warning and error messages. 47Compilation statistics and notes on correct but unusual constructs 48will not be printed. 49.It Fl r 50place bootstrap code at the beginning of the object file, which when 51the object file is executed will cause a lisp system to be invoked 52and the object file fasl'ed in. 53.It Fl u 54Compile a 55.Tn UCI Ns -lispfile , 56by changing the readtable to conform to 57.Tn UCI Ns -Lisp 58syntax and including a macro-defined compatibility package. 59.It Fl w 60Suppress warning diagnostics. 61.It Fl x 62Create a lisp cross reference file with the same name as the source 63file but with `.x' appended. 64The program 65.Xr lxref 1 66reads this file and creates a human readable cross 67reference listing. 68.It Fl C 69put comments in the assembler output of the compiler. 70Useful for debugging the compiler. 71.It Fl Q 72Print compilation statistics and warn of strange constructs. 73This is the default. 74.It Fl S 75Compile the named program and leave the assembler-language output on 76the corresponding file suffixed `.s'. 77This will also prevent the assembler language file from being assembled. 78.It Fl T 79send the assembler output to standard output. 80.El 81.Pp 82If 83no source file is specified, then the compiler will run interactively. 84You will find yourself talking to the 85.Xr lisp 1 86top-level command interpreter. 87You can compile a file by using the 88function 89.Nm liszt 90(an nlambda) with the same arguments as you use on the command line. 91For example to compile `foo', a 92.Tn MACLISP 93file, you would use: 94.Bd -literal -offset indent 95(liszt \-m foo) 96.Ed 97.Pp 98Note that 99.Nm liszt 100supplies the ``.l'' extension for you. 101.Sh FILES 102.Bl -tag -width /usr/lib/lisp/machacks.l -compact 103.It Pa /usr/lib/lisp/machacks.l 104.Tn MACLISP 105compatibility package. 106.It Pa /usr/lib/lisp/syscall.l 107Macro definitions of 108.Ux 109system calls. 110.It Pa /usr/lib/lisp/ucifnc.l 111.Tn UCI 112Lisp compatibility package. 113.El 114.Sh SEE ALSO 115.Xr lisp 1 , 116.Xr lxref 1 117.Sh ENVIRONMENT 118.Nm Liszt 119checks these 120environment variables; 121.Ev PATH , 122.Ev SHELL 123and 124.Ev TERM . 125.Sh HISTORY 126.Nm Lisp 127appeared in 128.Bx 3.0 . 129