This file is indexed.

/usr/share/doc/racket/reference/runtime.html is in racket-doc 6.1-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"/><title>15.8&nbsp;Environment and Runtime Information</title><link rel="stylesheet" type="text/css" href="../scribble.css" title="default"/><link rel="stylesheet" type="text/css" href="extras.css" title="default"/><link rel="stylesheet" type="text/css" href="../racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-style.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../doc-site.css" title="default"/><script type="text/javascript" src="../scribble-common.js"></script><script type="text/javascript" src="../manual-racket.js"></script><script type="text/javascript" src="../manual-racket.js"></script><script type="text/javascript" src="../doc-site.js"></script><script type="text/javascript" src="../local-redirect/local-redirect.js"></script><script type="text/javascript" src="../local-redirect/local-user-redirect.js"></script><!--[if IE 6]><style type="text/css">.SIEHidden { overflow: hidden; }</style><![endif]--></head><body id="doc-racket-lang-org"><div class="tocset"><div class="tocview"><div class="tocviewlist tocviewlisttopspace"><div class="tocviewtitle"><table cellspacing="0" cellpadding="0"><tr><td style="width: 1em;"><a href="javascript:void(0);" title="Expand/Collapse" class="tocviewtoggle" onclick="TocviewToggle(this,&quot;tocview_0&quot;);">&#9658;</a></td><td></td><td><a href="index.html" class="tocviewlink" data-pltdoc="x"><span style="font-weight: bold">The Racket Reference</span></a></td></tr></table></div><div class="tocviewsublisttop" style="display: none;" id="tocview_0"><table cellspacing="0" cellpadding="0"><tr><td align="right">1&nbsp;</td><td><a href="model.html" class="tocviewlink" data-pltdoc="x">Language Model</a></td></tr><tr><td align="right">2&nbsp;</td><td><a href="notation.html" class="tocviewlink" data-pltdoc="x">Notation for Documentation</a></td></tr><tr><td align="right">3&nbsp;</td><td><a href="syntax.html" class="tocviewlink" data-pltdoc="x">Syntactic Forms</a></td></tr><tr><td align="right">4&nbsp;</td><td><a href="data.html" class="tocviewlink" data-pltdoc="x">Datatypes</a></td></tr><tr><td align="right">5&nbsp;</td><td><a href="structures.html" class="tocviewlink" data-pltdoc="x">Structures</a></td></tr><tr><td align="right">6&nbsp;</td><td><a href="mzlib_class.html" class="tocviewlink" data-pltdoc="x">Classes and Objects</a></td></tr><tr><td align="right">7&nbsp;</td><td><a href="mzlib_unit.html" class="tocviewlink" data-pltdoc="x">Units</a></td></tr><tr><td align="right">8&nbsp;</td><td><a href="contracts.html" class="tocviewlink" data-pltdoc="x">Contracts</a></td></tr><tr><td align="right">9&nbsp;</td><td><a href="match.html" class="tocviewlink" data-pltdoc="x">Pattern Matching</a></td></tr><tr><td align="right">10&nbsp;</td><td><a href="control.html" class="tocviewlink" data-pltdoc="x">Control Flow</a></td></tr><tr><td align="right">11&nbsp;</td><td><a href="concurrency.html" class="tocviewlink" data-pltdoc="x">Concurrency and Parallelism</a></td></tr><tr><td align="right">12&nbsp;</td><td><a href="Macros.html" class="tocviewlink" data-pltdoc="x">Macros</a></td></tr><tr><td align="right">13&nbsp;</td><td><a href="input-and-output.html" class="tocviewlink" data-pltdoc="x">Input and Output</a></td></tr><tr><td align="right">14&nbsp;</td><td><a href="security.html" class="tocviewlink" data-pltdoc="x">Reflection and Security</a></td></tr><tr><td align="right">15&nbsp;</td><td><a href="os.html" class="tocviewselflink" data-pltdoc="x">Operating System</a></td></tr><tr><td align="right">16&nbsp;</td><td><a href="memory.html" class="tocviewlink" data-pltdoc="x">Memory Management</a></td></tr><tr><td align="right">17&nbsp;</td><td><a href="unsafe.html" class="tocviewlink" data-pltdoc="x">Unsafe Operations</a></td></tr><tr><td align="right">18&nbsp;</td><td><a href="running.html" class="tocviewlink" data-pltdoc="x">Running Racket</a></td></tr><tr><td align="right"></td><td><a href="doc-bibliography.html" class="tocviewlink" data-pltdoc="x">Bibliography</a></td></tr><tr><td align="right"></td><td><a href="doc-index.html" class="tocviewlink" data-pltdoc="x">Index</a></td></tr></table></div></div><div class="tocviewlist"><table cellspacing="0" cellpadding="0"><tr><td style="width: 1em;"><a href="javascript:void(0);" title="Expand/Collapse" class="tocviewtoggle" onclick="TocviewToggle(this,&quot;tocview_1&quot;);">&#9660;</a></td><td>15&nbsp;</td><td><a href="os.html" class="tocviewlink" data-pltdoc="x">Operating System</a></td></tr></table><div class="tocviewsublistbottom" style="display: block;" id="tocview_1"><table cellspacing="0" cellpadding="0"><tr><td align="right">15.1&nbsp;</td><td><a href="pathutils.html" class="tocviewlink" data-pltdoc="x">Paths</a></td></tr><tr><td align="right">15.2&nbsp;</td><td><a href="Filesystem.html" class="tocviewlink" data-pltdoc="x">Filesystem</a></td></tr><tr><td align="right">15.3&nbsp;</td><td><a href="networking.html" class="tocviewlink" data-pltdoc="x">Networking</a></td></tr><tr><td align="right">15.4&nbsp;</td><td><a href="subprocess.html" class="tocviewlink" data-pltdoc="x">Processes</a></td></tr><tr><td align="right">15.5&nbsp;</td><td><a href="logging.html" class="tocviewlink" data-pltdoc="x">Logging</a></td></tr><tr><td align="right">15.6&nbsp;</td><td><a href="time.html" class="tocviewlink" data-pltdoc="x">Time</a></td></tr><tr><td align="right">15.7&nbsp;</td><td><a href="envvars.html" class="tocviewlink" data-pltdoc="x">Environment Variables</a></td></tr><tr><td align="right">15.8&nbsp;</td><td><a href="" class="tocviewselflink" data-pltdoc="x">Environment and Runtime Information</a></td></tr><tr><td align="right">15.9&nbsp;</td><td><a href="Command-Line_Parsing.html" class="tocviewlink" data-pltdoc="x">Command-<wbr></wbr>Line Parsing</a></td></tr></table></div></div></div><div class="tocsub"><div class="tocsubtitle">On this page:</div><table class="tocsublist" cellspacing="0"><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._system-type%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">system-<wbr></wbr>type</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._system-language%2Bcountry%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">system-<wbr></wbr>language+<span class="mywbr"> &nbsp;</span>country</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._system-library-subpath%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">system-<wbr></wbr>library-<wbr></wbr>subpath</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._version%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">version</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._banner%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">banner</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._current-command-line-arguments%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">current-<wbr></wbr>command-<wbr></wbr>line-<wbr></wbr>arguments</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._current-thread-initial-stack-size%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">current-<wbr></wbr>thread-<wbr></wbr>initial-<wbr></wbr>stack-<wbr></wbr>size</span></span></a></td></tr><tr><td><a href="#%28def._%28%28quote._~23~25kernel%29._vector-set-performance-stats%21%29%29" class="tocsublink" data-pltdoc="x"><span class="RktSym"><span class="RktValLink">vector-<wbr></wbr>set-<wbr></wbr>performance-<wbr></wbr>stats!</span></span></a></td></tr></table></div></div><div class="maincolumn"><div class="main"><div class="navsettop"><span class="navleft"><form class="searchform"><input class="searchbox" style="color: #888;" type="text" value="...search manuals..." title="Enter a search string to search the manuals" onkeypress="return DoSearchKey(event, this, &quot;6.1&quot;, &quot;../&quot;);" onfocus="this.style.color=&quot;black&quot;; this.style.textAlign=&quot;left&quot;; if (this.value == &quot;...search manuals...&quot;) this.value=&quot;&quot;;" onblur="if (this.value.match(/^ *$/)) { this.style.color=&quot;#888&quot;; this.style.textAlign=&quot;center&quot;; this.value=&quot;...search manuals...&quot;; }"/></form>&nbsp;&nbsp;<a href="../index.html" title="up to the documentation top" data-pltdoc="x" onclick="return GotoPLTRoot(&quot;6.1&quot;);">top</a></span><span class="navright">&nbsp;&nbsp;<a href="envvars.html" title="backward to &quot;15.7 Environment Variables&quot;" data-pltdoc="x">&larr; prev</a>&nbsp;&nbsp;<a href="os.html" title="up to &quot;15 Operating System&quot;" data-pltdoc="x">up</a>&nbsp;&nbsp;<a href="Command-Line_Parsing.html" title="forward to &quot;15.9 Command-Line Parsing&quot;" data-pltdoc="x">next &rarr;</a></span>&nbsp;</div><h4 x-source-module="(lib &quot;scribblings/reference/reference.scrbl&quot;)" x-part-tag="&quot;runtime&quot;">15.8<tt>&nbsp;</tt><a name="(part._runtime)"></a>Environment and Runtime Information</h4><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._system-type))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._system-type%29%29" class="RktValDef RktValLink" data-pltdoc="x">system-type</a></span></span><span class="hspace">&nbsp;</span>[<span class="RktVar">mode</span>]<span class="RktPn">)</span></p></blockquote></td></tr><tr><td><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fbase..rkt%29._or%2Fc%29%29" class="RktValLink" data-pltdoc="x">or/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="symbols.html#%28def._%28%28quote._~23~25kernel%29._symbol~3f%29%29" class="RktValLink" data-pltdoc="x">symbol?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="bytestrings.html#%28def._%28%28quote._~23~25kernel%29._bytes~3f%29%29" class="RktValLink" data-pltdoc="x">bytes?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="number-types.html#%28def._%28%28quote._~23~25kernel%29._exact-positive-integer~3f%29%29" class="RktValLink" data-pltdoc="x">exact-positive-integer?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="vectors.html#%28def._%28%28quote._~23~25kernel%29._vector~3f%29%29" class="RktValLink" data-pltdoc="x">vector?</a></span><span class="RktPn">)</span></td></tr><tr><td><table cellspacing="0" cellpadding="0" class="argcontract"><tr><td><span class="hspace">&nbsp;&nbsp;</span></td><td><span class="RktVar">mode</span></td><td><span class="hspace">&nbsp;</span></td><td>:</td><td><span class="hspace">&nbsp;</span></td><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fbase..rkt%29._or%2Fc%29%29" class="RktValLink" data-pltdoc="x">or/c</a></span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">os</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">word</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">gc</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">link</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">machine</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktVal">'</span><span class="RktVal">so-suffix</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">so-mode</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">fs-change</span><span class="RktPn">)</span></td></tr></table></td><td><span class="hspace">&nbsp;</span></td><td>=</td><td><span class="hspace">&nbsp;</span></td><td><span class="RktVal">'</span><span class="RktVal">os</span></td></tr></table></td></tr></table></blockquote></div><div class="SIntrapara">Returns information about the operating system, build mode, or machine
for a running Racket.</div></p><p>In <a name="(idx._(gentag._339._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">os</span> mode,
 the possible symbol results are:</p><ul><li><p><a name="(idx._(gentag._340._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">unix</span></p></li><li><p><a name="(idx._(gentag._341._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">windows</span></p></li><li><p><a name="(idx._(gentag._342._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">macosx</span></p></li></ul><p>In <a name="(idx._(gentag._343._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">word</span> mode, the result is either <span class="RktVal">32</span> or
