FreeBSD Manual Pages
newlisp(1) Commandline Parameters newlisp(1) NAME newlisp - lisp like programming language SYNOPSIS newlisp [-n] [-x source target] [-h | -v] [-c | -C | -http] [-t mi- croseconds] [-s stack] [-m max-mem-megabyte] [[-l path-file | -L path-file] [-p port-number | -d port-number]] [-w directory] [lisp-files ...] [-e programtext] DESCRIPTION Invokes newLISP which first loads init.lsp if present. Then one or more options and one or more newLISP source files can be specified. The op- tions and source files are executed in the sequence they appear. For some options is makes sense to have source files loaded first like for the -p and -d options. For other options like -s and -m it is logical to specify these before the source files to be loaded. If a -e switch is used the programtext is evaluated and then newlisp exits otherwise evaluation continues interactively (unless an exit occurs during lisp-file interpretation). OPTIONS -n Suppress loading of any init.lsp or .init.lsp initialization file. -x source target Link the newLISP executable with a source file to built a new target executable. -h Display a short help text. -v Display a version string. -c Suppress the commandline prompt. -C Force prompt when running newLISP in pipe I/O mode for Emacs. -http only accept HTTP commands -s stacksize Stack size to use when starting newLISP. When no stack size is specified the stack defaults to 1024. -m max-mem-megabyte Limits memory to max-cell-mem-megabyte megabytes for Lisp cell memory. lisp-files Load and evaluate the specified lisp source files in sequence. Source files can be specified using URLs. If an (exit) is exe- cuted by one of the source files then newlisp exits and all pro- cessing ceases. -e programtext Programtext is an expression enclosed in quotation marks which is evaluated and the result printed to standard out device (STD- OUT). In most UNIX system shells apostrophes can also be used to delimit the expression. newLISP exits after evaluation of pro- gramtext is complete. -w directory Directory is the start up directory for newLISP. Any file refer- ence in a program will refer to this directory by default as the current directory. This can be used to define a web root direc- tory when in server mode. -l -L path-file Log network connections and newLISP I/O to the file in path-file. -l will only log network connections or commandline input or net-eval requests. -L will additionally log HTTP re- quests and newLISP output from commandline and net-eval input. -p port-number Listen for commands on a TCP/IP socket connection. In this case standard I/O is redirected to the port specified in the -p op- tion. Any specified lisp-files will be loaded the first time a connection is made, that is, before text is accepted from the port connection. -d port-number Run in demon mode. As for the -p option, but newLISP does not exit after a closed connection and stays in memory listening for a new connection. -t microseconds-connection-timeout Specifies a connection timeout when running in -p or -d demon mode. Server will disconnect when no further input is read after accepting a client connection. -6 Starts newLISP in IPv6 'Internet Protocol version 6' mode. With- out this switch newLISP willl start in IPv4 mode. The protocol mode can also be switched with the built-in 'net-ipv' function during runtime. EXAMPLES Start interactive session newlisp Excute a program newlisp myprog.lsp Excute a remote program newlisp http://newlisp.org/example.lsp Add 3 and 4, 7 prints on standard output newlisp -e "(+ 3 4)" newLISP is started as a server (the & indicates to LINUX to run the process in the background) and can be connected to with telnet by issu- ing telnet localhost 1234 newlisp -p 1234 & newLISP is started as a server for another newlisp process connecting with the net-eval function or HTTP requests. Connection timeout is 3 seconds. newlisp -c -t 3000000 -d 4711 & newLISP is started as a server handling HTTP requests only. Connections are logged to the file /usr/home/www/log.txt newlisp -l /usr/home/www/log.txt -http -d 8080 & newLISP is started as a server handling HTTP requests and defining the startup/web root directory newlisp -http -d 8080 -w /usr/home/www/httpdocs & When accepting HTTP commands a file httpd.conf can be loaded, which will preprocess the path-name in the HTTP request newlisp httpd.conf -http -d 8080 -w /usr/home/www/httpdocs & If the file httpd.conf contains: (command-event (fn (s) (local (request) (if (find "?" s) ; is this a query (begin (set 'request (first (parse s "?"))) ; discover illegal extension in queries (if (ends-with request ".exe") (set 'request "GET /errorpage.html") (set 'request s))) (set 'request s)) request) )) then all files ending in .exe will translate the request in to a re- quest for an error page, else the original request string is returned. EXIT STATUS newLISP returns a zero exit status for normal termination unless an exit command specifies a code to be returned. Non zero is returned in case of abnormal exit. AUTHOR Lutz Mueller <lutz@nuevatec.com> http://www.newlisp.org/ - the newLISP home page version 10.7.2 May 2017 newlisp(1)
NAME | SYNOPSIS | DESCRIPTION | OPTIONS | EXAMPLES | EXIT STATUS | AUTHOR
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=newlisp&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>