pike(1)
π pike(1) β Pike Manual π
okay so welcome to the Pike Manual, bestie π this is the page for pike(1), the one and only compiler + interpreter situation. grab a strawberry π and let's go.
β¨ NAME β¨
pike β pike compiler and interpreter
πΈ SYNOPSIS πΈ
pike [ -driver-options ... ] [ script [ script-arguments ... ] ]
π¦ DESCRIPTION π¦
Compiler and interpreter for the Pike programming language. that's it. that's the vibe. she compiles, she interprets, she slays π
π OPTIONS π
okay so these ones are the options the loader supports, iykyk:
-aβ bump the debug level of the peep-hole optimizer by 1 (debug).-anumβ set the debug level of the peep-hole optimizer tonum(debug).-Dsymbolβ define the preprocessor symbolsymbolto1.-Dsymbol=valueβ define the preprocessor symbolsymboltovalue.-dβ bump the debug level by 1 (debug).-dnumβ set the debug level tonum(debug).-dcβ bump the debug level of the Pike compiler (debug).-dgβ resets the debug malloc at every garbage collection (debug).-dLβ Windows only: enable Windows error dialogs when dll files cannot be loaded.
ngl this one has lore π«Ά it's super common for Pike to have modules linked to dll files that just aren't in every installation. so by default these error dialogs are turned off, so that Pike doesn't hang on them while it's trying to load certain modules. no cap.
BUT. and this is the plot twist π the error dialogs are literally the only way to see which dll's could not be loaded. so if you're trying to figure out why a certain module refuses to load, this option may be necessary. it's giving detective mode π
-dpβ turns off the peep hole optimization (debug).-dsβ debug signals (debug).-dtβ turn off tail recursion optimization (debug).-dTβ enable extra checks in the thread library, e.g. mutex sanity checks (debug).-lβ bump the debug level of the global optimizer by 1 (debug).-lnumβ set the debug level of the global optimizer tonum(debug).-mmaster_programβ usemaster_programinstead of the ordinary master program.-pβ bump the level of profiling by 1 (debug).-pnumβ set the level of profiling tonum(debug).-psβ enable stack profiling (debug).-qnumβ end execution after executingnumPike instructions.-rtβ turn on runtime checking of arguments to function calls, and soft casts.-rTβ turn on#pragma strict_typesfor all files.-snumβ set Pike stack size tonum(minimum is256). β οΈ don't get cute with numbers under 256.-ssnumβ set the pike C-level thread stack size tonum.-tβ bump the level of runtime trace by 1 (debug).-tnumβ set the level of runtime trace tonum(debug).-tgβ log the gc runs tostderr.
and these next ones? these are supported by the default master program. different department, same queen π
-h,--help, β print help message and exit.-eexpr,--execute=exprβ executeexprand exit.-xtoolnameβ execute internal tooltoolnamefromTools.Standalone. omittoolnamefor a list of available tools.-E,--preprocessβ just run the preprocessor.-Idir,--include-path=dirβ appenddirto the include path.-Mdir,--modue-path=dirβ appenddirto the module path.-Pdir,--program-path=dirβ appenddirto the program path.-v,--versionβ print version of Pike and exit.-Vmajor.minor,--compat=major.minorβ set the compatibility version to Pike versionmajor.minor.-w,--warningsβ enable warnings.-W,--woff,--no-warningsβ disable warnings.--assembler-debugβ set the peephole optimizer debug level (debug).--autoreloadβ turn on the autoreload mode of the master.--compiler-traceβ turn on tracing of the Pike compiler (debug).--debugβ increase or set the debug level (debug).--debug-without=featureβ hidefeaturefrom the resolver (debug).--dumpversionβ print the Pike version number tostderr, e.g."8.0.10\n"--featuresβ list some of the features that are enabled in this Pike binary and exit (debug).--infoβ show various information about this Pike installation and exit (debug).--optimizer-debugβ set the global optimizer debug level (debug).--show-all-cpp-warnings,--picky-cppβ enable warnings for failing#if constant()expressions.--show-pathsβ show the paths pike will use and exit (debug).--traceβ increase the trace level (debug).--trace=numβ set the trace level tonum(debug).
π OPERANDS π
only one operand, and she's the main character:
scriptβ a path to a script written in Pike to be compiled and then executed. everything on the commandline after thescriptgets passed as arguments to themain()function in the script. periodt. π
if no script is specified, pike will start in interactive- (Hilfe) mode. yes, Hilfe. iconic. π
π§ REGISTRY KEYS π§
on Windows, Pike is affected by the following keys in the registry:
HKEY_CURRENT_USER\Software\Pike\8.0\PIKE_MASTERHKEY_LOCAL_MACHINE\Software\Pike\8.0\PIKE_MASTER
β Specifies the name of the master program (overridden by -m). if these keys are not set (which is the default, bestie), then Pike finds the master by relative path from pike.exe.
π ENVIRONMENT π
Pike is affected by the following environment variables:
PIKE_MASTERβ specifies the name of the master program (overridden by-m).
depending on the operating system, Pike may be affected by these ones too:
LC_ALLβ overrides the otherLC_*variables.LC_COLLATEβ specifies the character collation sequence.LC_CTYPEβ specifies the character classification.LC_MESSAGESβ specifies the language of the system messagedatabase.LC_NUMERICβ specifies the decimal and thousand delimiters.LC_TIMEβ specifies the date and time formats.
and the default master program is affected by these bad boys:
PIKE_INCLUDE_PATHβ list of directories separated with colon (:), to search for include-files.PIKE_PROGRAM_PATHβ list of directories separated with colon (:), to search for program-files.PIKE_MODULE_PATHβ list of directories separated with colon (:), to search for modules.LONG_PIKE_ERRORSβ if set, disables truncation of paths in backtraces.SHORT_PIKE_ERRORSβ if set andLONG_PIKE_ERRORSis not set, truncates paths to just the filename in backtraces.PIKE_BACKTRACE_LENβ the maximum number of elements in arrays to describe in backtraces.
β οΈ heads up bestie: all of the above environment variables have effect before the default master program attempts to load the Getopt(3P) module, which occurrs before the master program arguments are parsed. timing is everything, fr fr. π
π EXIT STATUS π
the following exit values are returned:
0β Successfull completion. π>0β An error occurred. See output onstderr(fd#2) for reason. π
π FILES π
/usr/local/pike/8.0.*/lib/master.pikeβ default master program/usr/local/pike/8.0.*/lib/modules/*β default module directory/usr/local/pike/8.0.*/lib/?.?/*β backward compatibility modules/usr/local/pike/8.0.*/lib/include/*β pike include files/usr/local/pike/8.0.*/tools/pike.elβ emacs fontlock definitions forpike-mode/usr/local/pike/8.0.*/include/pike/*β C-include files/usr/local/pike/8.0.*/man/*β manual pages for pike
β SEE ALSO β
hilfe(1), Getopt(3P), environ(5).
- Pike Programming Tutorial
- Pike Reference Manual
- Pike: an Introduction by H. William Welliver III and Martin BΓ€hr, 2007.
and that's the whole page, bestie π tysm for reading, go write something iconic with it π«Ά
this masterpiece came to you from Pike, dated $Date: 2008/08/12 20:18:50 $ β yeah she's vintage, she's still serving πβ¨
π¦ where this page comes from
- alpine 3.24: pike-doc 8.0.2040-r1 Β· GPL-2.0-or-later
- nixos 26.05: pike 8.0.2042
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms