SNOBOL4CMD(1)
π SNOBOL4CMD(1) β bestie's guide to the snobol4 command line π
okay so this is the manual for SNOBOL4CMD, page 1 of the CSNOBOL4 Manual β it's the whole vibe of how you actually talk to the SNOBOL4 interpreter from your terminal. No cap. β¨
πΈ NAME πΈ
snobol4 β the SNOBOL4 interpreter command line syntax. that's it, that's the name, she's iconic π
π¦ SYNOPSIS π¦
snobol4 [ options ... ] [ file ... ] [ param ... ]
so you got your options, then your files, then your params, in that order bestie, don't fight it π«Ά
β¨ OPTIONS β¨
-bβ kills the start-up banner AND the termination output. lowkey important: those only show up when you didn't give any source files on the command line. also fyi in earlier releases of CSNOBOL4,-btoggled banner output instead, and banners were on by default. glow-up moment fr π-dndesc β allocates a "dynamic storage" region of ndesc descriptors for program code and data. a suffix ofkmultiplies the number by1024, a suffix ofmmultiplies the number by1048576. a bigger dynamic region may mean fewer garbage collections (storage regenerations), BUT huge values may make execution slow down when large amounts of garbage collect. most programs do not need a bigger dynamic region to run. if your program dies with an "Insufficient storage to continue" message, that's your sign to bump the dynamic storage region size up. and psst β the-hoption shows you the default dynamic region size π-fβ toggles folding of identifiers to upper case (see-CASEand&CASE).-gβ turns on garbage collection tracing (it sets>RACEto-1).-hβ give help. shows the usage message, and includes the default sizes for the "dynamic region" and the pattern match stack. bestie behavior honestly π₯°-kβ toggles running programs that have compilation errors (see the-ERRORand-NOERRORSextensions). by default, programs with compilation errors will not be run.-lLISTINGFILE β enables listing output to the named file. the default listing side isLEFT.-nβ toggles running programs after compilation (see the-EXECUTEand-NOEXECUTEextensions). by default, programs are run after compilation.-pβ toggles SPITBOL extensions (also controlled by-PLUSOPS).-rβ toggles readingINPUTfrom the command line / source file(s) after theENDlabel. otherwise,INPUTdefaults (back) to standard input once program compilation is complete.-sβ toggles termination statistics (off by default).-uparam β specify a parameter string available viaHOST(0).-vβ show version and exit. bye π-xβ force banner and termination output.-zβ show the directory search path in use (including all-Ioptions on the command line) and exit.-Bβ toggles SNOBOL4B operators (also controlled by-[NO]BLOCKS).-Idirectory β adds directory to the directory search path before any other directories (i.e.; fromSNOPATHor default entries). may be used multiple times. stack 'em up π-Lfile β preload a SNOBOL4 source file. may be used multiple times. this is literally how you preload thesdb(1)source code debugger, iykyk.-Mβ specifies that all items left on the command line after option processing is complete are to be treated as filenames. the files are read in turn until anENDstatement is found. (any remaining data is available via theINPUTvariable if the-roption is also given.)-Nβ disables the standard search path, INCLUDING the current working directory. only directories specified by-Ioptions will be searched. mnemonic: "no standard include". she said no thanks, blocked π«-Pndesc β allocates ndesc descriptors for the pattern match stack. a suffix ofkmultiplies the number by1024, a suffix ofmmultiplies the number by1048576. the pattern match stack is what saves backtracking and conditional assignment information during pattern matching. if your program dies with an "Overflow during pattern matching" message (Error 16), you need to increase the pattern match stack size. the-hoption shows the default pattern match stack size. π-Sndesc β allocates ndesc descriptors for the interpreter stack. a suffix ofkmultiplies the number by1024, a suffix ofmmultiplies the number by1048576. the interpreter stack saves data and passes parameters to internal procedures. if your program dies with a "Stack overflow" message (Error 21), you need to increase the interpreter stack size. a common reason you'd need extra stack space is tracing deeply nestedDATA()structures during garbage collection. the-hoption shows the default interpreter stack size. π-Uβ disables stdio buffering. it's also set if theSNOBOL4UNBUFFEREDenvironment variable is set to a non-null value. this will increase runtime, but it improves behavior when sucking on pipes (use ptys!). π--β terminates processing items as options. any remaining strings are treated as files or user parameters (see theHOST()function).
π SEE ALSO π
and that's the whole page bestie, you ate that π
sign-off: this manual is from CSNOBOL4B 2.3.1, dated March 31, 2022. that's the source, the version, and the date β all three, no cap. periodt ππ¦β¨
π¦ where this page comes from
- fedora 43: snobol4 2.3.1-7.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND ISC
- fedora 43: snobol4 2.3.1-7.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND ISC
- fedora 44: snobol4 2.3.1-8.fc44 Β· BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND ISC
- fedora 44: snobol4 2.3.1-8.fc44 Β· BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND ISC
- opensuse-leap 16.0: snobol4 2.3.1-160000.2.2 Β· BSD-2-Clause
- opensuse-leap 16.0: snobol4 2.3.1-160000.2.2 Β· BSD-2-Clause
- opensuse-leap 16.0: snobol4 2.3.1-160000.2.2 Β· BSD-2-Clause
- opensuse-leap 16.0: snobol4 2.3.1-160000.2.2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms