Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

picolisp(1) [debian man page]

PICOLISP(1)							   User Commands						       PICOLISP(1)

NAME
pil, picolisp - a fast, lightweight Lisp interpreter SYNOPSIS
pil [arguments ...] [-] [arguments ...] [+] picolisp [arguments ...] [-] [arguments ...] [+] DESCRIPTION
PicoLisp is a Lisp interpreter with a small memory footprint, yet relatively high execution speed. It combines an elegant and powerful lan- guage with built-in database functionality. pil is the startup front-end for the interpreter. It takes care of starting the binary base system and loading a useful runtime environ- ment. picolisp is just the bare interpreter binary. It is usually called in stand-alone scripts, using the she-bang notation in the first line, passing the minimal environment in lib.l and loading additional files as needed: #!/usr/bin/picolisp /usr/lib/picolisp/lib.l (load "@ext.l" "myfiles/lib.l" "myfiles/foo.l") (do ... something ...) (bye) INVOCATION
PicoLisp has no pre-defined command line flags; applications are free to define their own. Any built-in or user-level Lisp function can be invoked from the command line by prefixing it with a hyphen. Examples for built-in functions useful in this context are version (print the version number) or bye (exit the interpreter). Therefore, a minimal call to print the version number and then immediately exit the inter- preter would be: $ pil -version -bye Any other argument (not starting with a hyphen) should be the name of a file to be loaded. If the first character of a path or file name is an at-mark, it will be substituted with the path to the installation directory. All arguments are evaluated from left to right, then an interactive read-eval-print loop is entered (with a colon as prompt). A single hyphen stops the evaluation of the rest of the command line, so that the remaining arguments may be processed under program con- trol. If the very last command line argument is a single plus character, debugging mode is switched on at interpreter startup, before evaluating any of the command line arguments. A minimal interactive session is started with: $ pil + Here you can access the reference manual : (doc) and the online documentation for most functions, : (doc 'vi) or directly inspect their sources: : (vi 'doc) The interpreter can be terminated with : (bye) or by typing Ctrl-D. FILES
Runtime files are maintained in the ~/.pil directory: ~/.pil/tmp/<pid>/ Process-local temporary directories ~/.pil/history The line editor's history file BUGS
PicoLisp doesn't try to protect you from every possible programming error ("You asked for it, you got it"). AUTHOR
Alexander Burger <abu@software-lab.de> RESOURCES
Home page: http://home.picolisp.com Download: http://www.software-lab.de/down.html PICOLISP(1)

Check Out this Related Man Page

LUSH(1) 						       Lisp Universal Shell							   LUSH(1)

NAME
lush - Lisp Universal Shell SYNOPSIS
lush [@initfile][lushfile...args...] DESCRIPTION
lush starts the Lisp Universal Shell. Lush is an object-oriented Lisp interpreter/compiler with features designed to please people who want to prototype large numerical applica- tions. Lush includes an extensive library of vector/matrix/tensor manipulation, a set of graphic functions, a simple GUI toolkit, and interfaces to various libraries such as OpenGL, SDL, the SGI Multimedia library (video/audio grabbing), the Numerical Recipes library, and others. Lush is an ideal frontend script language for programming projects written in C or other languages. RUNNING LUSH INTERACTIVELY
Online help on the standard library is available by typing (helptool) at the Lush prompt. You can leave Lush by typing CTRL-D at the prompt. On startup, Lush loads various libraries from the sys and lsh directories, as well as a .lushrc file in the user's home directory. It is recommended to add a directory lsh in your home directory and to include the line (addpath "your-home-directory/lsh") to your .lushrc so that your own Lush programs are found in Lush's search path. It is quite convenient to run Lush from within Emacs, which can be done by creating somewhere in your path a symbolic link named "lisp" to the lush executable. Then, type ESC-X run-lisp in Emacs. It is probably a good idea to add the following line in your .emacs so Emacs switches to Lisp mode when editing a Lush file: (setq auto-mode-alist (append (cons ".lsh$" 'lisp-mode) auto-mode-alist)) RUNNING NON-INTERACTIVE LUSH SCRIPTS In Unix, Lush can be used to write scripts that can be called from a shell prompt (like shell or Perl scripts). A list of command-line arguments are put in the argv variable. Here is an example: create a file (say "capargs") with the following content (replacing the first line by the path to your lush exe- cutable): #!/bin/sh exec lush "$0" "$@" !# (printf "capitalizing the arguments:0) (each ((arg argv)) (printf "%s %s0 arg (upcase arg))) then, make capargs executable: chmod a+x capargs. You can now invoke capargs at the shell prompt: % capargs asd gfdf capitalizing the arguments: capargs CAPARGS asd ASD gfdf GFDF FILES
/usr/share/lush The top of the Lush directory structure /usr/share/lush/src Source code of the interpreter /usr/share/lush/sys Core libraries (lush sources) without which Lush cannot run. A minimal/customized version of Lush needs only that directory to run. /usr/share/lush/etc Various shell scripts and utilities /usr/share/lush/include /usr/share/lush/lsh Library files (lush sources) that are part of the standard distribution. Although they are not required for Lush to run, life would really suck without them. /usr/share/lush/packages Library files (lush sources) for special applications or platforms, or programs that have been contributed by users and cannot be assumed to be present/working in all installations of Lush. /usr/share/lush/local Lush libraries that are specific to your site. ~/.lushrc Personal Lush initialization file ~/.lush Personal Lush directory: on-demand built libraries, etc HISTORY
Lush is the direct descendant of the SN system. SN was first developed as a neural network simulator with a Lisp-like scripting language. The project was started in 1987 by Leon Bottou and Yann LeCun, and rewritten several times since then. SN was used at AT&T for many research projects in machine learning, pattern recognition, and image processing. Its various incarnations were used at AT&T Bell Labs, AT&T Labs, the Salk Institute, the University of Toronto, Universite of Montreal, UC Berkeley, and many other research institutions. The commercial versions of SN were used in several large companies as a prototyping tool: Thomson-CSF, ONERA. SEE ALSO
Use (helptool) in an interactive lush session for browsing of online documentation. AUTHORS
Lush was written by Leon Bottou and Yann LeCun. Contributors include: Patrice Simard, Yoshua Bengio, Jean Bourrelly, Patrick Haffner, Pas- cal Vincent, Sergey Ioffe, and many others. This manual page was written by Kevin Rosenberg <kmr@debian.org> for the Debian Project (but may be used by others). 1.1 2005-12-14 LUSH(1)
Man Page