<span class="RktVal">64</span> to indicate whether Racket is running as a 32-bit program
or 64-bit program.</p><p>In <a name="(idx._(gentag._344._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">gc</span> mode,
the possible symbol results are:</p><ul><li><p><a name="(idx._(gentag._345._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">cgc</span></p></li><li><p><a name="(idx._(gentag._346._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">3m</span></p></li></ul><p>In <a name="(idx._(gentag._347._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">link</span> mode, the possible symbol results are:</p><ul><li><p><a name="(idx._(gentag._348._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">static</span> (Unix)</p></li><li><p><a name="(idx._(gentag._349._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">shared</span> (Unix)</p></li><li><p><a name="(idx._(gentag._350._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">dll</span> (Windows)</p></li><li><p><a name="(idx._(gentag._351._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">framework</span> (Mac OS X)</p></li></ul><p>Future ports of Racket may expand the list of <span class="RktVal">'</span><span class="RktVal">os</span>,
<span class="RktVal">'</span><span class="RktVal">gc</span>, and <span class="RktVal">'</span><span class="RktVal">link</span> results.</p><p>In <a name="(idx._(gentag._352._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">machine</span> mode, then the result is a string, which
contains further details about the current machine in a
platform-specific format.</p><p>In <a name="(idx._(gentag._353._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">so-suffix</span> mode, then the result is a byte string
that represents the file extension used for shared objects on the
current platform. The byte string starts with a period, so it is
suitable as a second argument to <span class="RktSym"><a href="Manipulating_Paths.html#%28def._%28%28lib._racket%2Fprivate%2Fmisc..rkt%29._path-replace-suffix%29%29" class="RktValLink" data-pltdoc="x">path-replace-suffix</a></span>.</p><p>In <a name="(idx._(gentag._354._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">so-mode</span> mode, then the result is <span class="RktVal">'</span><span class="RktVal">local</span>
if foreign libraries should be opened in &ldquo;local&rdquo; mode by default
(as on most platforms) or <span class="RktVal">'</span><span class="RktVal">global</span> if foreign libraries
should be opened in &ldquo;global&rdquo; mode.</p><p>In <a name="(idx._(gentag._355._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">fs-change</span> mode, the result is an immutable vector
of four elements. Each element is either <span class="RktVal">#f</span> or a symbol,
where a symbol indicates the presence of a property and <span class="RktVal">#f</span>
indicates the absence of a property. The possible symbols, in order,
are:</p><ul><li><p><a name="(idx._(gentag._356._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">supported</span> &#8212;<wbr></wbr> <span class="RktSym"><a href="Filesystem.html#%28def._%28%28quote._~23~25kernel%29._filesystem-change-evt%29%29" class="RktValLink" data-pltdoc="x">filesystem-change-evt</a></span>
can produce a <a href="Filesystem.html#%28tech._filesystem._change._event%29" class="techoutside" data-pltdoc="x"><span class="techinside">filesystem change event</span></a> to monitor filesystem changes;
if this symbol is not first in the vector, all other vector elements
are <span class="RktVal">#f</span></p></li><li><p><a name="(idx._(gentag._357._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">scalable</span> &#8212;<wbr></wbr> resources consumed by a
<a href="Filesystem.html#%28tech._filesystem._change._event%29" class="techoutside" data-pltdoc="x"><span class="techinside">filesystem change event</span></a> are effectively limited only by
available memory, as opposed to file-descriptor limits; this property
is <span class="RktVal">#f</span> on Mac OS X and BSD variants of Unix</p></li><li><p><a name="(idx._(gentag._358._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">low-latency</span> &#8212;<wbr></wbr> creation and checking of a
<a href="Filesystem.html#%28tech._filesystem._change._event%29" class="techoutside" data-pltdoc="x"><span class="techinside">filesystem change event</span></a> is practically instantaneous; this
property is <span class="RktVal">#f</span> on Linux</p></li><li><p><a name="(idx._(gentag._359._(lib._scribblings/reference/reference..scrbl)))"></a><span class="RktVal">'</span><span class="RktVal">file-level</span> &#8212;<wbr></wbr> a <a href="Filesystem.html#%28tech._filesystem._change._event%29" class="techoutside" data-pltdoc="x"><span class="techinside">filesystem change
event</span></a> can track changes at the level of a file, as opposed to the
file&rsquo;s directory; this property is <span class="RktVal">#f</span> on Windows</p></li></ul><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._system-language+country))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._system-language%2Bcountry%29%29" class="RktValDef RktValLink" data-pltdoc="x">system-language+country</a></span></span><span class="RktPn"></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span></p></blockquote></td></tr></table></blockquote></div><div class="SIntrapara">Returns a string to identify the current user&rsquo;s language and
country.</div></p><p>On Unix and Mac OS X, the string is five characters: two lowercase
ASCII letters for the language, an underscore, and two uppercase ASCII
letters for the country. On Windows, the string can be arbitrarily
long, but the language and country are in English (all ASCII letters
or spaces) separated by an underscore.</p><p>On Unix, the result is determined by checking the
<a name="(idx._(gentag._360._(lib._scribblings/reference/reference..scrbl)))"></a><span class="stt">LC_ALL</span>, <a name="(idx._(gentag._361._(lib._scribblings/reference/reference..scrbl)))"></a><span class="stt">LC_TYPE</span>, and
<a name="(idx._(gentag._362._(lib._scribblings/reference/reference..scrbl)))"></a><span class="stt">LANG</span> environment variables, in that order (and the
result is used if the environment variable&rsquo;s value starts with two
lowercase ASCII letters, an underscore, and two uppercase ASCII
letters, followed by either nothing or a period). On Windows and
Mac OS X, the result is determined by system calls.</p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._system-library-subpath))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._system-library-subpath%29%29" class="RktValDef RktValLink" data-pltdoc="x">system-library-subpath</a></span></span><span class="hspace">&nbsp;</span>[<span class="RktVar">mode</span>]<span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="Manipulating_Paths.html#%28def._%28%28quote._~23~25kernel%29._path~3f%29%29" class="RktValLink" data-pltdoc="x">path?</a></span></p></blockquote></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">mode</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fbase..rkt%29._or%2Fc%29%29" class="RktValLink" data-pltdoc="x">or/c</a></span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">cgc</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">3m</span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>=<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._system-type%29%29" class="RktValLink" data-pltdoc="x">system-type</a></span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">gc</span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">Returns a relative directory path. This string can be used to build
paths to system-specific files. For example, when Racket is running
on Solaris on a Sparc architecture, the subpath starts
<span class="RktVal">"sparc-solaris"</span>, while the subpath for Windows on an i386
architecture starts <span class="RktVal">"win32\\i386"</span>.</div></p><p>The optional <span class="RktVar">mode</span> argument specifies the relevant
garbage-collection variant, which one of the possible results of
<span class="RktPn">(</span><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._system-type%29%29" class="RktValLink" data-pltdoc="x">system-type</a></span><span class="stt"> </span><span class="RktVal">'</span><span class="RktVal">gc</span><span class="RktPn">)</span>: <span class="RktVal">'</span><span class="RktVal">cgc</span> or <span class="RktVal">'</span><span class="RktVal">3m</span>. It can also
be <span class="RktVal">#f</span>, in which case the result is independent of the
garbage-collection variant.</p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._version))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._version%29%29" class="RktValDef RktValLink" data-pltdoc="x">version</a></span></span><span class="RktPn"></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fmisc..rkt%29._and%2Fc%29%29" class="RktValLink" data-pltdoc="x">and/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="booleans.html#%28def._%28%28quote._~23~25kernel%29._immutable~3f%29%29" class="RktValLink" data-pltdoc="x">immutable?</a></span><span class="RktPn">)</span></p></blockquote></td></tr></table></blockquote></div><div class="SIntrapara">Returns an string indicating the currently executing version of
Racket.</div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._banner))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._banner%29%29" class="RktValDef RktValLink" data-pltdoc="x">banner</a></span></span><span class="RktPn"></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fmisc..rkt%29._and%2Fc%29%29" class="RktValLink" data-pltdoc="x">and/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="booleans.html#%28def._%28%28quote._~23~25kernel%29._immutable~3f%29%29" class="RktValLink" data-pltdoc="x">immutable?</a></span><span class="RktPn">)</span></p></blockquote></td></tr></table></blockquote></div><div class="SIntrapara">Returns an immutable string for Racket&rsquo;s start-up banner text (or the
banner text for an embedding program, such as GRacket). The banner string
ends with a newline.</div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>parameter</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._current-command-line-arguments))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._current-command-line-arguments%29%29" class="RktValDef RktValLink" data-pltdoc="x">current-command-line-arguments</a></span></span><span class="RktPn"></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fvector..rkt%29._vectorof%29%29" class="RktValLink" data-pltdoc="x">vectorof</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span><span class="RktPn">)</span></p></blockquote></td></tr><tr><td><span class="RktPn">(</span><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._current-command-line-arguments%29%29" class="RktValDef RktValLink" data-pltdoc="x">current-command-line-arguments</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">argv</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="void.html#%28def._%28%28quote._~23~25kernel%29._void~3f%29%29" class="RktValLink" data-pltdoc="x">void?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">argv</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fvector..rkt%29._vectorof%29%29" class="RktValLink" data-pltdoc="x">vectorof</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fmisc..rkt%29._and%2Fc%29%29" class="RktValLink" data-pltdoc="x">and/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="strings.html#%28def._%28%28quote._~23~25kernel%29._string~3f%29%29" class="RktValLink" data-pltdoc="x">string?</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="booleans.html#%28def._%28%28quote._~23~25kernel%29._immutable~3f%29%29" class="RktValLink" data-pltdoc="x">immutable?</a></span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">A <a href="eval-model.html#%28tech._parameter%29" class="techoutside" data-pltdoc="x"><span class="techinside">parameter</span></a> that is initialized with command-line arguments when
Racket starts (not including any command-line arguments that were
treated as flags for the system).</div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>parameter</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._current-thread-initial-stack-size))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._current-thread-initial-stack-size%29%29" class="RktValDef RktValLink" data-pltdoc="x">current-thread-initial-stack-size</a></span></span><span class="RktPn"></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="number-types.html#%28def._%28%28quote._~23~25kernel%29._exact-positive-integer~3f%29%29" class="RktValLink" data-pltdoc="x">exact-positive-integer?</a></span></p></blockquote></td></tr><tr><td><span class="RktPn">(</span><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._current-thread-initial-stack-size%29%29" class="RktValDef RktValLink" data-pltdoc="x">current-thread-initial-stack-size</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">size</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="void.html#%28def._%28%28quote._~23~25kernel%29._void~3f%29%29" class="RktValLink" data-pltdoc="x">void?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">size</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktSym"><a href="number-types.html#%28def._%28%28quote._~23~25kernel%29._exact-positive-integer~3f%29%29" class="RktValLink" data-pltdoc="x">exact-positive-integer?</a></span></td></tr></table></blockquote></div><div class="SIntrapara">A <a href="eval-model.html#%28tech._parameter%29" class="techoutside" data-pltdoc="x"><span class="techinside">parameter</span></a> that provides a hint about how much space to reserve for a
newly created thread&rsquo;s local variables. The actual space used by a
computation is affected by <a href="eval.html#%28tech._jit%29" class="techoutside" data-pltdoc="x"><span class="techinside">JIT</span></a> compilation, but it is
otherwise platform-independent.</div></p><p><div class="SIntrapara"><blockquote class="SVInsetFlow"><table cellspacing="0" cellpadding="0" class="boxed RBoxed"><tr><td><blockquote class="SubFlow"><div class="RBackgroundLabel SIEHidden"><div class="RBackgroundLabelInner"><p>procedure</p></div></div><p class="RForeground"><span class="RktPn">(</span><a name="(def._((quote._~23~25kernel)._vector-set-performance-stats!))"></a><span title="Provided from: racket/base, racket | Package: base"><span class="RktSym"><a href="#%28def._%28%28quote._~23~25kernel%29._vector-set-performance-stats%21%29%29" class="RktValDef RktValLink" data-pltdoc="x">vector-set-performance-stats!</a></span></span><span class="hspace">&nbsp;</span><span class="RktVar">results</span><span class="hspace">&nbsp;</span>[<span class="RktVar">thd</span>]<span class="RktPn">)</span><span class="hspace">&nbsp;</span>&rarr;<span class="hspace">&nbsp;</span><span class="RktSym"><a href="void.html#%28def._%28%28quote._~23~25kernel%29._void~3f%29%29" class="RktValLink" data-pltdoc="x">void?</a></span></p></blockquote></td></tr><tr><td><table cellspacing="0" cellpadding="0" class="argcontract"><tr><td><span class="hspace">&nbsp;&nbsp;</span></td><td><span class="RktVar">results</span></td><td><span class="hspace">&nbsp;</span></td><td>:</td><td><span class="hspace">&nbsp;</span></td><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fmisc..rkt%29._and%2Fc%29%29" class="RktValLink" data-pltdoc="x">and/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="vectors.html#%28def._%28%28quote._~23~25kernel%29._vector~3f%29%29" class="RktValLink" data-pltdoc="x">vector?</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fprivate%2Fmisc..rkt%29._not%2Fc%29%29" class="RktValLink" data-pltdoc="x">not/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="booleans.html#%28def._%28%28quote._~23~25kernel%29._immutable~3f%29%29" class="RktValLink" data-pltdoc="x">immutable?</a></span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr></table></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="RktVar">thd</span><span class="hspace">&nbsp;</span>:<span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="data-structure-contracts.html#%28def._%28%28lib._racket%2Fcontract%2Fbase..rkt%29._or%2Fc%29%29" class="RktValLink" data-pltdoc="x">or/c</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="threads.html#%28def._%28%28quote._~23~25kernel%29._thread~3f%29%29" class="RktValLink" data-pltdoc="x">thread?</a></span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span>=<span class="hspace">&nbsp;</span><span class="RktVal">#f</span></td></tr></table></blockquote></div><div class="SIntrapara">Sets elements in <span class="RktVar">results</span> to report current performance
statistics. If <span class="RktVar">thd</span> is not <span class="RktVal">#f</span>, a particular set of
thread-specific statistics are reported, otherwise a different set of
global statics are reported.</div></p><p>For global statistics, up to <span style="font-style: italic"></span>1<span style="font-style: italic"></span>1<span style="font-style: italic"></span> elements are set in the vector,
starting from the beginning. If <span class="RktVar">results</span> has <span style="font-style: italic">n</span> elements
where <span style="font-style: italic">n &lt; </span>1<span style="font-style: italic"></span>1<span style="font-style: italic"></span>, then the <span style="font-style: italic">n</span> elements are set to the first
<span style="font-style: italic">n</span> performance-statistics values. The reported statistics values
are as follows, in the order that they are set within
<span class="RktVar">results</span>:</p><ul><li><p><span class="RktVal">0</span>: The same value as returned by
<span class="RktSym"><a href="time.html#%28def._%28%28quote._~23~25kernel%29._current-process-milliseconds%29%29" class="RktValLink" data-pltdoc="x">current-process-milliseconds</a></span>.</p></li><li><p><span class="RktVal">1</span>: The same value as returned
by <span class="RktSym"><a href="time.html#%28def._%28%28quote._~23~25kernel%29._current-milliseconds%29%29" class="RktValLink" data-pltdoc="x">current-milliseconds</a></span>.</p></li><li><p><span class="RktVal">2</span>: The same value as returned
by <span class="RktSym"><a href="time.html#%28def._%28%28quote._~23~25kernel%29._current-gc-milliseconds%29%29" class="RktValLink" data-pltdoc="x">current-gc-milliseconds</a></span>.</p></li><li><p><span class="RktVal">3</span>: The number of garbage collections performed since
start-up.</p></li><li><p><span class="RktVal">4</span>: The number of thread context switches performed since
start-up.</p></li><li><p><span class="RktVal">5</span>: The number of internal stack overflows handled since
start-up.</p></li><li><p><span class="RktVal">6</span>: The number of threads currently scheduled for
execution (i.e., threads that are running, not suspended, and not
unscheduled due to a synchronization).</p></li><li><p><span class="RktVal">7</span>: The number of syntax objects read from compiled code
since start-up.</p></li><li><p><span class="RktVal">8</span>: The number of hash-table searches performed. When
this counter reaches the maximum value of a <a href="numbers.html#%28tech._fixnum%29" class="techoutside" data-pltdoc="x"><span class="techinside">fixnum</span></a>, it
overflows to the most negative <a href="numbers.html#%28tech._fixnum%29" class="techoutside" data-pltdoc="x"><span class="techinside">fixnum</span></a>.</p></li><li><p><span class="RktVal">9</span>: The number of additional hash slots searched to
complete hash searches (using double hashing).  When this counter
reaches the maximum value of a <a href="numbers.html#%28tech._fixnum%29" class="techoutside" data-pltdoc="x"><span class="techinside">fixnum</span></a>, it overflows to the
most negative <a href="numbers.html#%28tech._fixnum%29" class="techoutside" data-pltdoc="x"><span class="techinside">fixnum</span></a>.</p></li><li><p><span class="RktVal">10</span>: The number of bytes allocated for machine code
that is not reported by <span class="RktSym"><a href="garbagecollection.html#%28def._%28%28quote._~23~25kernel%29._current-memory-use%29%29" class="RktValLink" data-pltdoc="x">current-memory-use</a></span>.</p></li></ul><p>For thread-specific statistics, up to <span style="font-style: italic"></span>4<span style="font-style: italic"></span> elements are set in the
vector:</p><ul><li><p><span class="RktVal">0</span>: <span class="RktVal">#t</span> if the thread is running, <span class="RktVal">#f</span>
otherwise (same result as <span class="RktSym"><a href="threads.html#%28def._%28%28quote._~23~25kernel%29._thread-running~3f%29%29" class="RktValLink" data-pltdoc="x">thread-running?</a></span>).</p></li><li><p><span class="RktVal">1</span>: <span class="RktVal">#t</span> if the thread has terminated,
<span class="RktVal">#f</span> otherwise (same result as <span class="RktSym"><a href="threads.html#%28def._%28%28quote._~23~25kernel%29._thread-dead~3f%29%29" class="RktValLink" data-pltdoc="x">thread-dead?</a></span>).</p></li><li><p><span class="RktVal">2</span>: <span class="RktVal">#t</span> if the thread is currently blocked on a
synchronizable event (or sleeping for some number of milliseconds),
<span class="RktVal">#f</span> otherwise.</p></li><li><p><span class="RktVal">3</span>: The number of bytes currently in use for the
thread&rsquo;s continuation.</p></li></ul><div class="navsetbottom"><span class="navleft"><form class="searchform"><input class="searchbox" style="color: #888;" type="text" value="...search manuals..." title="Enter a search string to search the manuals" onkeypress="return DoSearchKey(event, this, &quot;6.1&quot;, &quot;../&quot;);" onfocus="this.style.color=&quot;black&quot;; this.style.textAlign=&quot;left&quot;; if (this.value == &quot;...search manuals...&quot;) this.value=&quot;&quot;;" onblur="if (this.value.match(/^ *$/)) { this.style.color=&quot;#888&quot;; this.style.textAlign=&quot;center&quot;; this.value=&quot;...search manuals...&quot;; }"/></form>&nbsp;&nbsp;<a href="../index.html" title="up to the documentation top" data-pltdoc="x" onclick="return GotoPLTRoot(&quot;6.1&quot;);">top</a></span><span class="navright">&nbsp;&nbsp;<a href="envvars.html" title="backward to &quot;15.7 Environment Variables&quot;" data-pltdoc="x">&larr; prev</a>&nbsp;&nbsp;<a href="os.html" title="up to &quot;15 Operating System&quot;" data-pltdoc="x">up</a>&nbsp;&nbsp;<a href="Command-Line_Parsing.html" title="forward to &quot;15.9 Command-Line Parsing&quot;" data-pltdoc="x">next &rarr;</a></span>&nbsp;</div></div></div><div id="contextindicator">&nbsp;</div></body></html>