xref: /csrg-svn/old/lisp/man/liszt.1 (revision 43707)
1*43707Scael.\" Copyright (c) 1980, 1990 The Regents of the University of California.
2*43707Scael.\" All rights reserved.
319178Smckusick.\"
4*43707Scael.\" %sccs.include.redist.man%
519178Smckusick.\"
6*43707Scael.\"     @(#)liszt.1	6.2 (Berkeley) 06/24/90
7*43707Scael.\"
8*43707Scael.Dd
9*43707Scael.Dt LISZT 1
10*43707Scael.Os BSD 4
11*43707Scael.Sh NAME
12*43707Scael.Nm liszt
13*43707Scael.Nd compile a Franz Lisp program
14*43707Scael.Sh SYNOPSIS
15*43707Scael.Nm liszt
16*43707Scael.Op Fl mpqruwxCQST
17*43707Scael.Op Fl e Ar form
18*43707Scael.Op Fl o Ar objfile
19*43707Scael.Op Ar name
20*43707Scael.Sh DESCRIPTION
21*43707Scael.Nm Liszt
22*43707Scaeltakes a file whose names ends in `.l' and compiles the FRANZ
23*43707ScaelLISP
2419178Smckusickcode there leaving an object program on the file whose name is that of the
2519178Smckusicksource with `.o' substituted for `.l'.
26*43707Scael.Pp
2719178SmckusickThe following options are interpreted by
28*43707Scael.Nm liszt .
29*43707Scael.Tw Fl
30*43707Scael.Tp Fl e
3119179SmckusickEvaluate the given form before compilation begins.
32*43707Scael.Tp Fl m
33*43707ScaelCompile a MACLISP
34*43707Scaelfile, by changing the readtable to conform to
35*43707ScaelMACLISP
36*43707Scaelsyntax and including a macro-defined compatibility package.
37*43707Scael.Tp Fl o
3819178SmckusickPut the object code in the specified file, rather than the default `.o' file.
39*43707Scael.Tp Fl p
4019178Smckusickplaces profiling code at the beginning of each non-local function.
4119178SmckusickIf the lisp system is also created with profiling in it, this allows
4219178Smckusickfunction calling frequency to be determined (see
43*43707Scael.Xr prof  1  . )
44*43707Scael.Tp Fl q
4519178SmckusickOnly print warning and error messages.
4619178SmckusickCompilation statistics and notes on correct but unusual constructs
4719178Smckusickwill not be printed.
48*43707Scael.Tp Fl r
4919178Smckusickplace bootstrap code at the beginning of the object file, which when
5019178Smckusickthe object file is executed will cause a lisp system to be invoked
5119178Smckusickand the object file fasl'ed in.
52*43707Scael.Tp Fl u
5319178SmckusickCompile a UCI-lispfile, by changing the readtable to conform to
5419178SmckusickUCI-Lisp syntax and including a macro-defined compatibility package.
55*43707Scael.Tp Fl w
5619178SmckusickSuppress warning diagnostics.
57*43707Scael.Tp Fl x
5819178SmckusickCreate a lisp cross reference file with the same name as the source
5919178Smckusickfile but with  `.x' appended.
60*43707ScaelThe program
61*43707Scael.Xr lxref  1
6219178Smckusickreads this file and creates a human readable cross
6319178Smckusickreference listing.
64*43707Scael.Tp Fl C
6519178Smckusickput comments in the assembler output of the compiler. Useful
6619178Smckusickfor debugging the compiler.
67*43707Scael.Tp Fl Q
6819178SmckusickPrint compilation statistics and warn of strange constructs.
69*43707ScaelThis is the default.
70*43707Scael.Tp Fl S
7119178SmckusickCompile the named program and leave the assembler-language output on
7219178Smckusickthe corresponding file suffixed `.s'.
7319178SmckusickThis will also prevent the assembler language file from being assembled.
74*43707Scael.Tp Fl T
7519178Smckusicksend the assembler output to standard output.
76*43707Scael.Tp
77*43707Scael.Pp
78*43707ScaelIf
7919178Smckusickno source file is specified, then the compiler will run interactively.
80*43707ScaelYou will find yourself talking to the
81*43707Scael.Xr lisp  1
8219178Smckusicktop-level command interpreter.
8319178SmckusickYou can compile a file by using the
8419178Smckusickfunction
85*43707Scael.Nm liszt
8619178Smckusick(an nlambda) with the same arguments as you use on the command line.
87*43707ScaelFor example to compile `foo', a MACLISP
88*43707Scaelfile, you would use:
89*43707Scael.Pp
90*43707Scael.Dl (liszt \-m foo)
91*43707Scael.Pp
9219178SmckusickNote that
93*43707Scael.Nm liszt
9419178Smckusicksupplies the ``.l'' extension for you.
95*43707Scael.Sh FILES
96*43707Scael.Dw /usr/lib/lisp/machacks.l
97*43707Scael.Di L
98*43707Scael.Dp Pa /usr/lib/lisp/machacks.l
99*43707ScaelMACLISP
100*43707Scaelcompatibility package
101*43707Scael.Dp Pa /usr/lib/lisp/syscall.l
102*43707Scaelmacro definitions of Unix system calls
103*43707Scael.Dp Pa /usr/lib/lisp/ucifnc.l
104*43707ScaelUCI Lisp compatibility package
105*43707Scael.Dp
106*43707Scael.Sh AUTHOR
10719178SmckusickJohn Foderaro
108*43707Scael.Sh SEE ALSO
109*43707Scael.Xr lisp 1 ,
110*43707Scael.Xr lxref 1
111*43707Scael.Sh ENVIRONMENT
112*43707Scael.Nm Liszt
113*43707Scaelchecks these
114*43707Scaelenvironment variables;
115*43707Scael.Ev PATH ,
116*43707Scael.Ev SHELL
117*43707Scaeland
118*43707Scael.Ev TERM .
119*43707Scael.Sh HISTORY
120*43707Scael.Nm Lisp
121*43707Scaelappeared in 3 BSD.
122