zl(1)
โจ zl โ the zenlisp interpreter, bestie edition โจ
okay so you found the manual page for zl(1) and I'm SO glad you're here, because this one is genuinely iconic. it's the zenlisp interpreter. let's get into it. ๐
๐ธ NAME ๐ธ
zl โ zenlisp interpreter. that's her. that's the whole name. short, sweet, main character energy. ๐
๐ USAGE ๐
zl [-L] [-bgi] [-n nodes] [image]
yes the options cluster, yes there's an optional image, we'll get to all of it, don't worry bestie ๐ซถ
๐ฆ DESCRIPTION ๐ฆ
so zenlisp is an interpreter for a purely symbolic and applicative dialect of LISP. like, purely symbolic. applicative. it's giving academic but make it chic. โจ
you can basically think of it as an implementation of pure LISP plus global definitions โ that's the vibe. pure LISP walked so global definitions could run. ๐
and the zl command is what starts the interpreter. that's it. that's the whole job. she wakes up and she interprets. periodt. ๐
๐ OPTIONS ๐
-bโ Batch mode. in batch mode, no greeting message gets printed (no hello, she's not doing small talk today ๐), and the interpreter exits in case of an error rather than returning to the read-eval-print loop. so like, one strike and she's out. dramatic? maybe. useful? absolutely.-gโ Verbose GC. this makes her report the number of free nodes after each GC. GC = garbage collection, and she will tell you exactly how much room is left in the pool every single time. no cap. ๐๏ธโจ-iโ Init mode. init mode is used to build the initial image file. no image is loaded. and here's the thing:
Do not use this option. ๐จ like genuinely, don't. it's not for you, bestie, it's for building the thing.
-n nodesโ specify the size of the node pool. larger pools (up to some limit) increase performance. more nodes, more speed, up to a point. and the memory footprint of the zenlisp workspace is calculated like this:
nodes * (sizeof(int) * 2 + 1)
look at that math. that's the whole formula. write it down. ๐งฎ
-Lโ Display the terms of use (license) and exit. read the fine print, then bounce. ๐
and one more thing, super important: if an image file name is passed to the zl command, the specified image is loaded instead of the default image. so you can hand her a different image and she'll run that one instead of her usual. slay. ๐ผ๏ธ
๐ง FURTHER INFORMATION ๐ง
okay so here's the tea: further information about zenlisp is not available in manual page format. i know. tragic. ๐ญ
but! the reference manual in ASCII format can be found in this file:
PREFIX/share/doc/zenlisp/zenlisp.txt
and before you come for me about PREFIX โ the actual location of PREFIX may vary on your system. by default, it is /usr/local. so if you can't find it, check your prefix, bestie. ๐
๐ FILES ๐
PREFIX/share/zenlispโ the extension libraries and example programs live here. that's the neighborhood. go say hi. ๐ก
โญ ENVIRONMENT โญ
ZENSRCโ the location of the libraries and example programs. and here's how it works:
(load หfile)
that loads file from $ZENSRC/file. so ZENSRC is basically the home address for your loads. iykyk. ๐
๐ AUTHOR ๐
Nils M Holm <nmh@t3x.org>
we stan. ๐ซถ
and that's the page, bestie!! source is zenlisp, page 2 of 2 (page 1 of 2 was the earlier half, if you're keeping track ๐) โ go forth and interpret something purely symbolic. no cap, you're gonna do great. ๐ โจ๐
๐ฆ where this page comes from
- debian bookworm: zenlisp 2013.11.22-3 ยท HAPPY
- debian trixie: zenlisp 2013.11.22-3 ยท HAPPY
- ubuntu jammy: zenlisp 2013.11.22-3 ยท HAPPY
- ubuntu noble: zenlisp 2013.11.22-3 ยท HAPPY
- ubuntu resolute: zenlisp 2013.11.22-3 ยท HAPPY
- ubuntu stonking: zenlisp 2013.11.22-3 ยท HAPPY
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms