Ignore:
Timestamp:
Aug 22, 2008, 11:00:39 PM (11 years ago)
Author:
gb
Message:

fix makefile-common, generate html

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/doc/ccl-documentation.html

    r9209 r10552  
    66    <title>Clozure CL Documentation</title>
    77    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    8     <link rel="start" href="#id301106" title="Clozure CL Documentation" />
    9     <link rel="next" href="#id322476" title="Chapter 1. About Clozure CL" />
     8    <link rel="start" href="#id472427" title="Clozure CL Documentation" />
     9    <link rel="next" href="#id491128" title="Chapter 1. About Clozure CL" />
    1010  </head>
    1111  <body>
     
    1414        <div>
    1515          <div>
    16             <h1 class="title"><a id="id301106"></a>Clozure CL Documentation</h1>
     16            <h1 class="title"><a id="id472427"></a>Clozure CL Documentation</h1>
    1717          </div>
    1818        </div>
     
    2323          <dt>
    2424            <span class="chapter">
    25               <a href="#id322476">1. About Clozure CL</a>
     25              <a href="#id491128">1. About Clozure CL</a>
    2626            </span>
    2727          </dt>
     
    3030              <dt>
    3131                <span class="sect1">
    32                   <a href="#id378260">1.1. Introduction to Clozure CL</a>
     32                  <a href="#id547615">1.1. Introduction to Clozure CL</a>
    3333                </span>
    3434              </dt>
     
    3737          <dt>
    3838            <span class="chapter">
    39               <a href="#id335115">2. Obtaining, Installing, and Running Clozure CL</a>
     39              <a href="#id503984">2. Obtaining, Installing, and Running Clozure CL</a>
    4040            </span>
    4141          </dt>
     
    4444              <dt>
    4545                <span class="sect1">
    46                   <a href="#id360672">2.1. Releases and System Requirements</a>
     46                  <a href="#id540208">2.1. Releases and System Requirements</a>
    4747                </span>
    4848              </dt>
    4949              <dt>
    5050                <span class="sect1">
    51                   <a href="#id364310">2.2. Obtaining Clozure CL</a>
     51                  <a href="#id538413">2.2. Obtaining Clozure CL</a>
    5252                </span>
    5353              </dt>
    5454              <dt>
    5555                <span class="sect1">
    56                   <a href="#id308181">2.3. Command Line Set Up</a>
     56                  <a href="#id548194">2.3. Command Line Set Up</a>
    5757                </span>
    5858              </dt>
     
    8181          <dt>
    8282            <span class="chapter">
    83               <a href="#id321732">3. Building Clozure CL from its Source Code</a>
     83              <a href="#id503558">3. Building Clozure CL from its Source Code</a>
    8484            </span>
    8585          </dt>
     
    115115          <dt>
    116116            <span class="chapter">
    117               <a href="#id322946">4. Using Clozure CL</a>
     117              <a href="#id518767">4. Using Clozure CL</a>
    118118            </span>
    119119          </dt>
     
    122122              <dt>
    123123                <span class="sect1">
    124                   <a href="#id370264">4.1. Introduction</a>
     124                  <a href="#id565771">4.1. Introduction</a>
    125125                </span>
    126126              </dt>
     
    159159          <dt>
    160160            <span class="chapter">
    161               <a href="#id351866">5. The Clozure CL IDE</a>
     161              <a href="#id552477">5. The Clozure CL IDE</a>
    162162            </span>
    163163          </dt>
     
    166166              <dt>
    167167                <span class="sect1">
    168                   <a href="#id391992">5.1. Introduction</a>
     168                  <a href="#id544505">5.1. Introduction</a>
    169169                </span>
    170170              </dt>
    171171              <dt>
    172172                <span class="sect1">
    173                   <a href="#id388704">5.2. Building the IDE</a>
     173                  <a href="#id524038">5.2. Building the IDE</a>
    174174                </span>
    175175              </dt>
    176176              <dt>
    177177                <span class="sect1">
    178                   <a href="#id352336">5.3. Running the IDE</a>
     178                  <a href="#id562577">5.3. Running the IDE</a>
    179179                </span>
    180180              </dt>
    181181              <dt>
    182182                <span class="sect1">
    183                   <a href="#id349170">5.4. IDE Features</a>
     183                  <a href="#id530061">5.4. IDE Features</a>
    184184                </span>
    185185              </dt>
    186186              <dt>
    187187                <span class="sect1">
    188                   <a href="#id394341">5.5. IDE Sources</a>
     188                  <a href="#id526212">5.5. IDE Sources</a>
    189189                </span>
    190190              </dt>
    191191              <dt>
    192192                <span class="sect1">
    193                   <a href="#id394374">5.6. The Application Builder</a>
     193                  <a href="#id526247">5.6. The Application Builder</a>
    194194                </span>
    195195              </dt>
     
    198198          <dt>
    199199            <span class="chapter">
    200               <a href="#Questions-and-Answers">6. Questions and Answers</a>
     200              <a href="#Programming-with-Threads">6. Programming with Threads</a>
    201201            </span>
    202202          </dt>
     
    205205              <dt>
    206206                <span class="sect1">
    207                   <a href="#How-can-I-do-nonblocking--aka--unbuffered--and--raw---IO-">6.1. How can I do nonblocking (aka "unbuffered" and "raw") IO?</a>
     207                  <a href="#Threads-overview">6.1. Threads Overview</a>
    208208                </span>
    209209              </dt>
    210210              <dt>
    211211                <span class="sect1">
    212                   <a href="#I-m-using-the-graphics-demos--Why-doesn-t-the-menubar-change-">6.2. I'm using the graphics demos. Why doesn't the menubar
    213       change?</a>
     212                  <a href="#Intentionally--Missing-Functionality">6.2. (Intentionally) Missing Functionality</a>
    214213                </span>
    215214              </dt>
    216215              <dt>
    217216                <span class="sect1">
    218                   <a href="#I-m-using-Slime-and-Cocoa--Why-doesn-t--standard-output--seem-to-work-">6.3. I'm using Slime and Cocoa. Why doesn't *standard-output*
    219       seem to work? </a>
     217                  <a href="#Implementation-Decisions-and-Open-Questions">6.3. Implementation Decisions and Open Questions</a>
     218                </span>
     219              </dt>
     220              <dt>
     221                <span class="sect1">
     222                  <a href="#Porting-Code-from-the-Old-Thread-Model">6.4. Porting Code from the Old Thread Model</a>
     223                </span>
     224              </dt>
     225              <dt>
     226                <span class="sect1">
     227                  <a href="#Background-Terminal-Input">6.5. Background Terminal Input</a>
     228                </span>
     229              </dt>
     230              <dt>
     231                <span class="sect1">
     232                  <a href="#The-Threads-which-CCL-Uses-for-Its-Own-Purposes">6.6. The Threads which Clozure CL Uses for Its Own Purposes</a>
     233                </span>
     234              </dt>
     235              <dt>
     236                <span class="sect1">
     237                  <a href="#Threads-Dictionary">6.7. Threads Dictionary</a>
    220238                </span>
    221239              </dt>
     
    224242          <dt>
    225243            <span class="chapter">
    226               <a href="#Programming-with-Threads">7. Programming with Threads</a>
     244              <a href="#Programming-with-Sockets">7. Programming with Sockets</a>
    227245            </span>
    228246          </dt>
     
    231249              <dt>
    232250                <span class="sect1">
    233                   <a href="#Threads-overview">7.1. Threads Overview</a>
     251                  <a href="#Sockets-Overview">7.1. Overview</a>
    234252                </span>
    235253              </dt>
    236254              <dt>
    237255                <span class="sect1">
    238                   <a href="#Intentionally--Missing-Functionality">7.2. (Intentionally) Missing Functionality</a>
    239                 </span>
    240               </dt>
    241               <dt>
    242                 <span class="sect1">
    243                   <a href="#Implementation-Decisions-and-Open-Questions">7.3. Implementation Decisions and Open Questions</a>
    244                 </span>
    245               </dt>
    246               <dt>
    247                 <span class="sect1">
    248                   <a href="#Porting-Code-from-the-Old-Thread-Model">7.4. Porting Code from the Old Thread Model</a>
    249                 </span>
    250               </dt>
    251               <dt>
    252                 <span class="sect1">
    253                   <a href="#Background-Terminal-Input">7.5. Background Terminal Input</a>
    254                 </span>
    255               </dt>
    256               <dt>
    257                 <span class="sect1">
    258                   <a href="#The-Threads-which-CCL-Uses-for-Its-Own-Purposes">7.6. The Threads which Clozure CL Uses for Its Own Purposes</a>
    259                 </span>
    260               </dt>
    261               <dt>
    262                 <span class="sect1">
    263                   <a href="#Threads-Dictionary">7.7. Threads Dictionary</a>
     256                  <a href="#Sockets-Dictionary">7.2. Sockets Dictionary</a>
    264257                </span>
    265258              </dt>
     
    268261          <dt>
    269262            <span class="chapter">
    270               <a href="#Programming-with-Sockets">8. Programming with Sockets</a>
     263              <a href="#Running-Other-Programs-as-Subprocesses">8. Running Other Programs as Subprocesses</a>
    271264            </span>
    272265          </dt>
     
    275268              <dt>
    276269                <span class="sect1">
    277                   <a href="#Sockets-Overview">8.1. Overview</a>
     270                  <a href="#Subprocess-Overview">8.1. Overview</a>
    278271                </span>
    279272              </dt>
    280273              <dt>
    281274                <span class="sect1">
    282                   <a href="#Sockets-Dictionary">8.2. Sockets Dictionary</a>
     275                  <a href="#Subprocess-Examples">8.2. Examples</a>
     276                </span>
     277              </dt>
     278              <dt>
     279                <span class="sect1">
     280                  <a href="#Limitations-and-known-bugs">8.3. Limitations and known bugs</a>
     281                </span>
     282              </dt>
     283              <dt>
     284                <span class="sect1">
     285                  <a href="#External-Program-Dictionary">8.4. External-Program Dictionary</a>
    283286                </span>
    284287              </dt>
     
    287290          <dt>
    288291            <span class="chapter">
    289               <a href="#Running-Other-Programs-as-Subprocesses">9. Running Other Programs as Subprocesses</a>
     292              <a href="#Streams">9. Streams</a>
    290293            </span>
    291294          </dt>
     
    294297              <dt>
    295298                <span class="sect1">
    296                   <a href="#Subprocess-Overview">9.1. Overview</a>
     299                  <a href="#CCL-Stream-Extensions">9.1. Stream Extensions</a>
    297300                </span>
    298301              </dt>
    299302              <dt>
    300303                <span class="sect1">
    301                   <a href="#Subprocess-Examples">9.2. Examples</a>
    302                 </span>
    303               </dt>
    304               <dt>
    305                 <span class="sect1">
    306                   <a href="#Limitations-and-known-bugs">9.3. Limitations and known bugs</a>
    307                 </span>
    308               </dt>
    309               <dt>
    310                 <span class="sect1">
    311                   <a href="#External-Program-Dictionary">9.4. External-Program Dictionary</a>
     304                  <a href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams">9.2. Creating Your Own Stream Classes with Gray Streams</a>
    312305                </span>
    313306              </dt>
     
    316309          <dt>
    317310            <span class="chapter">
    318               <a href="#Streams">10. Streams</a>
     311              <a href="#Writing-Portable-Extensions-to-the-Object-System-using-the-MetaObject-Protocol">10. Writing Portable Extensions to the Object System  using the MetaObject Protocol</a>
    319312            </span>
    320313          </dt>
     
    323316              <dt>
    324317                <span class="sect1">
    325                   <a href="#CCL-Stream-Extensions">10.1. Stream Extensions</a>
     318                  <a href="#MOP-Overview">10.1. Overview</a>
    326319                </span>
    327320              </dt>
    328321              <dt>
    329322                <span class="sect1">
    330                   <a href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams">10.2. Creating Your Own Stream Classes with Gray Streams</a>
     323                  <a href="#MOP-Implementation-status">10.2. Implementation status</a>
     324                </span>
     325              </dt>
     326              <dt>
     327                <span class="sect1">
     328                  <a href="#Concurrency-issues">10.3. Concurrency issues</a>
    331329                </span>
    332330              </dt>
     
    335333          <dt>
    336334            <span class="chapter">
    337               <a href="#Writing-Portable-Extensions-to-the-Object-System-using-the-MetaObject-Protocol">11. Writing Portable Extensions to the Object System  using the MetaObject Protocol</a>
     335              <a href="#Profiling">11. Profiling</a>
    338336            </span>
    339337          </dt>
     
    342340              <dt>
    343341                <span class="sect1">
    344                   <a href="#MOP-Overview">11.1. Overview</a>
     342                  <a href="#Profiling-Using the Linux oprofile system-level profiler">11.1. Using the Linux oprofile system-level profiler</a>
    345343                </span>
    346344              </dt>
    347345              <dt>
    348346                <span class="sect1">
    349                   <a href="#MOP-Implementation-status">11.2. Implementation status</a>
    350                 </span>
    351               </dt>
    352               <dt>
    353                 <span class="sect1">
    354                   <a href="#Concurrency-issues">11.3. Concurrency issues</a>
     347                  <a href="#Profiling-Using-Apples-CHUD-metering-tools">11.2. Using Apple's CHUD metering tools</a>
    355348                </span>
    356349              </dt>
     
    421414              <dt>
    422415                <span class="sect1">
    423                   <a href="#id430545">12.12. The Foreign-Function-Interface Dictionary</a>
     416                  <a href="#id602931">12.12. The Foreign-Function-Interface Dictionary</a>
    424417                </span>
    425418              </dt>
     
    632625          </dd>
    633626          <dt>
     627            <span class="chapter">
     628              <a href="#Questions-and-Answers">18. Questions and Answers</a>
     629            </span>
     630          </dt>
     631          <dd>
     632            <dl>
     633              <dt>
     634                <span class="sect1">
     635                  <a href="#How-can-I-do-nonblocking--aka--unbuffered--and--raw---IO-">18.1. How can I do nonblocking (aka "unbuffered" and "raw") IO?</a>
     636                </span>
     637              </dt>
     638              <dt>
     639                <span class="sect1">
     640                  <a href="#I-m-using-the-graphics-demos--Why-doesn-t-the-menubar-change-">18.2. I'm using the graphics demos. Why doesn't the menubar
     641      change?</a>
     642                </span>
     643              </dt>
     644              <dt>
     645                <span class="sect1">
     646                  <a href="#I-m-using-Slime-and-Cocoa--Why-doesn-t--standard-output--seem-to-work-">18.3. I'm using Slime and Cocoa. Why doesn't *standard-output*
     647      seem to work? </a>
     648                </span>
     649              </dt>
     650            </dl>
     651          </dd>
     652          <dt>
    634653            <span class="glossary">
    635654              <a href="#glossary">Glossary of Terms</a>
     
    656675          <div>
    657676            <div>
    658               <h2 class="title"><a id="id322476"></a>Chapter 1. About Clozure CL</h2>
     677              <h2 class="title"><a id="id491128"></a>Chapter 1. About Clozure CL</h2>
    659678            </div>
    660679          </div>
     
    664683            <dt>
    665684              <span class="sect1">
    666                 <a href="#id378260">1.1. Introduction to Clozure CL</a>
     685                <a href="#id547615">1.1. Introduction to Clozure CL</a>
    667686              </span>
    668687            </dt>
     
    673692            <div>
    674693              <div>
    675                 <h2 class="title" style="clear: both"><a id="id378260"></a>1.1. Introduction to Clozure CL</h2>
     694                <h2 class="title" style="clear: both"><a id="id547615"></a>1.1. Introduction to Clozure CL</h2>
    676695              </div>
    677696            </div>
     
    746765              </li>
    747766              <li>
    748                 <p>An IDE on the Mac OS X, fully integrated with
     767                <p>An IDE on Mac OS X, fully integrated with
    749768      the Macintosh window system and User Interface
    750769      standards.</p>
     
    761780              <li>
    762781                <p>Many extensions including: files mapped to
    763       Common Lisp vectors for fast file I/O; thread local hash tables
     782      Common Lisp vectors for fast file I/O; thread-local hash tables
    764783      and streams to eliminate locking overhead; cons hashing support;
    765784      and much more</p>
     
    782801          <div>
    783802            <div>
    784               <h2 class="title"><a id="id335115"></a>Chapter 2. Obtaining, Installing, and Running Clozure CL</h2>
     803              <h2 class="title"><a id="id503984"></a>Chapter 2. Obtaining, Installing, and Running Clozure CL</h2>
    785804            </div>
    786805          </div>
     
    790809            <dt>
    791810              <span class="sect1">
    792                 <a href="#id360672">2.1. Releases and System Requirements</a>
     811                <a href="#id540208">2.1. Releases and System Requirements</a>
    793812              </span>
    794813            </dt>
     
    797816                <dt>
    798817                  <span class="sect2">
    799                     <a href="#id369379">2.1.1. LinuxPPC</a>
     818                    <a href="#id525742">2.1.1. LinuxPPC</a>
    800819                  </span>
    801820                </dt>
    802821                <dt>
    803822                  <span class="sect2">
    804                     <a href="#id349897">2.1.2. Linux X8664</a>
     823                    <a href="#id535678">2.1.2. Linux X8664</a>
    805824                  </span>
    806825                </dt>
    807826                <dt>
    808827                  <span class="sect2">
    809                     <a href="#id347997">2.1.3. FreeBSD-amd64</a>
     828                    <a href="#id543148">2.1.3. FreeBSD-amd64</a>
    810829                  </span>
    811830                </dt>
    812831                <dt>
    813832                  <span class="sect2">
    814                     <a href="#id366253">2.1.4. DarwinPPC-MacOS-X</a>
     833                    <a href="#id471818">2.1.4. DarwinPPC-MacOS-X</a>
    815834                  </span>
    816835                </dt>
    817836                <dt>
    818837                  <span class="sect2">
    819                     <a href="#id364292">2.1.5. Darwinx8664-MacOS-X</a>
     838                    <a href="#id538393">2.1.5. Darwinx8664-MacOS-X</a>
    820839                  </span>
    821840                </dt>
     
    824843            <dt>
    825844              <span class="sect1">
    826                 <a href="#id364310">2.2. Obtaining Clozure CL</a>
     845                <a href="#id538413">2.2. Obtaining Clozure CL</a>
    827846              </span>
    828847            </dt>
     
    831850                <dt>
    832851                  <span class="sect2">
    833                     <a href="#id364330">2.2.1. The Mac Way</a>
     852                    <a href="#id538435">2.2.1. The Mac Way</a>
    834853                  </span>
    835854                </dt>
    836855                <dt>
    837856                  <span class="sect2">
    838                     <a href="#id397955">2.2.2. Getting Clozure CL with Subversion</a>
     857                    <a href="#id473036">2.2.2. Getting Clozure CL with Subversion</a>
    839858                  </span>
    840859                </dt>
    841860                <dt>
    842861                  <span class="sect2">
    843                     <a href="#id308156">2.2.3. Tarballs</a>
     862                    <a href="#id548167">2.2.3. Tarballs</a>
    844863                  </span>
    845864                </dt>
     
    848867            <dt>
    849868              <span class="sect1">
    850                 <a href="#id308181">2.3. Command Line Set Up</a>
     869                <a href="#id548194">2.3. Command Line Set Up</a>
    851870              </span>
    852871            </dt>
     
    894913                <dt>
    895914                  <span class="sect2">
    896                     <a href="#id371816">2.6.3. Installing SLIME</a>
     915                    <a href="#id529312">2.6.3. Installing SLIME</a>
    897916                  </span>
    898917                </dt>
     
    930949            <div>
    931950              <div>
    932                 <h2 class="title" style="clear: both"><a id="id360672"></a>2.1. Releases and System Requirements</h2>
     951                <h2 class="title" style="clear: both"><a id="id540208"></a>2.1. Releases and System Requirements</h2>
    933952              </div>
    934953            </div>
     
    967986      following subsections.</p>
    968987          <p xmlns="http://www.w3.org/1999/xhtml">Older versions are still available for downloading as
    969     tarballs.  Version 1.0 was a stable release released in late 2005.
     988    tarballs.  Version 1.0 was a stable version released in late 2005.
    970989    Version 1.1 was under active development until late 2007.  A final
    971990    1.1 release was never made.  It was distributed as a series of
    972991    development "snapshots" and CVS updates.  1.1 snapshots introduced
    973992    support for x86-64 platforms, internal use of Unicode, and many
    974     other features, but were a moving target. </p>
     993    other features, but were moving targets. </p>
    975994          <div class="sect2" lang="en" xml:lang="en">
    976995            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
    977996              <div>
    978997                <div>
    979                   <h3 class="title"><a id="id369379"></a>2.1.1. LinuxPPC</h3>
     998                  <h3 class="title"><a id="id525742"></a>2.1.1. LinuxPPC</h3>
    980999                </div>
    9811000              </div>
     
    9891008              <div>
    9901009                <div>
    991                   <h3 class="title"><a id="id349897"></a>2.1.2. Linux X8664</h3>
     1010                  <h3 class="title"><a id="id535678"></a>2.1.2. Linux X8664</h3>
    9921011                </div>
    9931012              </div>
     
    10021021      Linux have been known to have problems compiling some of the C
    10031022      code in the kernel; some very old Linux distributions don't
    1004       follow the current ABI standards wrt segment register usage;
    1005       some early Linux kernels for x86-64 had problems mapping large
    1006       regions of the address space; and so on. It's difficult to
    1007       enumerate exactly what versions of what Linux distributions have
     1023      follow the current ABI standards with regard to segment register
     1024      usage; some early Linux kernels for x86-64 had problems mapping
     1025      large regions of the address space; and so on. It's difficult to
     1026      enumerate exactly what versions of which Linux distributions have
    10081027      what problems.  A rule of thumb is that—because much of
    10091028      the development of Clozure CL for x86-64 took place in that time
     
    10151034              <div>
    10161035                <div>
    1017                   <h3 class="title"><a id="id347997"></a>2.1.3. FreeBSD-amd64</h3>
     1036                  <h3 class="title"><a id="id543148"></a>2.1.3. FreeBSD-amd64</h3>
    10181037                </div>
    10191038              </div>
     
    10301049              <div>
    10311050                <div>
    1032                   <h3 class="title"><a id="id366253"></a>2.1.4. DarwinPPC-MacOS-X</h3>
     1051                  <h3 class="title"><a id="id471818"></a>2.1.4. DarwinPPC-MacOS-X</h3>
    10331052                </div>
    10341053              </div>
     
    10501069              <div>
    10511070                <div>
    1052                   <h3 class="title"><a id="id364292"></a>2.1.5. Darwinx8664-MacOS-X</h3>
     1071                  <h3 class="title"><a id="id538393"></a>2.1.5. Darwinx8664-MacOS-X</h3>
    10531072                </div>
    10541073              </div>
     
    10691088            <div>
    10701089              <div>
    1071                 <h2 class="title" style="clear: both"><a id="id364310"></a>2.2. Obtaining Clozure CL</h2>
     1090                <h2 class="title" style="clear: both"><a id="id538413"></a>2.2. Obtaining Clozure CL</h2>
    10721091              </div>
    10731092            </div>
     
    10921111              <div>
    10931112                <div>
    1094                   <h3 class="title"><a id="id364330"></a>2.2.1. The Mac Way</h3>
     1113                  <h3 class="title"><a id="id538435"></a>2.2.1. The Mac Way</h3>
    10951114                </div>
    10961115              </div>
     
    11201139              <div>
    11211140                <div>
    1122                   <h3 class="title"><a id="id397955"></a>2.2.2. Getting Clozure CL with Subversion</h3>
     1141                  <h3 class="title"><a id="id473036"></a>2.2.2. Getting Clozure CL with Subversion</h3>
    11231142                </div>
    11241143              </div>
     
    11291148      the Mac Way.  Subversion is a source code control system that is
    11301149      in wide usage.  Most modern OSes come with subversion
    1131       pre-installed. A complete, buildable and runnable set of Clozure
    1132       CL sources and binaries can be retrieved by doing one subversion
     1150      pre-installed. A complete, buildable and runnable set of Clozure CL
     1151      sources and binaries can be retrieved by doing one subversion
    11331152      checkout.</p>
    1134             <p xmlns="http://www.w3.org/1999/xhtml">One subversion command will create a
     1153            <p xmlns="http://www.w3.org/1999/xhtml">One subversion command creates a
    11351154      <code class="literal">ccl</code> directory with runnable binaries, and a
    11361155      complete set of buildable sources.  To get the bleeding edge
     
    11431162            <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
    11441163         
    1145 svn co http://svn.clozure.com/publicsvn/openmcl/releases/1.2/darwinx8664/ccl
     1164svn co http://svn.clozure.com/publicsvn/openmcl/release/1.2/darwinx8664/ccl
    11461165        </pre>
    11471166            <p xmlns="http://www.w3.org/1999/xhtml">These examples fetch the complete sources and binaries
     
    11811200Welcome to Clozure Common Lisp Version 1.2  (DarwinX8664)!
    11821201? (rebuild-ccl :full t)
     1202
    11831203&lt;lots of compilation output&gt;
     1204
    11841205  ? (quit)
    11851206  joe:ccl&gt;
     
    12021223        </pre>
    12031224              <p xmlns="http://www.w3.org/1999/xhtml">
    1204         If Subversion is installed, it will say something like:
     1225        If Subversion is installed, you will see something like:
    12051226        </p>
    12061227              <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
     
    12091230        </pre>
    12101231              <p xmlns="http://www.w3.org/1999/xhtml">
    1211         If Subversion is not installed, it will say something
     1232        If Subversion is not installed, you will see something
    12121233        like:
    12131234        </p>
     
    12281249              <div>
    12291250                <div>
    1230                   <h3 class="title"><a id="id308156"></a>2.2.3. Tarballs</h3>
     1251                  <h3 class="title"><a id="id548167"></a>2.2.3. Tarballs</h3>
    12311252                </div>
    12321253              </div>
     
    12431264            <div>
    12441265              <div>
    1245                 <h2 class="title" style="clear: both"><a id="id308181"></a>2.3. Command Line Set Up</h2>
     1266                <h2 class="title" style="clear: both"><a id="id548194"></a>2.3. Command Line Set Up</h2>
    12461267              </div>
    12471268            </div>
    12481269          </div>
    12491270          <p xmlns="http://www.w3.org/1999/xhtml">Sometimes it's convenient to use Clozure CL from a Unix
    1250       shell command line.  This is especially true when using Clozure
    1251       CL as a way to run Common Lisp utilities.</p>
     1271      shell command line.  This is especially true when using Clozure CL
     1272      as a way to run Common Lisp utilities.</p>
    12521273          <div class="sect2" lang="en" xml:lang="en">
    12531274            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     
    12911312          <code class="literal">~/bin</code>.  It is better to do this than to
    12921313          add <code class="literal">ccl/scripts</code> to your
    1293           <em class="varname">PATH</em> since the script needs to be edited,
    1294           it will show up as modified to Subversion.</p>
     1314          <em class="varname">PATH</em>, because the script needs to be edited,
     1315          and editing it in-place means that Subversion sees the script as
     1316          modified..</p>
    12951317                </li>
    12961318                <li>
     
    13461368      you use to whatever you want.  For example, if you are on a
    13471369      64-bit system, and you only use Clozure CL in 64-bit mode, then
    1348       you can rename <code class="literal">ccl64</code> to
     1370      you can rename  <code class="literal">ccl64</code> to
    13491371      <code class="literal">ccl</code> so that you only need to type
    13501372      "<code class="literal">ccl</code>" to run it.</p>
     
    13981420          </div>
    13991421          <p xmlns="http://www.w3.org/1999/xhtml">By default Clozure CL tries to load the file
    1400       <code class="literal">"home:openmcl-init.lisp"</code> or the compiled
     1422      <code class="literal">"home:ccl-init.lisp"</code> or the compiled
    14011423         
    1402       <code class="literal">"home:openmcl-init.fasl"</code> upon starting up. It
    1403       does this by executing <code class="literal">(load
    1404       "home:openmcl-init")</code>.  If it's unable to load the file
     1424      <code class="literal">"home:ccl-init.fasl"</code> upon starting up. For
     1425      the sake of backward compatibility, it also tries to load the
     1426      file <code class="literal">"home:openmcl-init.lisp"</code>, or its compiled
     1427      equivalent. Clozure CL does this by executing <code class="literal">(load
     1428      "home:ccl-init")</code>.  If it's unable to load the file
    14051429      (for example because the file doesn't exist), Clozure CL doesn't
    14061430      signal an error or warning, it just completes its startup
     
    14101434      your home directory. Clozure CL therefore looks for either of the
    14111435      files
    1412       <code class="literal">~/openmcl-init.lisp</code> or
    1413       <code class="literal">~/openmcl-init.fasl</code>.</p>
     1436      <code class="literal">~/ccl-init.lisp</code> or
     1437      <code class="literal">~/ccl-init.fasl</code>.</p>
    14141438          <p xmlns="http://www.w3.org/1999/xhtml">Because the init file is loaded the same way as normal Lisp
    14151439      code is, you can put anything you want in it.  For example, you
     
    14271451            </div>
    14281452          </div>
    1429           <p xmlns="http://www.w3.org/1999/xhtml">When using Clozure CL from the command line, these
     1453          <p xmlns="http://www.w3.org/1999/xhtml">When using Clozure CL from the command line, the following
    14301454      options may be used to modify its behavior.  The exact set of
    14311455      Clozure CL command-line arguments may vary per platform and
     
    14451469                <p><code class="literal">-V</code> (or
    14461470              <code class="literal">--version</code>).  Prints the version of
    1447               Clozure CL then exits.  This is the same thing that is
    1448               returned by
    1449               <span class="function"><strong>LISP-APPLICATION-VERSION</strong></span>.</p>
     1471              Clozure CL then exits.  The version string is the same value
     1472              that is returned by
     1473              <span class="function"><strong>LISP-IMPLEMENTATION-VERSION</strong></span>.</p>
    14501474              </li>
    14511475              <li>
     
    14681492              </pre>
    14691493                <p>
    1470               will have the effect of making the standard CL streams use
     1494              has the effect of making the standard CL streams use
    14711495              <code class="literal">:UTF-8</code> as their character
    14721496              encoding.</p>
     
    14741498              <li>
    14751499                <p><code class="literal">-n</code> (or
    1476               <code class="literal">--no-init</code>). If this option is given,
    1477               the init file is not loaded.  This is useful if Clozure CL is
    1478               being invoked by a shell script which should not be
    1479               affected by whatever customizations a user might have in
    1480               place.</p>
     1500              <code class="literal">--no-init</code>). If this option is given, the
     1501              init file is not loaded.  This is useful if Clozure CL is being
     1502              invoked by a shell script that should not be affected by
     1503              whatever customizations a user might have in place.</p>
    14811504              </li>
    14821505              <li>
     
    15161539                <p><code class="literal">-S</code> <em class="parameter"><code>n</code></em> (or
    15171540              <code class="literal">--stack-size</code> <em class="parameter"><code>n</code></em>). Sets the size of the
    1518               initial control stack to <em class="parameter"><code>n</code></em>. (see <a class="xref" href="#Thread-Stack-Sizes" title="7.3.1. Thread Stack Sizes">Section 7.3.1, “Thread Stack Sizes”</a>)</p>
     1541              initial control stack to <em class="parameter"><code>n</code></em>. (see <a class="xref" href="#Thread-Stack-Sizes" title="6.3.1. Thread Stack Sizes">Section 6.3.1, “Thread Stack Sizes”</a>)</p>
    15191542              </li>
    15201543              <li>
     
    15221545              <code class="literal">--thread-stack-size</code>
    15231546              <em class="parameter"><code>n</code></em>). Sets the size of the first
    1524               thread's stack to <em class="parameter"><code>n</code></em>. (see <a class="xref" href="#Thread-Stack-Sizes" title="7.3.1. Thread Stack Sizes">Section 7.3.1, “Thread Stack Sizes”</a>)</p>
     1547              thread's stack to <em class="parameter"><code>n</code></em>. (see <a class="xref" href="#Thread-Stack-Sizes" title="6.3.1. Thread Stack Sizes">Section 6.3.1, “Thread Stack Sizes”</a>)</p>
    15251548              </li>
    15261549              <li>
    15271550                <p><code class="literal">-b</code> (or <code class="literal">--batch</code>). Execute in "batch mode". End-of-file
    1528               from <em class="varname">*STANDARD-INPUT*</em> will cause Clozure CL to exit, as will attempts to
     1551              from <em class="varname">*STANDARD-INPUT*</em> causes Clozure CL to exit, as do attempts to
    15291552              enter a break loop.</p>
    15301553              </li>
     
    16131636                  <p>You have a working installation of GNU Emacs. If you
    16141637                don't have a working copy of GNU Emacs, see the web page on
    1615                 obtaining Emacs.  If you prefer to use XEmacs instead of
    1616                 GNU Emacs,these instructions should still work; SLIME
    1617                 supports XEmacs Version21. Mac OS X includes an Emacs
    1618                 installation.  If you want to look into different versions,
    1619                 you can check out theEmacsWiki, which maintains a
    1620                 page,EmacsForMacOS,that provides much more information
     1638                <a class="ulink" href="http://www.gnu.org/software/emacs/#Obtaining" target="_top">obtaining
     1639                Emacs</a>.  If you prefer to use XEmacs instead of GNU
     1640                Emacs, these instructions should still work; SLIME supports
     1641                XEmacs Version21. Mac OS X includes an Emacs installation.
     1642                If you want to look into different versions, you can check
     1643                out theEmacsWiki, which maintains a
     1644                page, EmacsForMacOS, that provides much more information
    16211645                about using Emacs on the Mac.</p>
    16221646                  <p>A popular version of Emacs among Mac users is
    1623             Aquamacs. This application is a version of GNU Emacs
    1624             with a number of customizations meant to make it behave
    1625             more like a standard Macintosh application, with
    1626             windows, a menubar, etc.  Aquamacs includes SLIME; if
    1627             you like Aquamacs then you can use SLIME right away,
    1628             without getting and installing it separately. You just
    1629             need to tell SLIME where to find your installation of
    1630             Clozure CL.</p>
     1647            <a class="ulink" href="http://aquamacs.org/" target="_top">Aquamacs</a>. This
     1648            application is a version of GNU Emacs with a number of
     1649            customizations meant to make it behave more like a
     1650            standard Macintosh application, with windows, a menubar,
     1651            etc.  Aquamacs includes SLIME; if you like Aquamacs then
     1652            you can use SLIME right away, without getting and
     1653            installing it separately. You just need to tell SLIME
     1654            where to find your installation of Clozure CL.</p>
    16311655                </li>
    16321656                <li>
     
    16771701              <div>
    16781702                <div>
    1679                   <h3 class="title"><a id="id371816"></a>2.6.3. Installing SLIME</h3>
     1703                  <h3 class="title"><a id="id529312"></a>2.6.3. Installing SLIME</h3>
    16801704                </div>
    16811705              </div>
     
    18141838          <p xmlns="http://www.w3.org/1999/xhtml">Unless the original author or contributor claims other
    18151839      rights, you're free to incorporate any of this example code or
    1816       derivative thereof in any of you're own works without
     1840      derivative thereof in any of your own works without
    18171841      restriction. In doing so, you agree that the code was provided
    18181842      "as is", and that no other party is legally or otherwise
     
    18301854          <div>
    18311855            <div>
    1832               <h2 class="title"><a id="id321732"></a>Chapter 3. Building Clozure CL from its Source Code</h2>
     1856              <h2 class="title"><a id="id503558"></a>Chapter 3. Building Clozure CL from its Source Code</h2>
    18331857            </div>
    18341858          </div>
     
    19411965          <p xmlns="http://www.w3.org/1999/xhtml">The following terms are used in subsequent sections; it
    19421966      may be helpful to refer to these definitions.</p>
    1943           <p xmlns="http://www.w3.org/1999/xhtml"><a id="id352854" class="indexterm"></a><a class="glossterm" href="#fasl-file"><em class="glossterm">fasl
     1967          <p xmlns="http://www.w3.org/1999/xhtml"><a id="id544107" class="indexterm"></a><a class="glossterm" href="#fasl-file"><em class="glossterm">fasl
    19441968        files</em></a> are the object files produced
    19451969      by <code class="literal">compile-file</code>.  fasl files store the
     
    19521976      see
    19531977      <a class="xref" href="#Platform-specific-filename-conventions" title="Table 3.1. Platform-specific filename conventions">Table 3.1, “Platform-specific filename conventions”</a> </p>
    1954           <p xmlns="http://www.w3.org/1999/xhtml">The <a id="id361301" class="indexterm"></a> <a class="glossterm" href="#lisp_kernel"><em class="glossterm">Lisp
     1978          <p xmlns="http://www.w3.org/1999/xhtml">The <a id="id538123" class="indexterm"></a> <a class="glossterm" href="#lisp_kernel"><em class="glossterm">Lisp
    19551979        kernel</em></a> is a C program with a fair amount of
    19561980      platform-specific assembly language code. Its basic job is to
     
    19621986      files on different platforms; see
    19631987      <a class="xref" href="#Platform-specific-filename-conventions" title="Table 3.1. Platform-specific filename conventions">Table 3.1, “Platform-specific filename conventions”</a>.</p>
    1964           <p xmlns="http://www.w3.org/1999/xhtml">A <a id="id374738" class="indexterm"></a> <a class="glossterm" href="#lisp_image"><em class="glossterm">heap
     1988          <p xmlns="http://www.w3.org/1999/xhtml">A <a id="id550111" class="indexterm"></a> <a class="glossterm" href="#lisp_image"><em class="glossterm">heap
    19651989        image</em></a> is a file that can be quickly mapped into a
    19661990      process' address space. Conceptually, it's not too different
     
    19731997      standard full heap image files on different platforms; see
    19741998      <a class="xref" href="#Platform-specific-filename-conventions" title="Table 3.1. Platform-specific filename conventions">Table 3.1, “Platform-specific filename conventions”</a>.</p>
    1975           <p xmlns="http://www.w3.org/1999/xhtml">A <a id="id366185" class="indexterm"></a> bootstrapping image is a minimal
     1999          <p xmlns="http://www.w3.org/1999/xhtml">A <a id="id533476" class="indexterm"></a> bootstrapping image is a minimal
    19762000      heap image used in the process of building Clozure CL itself.  The
    19772001      bootstrapping image contains just enough code to load the rest
     
    19852009      as-yet-unsupported ones) has a uniquely named subdirectory of
    19862010      <code class="literal">ccl/lisp-kernel/</code>; each such
    1987       <a id="id366211" class="indexterm"></a>
     2011      <a id="id533502" class="indexterm"></a>
    19882012      contains a Makefile and may contain some auxiliary files (linker
    19892013      scripts, etc.) that are used to build the lisp kernel on a
     
    21112135              <li>
    21122136                <p>Version 1.2 - supports (at least) all of the
    2113               features and platforms as 1.1, but is distributed and updated
     2137              features and platforms of 1.1, but is distributed and updated
    21142138              differently</p>
    21152139              </li>
     
    24402464        Clozure CL from the shell:</p>
    24412465            <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
    2442 shell&gt; openmcl
     2466shell&gt; ccl
    24432467Welcome to Clozure CL .... !
    24442468?
     
    25442568          <div>
    25452569            <div>
    2546               <h2 class="title"><a id="id322946"></a>Chapter 4. Using Clozure CL</h2>
     2570              <h2 class="title"><a id="id518767"></a>Chapter 4. Using Clozure CL</h2>
    25472571            </div>
    25482572          </div>
     
    25522576            <dt>
    25532577              <span class="sect1">
    2554                 <a href="#id370264">4.1. Introduction</a>
     2578                <a href="#id565771">4.1. Introduction</a>
    25552579              </span>
    25562580            </dt>
     
    25692593                <dt>
    25702594                  <span class="sect2">
    2571                     <a href="#id388381">4.3.1. Characters</a>
     2595                    <a href="#id553769">4.3.1. Characters</a>
    25722596                  </span>
    25732597                </dt>
     
    25982622                <dt>
    25992623                  <span class="sect2">
    2600                     <a href="#id383711">4.4.1. Pathname Expansion</a>
     2624                    <a href="#id555543">4.4.1. Pathname Expansion</a>
    26012625                  </span>
    26022626                </dt>
     
    26082632                <dt>
    26092633                  <span class="sect2">
    2610                     <a href="#id383814">4.4.3. OS X (Darwin)</a>
     2634                    <a href="#id555646">4.4.3. OS X (Darwin)</a>
    26112635                  </span>
    26122636                </dt>
    26132637                <dt>
    26142638                  <span class="sect2">
    2615                     <a href="#id383826">4.4.4. Linux</a>
     2639                    <a href="#id555657">4.4.4. Linux</a>
    26162640                  </span>
    26172641                </dt>
    26182642                <dt>
    26192643                  <span class="sect2">
    2620                     <a href="#id383838">4.4.5. FreeBSD</a>
     2644                    <a href="#id555669">4.4.5. FreeBSD</a>
    26212645                  </span>
    26222646                </dt>
     
    26442668            <div>
    26452669              <div>
    2646                 <h2 class="title" style="clear: both"><a id="id370264"></a>4.1. Introduction</h2>
     2670                <h2 class="title" style="clear: both"><a id="id565771"></a>4.1. Introduction</h2>
    26472671              </div>
    26482672            </div>
     
    26722696    </p>
    26732697          <p xmlns="http://www.w3.org/1999/xhtml">
    2674       <a id="id358756" class="indexterm"></a>
     2698      <a id="id525908" class="indexterm"></a>
    26752699      <span class="command"><strong><em class="varname"><a id="trace"></a>TRACE</em> {<em class="replaceable"><code>keyword</code></em>
    26762700        <em class="replaceable"><code>global-value</code></em>}* {<em class="replaceable"><code>spec</code></em> |
     
    31163140          </div>
    31173141          <p xmlns="http://www.w3.org/1999/xhtml">
    3118       <a id="id388151" class="indexterm"></a>
     3142      <a id="id559850" class="indexterm"></a>
    31193143      <span class="command"><strong><em class="varname"><a id="trace-level"></a>CCL:*TRACE-LEVEL*</em>    [Variable]</strong></span>
    31203144    </p>
    31213145          <p xmlns="http://www.w3.org/1999/xhtml">Variable bound to the current nesting level during execution of before and after trace actions.  The default printing actions use it to determine the amount of indentation.</p>
    31223146          <p xmlns="http://www.w3.org/1999/xhtml">
    3123       <a id="id388178" class="indexterm"></a>
     3147      <a id="id559877" class="indexterm"></a>
    31243148      <span class="command"><strong><em class="varname"><a id="trace-max-indent"></a>CCL:*TRACE-MAX-INDENT*</em>    [Variable]</strong></span>
    31253149    </p>
    31263150          <p xmlns="http://www.w3.org/1999/xhtml">The default before and after print actions will not indent by more than the value of <em class="varname">ccl:*trace-max-indent*</em> regardless of the current trace level.</p>
    31273151          <p xmlns="http://www.w3.org/1999/xhtml">
    3128       <a id="id388207" class="indexterm"></a>
     3152      <a id="id559906" class="indexterm"></a>
    31293153      <span class="command"><strong><em class="varname"><a id="trace-function"></a>CCL:TRACE-FUNCTION</em> <em class="replaceable"><code>spec</code></em> <em class="varname">&amp;key</em> {<em class="replaceable"><code>keyword</code></em> <em class="replaceable"><code>value</code></em>}*    [Function]</strong></span>
    31303154    </p>
     
    31343158    </p>
    31353159          <p xmlns="http://www.w3.org/1999/xhtml">
    3136       <a id="id388256" class="indexterm"></a>
     3160      <a id="id559955" class="indexterm"></a>
    31373161      <span class="command"><strong><em class="varname"><a id="trace-print-level"></a>CCL:*TRACE-PRINT-LEVEL*</em>   [Variable]</strong></span>
    31383162    </p>
     
    31423166      explicit printing done by user code.</p>
    31433167          <p xmlns="http://www.w3.org/1999/xhtml">
    3144       <a id="id388290" class="indexterm"></a>
     3168      <a id="id559990" class="indexterm"></a>
    31453169      <span class="command"><strong><em class="varname"><a id="trace-print-length"></a>CCL:*TRACE-PRINT-LENGTH*</em>    [Variable]</strong></span>
    31463170    </p>
     
    31503174      explicit printing done by user code.</p>
    31513175          <p xmlns="http://www.w3.org/1999/xhtml">
    3152       <a id="id388325" class="indexterm"></a>
     3176      <a id="id553713" class="indexterm"></a>
    31533177      <span class="command"><strong><em class="varname"><a id="trace-bar-frequency"></a>CCL:*TRACE-BAR-FREQUENCY*</em>    [Variable]</strong></span>
    31543178    </p>
     
    31763200              <div>
    31773201                <div>
    3178                   <h3 class="title"><a id="id388381"></a>4.3.1. Characters</h3>
     3202                  <h3 class="title"><a id="id553769"></a>4.3.1. Characters</h3>
    31793203                </div>
    31803204              </div>
     
    32743298              <div>
    32753299                <div class="refsect1" lang="en" xml:lang="en">
    3276                   <a xmlns="http://www.w3.org/1999/xhtml" id="id382341"></a>
     3300                  <a xmlns="http://www.w3.org/1999/xhtml" id="id554173"></a>
    32773301                  <div class="header">Arguments and Values:</div>
    32783302                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">domain</span></i>---This is used to indicate where the external
     
    33083332                </div>
    33093333                <div class="refsect1" lang="en" xml:lang="en">
    3310                   <a xmlns="http://www.w3.org/1999/xhtml" id="id382520"></a>
     3334                  <a xmlns="http://www.w3.org/1999/xhtml" id="id554352"></a>
    33113335                  <div class="header">Description:</div>
    33123336                  <p xmlns="http://www.w3.org/1999/xhtml">Despite the function's name, it doesn't necessarily create a
     
    34763500                <div>
    34773501                  <div>
    3478                     <h4 class="title"><a id="id382864"></a>4.3.4.1. Encoding Problems</h4>
     3502                    <h4 class="title"><a id="id554695"></a>4.3.4.1. Encoding Problems</h4>
    34793503                  </div>
    34803504                </div>
     
    34923516                <div>
    34933517                  <div>
    3494                     <h4 class="title"><a id="id382877"></a>4.3.4.2. Byte Order Marks</h4>
     3518                    <h4 class="title"><a id="id554709"></a>4.3.4.2. Byte Order Marks</h4>
    34953519                  </div>
    34963520                </div>
     
    35203544                <div>
    35213545                  <div>
    3522                     <h4 class="title"><a id="id382915"></a>4.3.4.3. <span class="function"><strong>DESCRIBE-CHARACTER-ENCODINGS</strong></span></h4>
     3546                    <h4 class="title"><a id="id554746"></a>4.3.4.3. <span class="function"><strong>DESCRIBE-CHARACTER-ENCODINGS</strong></span></h4>
    35233547                  </div>
    35243548                </div>
     
    35423566                <div>
    35433567                  <div class="refsect1" lang="en" xml:lang="en">
    3544                     <a xmlns="http://www.w3.org/1999/xhtml" id="id382986"></a>
     3568                    <a xmlns="http://www.w3.org/1999/xhtml" id="id554818"></a>
    35453569                    <div class="header">Description:</div>
    35463570                    <p xmlns="http://www.w3.org/1999/xhtml">Writes descriptions of all defined character encodings
     
    35513575                  </div>
    35523576                  <div class="refsect1" lang="en" xml:lang="en">
    3553                     <a xmlns="http://www.w3.org/1999/xhtml" id="id383003"></a>
     3577                    <a xmlns="http://www.w3.org/1999/xhtml" id="id554834"></a>
    35543578                    <div class="header">See Also:</div>
    35553579                    <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#Character-Encodings" title="4.3.4. Character Encodings">Section 4.3.4, “Character Encodings”</a>, <a class="xref" href="#External-Formats" title="4.3.2. External Formats">Section 4.3.2, “External Formats”</a>, <a class="xref" href="#Supported-Character-Encodings" title="4.3.4.4. Supported Character Encodings">Section 4.3.4.4, “Supported Character Encodings”</a></span>
     
    39683992              <div>
    39693993                <div>
    3970                   <h3 class="title"><a id="id383711"></a>4.4.1. Pathname Expansion</h3>
     3994                  <h3 class="title"><a id="id555543"></a>4.4.1. Pathname Expansion</h3>
    39713995                </div>
    39723996              </div>
     
    39884012            </div>
    39894013            <p xmlns="http://www.w3.org/1999/xhtml">Clozure CL sets up logical pathname translations for logical hosts:  <code class="literal">ccl</code> and <code class="literal">home</code></p>
    3990             <a xmlns="http://www.w3.org/1999/xhtml" id="id383764" class="indexterm"></a>
     4014            <a xmlns="http://www.w3.org/1999/xhtml" id="id555596" class="indexterm"></a>
    39914015            <p xmlns="http://www.w3.org/1999/xhtml">The <code class="literal">CCL</code> logical host should point to the
    39924016        <code class="literal">ccl</code> directory.  It is used for a variety of
     
    40044028              <div>
    40054029                <div>
    4006                   <h3 class="title"><a id="id383814"></a>4.4.3. OS X (Darwin)</h3>
     4030                  <h3 class="title"><a id="id555646"></a>4.4.3. OS X (Darwin)</h3>
    40074031                </div>
    40084032              </div>
     
    40144038              <div>
    40154039                <div>
    4016                   <h3 class="title"><a id="id383826"></a>4.4.4. Linux</h3>
     4040                  <h3 class="title"><a id="id555657"></a>4.4.4. Linux</h3>
    40174041                </div>
    40184042              </div>
     
    40254049              <div>
    40264050                <div>
    4027                   <h3 class="title"><a id="id383838"></a>4.4.5. FreeBSD</h3>
     4051                  <h3 class="title"><a id="id555669"></a>4.4.5. FreeBSD</h3>
    40284052                </div>
    40294053              </div>
     
    40904114      platforms.</p>
    40914115          <p xmlns="http://www.w3.org/1999/xhtml">
    4092       <a id="id383954" class="indexterm"></a>
     4116      <a id="id576907" class="indexterm"></a>
    40934117      <span class="command"><strong><em class="varname"><a id="map-file-to-ivector"></a>CCL:MAP-FILE-TO-IVECTOR</em>
    40944118        <em class="parameter"><code>pathname</code></em>
     
    41504174      a memory error.</p>
    41514175          <p xmlns="http://www.w3.org/1999/xhtml">
    4152       <a id="id405599" class="indexterm"></a>
     4176      <a id="id577040" class="indexterm"></a>
    41534177      <span class="command"><strong><em class="varname"><a id="unmap-ivector"></a>CCL:UNMAP-IVECTOR</em>
    41544178        <em class="parameter"><code>displaced-array</code></em>
     
    41624186      target is an empty vector (of length zero).</p>
    41634187          <p xmlns="http://www.w3.org/1999/xhtml">
    4164       <a id="id405634" class="indexterm"></a>
     4188      <a id="id577075" class="indexterm"></a>
    41654189      <span class="command"><strong><em class="varname"><a id="map-file-to-octet-vector"></a>CCL:MAP-FILE-TO-OCTET-VECTOR</em>
    41664190        <em class="parameter"><code>pathname</code></em>
     
    41724196      bytes.</p>
    41734197          <p xmlns="http://www.w3.org/1999/xhtml">
    4174       <a id="id405666" class="indexterm"></a>
     4198      <a id="id577107" class="indexterm"></a>
    41754199      <span class="command"><strong><em class="varname"><a id="unmap-octet-vector"></a>CCL:UNMAP-OCTET-VECTOR</em>
    41764200        <em class="parameter"><code>displaced-array</code></em>
     
    42114235      static.</p>
    42124236          <p xmlns="http://www.w3.org/1999/xhtml">
    4213       <a id="id405741" class="indexterm"></a>
     4237      <a id="id577182" class="indexterm"></a>
    42144238      <span class="command"><strong><em class="varname"><a id="defstatic"></a>DEFSTATIC</em>
    42154239        <em class="parameter"><code>var</code></em>
     
    42654289            </div>
    42664290          </div>
    4267           <a xmlns="http://www.w3.org/1999/xhtml" id="id405853" class="indexterm"></a>
     4291          <a xmlns="http://www.w3.org/1999/xhtml" id="id577294" class="indexterm"></a>
    42684292          <p xmlns="http://www.w3.org/1999/xhtml">Clozure CL provides the
    42694293      function <code class="literal">CCL:SAVE-APPLICATION</code>, which creates a file
     
    43454369      converted, because address 0 can always be relied upon to refer to
    43464370      the same thing.</p>
    4347           <a xmlns="http://www.w3.org/1999/xhtml" id="id406074" class="indexterm"></a>
     4371          <a xmlns="http://www.w3.org/1999/xhtml" id="id577515" class="indexterm"></a>
    43484372          <p xmlns="http://www.w3.org/1999/xhtml">As of Clozure CL 1.2, the constant <code class="literal">CCL:+NULL-PTR+</code>
    43494373      refers to a <code class="literal">MACPTR</code> object that points to address 0.</p>
     
    43564380      or <code class="literal">opencml64</code> script.</p>
    43574381          <p xmlns="http://www.w3.org/1999/xhtml">
    4358       <a id="id406122" class="indexterm"></a>
     4382      <a id="id577562" class="indexterm"></a>
    43594383      <span class="command"><strong><em class="varname"><a id="save-application"></a>SAVE-APPLICATION</em>
    43604384        <em class="parameter"><code>filename</code></em>
     
    44604484          <div>
    44614485            <div>
    4462               <h2 class="title"><a id="id351866"></a>Chapter 5. The Clozure CL IDE</h2>
     4486              <h2 class="title"><a id="id552477"></a>Chapter 5. The Clozure CL IDE</h2>
    44634487            </div>
    44644488          </div>
     
    44684492            <dt>
    44694493              <span class="sect1">
    4470                 <a href="#id391992">5.1. Introduction</a>
     4494                <a href="#id544505">5.1. Introduction</a>
    44714495              </span>
    44724496            </dt>
    44734497            <dt>
    44744498              <span class="sect1">
    4475                 <a href="#id388704">5.2. Building the IDE</a>
     4499                <a href="#id524038">5.2. Building the IDE</a>
    44764500              </span>
    44774501            </dt>
    44784502            <dt>
    44794503              <span class="sect1">
    4480                 <a href="#id352336">5.3. Running the IDE</a>
     4504                <a href="#id562577">5.3. Running the IDE</a>
    44814505              </span>
    44824506            </dt>
    44834507            <dt>
    44844508              <span class="sect1">
    4485                 <a href="#id349170">5.4. IDE Features</a>
     4509                <a href="#id530061">5.4. IDE Features</a>
    44864510              </span>
    44874511            </dt>
     
    44904514                <dt>
    44914515                  <span class="sect2">
    4492                     <a href="#id347206">5.4.1. Editor Windows</a>
     4516                    <a href="#id550834">5.4.1. Editor Windows</a>
    44934517                  </span>
    44944518                </dt>
    44954519                <dt>
    44964520                  <span class="sect2">
    4497                     <a href="#id362540">5.4.2. The Lisp Menu</a>
     4521                    <a href="#id550390">5.4.2. The Lisp Menu</a>
    44984522                  </span>
    44994523                </dt>
    45004524                <dt>
    45014525                  <span class="sect2">
    4502                     <a href="#id373691">5.4.3. The Tools Menu</a>
     4526                    <a href="#id561635">5.4.3. The Tools Menu</a>
    45034527                  </span>
    45044528                </dt>
    45054529                <dt>
    45064530                  <span class="sect2">
    4507                     <a href="#id373711">5.4.4. The Inspector Window</a>
     4531                    <a href="#id561655">5.4.4. The Inspector Window</a>
    45084532                  </span>
    45094533                </dt>
     
    45124536            <dt>
    45134537              <span class="sect1">
    4514                 <a href="#id394341">5.5. IDE Sources</a>
     4538                <a href="#id526212">5.5. IDE Sources</a>
    45154539              </span>
    45164540            </dt>
    45174541            <dt>
    45184542              <span class="sect1">
    4519                 <a href="#id394374">5.6. The Application Builder</a>
     4543                <a href="#id526247">5.6. The Application Builder</a>
    45204544              </span>
    45214545            </dt>
     4546            <dd>
     4547              <dl>
     4548                <dt>
     4549                  <span class="sect2">
     4550                    <a href="#id535264">5.6.1. Running the Application Builder From the Command
     4551      Line</a>
     4552                  </span>
     4553                </dt>
     4554              </dl>
     4555            </dd>
    45224556          </dl>
    45234557        </div>
     
    45264560            <div>
    45274561              <div>
    4528                 <h2 class="title" style="clear: both"><a id="id391992"></a>5.1. Introduction</h2>
     4562                <h2 class="title" style="clear: both"><a id="id544505"></a>5.1. Introduction</h2>
    45294563              </div>
    45304564            </div>
     
    45484582            <div>
    45494583              <div>
    4550                 <h2 class="title" style="clear: both"><a id="id388704"></a>5.2. Building the IDE</h2>
     4584                <h2 class="title" style="clear: both"><a id="id524038"></a>5.2. Building the IDE</h2>
    45514585              </div>
    45524586            </div>
     
    45954629            <div>
    45964630              <div>
    4597                 <h2 class="title" style="clear: both"><a id="id352336"></a>5.3. Running the IDE</h2>
     4631                <h2 class="title" style="clear: both"><a id="id562577"></a>5.3. Running the IDE</h2>
    45984632              </div>
    45994633            </div>
     
    46144648            <div>
    46154649              <div>
    4616                 <h2 class="title" style="clear: both"><a id="id349170"></a>5.4. IDE Features</h2>
     4650                <h2 class="title" style="clear: both"><a id="id530061"></a>5.4. IDE Features</h2>
    46174651              </div>
    46184652            </div>
     
    46224656              <div>
    46234657                <div>
    4624                   <h3 class="title"><a id="id347206"></a>5.4.1. Editor Windows</h3>
     4658                  <h3 class="title"><a id="id550834"></a>5.4.1. Editor Windows</h3>
    46254659                </div>
    46264660              </div>
     
    46424676              <div>
    46434677                <div>
    4644                   <h3 class="title"><a id="id362540"></a>5.4.2. The Lisp Menu</h3>
     4678                  <h3 class="title"><a id="id550390"></a>5.4.2. The Lisp Menu</h3>
    46454679                </div>
    46464680              </div>
     
    46594693        open the <a class="link" href="#section_inspector_window">Inspector
    46604694          window</a>.</p>
     4695            <div class="sect3" lang="en" xml:lang="en">
     4696              <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     4697                <div>
     4698                  <div>
     4699                    <h4 class="title"><a id="id561596"></a>5.4.2.1. Checking for Updates</h4>
     4700                  </div>
     4701                </div>
     4702              </div>
     4703              <p xmlns="http://www.w3.org/1999/xhtml">At the bottom of the Lisp menu is an item entitled
     4704        "Check for Updates". If your copy of Clozure CL came from the
     4705        Clozure Subversion server (which is the preferred source), and
     4706        if your internet connection is working, then you can select
     4707        this menu item to check for updates to your copy of
     4708        Clozure CL.</p>
     4709              <p xmlns="http://www.w3.org/1999/xhtml">When you select "Check for Updates", Clozure CL uses the svn
     4710        program to query the Clozure Subversion repository and
     4711        determine whether new updates to Clozure CL are available. (This
     4712        means that on Mac OS X versions earlier than 10.5, you must
     4713        ensure that the Subversion client software is installed before
     4714        using the "Check for Updates" feature. See
     4715        the <a class="ulink" href="http://www.wikihow.com/Install-Subversion-on-Mac-OS-X" target="_top">wikiHow
     4716        page</a> on installing Subversion for more information.)
     4717        If updates are available, Clozure CL automatically downloads and
     4718        installs them. After a successful download, Clozure CL rebuilds
     4719        itself, and then rebuilds the IDE on the newly-rebuilt
     4720        Lisp. Once this process is finished, you should quit the
     4721        running IDE and start the newly built one (which will be in
     4722        the same place that the old one was).</p>
     4723              <p xmlns="http://www.w3.org/1999/xhtml">Normally, Clozure CL can install updates and rebuild itself
     4724        without any problems. Occasionally, an unforeseen problem
     4725        (such as a network outage, or a hardware failure) might
     4726        interrupt the self-rebuilding process, and leave your copy of
     4727        Clozure CL unusable. If you are expecting to update your copy of
     4728        Clozure CL frequently, it might be prudent to keep a backup copy of
     4729        your working environment ready in case of such
     4730        situtations. You can also always obtain a full, fresh copy of
     4731        Clozure CL from Clozure's repository..</p>
     4732            </div>
    46614733          </div>
    46624734          <div class="sect2" lang="en" xml:lang="en">
     
    46644736              <div>
    46654737                <div>
    4666                   <h3 class="title"><a id="id373691"></a>5.4.3. The Tools Menu</h3>
     4738                  <h3 class="title"><a id="id561635"></a>5.4.3. The Tools Menu</h3>
    46674739                </div>
    46684740              </div>
     
    46814753              <div>
    46824754                <div>
    4683                   <h3 class="title"><a id="id373711"></a>5.4.4. The Inspector Window</h3>
     4755                  <h3 class="title"><a id="id561655"></a>5.4.4. The Inspector Window</h3>
    46844756                </div>
    46854757              </div>
     
    47134785            <div>
    47144786              <div>
    4715                 <h2 class="title" style="clear: both"><a id="id394341"></a>5.5. IDE Sources</h2>
     4787                <h2 class="title" style="clear: both"><a id="id526212"></a>5.5. IDE Sources</h2>
    47164788              </div>
    47174789            </div>
     
    47394811            <div>
    47404812              <div>
    4741                 <h2 class="title" style="clear: both"><a id="id394374"></a>5.6. The Application Builder</h2>
     4813                <h2 class="title" style="clear: both"><a id="id526247"></a>5.6. The Application Builder</h2>
    47424814              </div>
    47434815            </div>
     
    47574829      the required subsystems, if necessary.</p>
    47584830          <p xmlns="http://www.w3.org/1999/xhtml">
    4759       <a id="id394404" class="indexterm"></a>
     4831      <a id="id526280" class="indexterm"></a>
    47604832      <span class="command"><strong><em class="varname"><a id="build-application"></a>BUILD-APPLICATION</em> <em class="varname"><em class="varname">&amp;key</em></em>
    47614833        (<em class="parameter"><code>name</code></em> <em class="replaceable"><code>"MyApplication"</code></em>)
     
    47634835        (<em class="parameter"><code>creator-string</code></em> <em class="replaceable"><code>"OMCL"</code></em>)
    47644836        (<em class="parameter"><code>directory</code></em> <em class="replaceable"><code>(current-directory)</code></em>)
     4837        (<em class="parameter"><code>copy-ide-resources</code></em> <em class="replaceable"><code>t</code></em>)
     4838        (<em class="parameter"><code>info-plist</code></em> <em class="replaceable"><code>NIL</code></em>)
    47654839        (<em class="parameter"><code>nibfiles</code></em> <em class="replaceable"><code>NIL</code></em>)
    47664840        (<em class="parameter"><code>main-nib-name</code></em> <em class="replaceable"><code>NIL</code></em>)
     
    48374911              <dt>
    48384912                <span class="term">
     4913                  <em class="varname">copy-ide-resources</em>
     4914                </span>
     4915              </dt>
     4916              <dd>
     4917                <p>Whether to copy the resource files from the IDE's
     4918            application bundle. By
     4919            default, <code class="code">BUILD-APPLICATION</code> copies nibfiles
     4920            and other resources from the IDE to the newly-created
     4921            application bundle. This option is often useful when you
     4922            are developing a new application, because it enables your
     4923            built application to have a fully-functional user
     4924            interface even before you have finished designing one. By
     4925            default, the application uses the application menu and
     4926            other UI elements of the IDE until you specify
     4927            otherwise. Once your application's UI is fully
     4928            implemented, you may choose to pass <code class="literal">NIL</code>
     4929            for the value of this parameter, in which case the IDE
     4930            resources are not copied into your application
     4931            bundle.</p>
     4932              </dd>
     4933              <dt>
     4934                <span class="term">
     4935                  <em class="varname">info-plist</em>
     4936                </span>
     4937              </dt>
     4938              <dd>
     4939                <p>A user-supplied NSDictionary object that defines the
     4940          contents of the Info.plist file to be written to the
     4941          application bundle. The default value
     4942          is <code class="literal">NIL</code>, which specifies that the
     4943          Info.plist from the IDE is to be used
     4944          if <em class="replaceable"><code>copy-ide-resources</code></em> is true,
     4945          and a new dictionary created with default values is to be
     4946          used otherwise. You can create a suitable NSDictionary
     4947          object using the
     4948          function <code class="literal">make-info-dict</code>. For details on
     4949          the parameters to this function, see its definition in
     4950          "ccl/cocoa-ide/builder-utilities.lisp".</p>
     4951              </dd>
     4952              <dt>
     4953                <span class="term">
    48394954                  <em class="varname">nibfiles</em>
    48404955                </span>
     
    48955010            </dl>
    48965011          </div>
     5012          <p xmlns="http://www.w3.org/1999/xhtml"><code class="code">BUILD-APPLICATION</code> creates a folder named
     5013      "<em class="replaceable"><code>name</code></em>.app" in the
     5014      directory <em class="replaceable"><code>directory</code></em>. Inside that
     5015      folder, it creates the "Contents" folder that Mac OS X
     5016      application bundles are expected to contain, and populates it
     5017      with the "MacOS" and "Resources" folders, and the "Info.plist"
     5018      and "PkgInfo" files that must be present in a working
     5019      application bundle. It takes the contents of the "Info.plist"
     5020      and "PkgInfo" files from the parameters
     5021      to <code class="code">BUILD-APPLICATION</code>. If <em class="replaceable"><code>copy-ide-resources</code></em>
     5022      is true then it copies the contents of the "Resources" folder
     5023      from the "Resources" folder of the running IDE.</p>
     5024          <p xmlns="http://www.w3.org/1999/xhtml">The work needed to produce a running Cocoa application is
     5025    very minimal. In fact, if you
     5026    supply <code class="code">BUILD-APPLICATION</code> with a valid nibfile and
     5027    pathnames, it builds a running Cocoa application that displays
     5028    your UI. It doesn't need you to write any code at all to do
     5029    this. Of course, the resulting application doesn't do anything
     5030    apart from displaying the UI defined in the nibfile. If you want
     5031    your UI to accomplish anything, you need to write the code to
     5032    handle its events. But the path to a running application with your
     5033    UI in it is very short indeed.</p>
    48975034          <p xmlns="http://www.w3.org/1999/xhtml">Please note that <code class="code">BUILD-APPLICATION</code> is a work in
    48985035    progress. It can easily build a working Cocoa application, but it
     
    49025039    default. If you find the current limitations
    49035040    of <code class="code">BUILD-APPLICATION</code> too restrictive, and want to try
    4904     extending it for your use, you can find the source code for it
    4905     in "ccl/cocoa-ide/build-application.lisp".</p>
     5041    extending it for your use, you can find the source code for it in
     5042    "ccl/cocoa-ide/build-application.lisp". You can see the default
     5043    values used to populate the "Info.plist" file in
     5044    "ccl/cocoa-ide/builder-utilities.lisp".</p>
    49065045          <p xmlns="http://www.w3.org/1999/xhtml">For more information on how to
    49075046    use <code class="code">BUILD-APPLICATION</code>, see the Currency Converter
    49085047    example in "ccl/examples/cocoa/currency-converter/".</p>
     5048          <div class="sect2" lang="en" xml:lang="en">
     5049            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     5050              <div>
     5051                <div>
     5052                  <h3 class="title"><a id="id535264"></a>5.6.1. Running the Application Builder From the Command
     5053      Line</h3>
     5054                </div>
     5055              </div>
     5056            </div>
     5057            <p xmlns="http://www.w3.org/1999/xhtml">It's possible to automate use of the application builder
     5058        by running a call to <code class="literal">CCL:BUILD-APPLICATION</code>
     5059        from the terminal command line. For example, the following
     5060        command, entered at a shell prompt in Mac OS X's Terminal
     5061        window, builds a working copy of the Clozure CL environment called
     5062        "Foo.app":</p>
     5063            <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
     5064ccl -b -e "(require :cocoa)" -e "(require :build-application)" -e "(ccl::build-application :name \"Foo\")"
     5065      </pre>
     5066            <p xmlns="http://www.w3.org/1999/xhtml">You can use the same method to automate building your
     5067      Lisp/Cocoa applications. Clozure CL handles each Lisp expressions
     5068      passed with a <code class="literal">-e</code> argument in order, so you
     5069      can simply evaluate a sequence of Lisp expressions as in the
     5070      above example to build your application, ending with a call
     5071      to <code class="literal">CCL:BUILD-APPLICATION</code>. The call
     5072      to <code class="literal">CCL:BUILD-APPLICATION</code> can process all the
     5073      same arguments as if you evaluated it in a Listener window in
     5074      the Clozure CL IDE.</p>
     5075            <p xmlns="http://www.w3.org/1999/xhtml">Building a substantial Cocoa application (rather than just
     5076      reproducing the Lisp environment using defaults, as is done in
     5077      the above example) is likely to involve a relatively complicated
     5078      sequence of loading source files and perhaps evaluating Lisp
     5079      forms. You might be best served to place your command line in a
     5080      shell script that you can more easily edit and test.</p>
     5081            <p xmlns="http://www.w3.org/1999/xhtml">One potentially complicated issue concerns loading all
     5082        your Lisp source files in the right order. You might consider
     5083        using ASDF to define and load a system that includes all the
     5084        parts of your application before
     5085        calling <code class="literal">CCL:BUILD-APPLICATION</code>. ASDF is a
     5086        "another system-definition facility", a sort
     5087        of <code class="literal">make</code> for Lisp, and is included in the
     5088        Clozure CL distribution. You can read more about ASDF at the ASDF
     5089        <a class="ulink" href="http://constantly.at/lisp/asdf/" target="_top">home
     5090        page</a>.</p>
     5091            <p xmlns="http://www.w3.org/1999/xhtml">Alternatively, you could use the standard features of
     5092        Common Lisp to load your application's files in the proper
     5093        order.</p>
     5094          </div>
    49095095        </div>
    49105096      </div>
     
    49135099          <div>
    49145100            <div>
    4915               <h2 class="title"><a id="Questions-and-Answers"></a>Chapter 6. Questions and Answers</h2>
     5101              <h2 class="title"><a id="Programming-with-Threads"></a>Chapter 6. Programming with Threads</h2>
    49165102            </div>
    49175103          </div>
     
    49215107            <dt>
    49225108              <span class="sect1">
    4923                 <a href="#How-can-I-do-nonblocking--aka--unbuffered--and--raw---IO-">6.1. How can I do nonblocking (aka "unbuffered" and "raw") IO?</a>
     5109                <a href="#Threads-overview">6.1. Threads Overview</a>
    49245110              </span>
    49255111            </dt>
    49265112            <dt>
    49275113              <span class="sect1">
    4928                 <a href="#I-m-using-the-graphics-demos--Why-doesn-t-the-menubar-change-">6.2. I'm using the graphics demos. Why doesn't the menubar
    4929       change?</a>
     5114                <a href="#Intentionally--Missing-Functionality">6.2. (Intentionally) Missing Functionality</a>
    49305115              </span>
    49315116            </dt>
    49325117            <dt>
    49335118              <span class="sect1">
    4934                 <a href="#I-m-using-Slime-and-Cocoa--Why-doesn-t--standard-output--seem-to-work-">6.3. I'm using Slime and Cocoa. Why doesn't *standard-output*
    4935       seem to work? </a>
     5119                <a href="#Implementation-Decisions-and-Open-Questions">6.3. Implementation Decisions and Open Questions</a>
     5120              </span>
     5121            </dt>
     5122            <dd>
     5123              <dl>
     5124                <dt>
     5125                  <span class="sect2">
     5126                    <a href="#Thread-Stack-Sizes">6.3.1. Thread Stack Sizes</a>
     5127                  </span>
     5128                </dt>
     5129                <dt>
     5130                  <span class="sect2">
     5131                    <a href="#id527186">6.3.2.  As of August 2003:</a>
     5132                  </span>
     5133                </dt>
     5134              </dl>
     5135            </dd>
     5136            <dt>
     5137              <span class="sect1">
     5138                <a href="#Porting-Code-from-the-Old-Thread-Model">6.4. Porting Code from the Old Thread Model</a>
     5139              </span>
     5140            </dt>
     5141            <dt>
     5142              <span class="sect1">
     5143                <a href="#Background-Terminal-Input">6.5. Background Terminal Input</a>
     5144              </span>
     5145            </dt>
     5146            <dd>
     5147              <dl>
     5148                <dt>
     5149                  <span class="sect2">
     5150                    <a href="#backgrount-ti-overview">6.5.1. Overview</a>
     5151                  </span>
     5152                </dt>
     5153                <dt>
     5154                  <span class="sect2">
     5155                    <a href="#background-terminal-example">6.5.2. An example</a>
     5156                  </span>
     5157                </dt>
     5158                <dt>
     5159                  <span class="sect2">
     5160                    <a href="#A-more-elaborate-example-">6.5.3. A more elaborate example.</a>
     5161                  </span>
     5162                </dt>
     5163                <dt>
     5164                  <span class="sect2">
     5165                    <a href="#Summary">6.5.4. Summary</a>
     5166                  </span>
     5167                </dt>
     5168              </dl>
     5169            </dd>
     5170            <dt>
     5171              <span class="sect1">
     5172                <a href="#The-Threads-which-CCL-Uses-for-Its-Own-Purposes">6.6. The Threads which Clozure CL Uses for Its Own Purposes</a>
     5173              </span>
     5174            </dt>
     5175            <dt>
     5176              <span class="sect1">
     5177                <a href="#Threads-Dictionary">6.7. Threads Dictionary</a>
    49365178              </span>
    49375179            </dt>
     
    49425184            <div>
    49435185              <div>
    4944                 <h2 class="title" style="clear: both"><a id="How-can-I-do-nonblocking--aka--unbuffered--and--raw---IO-"></a>6.1. How can I do nonblocking (aka "unbuffered" and "raw") IO?</h2>
    4945               </div>
    4946             </div>
    4947           </div>
    4948           <p xmlns="http://www.w3.org/1999/xhtml">There's some code for manipulating TTY modes in
    4949       "ccl:library;pty.lisp".</p>
    4950           <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
    4951 ? (require "PTY")
    4952 
    4953 ? (ccl::disable-tty-local-modes 0 #$ICANON)
    4954 T
    4955       </pre>
    4956           <p xmlns="http://www.w3.org/1999/xhtml">will turn off "input canonicalization" on file descriptor
    4957       0, which is at least part of what you need to do here.  This
    4958       disables the #$ICANON mode, which tells the OS not to do any
    4959       line-buffering or line-editing.  Of course, this only has any
    4960       effect in situations where the OS ever does that, which means
    4961       when stdin is a TTY or PTY.</p>
    4962           <p xmlns="http://www.w3.org/1999/xhtml">If the #$ICANON mode is disabled, you can do things like:</p>
    4963           <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
    4964 ? (progn (read-char) (read-char))
    4965 a
    4966 #\a
    4967       </pre>
    4968           <p xmlns="http://www.w3.org/1999/xhtml">(where the first READ-CHAR consumes the newline, which
    4969       isn't really necessary to make the reader happy anymore.)  So,
    4970       you can do:</p>
    4971           <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
    4972 ? (read-char)
    4973 #\Space
    4974 </pre>
    4975           <p xmlns="http://www.w3.org/1999/xhtml">(where there's a space after the close-paren) without
    4976       having to type a newline.</p>
    4977         </div>
    4978         <div class="sect1" lang="en" xml:lang="en">
    4979           <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
    4980             <div>
    4981               <div>
    4982                 <h2 class="title" style="clear: both"><a id="I-m-using-the-graphics-demos--Why-doesn-t-the-menubar-change-"></a>6.2. I'm using the graphics demos. Why doesn't the menubar
    4983       change?</h2>
    4984               </div>
    4985             </div>
    4986           </div>
    4987           <p xmlns="http://www.w3.org/1999/xhtml">When you interact with text-only Clozure CL, you're either
    4988       in Terminal or in Emacs, running Clozure CL as a subprocess.  When
    4989       you load Cocoa or the graphical environment, the subprocess does
    4990       some tricky things that turn it into a full-fledged Application,
    4991       as far as the OS is concerned.</p>
    4992           <p xmlns="http://www.w3.org/1999/xhtml">So, it gets its own icon in the dock, and its own menubar,
    4993       and so on.  It can be confusing, because standard input and
    4994       output will still be connected to Terminal or Emacs, so you can
    4995       still type commands to Clozure CL from there.  To see the menubar
    4996       you loaded, or the windows you opened, just click on the Clozure CL
    4997       icon in the dock.</p>
    4998         </div>
    4999         <div class="sect1" lang="en" xml:lang="en">
    5000           <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
    5001             <div>
    5002               <div>
    5003                 <h2 class="title" style="clear: both"><a id="I-m-using-Slime-and-Cocoa--Why-doesn-t--standard-output--seem-to-work-"></a>6.3. I'm using Slime and Cocoa. Why doesn't *standard-output*
    5004       seem to work? </h2>
    5005               </div>
    5006             </div>
    5007           </div>
    5008           <p xmlns="http://www.w3.org/1999/xhtml">This comes up if you're using the Slime interface
    5009       to run Clozure CL under Emacs, and you are doing Cocoa programming
    5010       which involves printing to *standard-output*.  It seems as
    5011       though the output goes nowhere; no error is reported, but it
    5012       doesn't appear in the *slime-repl* buffer.</p>
    5013           <p xmlns="http://www.w3.org/1999/xhtml">For the most part, this is only relevant when you are
    5014       trying to insert debug code into your event handlers.  The SLIME
    5015       listener runs in a thread where the standard stream variables
    5016       (like <code class="literal">*STANDARD-OUTPUT* and</code> and
    5017       <code class="literal">*TERMINAL-IO*</code> are bound to the stream used to
    5018       communicate with Emacs; the Cocoa event thread has its own
    5019       bindings of these standard stream variables, and output to these
    5020       streams goes to the *inferior-lisp* buffer instead.  Look for it
    5021       there.</p>
    5022         </div>
    5023       </div>
    5024       <div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="chapter" lang="en" xml:lang="en">
    5025         <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
    5026           <div>
    5027             <div>
    5028               <h2 class="title"><a id="Programming-with-Threads"></a>Chapter 7. Programming with Threads</h2>
    5029             </div>
    5030           </div>
    5031         </div>
    5032         <div xmlns="http://www.w3.org/1999/xhtml" class="toc">
    5033           <dl>
    5034             <dt>
    5035               <span class="sect1">
    5036                 <a href="#Threads-overview">7.1. Threads Overview</a>
    5037               </span>
    5038             </dt>
    5039             <dt>
    5040               <span class="sect1">
    5041                 <a href="#Intentionally--Missing-Functionality">7.2. (Intentionally) Missing Functionality</a>
    5042               </span>
    5043             </dt>
    5044             <dt>
    5045               <span class="sect1">
    5046                 <a href="#Implementation-Decisions-and-Open-Questions">7.3. Implementation Decisions and Open Questions</a>
    5047               </span>
    5048             </dt>
    5049             <dd>
    5050               <dl>
    5051                 <dt>
    5052                   <span class="sect2">
    5053                     <a href="#Thread-Stack-Sizes">7.3.1. Thread Stack Sizes</a>
    5054                   </span>
    5055                 </dt>
    5056                 <dt>
    5057                   <span class="sect2">
    5058                     <a href="#id356525">7.3.2.  As of August 2003:</a>
    5059                   </span>
    5060                 </dt>
    5061               </dl>
    5062             </dd>
    5063             <dt>
    5064               <span class="sect1">
    5065                 <a href="#Porting-Code-from-the-Old-Thread-Model">7.4. Porting Code from the Old Thread Model</a>
    5066               </span>
    5067             </dt>
    5068             <dt>
    5069               <span class="sect1">
    5070                 <a href="#Background-Terminal-Input">7.5. Background Terminal Input</a>
    5071               </span>
    5072             </dt>
    5073             <dd>
    5074               <dl>
    5075                 <dt>
    5076                   <span class="sect2">
    5077                     <a href="#backgrount-ti-overview">7.5.1. Overview</a>
    5078                   </span>
    5079                 </dt>
    5080                 <dt>
    5081                   <span class="sect2">
    5082                     <a href="#background-terminal-example">7.5.2. An example</a>
    5083                   </span>
    5084                 </dt>
    5085                 <dt>
    5086                   <span class="sect2">
    5087                     <a href="#A-more-elaborate-example-">7.5.3. A more elaborate example.</a>
    5088                   </span>
    5089                 </dt>
    5090                 <dt>
    5091                   <span class="sect2">
    5092                     <a href="#Summary">7.5.4. Summary</a>
    5093                   </span>
    5094                 </dt>
    5095               </dl>
    5096             </dd>
    5097             <dt>
    5098               <span class="sect1">
    5099                 <a href="#The-Threads-which-CCL-Uses-for-Its-Own-Purposes">7.6. The Threads which Clozure CL Uses for Its Own Purposes</a>
    5100               </span>
    5101             </dt>
    5102             <dt>
    5103               <span class="sect1">
    5104                 <a href="#Threads-Dictionary">7.7. Threads Dictionary</a>
    5105               </span>
    5106             </dt>
    5107           </dl>
    5108         </div>
    5109         <div class="sect1" lang="en" xml:lang="en">
    5110           <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
    5111             <div>
    5112               <div>
    5113                 <h2 class="title" style="clear: both"><a id="Threads-overview"></a>7.1. Threads Overview</h2>
     5186                <h2 class="title" style="clear: both"><a id="Threads-overview"></a>6.1. Threads Overview</h2>
    51145187              </div>
    51155188            </div>
     
    52335306            <div>
    52345307              <div>
    5235                 <h2 class="title" style="clear: both"><a id="Intentionally--Missing-Functionality"></a>7.2. (Intentionally) Missing Functionality</h2>
     5308                <h2 class="title" style="clear: both"><a id="Intentionally--Missing-Functionality"></a>6.2. (Intentionally) Missing Functionality</h2>
    52365309              </div>
    52375310            </div>
     
    52715344            <div>
    52725345              <div>
    5273                 <h2 class="title" style="clear: both"><a id="Implementation-Decisions-and-Open-Questions"></a>7.3. Implementation Decisions and Open Questions</h2>
     5346                <h2 class="title" style="clear: both"><a id="Implementation-Decisions-and-Open-Questions"></a>6.3. Implementation Decisions and Open Questions</h2>
    52745347              </div>
    52755348            </div>
     
    52795352              <div>
    52805353                <div>
    5281                   <h3 class="title"><a id="Thread-Stack-Sizes"></a>7.3.1. Thread Stack Sizes</h3>
     5354                  <h3 class="title"><a id="Thread-Stack-Sizes"></a>6.3.1. Thread Stack Sizes</h3>
    52825355                </div>
    52835356              </div>
     
    53075380              <div>
    53085381                <div>
    5309                   <h3 class="title"><a id="id356525"></a>7.3.2.  As of August 2003:</h3>
     5382                  <h3 class="title"><a id="id527186"></a>6.3.2.  As of August 2003:</h3>
    53105383                </div>
    53115384              </div>
     
    53525425            <div>
    53535426              <div>
    5354                 <h2 class="title" style="clear: both"><a id="Porting-Code-from-the-Old-Thread-Model"></a>7.4. Porting Code from the Old Thread Model</h2>
     5427                <h2 class="title" style="clear: both"><a id="Porting-Code-from-the-Old-Thread-Model"></a>6.4. Porting Code from the Old Thread Model</h2>
    53555428              </div>
    53565429            </div>
     
    54005473            <div>
    54015474              <div>
    5402                 <h2 class="title" style="clear: both"><a id="Background-Terminal-Input"></a>7.5. Background Terminal Input</h2>
     5475                <h2 class="title" style="clear: both"><a id="Background-Terminal-Input"></a>6.5. Background Terminal Input</h2>
    54035476              </div>
    54045477            </div>
     
    54085481              <div>
    54095482                <div>
    5410                   <h3 class="title"><a id="backgrount-ti-overview"></a>7.5.1. Overview</h3>
     5483                  <h3 class="title"><a id="backgrount-ti-overview"></a>6.5.1. Overview</h3>
    54115484                </div>
    54125485              </div>
     
    54675540              <div>
    54685541                <div>
    5469                   <h3 class="title"><a id="background-terminal-example"></a>7.5.2. An example</h3>
     5542                  <h3 class="title"><a id="background-terminal-example"></a>6.5.2. An example</h3>
    54705543                </div>
    54715544              </div>
     
    55155588              <div>
    55165589                <div>
    5517                   <h3 class="title"><a id="A-more-elaborate-example-"></a>7.5.3. A more elaborate example.</h3>
     5590                  <h3 class="title"><a id="A-more-elaborate-example-"></a>6.5.3. A more elaborate example.</h3>
    55185591                </div>
    55195592              </div>
     
    55825655              <div>
    55835656                <div>
    5584                   <h3 class="title"><a id="Summary"></a>7.5.4. Summary</h3>
     5657                  <h3 class="title"><a id="Summary"></a>6.5.4. Summary</h3>
    55855658                </div>
    55865659              </div>
     
    56145687            <div>
    56155688              <div>
    5616                 <h2 class="title" style="clear: both"><a id="The-Threads-which-CCL-Uses-for-Its-Own-Purposes"></a>7.6. The Threads which Clozure CL Uses for Its Own Purposes</h2>
     5689                <h2 class="title" style="clear: both"><a id="The-Threads-which-CCL-Uses-for-Its-Own-Purposes"></a>6.6. The Threads which Clozure CL Uses for Its Own Purposes</h2>
    56175690              </div>
    56185691            </div>
     
    57405813            <div>
    57415814              <div>
    5742                 <h2 class="title" style="clear: both"><a id="Threads-Dictionary"></a>7.7. Threads Dictionary</h2>
     5815                <h2 class="title" style="clear: both"><a id="Threads-Dictionary"></a>6.7. Threads Dictionary</h2>
    57435816              </div>
    57445817            </div>
     
    57595832            <div>
    57605833              <div class="refsect1" lang="en" xml:lang="en">
    5761                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399273"></a>
     5834                <a xmlns="http://www.w3.org/1999/xhtml" id="id570613"></a>
    57625835                <div class="header">Values:</div>
    57635836                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">result</span></i>---a list of all lisp processes (threads)
     
    57655838              </div>
    57665839              <div class="refsect1" lang="en" xml:lang="en">
    5767                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399299"></a>
     5840                <a xmlns="http://www.w3.org/1999/xhtml" id="id570639"></a>
    57685841                <div class="header">Description:</div>
    57695842                <p xmlns="http://www.w3.org/1999/xhtml">Returns a list of all lisp processes (threads) known
     
    57775850              </div>
    57785851              <div class="refsect1" lang="en" xml:lang="en">
    5779                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399314"></a>
     5852                <a xmlns="http://www.w3.org/1999/xhtml" id="id570653"></a>
    57805853                <div class="header">See Also:</div>
    57815854                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist">
     
    58055878            <div>
    58065879              <div class="refsect1" lang="en" xml:lang="en">
    5807                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399383"></a>
     5880                <a xmlns="http://www.w3.org/1999/xhtml" id="id570723"></a>
    58085881                <div class="header">Arguments and Values:</div>
    58095882                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">name</span></i>---a string, used to identify the process.</p>
     
    58445917              </div>
    58455918              <div class="refsect1" lang="en" xml:lang="en">
    5846                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399571"></a>
     5919                <a xmlns="http://www.w3.org/1999/xhtml" id="id570910"></a>
    58475920                <div class="header">Description:</div>
    58485921                <p xmlns="http://www.w3.org/1999/xhtml">Creates and returns a new lisp process (thread) with the
     
    58655938              </div>
    58665939              <div class="refsect1" lang="en" xml:lang="en">
    5867                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399624"></a>
     5940                <a xmlns="http://www.w3.org/1999/xhtml" id="id570963"></a>
    58685941                <div class="header">See Also:</div>
    58695942                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-preset" title="Function PROCESS-PRESET"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-preset</b></a>, <a class="xref" href="#f_process-enable" title="Function PROCESS-ENABLE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-enable</b></a>, <a class="xref" href="#f_process-run-function" title="Function PROCESS-RUN-FUNCTION"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-run-function</b></a></span>
     
    58845957            <div>
    58855958              <div class="refsect1" lang="en" xml:lang="en">
    5886                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399702"></a>
     5959                <a xmlns="http://www.w3.org/1999/xhtml" id="id571042"></a>
    58875960                <div class="header">Arguments and Values:</div>
    58885961                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    58945967              </div>
    58955968              <div class="refsect1" lang="en" xml:lang="en">
    5896                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399756"></a>
     5969                <a xmlns="http://www.w3.org/1999/xhtml" id="id571096"></a>
    58975970                <div class="header">Description:</div>
    58985971                <p xmlns="http://www.w3.org/1999/xhtml">Suspends <em class="varname">process</em>, preventing it from
     
    59165989              </div>
    59175990              <div class="refsect1" lang="en" xml:lang="en">
    5918                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399812"></a>
     5991                <a xmlns="http://www.w3.org/1999/xhtml" id="id571151"></a>
    59195992                <div class="header">See Also:</div>
    59205993                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-resume" title="Function PROCESS-RESUME"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-resume</b></a>, <a class="xref" href="#f_process-suspend-count" title="Function PROCESS-SUSPEND-COUNT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-suspend-count</b></a></span>
    59215994              </div>
    59225995              <div class="refsect1" lang="en" xml:lang="en">
    5923                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399837"></a>
     5996                <a xmlns="http://www.w3.org/1999/xhtml" id="id571176"></a>
    59245997                <div class="header">Notes:</div>
    59255998                <p xmlns="http://www.w3.org/1999/xhtml"><span class="function"><strong>process-suspend</strong></span> was previously called
     
    59476020            <div>
    59486021              <div class="refsect1" lang="en" xml:lang="en">
    5949                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399918"></a>
     6022                <a xmlns="http://www.w3.org/1999/xhtml" id="id571258"></a>
    59506023                <div class="header">Arguments and Values:</div>
    59516024                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    59586031              </div>
    59596032              <div class="refsect1" lang="en" xml:lang="en">
    5960                 <a xmlns="http://www.w3.org/1999/xhtml" id="id399972"></a>
     6033                <a xmlns="http://www.w3.org/1999/xhtml" id="id571312"></a>
    59616034                <div class="header">Description:</div>
    59626035                <p xmlns="http://www.w3.org/1999/xhtml">Undoes the effect of a previous call to
     
    59696042              </div>
    59706043              <div class="refsect1" lang="en" xml:lang="en">
    5971                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400003"></a>
     6044                <a xmlns="http://www.w3.org/1999/xhtml" id="id571343"></a>
    59726045                <div class="header">See Also:</div>
    59736046                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-suspend" title="Function PROCESS-SUSPEND"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-suspend</b></a>, <a class="xref" href="#f_process-suspend-count" title="Function PROCESS-SUSPEND-COUNT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-suspend-count</b></a></span>
    59746047              </div>
    59756048              <div class="refsect1" lang="en" xml:lang="en">
    5976                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400028"></a>
     6049                <a xmlns="http://www.w3.org/1999/xhtml" id="id571368"></a>
    59776050                <div class="header">Notes:</div>
    59786051                <p xmlns="http://www.w3.org/1999/xhtml">
     
    60006073            <div>
    60016074              <div class="refsect1" lang="en" xml:lang="en">
    6002                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400093"></a>
     6075                <a xmlns="http://www.w3.org/1999/xhtml" id="id571433"></a>
    60036076                <div class="header">Arguments and Values:</div>
    60046077                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    60106083              </div>
    60116084              <div class="refsect1" lang="en" xml:lang="en">
    6012                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400147"></a>
     6085                <a xmlns="http://www.w3.org/1999/xhtml" id="id571486"></a>
    60136086                <div class="header">Description:</div>
    60146087                <p xmlns="http://www.w3.org/1999/xhtml">An "outstanding" <a class="xref" href="#f_process-suspend" title="Function PROCESS-SUSPEND"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-suspend</b></a> call
     
    60256098              </div>
    60266099              <div class="refsect1" lang="en" xml:lang="en">
    6027                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400197"></a>
     6100                <a xmlns="http://www.w3.org/1999/xhtml" id="id571537"></a>
    60286101                <div class="header">See Also:</div>
    60296102                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-suspend" title="Function PROCESS-SUSPEND"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-suspend</b></a>, <a class="xref" href="#f_process-resume" title="Function PROCESS-RESUME"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-resume</b></a></span>
     
    60466119            <div>
    60476120              <div class="refsect1" lang="en" xml:lang="en">
    6048                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400273"></a>
     6121                <a xmlns="http://www.w3.org/1999/xhtml" id="id571613"></a>
    60496122                <div class="header">Arguments and Values:</div>
    60506123                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    60576130              </div>
    60586131              <div class="refsect1" lang="en" xml:lang="en">
    6059                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400348"></a>
     6132                <a xmlns="http://www.w3.org/1999/xhtml" id="id571688"></a>
    60606133                <div class="header">Description:</div>
    60616134                <p xmlns="http://www.w3.org/1999/xhtml">Typically used to initialize a newly-created or newly-reset
     
    60716144              </div>
    60726145              <div class="refsect1" lang="en" xml:lang="en">
    6073                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400392"></a>
     6146                <a xmlns="http://www.w3.org/1999/xhtml" id="id571733"></a>
    60746147                <div class="header">See Also:</div>
    60756148                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-process" title="Function MAKE-PROCESS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-process</b></a>, <a class="xref" href="#f_process-enable" title="Function PROCESS-ENABLE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-enable</b></a>, <a class="xref" href="#f_process-run-function" title="Function PROCESS-RUN-FUNCTION"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-run-function</b></a></span>
     
    60926165            <div>
    60936166              <div class="refsect1" lang="en" xml:lang="en">
    6094                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400474"></a>
     6167                <a xmlns="http://www.w3.org/1999/xhtml" id="id571815"></a>
    60956168                <div class="header">Arguments and Values:</div>
    60966169                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    61016174              </div>
    61026175              <div class="refsect1" lang="en" xml:lang="en">
    6103                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400537"></a>
     6176                <a xmlns="http://www.w3.org/1999/xhtml" id="id571877"></a>
    61046177                <div class="header">Description:</div>
    61056178                <p xmlns="http://www.w3.org/1999/xhtml">Tries to begin the execution of <em class="varname">process</em>.
     
    61186191              </div>
    61196192              <div class="refsect1" lang="en" xml:lang="en">
    6120                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400585"></a>
     6193                <a xmlns="http://www.w3.org/1999/xhtml" id="id571926"></a>
    61216194                <div class="header">See Also:</div>
    61226195                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-process" title="Function MAKE-PROCESS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-process</b></a>, <a class="xref" href="#f_process-preset" title="Function PROCESS-PRESET"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-preset</b></a>, <a class="xref" href="#f_process-run-function" title="Function PROCESS-RUN-FUNCTION"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-run-function</b></a></span>
    61236196              </div>
    61246197              <div class="refsect1" lang="en" xml:lang="en">
    6125                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400616"></a>
     6198                <a xmlns="http://www.w3.org/1999/xhtml" id="id571957"></a>
    61266199                <div class="header">Notes:</div>
    61276200                <p xmlns="http://www.w3.org/1999/xhtml">It would be nice to have more discussion of what it means
     
    61446217            <div>
    61456218              <div class="refsect1" lang="en" xml:lang="en">
    6146                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400731"></a>
     6219                <a xmlns="http://www.w3.org/1999/xhtml" id="id572072"></a>
    61476220                <div class="header">Arguments and Values:</div>
    61486221                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">name</span></i>---a string, used to identify the process.
     
    61666239              </div>
    61676240              <div class="refsect1" lang="en" xml:lang="en">
    6168                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400920"></a>
     6241                <a xmlns="http://www.w3.org/1999/xhtml" id="id572261"></a>
    61696242                <div class="header">Description:</div>
    61706243                <p xmlns="http://www.w3.org/1999/xhtml">Creates a lisp process (thread) via
     
    61796252              </div>
    61806253              <div class="refsect1" lang="en" xml:lang="en">
    6181                 <a xmlns="http://www.w3.org/1999/xhtml" id="id400955"></a>
     6254                <a xmlns="http://www.w3.org/1999/xhtml" id="id572296"></a>
    61826255                <div class="header">See Also:</div>
    61836256                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-process" title="Function MAKE-PROCESS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-process</b></a>, <a class="xref" href="#f_process-preset" title="Function PROCESS-PRESET"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-preset</b></a>, <a class="xref" href="#f_process-enable" title="Function PROCESS-ENABLE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-enable</b></a></span>
     
    62006273            <div>
    62016274              <div class="refsect1" lang="en" xml:lang="en">
    6202                 <a xmlns="http://www.w3.org/1999/xhtml" id="id412921"></a>
     6275                <a xmlns="http://www.w3.org/1999/xhtml" id="id584628"></a>
    62036276                <div class="header">Arguments and Values:</div>
    62046277                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    62136286              </div>
    62146287              <div class="refsect1" lang="en" xml:lang="en">
    6215                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413000"></a>
     6288                <a xmlns="http://www.w3.org/1999/xhtml" id="id584707"></a>
    62166289                <div class="header">Description:</div>
    62176290                <p xmlns="http://www.w3.org/1999/xhtml">Arranges for <em class="varname">process</em>
     
    62446317              </div>
    62456318              <div class="refsect1" lang="en" xml:lang="en">
    6246                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413067"></a>
     6319                <a xmlns="http://www.w3.org/1999/xhtml" id="id584774"></a>
    62476320                <div class="header">See Also:</div>
    62486321                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist">
     
    62536326              </div>
    62546327              <div class="refsect1" lang="en" xml:lang="en">
    6255                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413084"></a>
     6328                <a xmlns="http://www.w3.org/1999/xhtml" id="id584791"></a>
    62566329                <div class="header">Notes:</div>
    62576330                <p xmlns="http://www.w3.org/1999/xhtml">It would probably be better for <em class="varname">result</em>
     
    62836356            <div>
    62846357              <div class="refsect1" lang="en" xml:lang="en">
    6285                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413143"></a>
     6358                <a xmlns="http://www.w3.org/1999/xhtml" id="id584850"></a>
    62866359                <div class="header">Value Type:</div>
    62876360                <p xmlns="http://www.w3.org/1999/xhtml">A lisp process (thread).</p>
    62886361              </div>
    62896362              <div class="refsect1" lang="en" xml:lang="en">
    6290                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413152"></a>
     6363                <a xmlns="http://www.w3.org/1999/xhtml" id="id584859"></a>
    62916364                <div class="header">Initial Value:</div>
    62926365                <p xmlns="http://www.w3.org/1999/xhtml">Bound separately in each process, to that process itself.
     
    62946367              </div>
    62956368              <div class="refsect1" lang="en" xml:lang="en">
    6296                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413162"></a>
     6369                <a xmlns="http://www.w3.org/1999/xhtml" id="id584869"></a>
    62976370                <div class="header">Description:</div>
    62986371                <p xmlns="http://www.w3.org/1999/xhtml">Used when lisp code needs to find out what process it is
     
    63006373              </div>
    63016374              <div class="refsect1" lang="en" xml:lang="en">
    6302                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413173"></a>
     6375                <a xmlns="http://www.w3.org/1999/xhtml" id="id584880"></a>
    63036376                <div class="header">See Also:</div>
    63046377                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist">
     
    63246397            <div>
    63256398              <div class="refsect1" lang="en" xml:lang="en">
    6326                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413235"></a>
     6399                <a xmlns="http://www.w3.org/1999/xhtml" id="id584942"></a>
    63276400                <div class="header">Arguments and Values:</div>
    63286401                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    63316404              </div>
    63326405              <div class="refsect1" lang="en" xml:lang="en">
    6333                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413283"></a>
     6406                <a xmlns="http://www.w3.org/1999/xhtml" id="id584990"></a>
    63346407                <div class="header">Description:</div>
    63356408                <p xmlns="http://www.w3.org/1999/xhtml">Causes <em class="varname">process</em> to cleanly exit
     
    63586431              </div>
    63596432              <div class="refsect1" lang="en" xml:lang="en">
    6360                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413344"></a>
     6433                <a xmlns="http://www.w3.org/1999/xhtml" id="id585051"></a>
    63616434                <div class="header">See Also:</div>
    63626435                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-kill" title="Function PROCESS-KILL"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-kill</b></a>, <a class="xref" href="#f_process-abort" title="Function PROCESS-ABORT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-abort</b></a></span>
     
    63786451            <div>
    63796452              <div class="refsect1" lang="en" xml:lang="en">
    6380                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413408"></a>
     6453                <a xmlns="http://www.w3.org/1999/xhtml" id="id585115"></a>
    63816454                <div class="header">Arguments and Values:</div>
    63826455                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    63846457              </div>
    63856458              <div class="refsect1" lang="en" xml:lang="en">
    6386                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413443"></a>
     6459                <a xmlns="http://www.w3.org/1999/xhtml" id="id585150"></a>
    63876460                <div class="header">Description:</div>
    63886461                <p xmlns="http://www.w3.org/1999/xhtml">Entirely equivalent to calling
     
    63916464              </div>
    63926465              <div class="refsect1" lang="en" xml:lang="en">
    6393                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413458"></a>
     6466                <a xmlns="http://www.w3.org/1999/xhtml" id="id585165"></a>
    63946467                <div class="header">See Also:</div>
    63956468                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-reset" title="Function PROCESS-RESET"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-reset</b></a>, <a class="xref" href="#f_process-abort" title="Function PROCESS-ABORT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-abort</b></a></span>
     
    64136486            <div>
    64146487              <div class="refsect1" lang="en" xml:lang="en">
    6415                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413530"></a>
     6488                <a xmlns="http://www.w3.org/1999/xhtml" id="id585237"></a>
    64166489                <div class="header">Arguments and Values:</div>
    64176490                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a lisp process (thread).</p>
     
    64196492              </div>
    64206493              <div class="refsect1" lang="en" xml:lang="en">
    6421                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413565"></a>
     6494                <a xmlns="http://www.w3.org/1999/xhtml" id="id585272"></a>
    64226495                <div class="header">Description:</div>
    64236496                <p xmlns="http://www.w3.org/1999/xhtml">Entirely equivalent to calling
     
    64336506              </div>
    64346507              <div class="refsect1" lang="en" xml:lang="en">
    6435                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413620"></a>
     6508                <a xmlns="http://www.w3.org/1999/xhtml" id="id585327"></a>
    64366509                <div class="header">See Also:</div>
    64376510                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-reset" title="Function PROCESS-RESET"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-reset</b></a>, <a class="xref" href="#f_process-kill" title="Function PROCESS-KILL"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-kill</b></a></span>
     
    64526525            <div>
    64536526              <div class="refsect1" lang="en" xml:lang="en">
    6454                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413672"></a>
     6527                <a xmlns="http://www.w3.org/1999/xhtml" id="id585378"></a>
    64556528                <div class="header">Value Type:</div>
    64566529                <p xmlns="http://www.w3.org/1999/xhtml">A positive integer.</p>
    64576530              </div>
    64586531              <div class="refsect1" lang="en" xml:lang="en">
    6459                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413681"></a>
     6532                <a xmlns="http://www.w3.org/1999/xhtml" id="id585388"></a>
    64606533                <div class="header">Initial Value:</div>
    64616534                <p xmlns="http://www.w3.org/1999/xhtml">The clock resolution of the OS scheduler.  Currently,
     
    64646537              </div>
    64656538              <div class="refsect1" lang="en" xml:lang="en">
    6466                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413692"></a>
     6539                <a xmlns="http://www.w3.org/1999/xhtml" id="id585399"></a>
    64676540                <div class="header">Description:</div>
    64686541                <p xmlns="http://www.w3.org/1999/xhtml">This value is ordinarily of marginal interest at best,
     
    64726545              </div>
    64736546              <div class="refsect1" lang="en" xml:lang="en">
    6474                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413704"></a>
     6547                <a xmlns="http://www.w3.org/1999/xhtml" id="id585410"></a>
    64756548                <div class="header">See Also:</div>
    64766549                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist">
     
    64966569            <div>
    64976570              <div class="refsect1" lang="en" xml:lang="en">
    6498                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413794"></a>
     6571                <a xmlns="http://www.w3.org/1999/xhtml" id="id585501"></a>
    64996572                <div class="header">Description:</div>
    65006573                <p xmlns="http://www.w3.org/1999/xhtml">This information is primarily for the benefit of
     
    65106583              </div>
    65116584              <div class="refsect1" lang="en" xml:lang="en">
    6512                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413832"></a>
     6585                <a xmlns="http://www.w3.org/1999/xhtml" id="id585539"></a>
    65136586                <div class="header">See Also:</div>
    65146587                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-wait" title="Function PROCESS-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait</b></a>, <a class="xref" href="#f_process-wait-with-timeout" title="Function PROCESS-WAIT-WITH-TIMEOUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait-with-timeout</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    65156588              </div>
    65166589              <div class="refsect1" lang="en" xml:lang="en">
    6517                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413859"></a>
     6590                <a xmlns="http://www.w3.org/1999/xhtml" id="id585566"></a>
    65186591                <div class="header">Notes:</div>
    65196592                <p xmlns="http://www.w3.org/1999/xhtml">This should arguably be SETFable, but doesn't seem to
     
    65396612            <div>
    65406613              <div class="refsect1" lang="en" xml:lang="en">
    6541                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413910"></a>
     6614                <a xmlns="http://www.w3.org/1999/xhtml" id="id585617"></a>
    65426615                <div class="header">Description:</div>
    65436616                <p xmlns="http://www.w3.org/1999/xhtml">Advises the OS scheduler that the current thread has nothing
     
    65486621              </div>
    65496622              <div class="refsect1" lang="en" xml:lang="en">
    6550                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413923"></a>
     6623                <a xmlns="http://www.w3.org/1999/xhtml" id="id585630"></a>
    65516624                <div class="header">See Also:</div>
    65526625                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    65536626              </div>
    65546627              <div class="refsect1" lang="en" xml:lang="en">
    6555                 <a xmlns="http://www.w3.org/1999/xhtml" id="id413965"></a>
     6628                <a xmlns="http://www.w3.org/1999/xhtml" id="id585672"></a>
    65566629                <div class="header">Notes:</div>
    65576630                <p xmlns="http://www.w3.org/1999/xhtml">This is a holdover from the days of cooperative
     
    65766649            <div>
    65776650              <div class="refsect1" lang="en" xml:lang="en">
    6578                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414021"></a>
     6651                <a xmlns="http://www.w3.org/1999/xhtml" id="id585728"></a>
    65796652                <div class="header">Arguments and Values:</div>
    65806653                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">whostate</span></i>---a string, which will be the value of
     
    65896662              </div>
    65906663              <div class="refsect1" lang="en" xml:lang="en">
    6591                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414091"></a>
     6664                <a xmlns="http://www.w3.org/1999/xhtml" id="id585798"></a>
    65926665                <div class="header">Description:</div>
    65936666                <p xmlns="http://www.w3.org/1999/xhtml">Causes the current lisp process (thread) to repeatedly
     
    66066679              </div>
    66076680              <div class="refsect1" lang="en" xml:lang="en">
    6608                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414123"></a>
     6681                <a xmlns="http://www.w3.org/1999/xhtml" id="id585830"></a>
    66096682                <div class="header">See Also:</div>
    66106683                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_process-whostate" title="Function PROCESS-WHOSTATE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-whostate</b></a>, <a class="xref" href="#f_process-wait-with-timeout" title="Function PROCESS-WAIT-WITH-TIMEOUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait-with-timeout</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    66266699            <div>
    66276700              <div class="refsect1" lang="en" xml:lang="en">
    6628                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414218"></a>
     6701                <a xmlns="http://www.w3.org/1999/xhtml" id="id585925"></a>
    66296702                <div class="header">Arguments and Values:</div>
    66306703                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">whostate</span></i>---a string, which will be the value of
     
    66446717              </div>
    66456718              <div class="refsect1" lang="en" xml:lang="en">
    6646                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414318"></a>
     6719                <a xmlns="http://www.w3.org/1999/xhtml" id="id586025"></a>
    66476720                <div class="header">Description:</div>
    66486721                <p xmlns="http://www.w3.org/1999/xhtml">If <em class="varname">ticks</em> is NIL, behaves exactly like
     
    66506723              Otherwise, <em class="varname">function</em> will be tested repeatedly,
    66516724              in the same
    6652               kind of test/yield loop as in <a class="xref" href="#f_process-wait" title="Function PROCESS-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait</b></a>&gt;
     6725              kind of test/yield loop as in <a class="xref" href="#f_process-wait" title="Function PROCESS-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait</b></a>
    66536726              until either <em class="varname">function</em> returns true,
    66546727              or the duration <em class="varname">ticks</em> has been exceeded.
     
    66616734              </div>
    66626735              <div class="refsect1" lang="en" xml:lang="en">
    6663                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414362"></a>
     6736                <a xmlns="http://www.w3.org/1999/xhtml" id="id586069"></a>
    66646737                <div class="header">See Also:</div>
    66656738                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#v_ticks-per-second" title="Variable *TICKS-PER-SECOND*"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">*ticks-per-second*</b></a>, <a class="xref" href="#f_process-whostate" title="Function PROCESS-WHOSTATE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-whostate</b></a>, <a class="xref" href="#f_process-wait" title="Function PROCESS-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-wait</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    66816754            <div>
    66826755              <div class="refsect1" lang="en" xml:lang="en">
    6683                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414465"></a>
     6756                <a xmlns="http://www.w3.org/1999/xhtml" id="id586172"></a>
    66846757                <div class="header">Arguments and Values:</div>
    66856758                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">body</span></i>---an implicit progn.</p>
     
    66886761              </div>
    66896762              <div class="refsect1" lang="en" xml:lang="en">
    6690                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414504"></a>
     6763                <a xmlns="http://www.w3.org/1999/xhtml" id="id586211"></a>
    66916764                <div class="header">Description:</div>
    66926765                <p xmlns="http://www.w3.org/1999/xhtml">Executes <em class="varname">body</em>
     
    67036776              </div>
    67046777              <div class="refsect1" lang="en" xml:lang="en">
    6705                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414532"></a>
     6778                <a xmlns="http://www.w3.org/1999/xhtml" id="id586239"></a>
    67066779                <div class="header">See Also:</div>
    67076780                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist">
     
    67276800            <div>
    67286801              <div class="refsect1" lang="en" xml:lang="en">
    6729                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414594"></a>
     6802                <a xmlns="http://www.w3.org/1999/xhtml" id="id586301"></a>
    67306803                <div class="header">Arguments and Values:</div>
    67316804                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">name</span></i>---any lisp object; saved as part of
     
    67376810              </div>
    67386811              <div class="refsect1" lang="en" xml:lang="en">
    6739                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414641"></a>
     6812                <a xmlns="http://www.w3.org/1999/xhtml" id="id586348"></a>
    67406813                <div class="header">Description:</div>
    67416814                <p xmlns="http://www.w3.org/1999/xhtml">Creates and returns a lock object, which can
     
    67476820              </div>
    67486821              <div class="refsect1" lang="en" xml:lang="en">
    6749                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414656"></a>
     6822                <a xmlns="http://www.w3.org/1999/xhtml" id="id586362"></a>
    67506823                <div class="header">See Also:</div>
    67516824                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#m_with-lock-grabbed" title="Macro WITH-LOCK-GRABBED"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-lock-grabbed</b></a>, <a class="xref" href="#f_grab-lock" title="Function GRAB-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">grab-lock</b></a>, <a class="xref" href="#f_release-lock" title="Function RELEASE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">release-lock</b></a>, <a class="xref" href="#f_try-lock" title="Function TRY-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">try-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    67676840            <div>
    67686841              <div class="refsect1" lang="en" xml:lang="en">
    6769                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414759"></a>
     6842                <a xmlns="http://www.w3.org/1999/xhtml" id="id586466"></a>
    67706843                <div class="header">Arguments and Values:</div>
    67716844                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">lock</span></i>---an object of type CCL:LOCK.</p>
     
    67756848              </div>
    67766849              <div class="refsect1" lang="en" xml:lang="en">
    6777                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414810"></a>
     6850                <a xmlns="http://www.w3.org/1999/xhtml" id="id586517"></a>
    67786851                <div class="header">Description:</div>
    67796852                <p xmlns="http://www.w3.org/1999/xhtml">Waits until <em class="varname">lock</em> is either free or
     
    67866859              </div>
    67876860              <div class="refsect1" lang="en" xml:lang="en">
    6788                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414839"></a>
     6861                <a xmlns="http://www.w3.org/1999/xhtml" id="id586546"></a>
    67896862                <div class="header">See Also:</div>
    67906863                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_grab-lock" title="Function GRAB-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">grab-lock</b></a>, <a class="xref" href="#f_release-lock" title="Function RELEASE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">release-lock</b></a>, <a class="xref" href="#f_try-lock" title="Function TRY-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">try-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    68056878            <div>
    68066879              <div class="refsect1" lang="en" xml:lang="en">
    6807                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414939"></a>
     6880                <a xmlns="http://www.w3.org/1999/xhtml" id="id586646"></a>
    68086881                <div class="header">Arguments and Values:</div>
    68096882                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">lock</span></i>---an object of type CCL:LOCK.</p>
    68106883              </div>
    68116884              <div class="refsect1" lang="en" xml:lang="en">
    6812                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414962"></a>
     6885                <a xmlns="http://www.w3.org/1999/xhtml" id="id586669"></a>
    68136886                <div class="header">Description:</div>
    68146887                <p xmlns="http://www.w3.org/1999/xhtml">Blocks until <em class="varname">lock</em> is owned by the
     
    68216894              </div>
    68226895              <div class="refsect1" lang="en" xml:lang="en">
    6823                 <a xmlns="http://www.w3.org/1999/xhtml" id="id414995"></a>
     6896                <a xmlns="http://www.w3.org/1999/xhtml" id="id586702"></a>
    68246897                <div class="header">See Also:</div>
    68256898                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#m_with-lock-grabbed" title="Macro WITH-LOCK-GRABBED"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-lock-grabbed</b></a>, <a class="xref" href="#f_release-lock" title="Function RELEASE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">release-lock</b></a>, <a class="xref" href="#f_try-lock" title="Function TRY-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">try-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    68396912            <div>
    68406913              <div class="refsect1" lang="en" xml:lang="en">
    6841                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415094"></a>
     6914                <a xmlns="http://www.w3.org/1999/xhtml" id="id586801"></a>
    68426915                <div class="header">Arguments and Values:</div>
    68436916                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">lock</span></i>---an object of type CCL:LOCK.</p>
    68446917              </div>
    68456918              <div class="refsect1" lang="en" xml:lang="en">
    6846                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415117"></a>
     6919                <a xmlns="http://www.w3.org/1999/xhtml" id="id586824"></a>
    68476920                <div class="header">Description:</div>
    68486921                <p xmlns="http://www.w3.org/1999/xhtml">Signals an error of type CCL:LOCK-NOT-OWNER if
     
    68576930              </div>
    68586931              <div class="refsect1" lang="en" xml:lang="en">
    6859                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415150"></a>
     6932                <a xmlns="http://www.w3.org/1999/xhtml" id="id586857"></a>
    68606933                <div class="header">See Also:</div>
    68616934                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#m_with-lock-grabbed" title="Macro WITH-LOCK-GRABBED"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-lock-grabbed</b></a>, <a class="xref" href="#f_grab-lock" title="Function GRAB-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">grab-lock</b></a>, <a class="xref" href="#f_try-lock" title="Function TRY-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">try-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    68766949            <div>
    68776950              <div class="refsect1" lang="en" xml:lang="en">
    6878                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415251"></a>
     6951                <a xmlns="http://www.w3.org/1999/xhtml" id="id586958"></a>
    68796952                <div class="header">Arguments and Values:</div>
    68806953                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">lock</span></i>---an object of type CCL:LOCK.</p>
     
    68836956              </div>
    68846957              <div class="refsect1" lang="en" xml:lang="en">
    6885                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415289"></a>
     6958                <a xmlns="http://www.w3.org/1999/xhtml" id="id586996"></a>
    68866959                <div class="header">Description:</div>
    68876960                <p xmlns="http://www.w3.org/1999/xhtml">Tests whether <em class="varname">lock</em>
     
    68966969              </div>
    68976970              <div class="refsect1" lang="en" xml:lang="en">
    6898                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415312"></a>
     6971                <a xmlns="http://www.w3.org/1999/xhtml" id="id587019"></a>
    68996972                <div class="header">See Also:</div>
    69006973                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#m_with-lock-grabbed" title="Macro WITH-LOCK-GRABBED"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-lock-grabbed</b></a>, <a class="xref" href="#f_grab-lock" title="Function GRAB-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">grab-lock</b></a>, <a class="xref" href="#f_release-lock" title="Function RELEASE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">release-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    69166989            <div>
    69176990              <div class="refsect1" lang="en" xml:lang="en">
    6918                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415412"></a>
     6991                <a xmlns="http://www.w3.org/1999/xhtml" id="id587119"></a>
    69196992                <div class="header">Arguments and Values:</div>
    69206993                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">read-write-lock</span></i>---a newly-allocated object of type
     
    69226995              </div>
    69236996              <div class="refsect1" lang="en" xml:lang="en">
    6924                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415435"></a>
     6997                <a xmlns="http://www.w3.org/1999/xhtml" id="id587142"></a>
    69256998                <div class="header">Description:</div>
    69266999                <p xmlns="http://www.w3.org/1999/xhtml">Creates and returns an object of type CCL::READ-WRITE-LOCK.
     
    69337006              </div>
    69347007              <div class="refsect1" lang="en" xml:lang="en">
    6935                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415451"></a>
     7008                <a xmlns="http://www.w3.org/1999/xhtml" id="id587158"></a>
    69367009                <div class="header">See Also:</div>
    69377010                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#m_with-read-lock" title="Macro WITH-READ-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-read-lock</b></a>, <a class="xref" href="#m_with-write-lock" title="Macro WITH-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-write-lock</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    69387011              </div>
    69397012              <div class="refsect1" lang="en" xml:lang="en">
    6940                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415499"></a>
     7013                <a xmlns="http://www.w3.org/1999/xhtml" id="id587206"></a>
    69417014                <div class="header">Notes:</div>
    69427015                <p xmlns="http://www.w3.org/1999/xhtml">There probably should be some way to
     
    69617034            <div>
    69627035              <div class="refsect1" lang="en" xml:lang="en">
    6963                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415556"></a>
     7036                <a xmlns="http://www.w3.org/1999/xhtml" id="id587263"></a>
    69647037                <div class="header">Arguments and Values:</div>
    69657038                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">read-write-lock</span></i>---an object of type
     
    69707043              </div>
    69717044              <div class="refsect1" lang="en" xml:lang="en">
    6972                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415607"></a>
     7045                <a xmlns="http://www.w3.org/1999/xhtml" id="id587314"></a>
    69737046                <div class="header">Description:</div>
    69747047                <p xmlns="http://www.w3.org/1999/xhtml">Waits until <em class="varname">read-write-lock</em> has no
     
    69847057              </div>
    69857058              <div class="refsect1" lang="en" xml:lang="en">
    6986                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415647"></a>
     7059                <a xmlns="http://www.w3.org/1999/xhtml" id="id587354"></a>
    69877060                <div class="header">See Also:</div>
    69887061                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#m_with-write-lock" title="Macro WITH-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-write-lock</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    70047077            <div>
    70057078              <div class="refsect1" lang="en" xml:lang="en">
    7006                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415740"></a>
     7079                <a xmlns="http://www.w3.org/1999/xhtml" id="id587447"></a>
    70077080                <div class="header">Arguments and Values:</div>
    70087081                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">read-write-lock</span></i>---an object of type
     
    70137086              </div>
    70147087              <div class="refsect1" lang="en" xml:lang="en">
    7015                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415791"></a>
     7088                <a xmlns="http://www.w3.org/1999/xhtml" id="id587498"></a>
    70167089                <div class="header">Description:</div>
    70177090                <p xmlns="http://www.w3.org/1999/xhtml">Waits until <em class="varname">read-write-lock</em> has no
     
    70287101              </div>
    70297102              <div class="refsect1" lang="en" xml:lang="en">
    7030                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415836"></a>
     7103                <a xmlns="http://www.w3.org/1999/xhtml" id="id587543"></a>
    70317104                <div class="header">See Also:</div>
    70327105                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#m_with-read-lock" title="Macro WITH-READ-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-read-lock</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    70487121            <div>
    70497122              <div class="refsect1" lang="en" xml:lang="en">
    7050                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415926"></a>
     7123                <a xmlns="http://www.w3.org/1999/xhtml" id="id587633"></a>
    70517124                <div class="header">Arguments and Values:</div>
    70527125                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">semaphore</span></i>---a newly-allocated object of type CCL:SEMAPHORE.</p>
    70537126              </div>
    70547127              <div class="refsect1" lang="en" xml:lang="en">
    7055                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415948"></a>
     7128                <a xmlns="http://www.w3.org/1999/xhtml" id="id587655"></a>
    70567129                <div class="header">Description:</div>
    70577130                <p xmlns="http://www.w3.org/1999/xhtml">Creates and returns an object of type CCL:SEMAPHORE.
     
    70627135              </div>
    70637136              <div class="refsect1" lang="en" xml:lang="en">
    7064                 <a xmlns="http://www.w3.org/1999/xhtml" id="id415963"></a>
     7137                <a xmlns="http://www.w3.org/1999/xhtml" id="id587670"></a>
    70657138                <div class="header">See Also:</div>
    70667139                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_signal-semaphore" title="Function SIGNAL-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">signal-semaphore</b></a>, <a class="xref" href="#f_wait-on-semaphore" title="Function WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">wait-on-semaphore</b></a>, <a class="xref" href="#f_timed-wait-on-semaphore" title="Function TIMED-WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">timed-wait-on-semaphore</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    70827155            <div>
    70837156              <div class="refsect1" lang="en" xml:lang="en">
    7084                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416058"></a>
     7157                <a xmlns="http://www.w3.org/1999/xhtml" id="id587765"></a>
    70857158                <div class="header">Arguments and Values:</div>
    70867159                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">semaphore</span></i>---an object of type CCL:SEMAPHORE.</p>
     
    70897162              </div>
    70907163              <div class="refsect1" lang="en" xml:lang="en">
    7091                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416094"></a>
     7164                <a xmlns="http://www.w3.org/1999/xhtml" id="id587801"></a>
    70927165                <div class="header">Description:</div>
    70937166                <p xmlns="http://www.w3.org/1999/xhtml">Atomically increments <em class="varname">semaphore</em>'s
     
    70967169              </div>
    70977170              <div class="refsect1" lang="en" xml:lang="en">
    7098                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416108"></a>
     7171                <a xmlns="http://www.w3.org/1999/xhtml" id="id587815"></a>
    70997172                <div class="header">See Also:</div>
    71007173                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_wait-on-semaphore" title="Function WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">wait-on-semaphore</b></a>, <a class="xref" href="#f_timed-wait-on-semaphore" title="Function TIMED-WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">timed-wait-on-semaphore</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    71017174              </div>
    71027175              <div class="refsect1" lang="en" xml:lang="en">
    7103                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416161"></a>
     7176                <a xmlns="http://www.w3.org/1999/xhtml" id="id587868"></a>
    71047177                <div class="header">Notes:</div>
    71057178                <p xmlns="http://www.w3.org/1999/xhtml"><em class="varname">result</em> should probably be interpreted
     
    71247197            <div>
    71257198              <div class="refsect1" lang="en" xml:lang="en">
    7126                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416221"></a>
     7199                <a xmlns="http://www.w3.org/1999/xhtml" id="id587928"></a>
    71277200                <div class="header">Arguments and Values:</div>
    71287201                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">semaphore</span></i>---an object of type CCL:SEMAPHORE.</p>
     
    71317204              </div>
    71327205              <div class="refsect1" lang="en" xml:lang="en">
    7133                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416257"></a>
     7206                <a xmlns="http://www.w3.org/1999/xhtml" id="id587964"></a>
    71347207                <div class="header">Description:</div>
    71357208                <p xmlns="http://www.w3.org/1999/xhtml">Waits until <em class="varname">semaphore</em>
     
    71397212              </div>
    71407213              <div class="refsect1" lang="en" xml:lang="en">
    7141                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416272"></a>
     7214                <a xmlns="http://www.w3.org/1999/xhtml" id="id587978"></a>
    71427215                <div class="header">See Also:</div>
    71437216                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_signal-semaphore" title="Function SIGNAL-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">signal-semaphore</b></a>, <a class="xref" href="#f_timed-wait-on-semaphore" title="Function TIMED-WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">timed-wait-on-semaphore</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    71447217              </div>
    71457218              <div class="refsect1" lang="en" xml:lang="en">
    7146                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416325"></a>
     7219                <a xmlns="http://www.w3.org/1999/xhtml" id="id588032"></a>
    71477220                <div class="header">Notes:</div>
    71487221                <p xmlns="http://www.w3.org/1999/xhtml"><em class="varname">result</em> should probably be interpreted
     
    71687241            <div>
    71697242              <div class="refsect1" lang="en" xml:lang="en">
    7170                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416385"></a>
     7243                <a xmlns="http://www.w3.org/1999/xhtml" id="id588092"></a>
    71717244                <div class="header">Arguments and Values:</div>
    71727245                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">semaphore</span></i>---An object of type CCL:SEMAPHORE.</p>
     
    71817254              </div>
    71827255              <div class="refsect1" lang="en" xml:lang="en">
    7183                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416451"></a>
     7256                <a xmlns="http://www.w3.org/1999/xhtml" id="id588158"></a>
    71847257                <div class="header">Description:</div>
    71857258                <p xmlns="http://www.w3.org/1999/xhtml">Waits until <em class="varname">semaphore</em>
     
    71907263              </div>
    71917264              <div class="refsect1" lang="en" xml:lang="en">
    7192                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416468"></a>
     7265                <a xmlns="http://www.w3.org/1999/xhtml" id="id588175"></a>
    71937266                <div class="header">See Also:</div>
    71947267                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_wait-on-semaphore" title="Function WAIT-ON-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">wait-on-semaphore</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
     
    72107283            <div>
    72117284              <div class="refsect1" lang="en" xml:lang="en">
    7212                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416561"></a>
     7285                <a xmlns="http://www.w3.org/1999/xhtml" id="id588268"></a>
    72137286                <div class="header">Arguments and Values:</div>
    72147287                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">fd</span></i>---a file descriptor, which is a non-negative integer
     
    72187291              </div>
    72197292              <div class="refsect1" lang="en" xml:lang="en">
    7220                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416603"></a>
     7293                <a xmlns="http://www.w3.org/1999/xhtml" id="id588310"></a>
    72217294                <div class="header">Description:</div>
    72227295                <p xmlns="http://www.w3.org/1999/xhtml">Wait until input is available on <em class="varname">fd</em>.
     
    72347307              </div>
    72357308              <div class="refsect1" lang="en" xml:lang="en">
    7236                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416636"></a>
     7309                <a xmlns="http://www.w3.org/1999/xhtml" id="id588343"></a>
    72377310                <div class="header">See Also:</div>
    72387311                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    72397312              </div>
    72407313              <div class="refsect1" lang="en" xml:lang="en">
    7241                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416674"></a>
     7314                <a xmlns="http://www.w3.org/1999/xhtml" id="id588380"></a>
    72427315                <div class="header">Notes:</div>
    72437316                <p xmlns="http://www.w3.org/1999/xhtml">
     
    72647337            <div>
    72657338              <div class="refsect1" lang="en" xml:lang="en">
    7266                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416738"></a>
     7339                <a xmlns="http://www.w3.org/1999/xhtml" id="id588445"></a>
    72677340                <div class="header">Arguments and Values:</div>
    72687341                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">fd</span></i>---a file descriptor, which is a non-negative integer
     
    72727345              </div>
    72737346              <div class="refsect1" lang="en" xml:lang="en">
    7274                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416780"></a>
     7347                <a xmlns="http://www.w3.org/1999/xhtml" id="id588487"></a>
    72757348                <div class="header">Description:</div>
    72767349                <p xmlns="http://www.w3.org/1999/xhtml">Wait until output is possible on <em class="varname">fd</em> or until <em class="varname">timeout</em>, if
     
    72857358              </div>
    72867359              <div class="refsect1" lang="en" xml:lang="en">
    7287                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416813"></a>
     7360                <a xmlns="http://www.w3.org/1999/xhtml" id="id588520"></a>
    72887361                <div class="header">See Also:</div>
    72897362                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a></span>
    72907363              </div>
    72917364              <div class="refsect1" lang="en" xml:lang="en">
    7292                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416850"></a>
     7365                <a xmlns="http://www.w3.org/1999/xhtml" id="id588557"></a>
    72937366                <div class="header">Notes:</div>
    72947367                <p xmlns="http://www.w3.org/1999/xhtml">
     
    73157388            <div>
    73167389              <div class="refsect1" lang="en" xml:lang="en">
    7317                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416915"></a>
     7390                <a xmlns="http://www.w3.org/1999/xhtml" id="id588622"></a>
    73187391                <div class="header">Arguments and Values:</div>
    73197392                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">body</span></i>---an implicit progn.</p>
     
    73227395              </div>
    73237396              <div class="refsect1" lang="en" xml:lang="en">
    7324                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416954"></a>
     7397                <a xmlns="http://www.w3.org/1999/xhtml" id="id588660"></a>
    73257398                <div class="header">Description:</div>
    73267399                <p xmlns="http://www.w3.org/1999/xhtml">Requests exclusive read access to the standard terminal
     
    73307403              </div>
    73317404              <div class="refsect1" lang="en" xml:lang="en">
    7332                 <a xmlns="http://www.w3.org/1999/xhtml" id="id416970"></a>
     7405                <a xmlns="http://www.w3.org/1999/xhtml" id="id588677"></a>
    73337406                <div class="header">See Also:</div>
    73347407                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#v_request-terminal-input-via-break" title="Variable *REQUEST-TERMINAL-INPUT-VIA-BREAK*"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">*request-terminal-input-via-break*</b></a>, <a class="xref" href="#cmd_y" title="Toplevel Command :Y"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">:y</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a></span>
     
    73497422            <div>
    73507423              <div class="refsect1" lang="en" xml:lang="en">
    7351                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417047"></a>
     7424                <a xmlns="http://www.w3.org/1999/xhtml" id="id588754"></a>
    73527425                <div class="header">Value Type:</div>
    73537426                <p xmlns="http://www.w3.org/1999/xhtml">A boolean.</p>
    73547427              </div>
    73557428              <div class="refsect1" lang="en" xml:lang="en">
    7356                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417057"></a>
     7429                <a xmlns="http://www.w3.org/1999/xhtml" id="id588764"></a>
    73577430                <div class="header">Initial Value:</div>
    73587431                <p xmlns="http://www.w3.org/1999/xhtml">NIL.</p>
    73597432              </div>
    73607433              <div class="refsect1" lang="en" xml:lang="en">
    7361                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417067"></a>
     7434                <a xmlns="http://www.w3.org/1999/xhtml" id="id588774"></a>
    73627435                <div class="header">Description:</div>
    73637436                <p xmlns="http://www.w3.org/1999/xhtml">Controls how attempts to obtain ownership of terminal input
     
    73717444              </div>
    73727445              <div class="refsect1" lang="en" xml:lang="en">
    7373                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417080"></a>
     7446                <a xmlns="http://www.w3.org/1999/xhtml" id="id588787"></a>
    73747447                <div class="header">See Also:</div>
    73757448                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a>, <a class="xref" href="#cmd_y" title="Toplevel Command :Y"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">:y</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a></span>
     
    73907463            <div>
    73917464              <div class="refsect1" lang="en" xml:lang="en">
    7392                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417171"></a>
     7465                <a xmlns="http://www.w3.org/1999/xhtml" id="id588878"></a>
    73937466                <div class="header">Arguments and Values:</div>
    73947467                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">p</span></i>---a lisp process (thread), designated either by
     
    73997472              </div>
    74007473              <div class="refsect1" lang="en" xml:lang="en">
    7401                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417210"></a>
     7474                <a xmlns="http://www.w3.org/1999/xhtml" id="id588917"></a>
    74027475                <div class="header">Description:</div>
    74037476                <p xmlns="http://www.w3.org/1999/xhtml">:Y is a toplevel command, not a function.  As such, it
     
    74107483              </div>
    74117484              <div class="refsect1" lang="en" xml:lang="en">
    7412                 <a xmlns="http://www.w3.org/1999/xhtml" id="id417232"></a>
     7485                <a xmlns="http://www.w3.org/1999/xhtml" id="id588939"></a>
    74137486                <div class="header">See Also:</div>
    74147487                <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#m_with-terminal-input" title="Macro WITH-TERMINAL-INPUT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">with-terminal-input</b></a>, <a class="xref" href="#v_request-terminal-input-via-break" title="Variable *REQUEST-TERMINAL-INPUT-VIA-BREAK*"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">*request-terminal-input-via-break*</b></a>, <a class="xref" href="#f_make-lock" title="Function MAKE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-lock</b></a>, <a class="xref" href="#f_make-read-write-lock" title="Function MAKE-READ-WRITE-LOCK"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-read-write-lock</b></a>, <a class="xref" href="#f_make-semaphore" title="Function MAKE-SEMAPHORE"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-semaphore</b></a>, <a class="xref" href="#f_process-input-wait" title="Function PROCESS-INPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-input-wait</b></a>, <a class="xref" href="#f_process-output-wait" title="Function PROCESS-OUTPUT-WAIT"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-output-wait</b></a></span>
     7488              </div>
     7489            </div>
     7490          </p>
     7491          <p>
     7492            <div class="refentrytitle">
     7493              <a id="f_join-process"></a>
     7494              <strong>[Function]</strong>
     7495              <br></br>
     7496              <code><span xmlns="http://www.w3.org/1999/xhtml" class="function"><strong>join-process</strong></span> process
     7497        <em xmlns="http://www.w3.org/1999/xhtml" class="varname">&amp;optional</em> default =&gt; values</code>
     7498            </div>
     7499            <div class="refentrytitle">Waits for a specified process to complete and
     7500        returns the values that that process's initial function
     7501        returned.</div>
     7502          </p>
     7503          <p>
     7504            <div>
     7505              <div class="refsect1" lang="en" xml:lang="en">
     7506                <a xmlns="http://www.w3.org/1999/xhtml" id="id589032"></a>
     7507                <div class="header">Arguments and Values:</div>
     7508                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">process</span></i>---a process, typically created by <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#f_process-run-function" title="Function PROCESS-RUN-FUNCTION"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-run-function</b></a> or by <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#f_make-process" title="Function MAKE-PROCESS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">make-process</b></a></p>
     7509                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">default</span></i>---A default value to be returned if the specified
     7510              process doesn't exit normally.</p>
     7511                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">values</span></i>---The values returned by the specified process's
     7512              initial function if that function returns, or the value
     7513              of the default argument, otherwise.</p>
     7514              </div>
     7515              <div class="refsect1" lang="en" xml:lang="en">
     7516                <a xmlns="http://www.w3.org/1999/xhtml" id="id589090"></a>
     7517                <div class="header">Description:</div>
     7518                <p xmlns="http://www.w3.org/1999/xhtml">Waits for the specified process to terminate.  If the
     7519        process terminates "normally" (if its initial function
     7520        returns), returns the values that that initial function
     7521        returnes.  If the process does not terminate normally (e.g.,
     7522        if it's terminated via <a class="xref" href="#f_process-kill" title="Function PROCESS-KILL"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">process-kill</b></a> and a
     7523        default argument is provided, returns the value of that
     7524        default argument.  If the process doesn't terminate normally
     7525        and no default argument is provided, signals an error.</p>
     7526                <p xmlns="http://www.w3.org/1999/xhtml">A process can't successfully join itself, and only one
     7527        process can successfully receive notification of another process's
     7528        termination.</p>
    74157529              </div>
    74167530            </div>
     
    74227536          <div>
    74237537            <div>
    7424               <h2 class="title"><a id="Programming-with-Sockets"></a>Chapter 8. Programming with Sockets</h2>
     7538              <h2 class="title"><a id="Programming-with-Sockets"></a>Chapter 7. Programming with Sockets</h2>
    74257539            </div>
    74267540          </div>
     
    74307544            <dt>
    74317545              <span class="sect1">
    7432                 <a href="#Sockets-Overview">8.1. Overview</a>
     7546                <a href="#Sockets-Overview">7.1. Overview</a>
    74337547              </span>
    74347548            </dt>
    74357549            <dt>
    74367550              <span class="sect1">
    7437                 <a href="#Sockets-Dictionary">8.2. Sockets Dictionary</a>
     7551                <a href="#Sockets-Dictionary">7.2. Sockets Dictionary</a>
    74387552              </span>
    74397553            </dt>
     
    74447558            <div>
    74457559              <div>
    7446                 <h2 class="title" style="clear: both"><a id="Sockets-Overview"></a>8.1. Overview</h2>
     7560                <h2 class="title" style="clear: both"><a id="Sockets-Overview"></a>7.1. Overview</h2>
    74477561              </div>
    74487562            </div>
     
    75207634            <div>
    75217635              <div>
    7522                 <h2 class="title" style="clear: both"><a id="Sockets-Dictionary"></a>8.2. Sockets Dictionary</h2>
     7636                <h2 class="title" style="clear: both"><a id="Sockets-Dictionary"></a>7.2. Sockets Dictionary</h2>
    75237637              </div>
    75247638            </div>
     
    75417655            <div>
    75427656              <div class="refsect1" lang="en" xml:lang="en">
    7543                 <a xmlns="http://www.w3.org/1999/xhtml" id="id372876"></a>
     7657                <a xmlns="http://www.w3.org/1999/xhtml" id="id573262"></a>
    75447658                <div class="header">Arguments and Values:</div>
    75457659                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">address-family</span></i>---The address/protocol family of this socket. Currently
     
    76137727                specified number of seconds, an
    76147728                <code xmlns="http://www.w3.org/1999/xhtml" class="literal">input-timeout</code> error is signalled.
    7615                 (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="10.1.4. Stream Timeouts and Deadlines">Section 10.1.4, “Stream Timeouts and Deadlines”</a>)</p>
     7729                (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="9.1.4. Stream Timeouts and Deadlines">Section 9.1.4, “Stream Timeouts and Deadlines”</a>)</p>
    76167730                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">output-timeout</span></i>---The number of seconds before an output operation
    76177731                times out.  Must be a real number between zero and one
     
    76197733                specified number of seconds, an
    76207734                <code xmlns="http://www.w3.org/1999/xhtml" class="literal">output-timeout</code> error is signalled.
    7621                 (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="10.1.4. Stream Timeouts and Deadlines">Section 10.1.4, “Stream Timeouts and Deadlines”</a>)</p>
     7735                (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="9.1.4. Stream Timeouts and Deadlines">Section 9.1.4, “Stream Timeouts and Deadlines”</a>)</p>
    76227736                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">connect-timeout</span></i>---The number of seconds before a connection
    76237737                attempt times out. [TODO: what are acceptable values?]
     
    76377751                <code xmlns="http://www.w3.org/1999/xhtml" class="literal">COMMUNICATION-DEADLINE-EXPIRED</code>
    76387752                error is signalled.  A deadline takes precedence over
    7639                 any input/output timeouts that may be set.  (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="10.1.4. Stream Timeouts and Deadlines">Section 10.1.4, “Stream Timeouts and Deadlines”</a>)</p>
    7640               </div>
    7641               <div class="refsect1" lang="en" xml:lang="en">
    7642                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404926"></a>
     7753                any input/output timeouts that may be set.  (see <a xmlns="http://www.w3.org/1999/xhtml" class="xref" href="#Stream-Timeouts-And-Deadlines" title="9.1.4. Stream Timeouts and Deadlines">Section 9.1.4, “Stream Timeouts and Deadlines”</a>)</p>
     7754              </div>
     7755              <div class="refsect1" lang="en" xml:lang="en">
     7756                <a xmlns="http://www.w3.org/1999/xhtml" id="id575504"></a>
    76437757                <div class="header">Description:</div>
    76447758                <p xmlns="http://www.w3.org/1999/xhtml">Creates and returns a new socket</p>
     
    76597773            <div>
    76607774              <div class="refsect1" lang="en" xml:lang="en">
    7661                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404987"></a>
     7775                <a xmlns="http://www.w3.org/1999/xhtml" id="id575566"></a>
    76627776                <div class="header">Arguments and Values:</div>
    76637777                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The listener-socket to listen on.</p>
     
    76677781              </div>
    76687782              <div class="refsect1" lang="en" xml:lang="en">
    7669                 <a xmlns="http://www.w3.org/1999/xhtml" id="id405030"></a>
     7783                <a xmlns="http://www.w3.org/1999/xhtml" id="id557353"></a>
    76707784                <div class="header">Description:</div>
    76717785                <p xmlns="http://www.w3.org/1999/xhtml">Extracts the first connection on the queue of pending
     
    76937807            <div>
    76947808              <div class="refsect1" lang="en" xml:lang="en">
    7695                 <a xmlns="http://www.w3.org/1999/xhtml" id="id405095"></a>
     7809                <a xmlns="http://www.w3.org/1999/xhtml" id="id557418"></a>
    76967810                <div class="header">Arguments and Values:</div>
    76977811                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">dotted</span></i>---A string representing an IP address in the
     
    77017815              </div>
    77027816              <div class="refsect1" lang="en" xml:lang="en">
    7703                 <a xmlns="http://www.w3.org/1999/xhtml" id="id405136"></a>
     7817                <a xmlns="http://www.w3.org/1999/xhtml" id="id557460"></a>
    77047818                <div class="header">Description:</div>
    77057819                <p xmlns="http://www.w3.org/1999/xhtml">Converts a dotted-string representation of a host address to
     
    77217835            <div>
    77227836              <div class="refsect1" lang="en" xml:lang="en">
    7723                 <a xmlns="http://www.w3.org/1999/xhtml" id="id405198"></a>
     7837                <a xmlns="http://www.w3.org/1999/xhtml" id="id557522"></a>
    77247838                <div class="header">Arguments and Values:</div>
    77257839                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">ipaddr</span></i>---A 32-bit integer representing an internet host address</p>
     
    77307844              </div>
    77317845              <div class="refsect1" lang="en" xml:lang="en">
    7732                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403555"></a>
     7846                <a xmlns="http://www.w3.org/1999/xhtml" id="id557564"></a>
    77337847                <div class="header">Description:</div>
    77347848                <p xmlns="http://www.w3.org/1999/xhtml">Converts a 32-bit unsigned IP address into octets.</p>
     
    77497863            <div>
    77507864              <div class="refsect1" lang="en" xml:lang="en">
    7751                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403616"></a>
     7865                <a xmlns="http://www.w3.org/1999/xhtml" id="id557625"></a>
    77527866                <div class="header">Arguments and Values:</div>
    77537867                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">ipaddr</span></i>---a 32-bit integer representing an internet host address</p>
     
    77567870              </div>
    77577871              <div class="refsect1" lang="en" xml:lang="en">
    7758                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403657"></a>
     7872                <a xmlns="http://www.w3.org/1999/xhtml" id="id557665"></a>
    77597873                <div class="header">Description:</div>
    77607874                <p xmlns="http://www.w3.org/1999/xhtml">Converts a 32-bit unsigned IP address into a host name
     
    77767890            <div>
    77777891              <div class="refsect1" lang="en" xml:lang="en">
    7778                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403714"></a>
     7892                <a xmlns="http://www.w3.org/1999/xhtml" id="id557722"></a>
    77797893                <div class="header">Arguments and Values:</div>
    77807894                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">host</span></i>---Specifies the host. It can be either a host name
     
    77847898              </div>
    77857899              <div class="refsect1" lang="en" xml:lang="en">
    7786                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403742"></a>
     7900                <a xmlns="http://www.w3.org/1999/xhtml" id="id557750"></a>
    77877901                <div class="header">Description:</div>
    77887902                <p xmlns="http://www.w3.org/1999/xhtml">Converts a host spec in any of the acceptable formats into a
     
    78047918            <div>
    78057919              <div class="refsect1" lang="en" xml:lang="en">
    7806                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403800"></a>
     7920                <a xmlns="http://www.w3.org/1999/xhtml" id="id557808"></a>
    78077921                <div class="header">Arguments and Values:</div>
    78087922                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">port</span></i>---Specifies the port. It can be either a string, such as
     
    78137927              </div>
    78147928              <div class="refsect1" lang="en" xml:lang="en">
    7815                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403842"></a>
     7929                <a xmlns="http://www.w3.org/1999/xhtml" id="id557851"></a>
    78167930                <div class="header">Description:</div>
    78177931                <p xmlns="http://www.w3.org/1999/xhtml">Finds the port number for the specified port and protocol</p>
     
    78337947            <div>
    78347948              <div class="refsect1" lang="en" xml:lang="en">
    7835                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403904"></a>
     7949                <a xmlns="http://www.w3.org/1999/xhtml" id="id557912"></a>
    78367950                <div class="header">Arguments and Values:</div>
    78377951                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket to read from</p>
     
    78507964              </div>
    78517965              <div class="refsect1" lang="en" xml:lang="en">
    7852                 <a xmlns="http://www.w3.org/1999/xhtml" id="id403994"></a>
     7966                <a xmlns="http://www.w3.org/1999/xhtml" id="id575641"></a>
    78537967                <div class="header">Description:</div>
    78547968                <p xmlns="http://www.w3.org/1999/xhtml">Reads a UDP packet from a socket. If no packets are
     
    78878001            <div>
    78888002              <div class="refsect1" lang="en" xml:lang="en">
    7889                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404109"></a>
     8003                <a xmlns="http://www.w3.org/1999/xhtml" id="id575741"></a>
    78908004                <div class="header">Arguments and Values:</div>
    78918005                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket to write to</p>
     
    79038017              </div>
    79048018              <div class="refsect1" lang="en" xml:lang="en">
    7905                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404213"></a>
     8019                <a xmlns="http://www.w3.org/1999/xhtml" id="id575845"></a>
    79068020                <div class="header">Description:</div>
    79078021                <p xmlns="http://www.w3.org/1999/xhtml">Send a UDP packet over a socket.</p>
     
    79228036            <div>
    79238037              <div class="refsect1" lang="en" xml:lang="en">
    7924                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404274"></a>
     8038                <a xmlns="http://www.w3.org/1999/xhtml" id="id575906"></a>
    79258039                <div class="header">Arguments and Values:</div>
    79268040                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket to shut down (typically a tcp-stream)</p>
     
    79298043              </div>
    79308044              <div class="refsect1" lang="en" xml:lang="en">
    7931                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404315"></a>
     8045                <a xmlns="http://www.w3.org/1999/xhtml" id="id575947"></a>
    79328046                <div class="header">Description:</div>
    79338047                <p xmlns="http://www.w3.org/1999/xhtml">Shuts down part of a bidirectional connection. This is
     
    79508064            <div>
    79518065              <div class="refsect1" lang="en" xml:lang="en">
    7952                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404374"></a>
     8066                <a xmlns="http://www.w3.org/1999/xhtml" id="id576005"></a>
    79538067                <div class="header">Arguments and Values:</div>
    79548068                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    79558069              </div>
    79568070              <div class="refsect1" lang="en" xml:lang="en">
    7957                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404400"></a>
     8071                <a xmlns="http://www.w3.org/1999/xhtml" id="id576031"></a>
    79588072                <div class="header">Description:</div>
    79598073                <p xmlns="http://www.w3.org/1999/xhtml">Returns the native OS's representation of the socket, or
     
    79808094            <div>
    79818095              <div class="refsect1" lang="en" xml:lang="en">
    7982                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404461"></a>
     8096                <a xmlns="http://www.w3.org/1999/xhtml" id="id576092"></a>
    79838097                <div class="header">Arguments and Values:</div>
    79848098                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    79858099              </div>
    79868100              <div class="refsect1" lang="en" xml:lang="en">
    7987                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404487"></a>
     8101                <a xmlns="http://www.w3.org/1999/xhtml" id="id576118"></a>
    79888102                <div class="header">Description:</div>
    79898103                <p xmlns="http://www.w3.org/1999/xhtml">Returns the 32-bit unsigned IP address of the remote host,
     
    80058119            <div>
    80068120              <div class="refsect1" lang="en" xml:lang="en">
    8007                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404545"></a>
     8121                <a xmlns="http://www.w3.org/1999/xhtml" id="id576177"></a>
    80088122                <div class="header">Arguments and Values:</div>
    80098123                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    80108124              </div>
    80118125              <div class="refsect1" lang="en" xml:lang="en">
    8012                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404571"></a>
     8126                <a xmlns="http://www.w3.org/1999/xhtml" id="id576203"></a>
    80138127                <div class="header">Description:</div>
    80148128                <p xmlns="http://www.w3.org/1999/xhtml">Returns the remote port number, or NIL if the socket is not
     
    80308144            <div>
    80318145              <div class="refsect1" lang="en" xml:lang="en">
    8032                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404629"></a>
     8146                <a xmlns="http://www.w3.org/1999/xhtml" id="id573320"></a>
    80338147                <div class="header">Arguments and Values:</div>
    80348148                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    80358149              </div>
    80368150              <div class="refsect1" lang="en" xml:lang="en">
    8037                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404655"></a>
     8151                <a xmlns="http://www.w3.org/1999/xhtml" id="id573346"></a>
    80388152                <div class="header">Description:</div>
    80398153                <p xmlns="http://www.w3.org/1999/xhtml">Returns 32-bit unsigned IP address of the local host.</p>
     
    80548168            <div>
    80558169              <div class="refsect1" lang="en" xml:lang="en">
    8056                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404712"></a>
     8170                <a xmlns="http://www.w3.org/1999/xhtml" id="id573403"></a>
    80578171                <div class="header">Arguments and Values:</div>
    80588172                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    80598173              </div>
    80608174              <div class="refsect1" lang="en" xml:lang="en">
    8061                 <a xmlns="http://www.w3.org/1999/xhtml" id="id404738"></a>
     8175                <a xmlns="http://www.w3.org/1999/xhtml" id="id573429"></a>
    80628176                <div class="header">Description:</div>
    80638177                <p xmlns="http://www.w3.org/1999/xhtml">Returns the local port number</p>
     
    80788192            <div>
    80798193              <div class="refsect1" lang="en" xml:lang="en">
    8080                 <a xmlns="http://www.w3.org/1999/xhtml" id="id401876"></a>
     8194                <a xmlns="http://www.w3.org/1999/xhtml" id="id573487"></a>
    80818195                <div class="header">Arguments and Values:</div>
    80828196                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    80838197              </div>
    80848198              <div class="refsect1" lang="en" xml:lang="en">
    8085                 <a xmlns="http://www.w3.org/1999/xhtml" id="id401902"></a>
     8199                <a xmlns="http://www.w3.org/1999/xhtml" id="id573513"></a>
    80868200                <div class="header">Description:</div>
    80878201                <p xmlns="http://www.w3.org/1999/xhtml">Returns :internet or :file, as appropriate.</p>
     
    81028216            <div>
    81038217              <div class="refsect1" lang="en" xml:lang="en">
    8104                 <a xmlns="http://www.w3.org/1999/xhtml" id="id401959"></a>
     8218                <a xmlns="http://www.w3.org/1999/xhtml" id="id573570"></a>
    81058219                <div class="header">Arguments and Values:</div>
    81068220                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    81078221              </div>
    81088222              <div class="refsect1" lang="en" xml:lang="en">
    8109                 <a xmlns="http://www.w3.org/1999/xhtml" id="id401985"></a>
     8223                <a xmlns="http://www.w3.org/1999/xhtml" id="id573596"></a>
    81108224                <div class="header">Description:</div>
    81118225                <p xmlns="http://www.w3.org/1999/xhtml">Returns :active for tcp-stream, :passive for
     
    81278241            <div>
    81288242              <div class="refsect1" lang="en" xml:lang="en">
    8129                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402042"></a>
     8243                <a xmlns="http://www.w3.org/1999/xhtml" id="id573654"></a>
    81308244                <div class="header">Arguments and Values:</div>
    81318245                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    81328246              </div>
    81338247              <div class="refsect1" lang="en" xml:lang="en">
    8134                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402069"></a>
     8248                <a xmlns="http://www.w3.org/1999/xhtml" id="id573680"></a>
    81358249                <div class="header">Description:</div>
    81368250                <p xmlns="http://www.w3.org/1999/xhtml">Returns the socket format as specified by the :format
     
    81528266            <div>
    81538267              <div class="refsect1" lang="en" xml:lang="en">
    8154                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402127"></a>
     8268                <a xmlns="http://www.w3.org/1999/xhtml" id="id573738"></a>
    81558269                <div class="header">Arguments and Values:</div>
    81568270                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket</p>
    81578271              </div>
    81588272              <div class="refsect1" lang="en" xml:lang="en">
    8159                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402153"></a>
     8273                <a xmlns="http://www.w3.org/1999/xhtml" id="id573764"></a>
    81608274                <div class="header">Description:</div>
    81618275                <p xmlns="http://www.w3.org/1999/xhtml">returns :stream for tcp-stream and listener-socket, and
     
    81768290            <div>
    81778291              <div class="refsect1" lang="en" xml:lang="en">
    8178                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402196"></a>
     8292                <a xmlns="http://www.w3.org/1999/xhtml" id="id573808"></a>
    81798293                <div class="header">Description:</div>
    81808294                <p xmlns="http://www.w3.org/1999/xhtml">The class of OS errors signaled by socket functions</p>
    81818295              </div>
    81828296              <div class="refsect1" lang="en" xml:lang="en">
    8183                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402207"></a>
     8297                <a xmlns="http://www.w3.org/1999/xhtml" id="id573819"></a>
    81848298                <div class="header">Superclasses:</div>
    81858299                <p xmlns="http://www.w3.org/1999/xhtml">simple-error</p>
     
    82008314            <div>
    82018315              <div class="refsect1" lang="en" xml:lang="en">
    8202                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402265"></a>
     8316                <a xmlns="http://www.w3.org/1999/xhtml" id="id573876"></a>
    82038317                <div class="header">Arguments and Values:</div>
    82048318                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket-error</span></i>---the condition</p>
    82058319              </div>
    82068320              <div class="refsect1" lang="en" xml:lang="en">
    8207                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402291"></a>
     8321                <a xmlns="http://www.w3.org/1999/xhtml" id="id573903"></a>
    82088322                <div class="header">Description:</div>
    82098323                <p xmlns="http://www.w3.org/1999/xhtml">The OS error code of the error</p>
     
    82248338            <div>
    82258339              <div class="refsect1" lang="en" xml:lang="en">
    8226                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402349"></a>
     8340                <a xmlns="http://www.w3.org/1999/xhtml" id="id573961"></a>
    82278341                <div class="header">Arguments and Values:</div>
    82288342                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket-error</span></i>---the condition</p>
    82298343              </div>
    82308344              <div class="refsect1" lang="en" xml:lang="en">
    8231                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402375"></a>
     8345                <a xmlns="http://www.w3.org/1999/xhtml" id="id573987"></a>
    82328346                <div class="header">Description:</div>
    82338347                <p xmlns="http://www.w3.org/1999/xhtml">A symbol representing the error code in a more
     
    82538367            <div>
    82548368              <div class="refsect1" lang="en" xml:lang="en">
    8255                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402438"></a>
     8369                <a xmlns="http://www.w3.org/1999/xhtml" id="id574050"></a>
    82568370                <div class="header">Arguments and Values:</div>
    82578371                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket-error</span></i>---the condition</p>
    82588372              </div>
    82598373              <div class="refsect1" lang="en" xml:lang="en">
    8260                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402464"></a>
     8374                <a xmlns="http://www.w3.org/1999/xhtml" id="id574076"></a>
    82618375                <div class="header">Description:</div>
    82628376                <p xmlns="http://www.w3.org/1999/xhtml">A string describing the context where the error happened. On
     
    82798393            <div>
    82808394              <div class="refsect1" lang="en" xml:lang="en">
    8281                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402527"></a>
     8395                <a xmlns="http://www.w3.org/1999/xhtml" id="id572393"></a>
    82828396                <div class="header">Arguments and Values:</div>
    82838397                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">socket</span></i>---The socket to close</p>
     
    82908404              </div>
    82918405              <div class="refsect1" lang="en" xml:lang="en">
    8292                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402570"></a>
     8406                <a xmlns="http://www.w3.org/1999/xhtml" id="id572437"></a>
    82938407                <div class="header">Description:</div>
    82948408                <p xmlns="http://www.w3.org/1999/xhtml">The close generic function can be applied to sockets. It
     
    83118425            <div>
    83128426              <div class="refsect1" lang="en" xml:lang="en">
    8313                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402655"></a>
     8427                <a xmlns="http://www.w3.org/1999/xhtml" id="id572499"></a>
    83148428                <div class="header">Arguments and Values:</div>
    83158429                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">var</span></i>---variable to bind</p>
     
    83188432              </div>
    83198433              <div class="refsect1" lang="en" xml:lang="en">
    8320                 <a xmlns="http://www.w3.org/1999/xhtml" id="id402710"></a>
     8434                <a xmlns="http://www.w3.org/1999/xhtml" id="id572555"></a>
    83218435                <div class="header">Description:</div>
    83228436                <p xmlns="http://www.w3.org/1999/xhtml">executes body with var bound to the result of applying
     
    83318445          <div>
    83328446            <div>
    8333               <h2 class="title"><a id="Running-Other-Programs-as-Subprocesses"></a>Chapter 9. Running Other Programs as Subprocesses</h2>
     8447              <h2 class="title"><a id="Running-Other-Programs-as-Subprocesses"></a>Chapter 8. Running Other Programs as Subprocesses</h2>
    83348448            </div>
    83358449          </div>
     
    83398453            <dt>
    83408454              <span class="sect1">
    8341                 <a href="#Subprocess-Overview">9.1. Overview</a>
     8455                <a href="#Subprocess-Overview">8.1. Overview</a>
    83428456              </span>
    83438457            </dt>
    83448458            <dt>
    83458459              <span class="sect1">
    8346                 <a href="#Subprocess-Examples">9.2. Examples</a>
     8460                <a href="#Subprocess-Examples">8.2. Examples</a>
    83478461              </span>
    83488462            </dt>
    83498463            <dt>
    83508464              <span class="sect1">
    8351                 <a href="#Limitations-and-known-bugs">9.3. Limitations and known bugs</a>
     8465                <a href="#Limitations-and-known-bugs">8.3. Limitations and known bugs</a>
    83528466              </span>
    83538467            </dt>
    83548468            <dt>
    83558469              <span class="sect1">
    8356                 <a href="#External-Program-Dictionary">9.4. External-Program Dictionary</a>
     8470                <a href="#External-Program-Dictionary">8.4. External-Program Dictionary</a>
    83578471              </span>
    83588472            </dt>
     
    83638477            <div>
    83648478              <div>
    8365                 <h2 class="title" style="clear: both"><a id="Subprocess-Overview"></a>9.1. Overview</h2>
     8479                <h2 class="title" style="clear: both"><a id="Subprocess-Overview"></a>8.1. Overview</h2>
    83668480              </div>
    83678481            </div>
     
    83808494            <div>
    83818495              <div>
    8382                 <h2 class="title" style="clear: both"><a id="Subprocess-Examples"></a>9.2. Examples</h2>
     8496                <h2 class="title" style="clear: both"><a id="Subprocess-Examples"></a>8.2. Examples</h2>
    83838497              </div>
    83848498            </div>
     
    84048518            <div>
    84058519              <div>
    8406                 <h2 class="title" style="clear: both"><a id="Limitations-and-known-bugs"></a>9.3. Limitations and known bugs</h2>
     8520                <h2 class="title" style="clear: both"><a id="Limitations-and-known-bugs"></a>8.3. Limitations and known bugs</h2>
    84078521              </div>
    84088522            </div>
     
    84298543            <div>
    84308544              <div>
    8431                 <h2 class="title" style="clear: both"><a id="External-Program-Dictionary"></a>9.4. External-Program Dictionary</h2>
     8545                <h2 class="title" style="clear: both"><a id="External-Program-Dictionary"></a>8.4. External-Program Dictionary</h2>
    84328546              </div>
    84338547            </div>
     
    84498563            <div>
    84508564              <div class="refsect1" lang="en" xml:lang="en">
    8451                 <a xmlns="http://www.w3.org/1999/xhtml" id="id368679"></a>
     8565                <a xmlns="http://www.w3.org/1999/xhtml" id="id558022"></a>
    84528566                <div class="header">Arguments and Values:</div>
    84538567                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">program</span></i>---A string or pathname which denotes an executable file.
     
    84918605              </div>
    84928606              <div class="refsect1" lang="en" xml:lang="en">
    8493                 <a xmlns="http://www.w3.org/1999/xhtml" id="id354820"></a>
     8607                <a xmlns="http://www.w3.org/1999/xhtml" id="id550227"></a>
    84948608                <div class="header">Description:</div>
    84958609                <p xmlns="http://www.w3.org/1999/xhtml">Runs the specified program in an external (Unix) process,
     
    85118625            <div>
    85128626              <div class="refsect1" lang="en" xml:lang="en">
    8513                 <a xmlns="http://www.w3.org/1999/xhtml" id="id354877"></a>
     8627                <a xmlns="http://www.w3.org/1999/xhtml" id="id523912"></a>
    85148628                <div class="header">Arguments and Values:</div>
    85158629                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
     
    85178631              </div>
    85188632              <div class="refsect1" lang="en" xml:lang="en">
    8519                 <a xmlns="http://www.w3.org/1999/xhtml" id="id354917"></a>
     8633                <a xmlns="http://www.w3.org/1999/xhtml" id="id523953"></a>
    85208634                <div class="header">Description:</div>
    85218635                <p xmlns="http://www.w3.org/1999/xhtml">Sends the specified "signal" to the specified
     
    85408654            <div>
    85418655              <div class="refsect1" lang="en" xml:lang="en">
    8542                 <a xmlns="http://www.w3.org/1999/xhtml" id="id386150"></a>
     8656                <a xmlns="http://www.w3.org/1999/xhtml" id="id560601"></a>
    85438657                <div class="header">Arguments and Values:</div>
    85448658                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
    85458659              </div>
    85468660              <div class="refsect1" lang="en" xml:lang="en">
    8547                 <a xmlns="http://www.w3.org/1999/xhtml" id="id386176"></a>
     8661                <a xmlns="http://www.w3.org/1999/xhtml" id="id560627"></a>
    85488662                <div class="header">Description:</div>
    85498663                <p xmlns="http://www.w3.org/1999/xhtml">Returns the <span class="emphasis"><em>process id</em></span> assigned to
     
    85678681            <div>
    85688682              <div class="refsect1" lang="en" xml:lang="en">
    8569                 <a xmlns="http://www.w3.org/1999/xhtml" id="id369560"></a>
     8683                <a xmlns="http://www.w3.org/1999/xhtml" id="id523210"></a>
    85708684                <div class="header">Arguments and Values:</div>
    85718685                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
    85728686              </div>
    85738687              <div class="refsect1" lang="en" xml:lang="en">
    8574                 <a xmlns="http://www.w3.org/1999/xhtml" id="id369586"></a>
     8688                <a xmlns="http://www.w3.org/1999/xhtml" id="id523236"></a>
    85758689                <div class="header">Description:</div>
    85768690                <p xmlns="http://www.w3.org/1999/xhtml">Returns the stream created when the input argument to
     
    85938707            <div>
    85948708              <div class="refsect1" lang="en" xml:lang="en">
    8595                 <a xmlns="http://www.w3.org/1999/xhtml" id="id369647"></a>
     8709                <a xmlns="http://www.w3.org/1999/xhtml" id="id523296"></a>
    85968710                <div class="header">Arguments and Values:</div>
    85978711                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
    85988712              </div>
    85998713              <div class="refsect1" lang="en" xml:lang="en">
    8600                 <a xmlns="http://www.w3.org/1999/xhtml" id="id379281"></a>
     8714                <a xmlns="http://www.w3.org/1999/xhtml" id="id523322"></a>
    86018715                <div class="header">Description:</div>
    86028716                <p xmlns="http://www.w3.org/1999/xhtml">Returns the stream created when the output argument to
     
    86208734            <div>
    86218735              <div class="refsect1" lang="en" xml:lang="en">
    8622                 <a xmlns="http://www.w3.org/1999/xhtml" id="id379341"></a>
     8736                <a xmlns="http://www.w3.org/1999/xhtml" id="id552384"></a>
    86238737                <div class="header">Arguments and Values:</div>
    86248738                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
    86258739              </div>
    86268740              <div class="refsect1" lang="en" xml:lang="en">
    8627                 <a xmlns="http://www.w3.org/1999/xhtml" id="id379367"></a>
     8741                <a xmlns="http://www.w3.org/1999/xhtml" id="id552410"></a>
    86288742                <div class="header">Description:</div>
    86298743                <p xmlns="http://www.w3.org/1999/xhtml">Returns the stream created when the error argument to
     
    86478761            <div>
    86488762              <div class="refsect1" lang="en" xml:lang="en">
    8649                 <a xmlns="http://www.w3.org/1999/xhtml" id="id367898"></a>
     8763                <a xmlns="http://www.w3.org/1999/xhtml" id="id556714"></a>
    86508764                <div class="header">Arguments and Values:</div>
    86518765                <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">proc</span></i>---An EXTERNAL-PROCESS, as returned by RUN-PROGRAM.</p>
    86528766              </div>
    86538767              <div class="refsect1" lang="en" xml:lang="en">
    8654                 <a xmlns="http://www.w3.org/1999/xhtml" id="id367924"></a>
     8768                <a xmlns="http://www.w3.org/1999/xhtml" id="id556740"></a>
    86558769                <div class="header">Description:</div>
    86568770                <p xmlns="http://www.w3.org/1999/xhtml">Returns, as multiple values, a keyword denoting the status
     
    86678781          <div>
    86688782            <div>
    8669               <h2 class="title"><a id="Streams"></a>Chapter 10. Streams</h2>
     8783              <h2 class="title"><a id="Streams"></a>Chapter 9. Streams</h2>
    86708784            </div>
    86718785          </div>
     
    86758789            <dt>
    86768790              <span class="sect1">
    8677                 <a href="#CCL-Stream-Extensions">10.1. Stream Extensions</a>
     8791                <a href="#CCL-Stream-Extensions">9.1. Stream Extensions</a>
    86788792              </span>
    86798793            </dt>
     
    86828796                <dt>
    86838797                  <span class="sect2">
    8684                     <a href="#id380903">10.1.1. Stream External Encoding</a>
     8798                    <a href="#id547190">9.1.1. Stream External Encoding</a>
    86858799                  </span>
    86868800                </dt>
    86878801                <dt>
    86888802                  <span class="sect2">
    8689                     <a href="#Additional-Open-Keywords">10.1.2. Additional keywords for OPEN and MAKE-SOCKET</a>
     8803                    <a href="#Additional-Open-Keywords">9.1.2. Additional keywords for OPEN and MAKE-SOCKET</a>
    86908804                  </span>
    86918805                </dt>
    86928806                <dt>
    86938807                  <span class="sect2">
    8694                     <a href="#Basic-Versus-Fundamental-Streams">10.1.3. Basic Versus Fundamental Streams</a>
     8808                    <a href="#Basic-Versus-Fundamental-Streams">9.1.3. Basic Versus Fundamental Streams</a>
    86958809                  </span>
    86968810                </dt>
    86978811                <dt>
    86988812                  <span class="sect2">
    8699                     <a href="#Stream-Timeouts-And-Deadlines">10.1.4. Stream Timeouts and Deadlines</a>
     8813                    <a href="#Stream-Timeouts-And-Deadlines">9.1.4. Stream Timeouts and Deadlines</a>
    87008814                  </span>
    87018815                </dt>
    87028816                <dt>
    87038817                  <span class="sect2">
    8704                     <a href="#Open-File-Streams">10.1.5. Open File Streams</a>
     8818                    <a href="#Open-File-Streams">9.1.5. Open File Streams</a>
    87058819                  </span>
    87068820                </dt>
     
    87098823            <dt>
    87108824              <span class="sect1">
    8711                 <a href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams">10.2. Creating Your Own Stream Classes with Gray Streams</a>
     8825                <a href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams">9.2. Creating Your Own Stream Classes with Gray Streams</a>
    87128826              </span>
    87138827            </dt>
     
    87168830                <dt>
    87178831                  <span class="sect2">
    8718                     <a href="#Streams-Overview">10.2.1. Overview</a>
     8832                    <a href="#Streams-Overview">9.2.1. Overview</a>
    87198833                  </span>
    87208834                </dt>
    87218835                <dt>
    87228836                  <span class="sect2">
    8723                     <a href="#Extending-READ-SEQUENCE-and-WRITE-SEQUENCE">10.2.2. Extending READ-SEQUENCE and WRITE-SEQUENCE</a>
     8837                    <a href="#Extending-READ-SEQUENCE-and-WRITE-SEQUENCE">9.2.2. Extending READ-SEQUENCE and WRITE-SEQUENCE</a>
    87248838                  </span>
    87258839                </dt>
    87268840                <dt>
    87278841                  <span class="sect2">
    8728                     <a href="#Multibyte-I-O">10.2.3. Multibyte I/O</a>
     8842                    <a href="#Multibyte-I-O">9.2.3. Multibyte I/O</a>
    87298843                  </span>
    87308844                </dt>
    87318845                <dt>
    87328846                  <span class="sect2">
    8733                     <a href="#Gray-Streams-Dictionary">10.2.4. Gray Streams Dictionary</a>
     8847                    <a href="#Gray-Streams-Dictionary">9.2.4. Gray Streams Dictionary</a>
    87348848                  </span>
    87358849                </dt>
     
    87428856            <div>
    87438857              <div>
    8744                 <h2 class="title" style="clear: both"><a id="CCL-Stream-Extensions"></a>10.1. Stream Extensions</h2>
     8858                <h2 class="title" style="clear: both"><a id="CCL-Stream-Extensions"></a>9.1. Stream Extensions</h2>
    87458859              </div>
    87468860            </div>
     
    87508864              <div>
    87518865                <div>
    8752                   <h3 class="title"><a id="id380903"></a>10.1.1. Stream External Encoding</h3>
     8866                  <h3 class="title"><a id="id547190"></a>9.1.1. Stream External Encoding</h3>
    87538867                </div>
    87548868              </div>
     
    87648878              <div>
    87658879                <div>
    8766                   <h3 class="title"><a id="Additional-Open-Keywords"></a>10.1.2. Additional keywords for OPEN and MAKE-SOCKET</h3>
     8880                  <h3 class="title"><a id="Additional-Open-Keywords"></a>9.1.2. Additional keywords for OPEN and MAKE-SOCKET</h3>
    87678881                </div>
    87688882              </div>
     
    88558969          a Gray stream, i.e. whether or not the stream is an instance
    88568970          of <code class="literal">FUNDAMENTAL-STREAM</code> or
    8857           <code class="literal">CCL::BASIC-STREAM</code>(see <a class="xref" href="#Basic-Versus-Fundamental-Streams" title="10.1.3. Basic Versus Fundamental Streams">Section 10.1.3, “Basic Versus Fundamental Streams”</a>).  Defaults to
     8971          <code class="literal">CCL::BASIC-STREAM</code>(see <a class="xref" href="#Basic-Versus-Fundamental-Streams" title="9.1.3. Basic Versus Fundamental Streams">Section 9.1.3, “Basic Versus Fundamental Streams”</a>).  Defaults to
    88588972          <code class="literal">T</code>.</p>
    88598973                </dd>
     
    88658979              <div>
    88668980                <div>
    8867                   <h3 class="title"><a id="Basic-Versus-Fundamental-Streams"></a>10.1.3. Basic Versus Fundamental Streams</h3>
     8981                  <h3 class="title"><a id="Basic-Versus-Fundamental-Streams"></a>9.1.3. Basic Versus Fundamental Streams</h3>
    88688982                </div>
    88698983              </div>
    88708984            </div>
    8871             <p xmlns="http://www.w3.org/1999/xhtml">Gray streams (see <a class="xref" href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams" title="10.2. Creating Your Own Stream Classes with Gray Streams">Section 10.2, “Creating Your Own Stream Classes with Gray Streams”</a>)
     8985            <p xmlns="http://www.w3.org/1999/xhtml">Gray streams (see <a class="xref" href="#Creating-Your-Own-Stream-Classes-with-Gray-Streams" title="9.2. Creating Your Own Stream Classes with Gray Streams">Section 9.2, “Creating Your Own Stream Classes with Gray Streams”</a>)
    88728986      all inherit from <code class="literal">FUNDAMENTAL-STREAM</code> whereas
    88738987      basic streams inherit from <code class="literal">CCL::BASIC-STREAM</code>.
     
    89069020              <div>
    89079021                <div>
    8908                   <h3 class="title"><a id="Stream-Timeouts-And-Deadlines"></a>10.1.4. Stream Timeouts and Deadlines</h3>
     9022                  <h3 class="title"><a id="Stream-Timeouts-And-Deadlines"></a>9.1.4. Stream Timeouts and Deadlines</h3>
    89099023                </div>
    89109024              </div>
    89119025            </div>
    8912             <a xmlns="http://www.w3.org/1999/xhtml" id="id402803" class="indexterm"></a>
    8913             <a xmlns="http://www.w3.org/1999/xhtml" id="id402813" class="indexterm"></a>
    8914             <a xmlns="http://www.w3.org/1999/xhtml" id="id402823" class="indexterm"></a>
    8915             <a xmlns="http://www.w3.org/1999/xhtml" id="id402832" class="indexterm"></a>
    8916             <a xmlns="http://www.w3.org/1999/xhtml" id="id402842" class="indexterm"></a>
    8917             <a xmlns="http://www.w3.org/1999/xhtml" id="id402852" class="indexterm"></a>
     9026            <a xmlns="http://www.w3.org/1999/xhtml" id="id557146" class="indexterm"></a>
     9027            <a xmlns="http://www.w3.org/1999/xhtml" id="id557156" class="indexterm"></a>
     9028            <a xmlns="http://www.w3.org/1999/xhtml" id="id557166" class="indexterm"></a>
     9029            <a xmlns="http://www.w3.org/1999/xhtml" id="id557176" class="indexterm"></a>
     9030            <a xmlns="http://www.w3.org/1999/xhtml" id="id557185" class="indexterm"></a>
     9031            <a xmlns="http://www.w3.org/1999/xhtml" id="id557195" class="indexterm"></a>
    89189032            <p xmlns="http://www.w3.org/1999/xhtml">A stream that is associated with a file descriptor has
    89199033        attributes and accessors:
     
    89409054              <div>
    89419055                <div>
    8942                   <h3 class="title"><a id="Open-File-Streams"></a>10.1.5. Open File Streams</h3>
     9056                  <h3 class="title"><a id="Open-File-Streams"></a>9.1.5. Open File Streams</h3>
    89439057                </div>
    89449058              </div>
     
    89689082              <div>
    89699083                <div class="refsect1" lang="en" xml:lang="en">
    8970                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406598"></a>
     9084                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574625"></a>
    89719085                  <div class="header">Values:</div>
    89729086                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream-list</span></i>---A list of open file streams.  This is a copy of
     
    89759089                </div>
    89769090                <div class="refsect1" lang="en" xml:lang="en">
    8977                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406625"></a>
     9091                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574652"></a>
    89789092                  <div class="header">Description:</div>
    89799093                  <p xmlns="http://www.w3.org/1999/xhtml">Returns a list of open file streams.</p>
    89809094                </div>
    89819095                <div class="refsect1" lang="en" xml:lang="en">
    8982                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406636"></a>
     9096                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574664"></a>
    89839097                  <div class="header">See Also:</div>
    89849098                  <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_note-open-file-stream" title="Function NOTE-OPEN-FILE-STREAM"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">note-open-file-stream</b></a>, <a class="xref" href="#f_remove-open-file-stream" title="Function REMOVE-OPEN-FILE-STREAM"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">remove-open-file-stream</b></a></span>
     
    90039117              <div>
    90049118                <div class="refsect1" lang="en" xml:lang="en">
    9005                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406717"></a>
     9119                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574744"></a>
    90069120                  <div class="header">Arguments:</div>
    90079121                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">file-stream</span></i>---A file stream.</p>
    90089122                </div>
    90099123                <div class="refsect1" lang="en" xml:lang="en">
    9010                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406743"></a>
     9124                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574770"></a>
    90119125                  <div class="header">Description:</div>
    90129126                  <p xmlns="http://www.w3.org/1999/xhtml">Adds a file stream to the internal list of open
     
    90179131                </div>
    90189132                <div class="refsect1" lang="en" xml:lang="en">
    9019                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406762"></a>
     9133                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574789"></a>
    90209134                  <div class="header">See Also:</div>
    90219135                  <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_open-file-streams" title="Function OPEN-FILE-STREAMS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">open-file-streams</b></a>, <a class="xref" href="#f_remove-open-file-stream" title="Function REMOVE-OPEN-FILE-STREAM"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">remove-open-file-stream</b></a></span>
     
    90409154              <div>
    90419155                <div class="refsect1" lang="en" xml:lang="en">
    9042                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406843"></a>
     9156                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574871"></a>
    90439157                  <div class="header">Arguments:</div>
    90449158                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">file-stream</span></i>---A file stream.</p>
    90459159                </div>
    90469160                <div class="refsect1" lang="en" xml:lang="en">
    9047                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406869"></a>
     9161                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574897"></a>
    90489162                  <div class="header">Description:</div>
    90499163                  <p xmlns="http://www.w3.org/1999/xhtml">Remove file stream from the internal list of open file
     
    90549168                </div>
    90559169                <div class="refsect1" lang="en" xml:lang="en">
    9056                   <a xmlns="http://www.w3.org/1999/xhtml" id="id406888"></a>
     9170                  <a xmlns="http://www.w3.org/1999/xhtml" id="id574916"></a>
    90579171                  <div class="header">See Also:</div>
    90589172                  <span xmlns="http://www.w3.org/1999/xhtml" class="simplelist"><a class="xref" href="#f_open-file-streams" title="Function OPEN-FILE-STREAMS"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">open-file-streams</b></a>, <a class="xref" href="#f_note-open-file-stream" title="Function NOTE-OPEN-FILE-STREAM"><b xmlns="http://www.w3.org/TR/xhtml1/transitional">note-open-file-stream</b></a></span>
     
    90669180            <div>
    90679181              <div>
    9068                 <h2 class="title" style="clear: both"><a id="Creating-Your-Own-Stream-Classes-with-Gray-Streams"></a>10.2. Creating Your Own Stream Classes with Gray Streams</h2>
     9182                <h2 class="title" style="clear: both"><a id="Creating-Your-Own-Stream-Classes-with-Gray-Streams"></a>9.2. Creating Your Own Stream Classes with Gray Streams</h2>
    90699183              </div>
    90709184            </div>
     
    90749188              <div>
    90759189                <div>
    9076                   <h3 class="title"><a id="Streams-Overview"></a>10.2.1. Overview</h3>
     9190                  <h3 class="title"><a id="Streams-Overview"></a>9.2.1. Overview</h3>
    90779191                </div>
    90789192              </div>
     
    93759489              <div>
    93769490                <div>
    9377                   <h3 class="title"><a id="Extending-READ-SEQUENCE-and-WRITE-SEQUENCE"></a>10.2.2. Extending READ-SEQUENCE and WRITE-SEQUENCE</h3>
     9491                  <h3 class="title"><a id="Extending-READ-SEQUENCE-and-WRITE-SEQUENCE"></a>9.2.2. Extending READ-SEQUENCE and WRITE-SEQUENCE</h3>
    93789492                </div>
    93799493              </div>
     
    93839497                <div>
    93849498                  <div>
    9385                     <h4 class="title"><a id="extending-read-write-overview"></a>10.2.2.1. Overview</h4>
     9499                    <h4 class="title"><a id="extending-read-write-overview"></a>9.2.2.1. Overview</h4>
    93869500                  </div>
    93879501                </div>
     
    94049518                <div>
    94059519                  <div>
    9406                     <h4 class="title"><a id="Notes"></a>10.2.2.2. Notes</h4>
     9520                    <h4 class="title"><a id="Notes"></a>9.2.2.2. Notes</h4>
    94079521                  </div>
    94089522                </div>
     
    94189532                <div>
    94199533                  <div>
    9420                     <h4 class="title"><a id="Example"></a>10.2.2.3. Example</h4>
     9534                    <h4 class="title"><a id="Example"></a>9.2.2.3. Example</h4>
    94219535                  </div>
    94229536                </div>
     
    94469560              <div>
    94479561                <div>
    9448                   <h3 class="title"><a id="Multibyte-I-O"></a>10.2.3. Multibyte I/O</h3>
     9562                  <h3 class="title"><a id="Multibyte-I-O"></a>9.2.3. Multibyte I/O</h3>
    94499563                </div>
    94509564              </div>
     
    94709584              <div>
    94719585                <div>
    9472                   <h3 class="title"><a id="Gray-Streams-Dictionary"></a>10.2.4. Gray Streams Dictionary</h3>
     9586                  <h3 class="title"><a id="Gray-Streams-Dictionary"></a>9.2.4. Gray Streams Dictionary</h3>
    94739587                </div>
    94749588              </div>
     
    94879601              <div>
    94889602                <div class="refsect1" lang="en" xml:lang="en">
    9489                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407475"></a>
     9603                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578269"></a>
    94909604                  <div class="header">Arguments and Values:</div>
    94919605                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---a stream, presumably a fundamental-input-stream.</p>
     
    94989612                </div>
    94999613                <div class="refsect1" lang="en" xml:lang="en">
    9500                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407533"></a>
     9614                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578327"></a>
    95019615                  <div class="header">Description:</div>
    95029616                  <p xmlns="http://www.w3.org/1999/xhtml">Should try to read up to count elements from stream into the
     
    95199633              <div>
    95209634                <div class="refsect1" lang="en" xml:lang="en">
    9521                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407593"></a>
     9635                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578386"></a>
    95229636                  <div class="header">Arguments and Values:</div>
    95239637                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---a stream, presumably a fundamental-output-stream.</p>
     
    95309644                </div>
    95319645                <div class="refsect1" lang="en" xml:lang="en">
    9532                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407651"></a>
     9646                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578445"></a>
    95339647                  <div class="header">Description:</div>
    95349648                  <p xmlns="http://www.w3.org/1999/xhtml">should try to write the first count elements of list to
     
    95509664              <div>
    95519665                <div class="refsect1" lang="en" xml:lang="en">
    9552                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407709"></a>
     9666                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578503"></a>
    95539667                  <div class="header">Arguments and Values:</div>
    95549668                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---a stream, presumably a fundamental-input-stream</p>
     
    95669680                </div>
    95679681                <div class="refsect1" lang="en" xml:lang="en">
    9568                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407784"></a>
     9682                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578578"></a>
    95699683                  <div class="header">Description:</div>
    95709684                  <p xmlns="http://www.w3.org/1999/xhtml">should try to read successive elements from stream into
     
    95899703              <div>
    95909704                <div class="refsect1" lang="en" xml:lang="en">
    9591                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407844"></a>
     9705                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578638"></a>
    95929706                  <div class="header">Arguments and Values:</div>
    95939707                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---a stream, presumably a fundamental-output-stream</p>
     
    96059719                </div>
    96069720                <div class="refsect1" lang="en" xml:lang="en">
    9607                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407920"></a>
     9721                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578714"></a>
    96089722                  <div class="header">Description:</div>
    96099723                  <p xmlns="http://www.w3.org/1999/xhtml">should try to write successive elements of vector to stream,
     
    96279741              <div>
    96289742                <div class="refsect1" lang="en" xml:lang="en">
    9629                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407980"></a>
     9743                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578773"></a>
    96309744                  <div class="header">Method Signatures:</div>
    96319745                  <div class="synopsis"><span xmlns="http://www.w3.org/1999/xhtml" class="function"><strong>ccl::stream-device</strong></span> <i>
     
    96339747                </div>
    96349748                <div class="refsect1" lang="en" xml:lang="en">
    9635                   <a xmlns="http://www.w3.org/1999/xhtml" id="id407998"></a>
     9749                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578792"></a>
    96369750                  <div class="header">Arguments and Values:</div>
    96379751                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">s</span></i>---a stream.</p>
     
    96449758                </div>
    96459759                <div class="refsect1" lang="en" xml:lang="en">
    9646                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408063"></a>
     9760                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578857"></a>
    96479761                  <div class="header">Description:</div>
    96489762                  <p xmlns="http://www.w3.org/1999/xhtml">Returns the file descriptor associated with
     
    96689782              <div>
    96699783                <div class="refsect1" lang="en" xml:lang="en">
    9670                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408133"></a>
     9784                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578927"></a>
    96719785                  <div class="header">Description:</div>
    96729786                  <p xmlns="http://www.w3.org/1999/xhtml">Reads up to max-octets octets from stream into ivector,
     
    96759789                </div>
    96769790                <div class="refsect1" lang="en" xml:lang="en">
    9677                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408145"></a>
     9791                  <a xmlns="http://www.w3.org/1999/xhtml" id="id578939"></a>
    96789792                  <div class="header">Arguments:</div>
    96799793                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---An input stream. The method defined on
     
    97009814              <div>
    97019815                <div class="refsect1" lang="en" xml:lang="en">
    9702                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408264"></a>
     9816                  <a xmlns="http://www.w3.org/1999/xhtml" id="id579058"></a>
    97039817                  <div class="header">Description:</div>
    97049818                  <p xmlns="http://www.w3.org/1999/xhtml">Writes max-octets octets to stream from ivector, starting at
     
    97069820                </div>
    97079821                <div class="refsect1" lang="en" xml:lang="en">
    9708                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408276"></a>
     9822                  <a xmlns="http://www.w3.org/1999/xhtml" id="id579070"></a>
    97099823                  <div class="header">Arguments:</div>
    97109824                  <p><i><span xmlns="http://www.w3.org/1999/xhtml" class="term">stream</span></i>---An input stream. The method defined on
     
    97169830                </div>
    97179831                <div class="refsect1" lang="en" xml:lang="en">
    9718                   <a xmlns="http://www.w3.org/1999/xhtml" id="id408348"></a>
     9832                  <a xmlns="http://www.w3.org/1999/xhtml" id="id579142"></a>
    97199833                  <div class="header">Examples:</div>
    97209834                  <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
     
    97599873          <div>
    97609874            <div>
    9761               <h2 class="title"><a id="Writing-Portable-Extensions-to-the-Object-System-using-the-MetaObject-Protocol"></a>Chapter 11. Writing Portable Extensions to the Object System  using the MetaObject Protocol</h2>
     9875              <h2 class="title"><a id="Writing-Portable-Extensions-to-the-Object-System-using-the-MetaObject-Protocol"></a>Chapter 10. Writing Portable Extensions to the Object System  using the MetaObject Protocol</h2>
    97629876            </div>
    97639877          </div>
     
    97679881            <dt>
    97689882              <span class="sect1">
    9769                 <a href="#MOP-Overview">11.1. Overview</a>
     9883                <a href="#MOP-Overview">10.1. Overview</a>
    97709884              </span>
    97719885            </dt>
    97729886            <dt>
    97739887              <span class="sect1">
    9774                 <a href="#MOP-Implementation-status">11.2. Implementation status</a>
     9888                <a href="#MOP-Implementation-status">10.2. Implementation status</a>
    97759889              </span>
    97769890            </dt>
    97779891            <dt>
    97789892              <span class="sect1">
    9779                 <a href="#Concurrency-issues">11.3. Concurrency issues</a>
     9893                <a href="#Concurrency-issues">10.3. Concurrency issues</a>
    97809894              </span>
    97819895            </dt>
     
    97869900            <div>
    97879901              <div>
    9788                 <h2 class="title" style="clear: both"><a id="MOP-Overview"></a>11.1. Overview</h2>
     9902                <h2 class="title" style="clear: both"><a id="MOP-Overview"></a>10.1. Overview</h2>
    97899903              </div>
    97909904            </div>
     
    98019915            <div>
    98029916              <div>
    9803                 <h2 class="title" style="clear: both"><a id="MOP-Implementation-status"></a>11.2. Implementation status</h2>
     9917                <h2 class="title" style="clear: both"><a id="MOP-Implementation-status"></a>10.2. Implementation status</h2>
    98049918              </div>
    98059919            </div>
     
    1041610530            <div>
    1041710531              <div>
    10418                 <h2 class="title" style="clear: both"><a id="Concurrency-issues"></a>11.3. Concurrency issues</h2>
     10532                <h2 class="title" style="clear: both"><a id="Concurrency-issues"></a>10.3. Concurrency issues</h2>
    1041910533              </div>
    1042010534            </div>
     
    1044710561      what your application's critical data is, and use locks for
    1044810562      critical code sections.</p>
     10563        </div>
     10564      </div>
     10565      <div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="chapter" lang="en" xml:lang="en">
     10566        <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10567          <div>
     10568            <div>
     10569              <h2 class="title"><a id="Profiling"></a>Chapter 11. Profiling</h2>
     10570            </div>
     10571          </div>
     10572        </div>
     10573        <div xmlns="http://www.w3.org/1999/xhtml" class="toc">
     10574          <dl>
     10575            <dt>
     10576              <span class="sect1">
     10577                <a href="#Profiling-Using the Linux oprofile system-level profiler">11.1. Using the Linux oprofile system-level profiler</a>
     10578              </span>
     10579            </dt>
     10580            <dd>
     10581              <dl>
     10582                <dt>
     10583                  <span class="sect2">
     10584                    <a href="#Profiling-oprofile-generating-a-lisp-image-for-use-with-oprofile">11.1.1. Generating a lisp image for use with oprofile</a>
     10585                  </span>
     10586                </dt>
     10587                <dt>
     10588                  <span class="sect2">
     10589                    <a href="#Profiling-oprofile-prerequisites">11.1.2. Prerequisites</a>
     10590                  </span>
     10591                </dt>
     10592                <dt>
     10593                  <span class="sect2">
     10594                    <a href="#Profiling-oprofile-generating-elf-symbols-for-lisp-functions">11.1.3. Generating ELF symbols for Lisp functions</a>
     10595                  </span>
     10596                </dt>
     10597                <dt>
     10598                  <span class="sect2">
     10599                    <a href="#Profiling-oprofile-example">11.1.4. Example</a>
     10600                  </span>
     10601                </dt>
     10602                <dt>
     10603                  <span class="sect2">
     10604                    <a href="#Profiling-oprofile-Issues">11.1.5. Issues</a>
     10605                  </span>
     10606                </dt>
     10607              </dl>
     10608            </dd>
     10609            <dt>
     10610              <span class="sect1">
     10611                <a href="#Profiling-Using-Apples-CHUD-metering-tools">11.2. Using Apple's CHUD metering tools</a>
     10612              </span>
     10613            </dt>
     10614            <dd>
     10615              <dl>
     10616                <dt>
     10617                  <span class="sect2">
     10618                    <a href="#Profiling-CHUD-prerequisites">11.2.1. Prerequisites</a>
     10619                  </span>
     10620                </dt>
     10621                <dt>
     10622                  <span class="sect2">
     10623                    <a href="#Profiling-CHUD-usage-synopsis">11.2.2. Usage synopsis</a>
     10624                  </span>
     10625                </dt>
     10626                <dt>
     10627                  <span class="sect2">
     10628                    <a href="#Profiling-CHUD-profiling-configurations">11.2.3. Profiling "configurations"</a>
     10629                  </span>
     10630                </dt>
     10631                <dt>
     10632                  <span class="sect2">
     10633                    <a href="#Profiling-CHUD-Reference">11.2.4. Reference</a>
     10634                  </span>
     10635                </dt>
     10636                <dt>
     10637                  <span class="sect2">
     10638                    <a href="#Profiling-CHUD-Acknowledgments">11.2.5. Acknowledgement</a>
     10639                  </span>
     10640                </dt>
     10641              </dl>
     10642            </dd>
     10643          </dl>
     10644        </div>
     10645        <div class="sect1" lang="en" xml:lang="en">
     10646          <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10647            <div>
     10648              <div>
     10649                <h2 class="title" style="clear: both"><a id="Profiling-Using the Linux oprofile system-level profiler"></a>11.1. Using the Linux oprofile system-level profiler</h2>
     10650              </div>
     10651            </div>
     10652          </div>
     10653          <p xmlns="http://www.w3.org/1999/xhtml"><a class="ulink" href="http://oprofile.sourceforge.net" target="_top"><code class="code">oprofile</code></a> is
     10654      a system-level profiler that's available for most modern Linux distributions.</p>
     10655          <p xmlns="http://www.w3.org/1999/xhtml">Use of oprofile and its companion programs isn't really documented here; what
     10656      is described is a way of generating symbolic information that enables profiling
     10657      summaries generated by the <code class="code">opreport</code> program to identify lisp functions
     10658      meaningfully.</p>
     10659          <div class="sect2" lang="en" xml:lang="en">
     10660            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10661              <div>
     10662                <div>
     10663                  <h3 class="title"><a id="Profiling-oprofile-generating-a-lisp-image-for-use-with-oprofile"></a>11.1.1. Generating a lisp image for use with oprofile</h3>
     10664                </div>
     10665              </div>
     10666            </div>
     10667            <p xmlns="http://www.w3.org/1999/xhtml">Modern Linux uses the 'ELF" (Executable and Linking Format) object file
     10668        format; the oprofile tools can associate symbolic names with addresses in a
     10669        memory-mapped file if that file appears to be an ELF object file and if it
     10670        contains ELF symbol information that describes those memory regions.  So, the
     10671        general idea is to make a lisp heap image that looks enough like an ELF shared
     10672        library to fool the <code class="code">oprofile</code> tools (we don't actually load heap
     10673        images via ELF dynamic linking technology, but we can make it look like we
     10674        did.)</p>
     10675          </div>
     10676          <div class="sect2" lang="en" xml:lang="en">
     10677            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10678              <div>
     10679                <div>
     10680                  <h3 class="title"><a id="Profiling-oprofile-prerequisites"></a>11.1.2. Prerequisites</h3>
     10681                </div>
     10682              </div>
     10683            </div>
     10684            <div xmlns="http://www.w3.org/1999/xhtml" class="itemizedlist">
     10685              <ul type="disc">
     10686                <li>
     10687                  <p><code class="code">oprofile</code> itself, which is almost certainly available via
     10688            your distribution's package management system if not already
     10689            preinstalled.</p>
     10690                </li>
     10691                <li>
     10692                  <p><code class="code">libelf</code>, which provides utilities for reading and writing
     10693            ELF files (and is likewise likely preinstalled or readily installable.)</p>
     10694                </li>
     10695              </ul>
     10696            </div>
     10697          </div>
     10698          <div class="sect2" lang="en" xml:lang="en">
     10699            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10700              <div>
     10701                <div>
     10702                  <h3 class="title"><a id="Profiling-oprofile-generating-elf-symbols-for-lisp-functions"></a>11.1.3. Generating ELF symbols for Lisp functions</h3>
     10703                </div>
     10704              </div>
     10705            </div>
     10706            <p xmlns="http://www.w3.org/1999/xhtml">In order to create a lisp heap image which can be used for
     10707        <code class="code">oprofile</code>- based profiling, we need to:</p>
     10708            <div xmlns="http://www.w3.org/1999/xhtml" class="orderedlist">
     10709              <ol type="1">
     10710                <li>
     10711                  <p>load any code that we want to profile</p>
     10712                </li>
     10713                <li>
     10714                  <p>generate a file that contains ELF symbol information describing the
     10715            names and addresses of all lisp functions.</p>
     10716                  <p>This step involves doing (from within Clozure CL)</p>
     10717                  <pre class="programlisting">
     10718? (require "ELF")
     10719"ELF"
     10720("ELF")
     10721
     10722? (ccl::write-elf-symbols-to-file "home:elf-symbols")
     10723            </pre>
     10724                  <p>The argument to CCL::WRITE-ELF-SYMBOLS-TO-FILE can be any writable
     10725            pathname.  The function will do whatever's necessary to nail lisp functions
     10726            down in memory (so that they aren't moved by GC), then write an ELF object
     10727            file to the indicated pathname.  This typically takes a few seconds.</p>
     10728                </li>
     10729                <li>
     10730                  <p>Generate a lisp heap image in which the ELF symbols generated in the
     10731            previous step are prepended.</p>
     10732                  <p>The function CCL:SAVE-APPLICATION provides a :PREPEND-KERNEL argument,
     10733            which is ordinarily used to save a standalone application in which the kernel
     10734            and heap image occupy a single file.  :PREPEND-KERNEL doesn't really care what
     10735            it's prepending to the image, and we can just as easily ask it to prepend the
     10736            ELF symbol file generated in the previous step.</p>
     10737                  <pre class="programlisting">
     10738? (save-application "somewhere/image-for-profiling"
     10739    :prepend-kernel "home:elf-symbols")
     10740            </pre>
     10741                  <p>If you then run</p>
     10742                  <pre class="programlisting">
     10743shell&gt; ccl64 somewhare/image-for-profiling
     10744            </pre>
     10745                  <p>any lisp code sampled by oprofile in that image will be identified
     10746            "symbolically" by <code class="code">opreport</code>.</p>
     10747                </li>
     10748              </ol>
     10749            </div>
     10750          </div>
     10751          <div class="sect2" lang="en" xml:lang="en">
     10752            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10753              <div>
     10754                <div>
     10755                  <h3 class="title"><a id="Profiling-oprofile-example"></a>11.1.4. Example</h3>
     10756                </div>
     10757              </div>
     10758            </div>
     10759            <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
     10760;;; Define some lisp functions that we want to profile and save
     10761;;; a profiling-enabled image.  In this case, we just want to
     10762;;; define the FACTORIAL funcion, to keep things simple.
     10763? (defun fact (n) (if (zerop n) 1 (* n (fact (1- n)))))
     10764FACT
     10765? (require "ELF")
     10766"ELF"
     10767("ELF")
     10768? (ccl::write-elf-symbols-to-file "home:elf-symbols")
     10769"home:elf-symbols"
     10770? (save-application "home:profiled-ccl" :prepend-kernel "home:elf-symbols")
     10771
     10772;;; Setup oprofile with (mostly) default arguments.  This example was
     10773;;; run on a Fedora 8 system where an uncompressed 'vmlinux' kernel
     10774;;; image isn't readily available.
     10775
     10776;;; Note that use of 'opcontrol' generally requires root access, e.g.,
     10777;;; 'sudo' or equivalent:
     10778
     10779[~] gb@rinpoche&gt; sudo opcontrol --no-vmlinux --setup
     10780
     10781;;; Start the profiler
     10782
     10783[~] gb@rinpoche&gt; sudo opcontrol --start
     10784Using 2.6+ OProfile kernel interface.
     10785Using log file /var/lib/oprofile/samples/oprofiled.log
     10786Daemon started.
     10787Profiler running.
     10788
     10789;;; Start CCL with the "profiled-ccl" image created above.
     10790;;; Invoke "(FACT 10000)"
     10791
     10792[~] gb@rinpoche&gt; ccl64 profiled-ccl
     10793Welcome to Clozure Common Lisp Version 1.2-r9198M-trunk  (LinuxX8664)!
     10794? (null (fact 10000))
     10795NIL
     10796? (quit)
     10797
     10798;;; We could stop the profiler (opcontrol --stop) here; instead,
     10799;;; we simply flush profiling data to disk, where 'opreport' can
     10800;;; find it.
     10801
     10802[~] gb@rinpoche&gt; sudo opcontrol --dump
     10803
     10804;;; Ask opreport to show us where we were spending time in the
     10805;;; 'profiled-ccl' image.
     10806
     10807[~] gb@rinpoche&gt; opreport -l profiled-ccl | head
     10808CPU: Core 2, speed 1596 MHz (estimated)
     10809Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000
     10810samples  %        symbol name
     108116417     65.2466  &lt;Compiled-function.(:INTERNAL.MULTIPLY-UNSIGNED-BIGNUM-AND-1-DIGIT-FIXNUM.MULTIPLY-BIGNUM-AND-FIXNUM).(Non-Global)..0x30004002453F&gt;
     108123211     32.6487  &lt;Compiled-function.%MULTIPLY-AND-ADD4.0x300040000AAF&gt;
     1081317        0.1729  &lt;Compiled-function.%%ONE-ARG-DCODE.0x3000401740AF&gt;
     1081411        0.1118  &lt;Compiled-function.%UNLOCK-RECURSIVE-LOCK-OBJECT.0x30004007F7DF&gt;
     1081510        0.1017  &lt;Compiled-function.AUTO-FLUSH-INTERACTIVE-STREAMS.0x3000404ED6AF&gt;
     108167         0.0712  &lt;Compiled-function.%NANOSLEEP.0x30004040385F&gt;
     108177         0.0712  &lt;Compiled-function.%ZERO-TRAILING-SIGN-DIGITS.0x300040030F3F&gt;
     10818        </pre>
     10819          </div>
     10820          <div class="sect2" lang="en" xml:lang="en">
     10821            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10822              <div>
     10823                <div>
     10824                  <h3 class="title"><a id="Profiling-oprofile-Issues"></a>11.1.5. Issues</h3>
     10825                </div>
     10826              </div>
     10827            </div>
     10828            <p xmlns="http://www.w3.org/1999/xhtml">CCL::WRITE-ELF-SYMBOLS-TO-FILE currently only works on x86-64; it certainly
     10829        -could- be made to work on ppc32/ppc64 as well.</p>
     10830            <p xmlns="http://www.w3.org/1999/xhtml">So far, no one has been able to make oprofile/opreport options that're
     10831        supposed to generate call-stack info generate meaningful call-stack info.</p>
     10832            <p xmlns="http://www.w3.org/1999/xhtml">As of a few months ago, there was an attempt to provide symbol info for
     10833        oprofile/opreport "on the fly", e.g., for use in JIT compilation or other
     10834        incremental compilations scenarios.  That's obviously more nearly The Right Thing,
     10835        but it might be awhile before that experimental code makes it into widespread
     10836        use.</p>
     10837          </div>
     10838        </div>
     10839        <div class="sect1" lang="en" xml:lang="en">
     10840          <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10841            <div>
     10842              <div>
     10843                <h2 class="title" style="clear: both"><a id="Profiling-Using-Apples-CHUD-metering-tools"></a>11.2. Using Apple's CHUD metering tools</h2>
     10844              </div>
     10845            </div>
     10846          </div>
     10847          <div class="sect2" lang="en" xml:lang="en">
     10848            <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage">
     10849              <div>
     10850                <div>
     10851                  <h3 class="title"><a id="Profiling-CHUD-prerequisites"></a>11.2.1. Prerequisites</h3>
     10852                </div>
     10853              </div>
     10854            </div>
     10855            <p xmlns="http://www.w3.org/1999/xhtml">Apple's CHUD metering tools are available (as of this writing) from:</p>
     10856            <p xmlns="http://www.w3.org/1999/xhtml"><a class="ulink" href="ftp://ftp.apple.com/developer/Tool_Chest/Testing_-_Debugging/Performance_tools/" target="_top">
     10857          ftp://ftp.apple.com/developer/Tool_Chest/Testing_-_Debugging/Performance_tools/</a>.</p>
     10858            <p xmlns="http://www.w3.org/1999/xhtml">The CHUD tools are also generally bundled with Apple's XCode tools.  CBUD
     10859        4.5.0 (which seems to be bundled with XCode 3.0) seems to work well with this
     10860        interface; later versions may have problems.  Versions of CHUD as old as 4.1.1 may
     10861        work with 32-bit PPC versions of CCL; later versions (not sure exactly -what-
     10862        versions) added x86, ppc64, and x86-64 support.</p>
     10863            <p xmlns="http://www.w3.org/1999/xhtml">One way to tell whether any version of the CHUD tools is installed is to try
     10864        to invoke the "shark" command-line program (/usr/bin/shark) from the shell:</p>
     10865            <pre xmlns="http://www.w3.org/1999/xhtml" class="programlisting">
     10866shell&gt; shark --help
     10867        </pre>
     10868            <p xmlns="http://www.w3.org/1999/xhtml">and verifying that that prints a usage summary.</p>
     10869            <p xmlns="http://www.w3.org/1999/xhtml">CHUD consists of several components, including command-line programs, GUI
     10870        applications, kernel extensions, and "frameworks" (collections of libraries,
     10871        headers, and other resources which applications can use to access functionality
     10872        provided by the other components.)  Past versions of Clozure CL/OpenMCL have used the
     10873        CHUD framework libraries to control the CHUD profiler.  Even though the rest of
     10874        CHUD is currently 64-bit aware, the frameworks are unfortunately still only
     10875        available as 32-bit libraries, so the traditional way of controlling the profiling
     10876        facility from Clozure CL has only worked from DarwinPPC32 versions.</p>
     10877            <p xmlns="http://www.w3.org/1999/xhtml">Two of the CHUD component programs are of particular interest:</p>
     10878            <div xmlns="http://www.w3.org/1999/xhtml" class="orderedlist">
     10879              <ol type="1">
     10880                <li>
     10881                  <p>The "Shark" application (often installed in
     10882            "/Developer/Applications/Performance Tools/Shark.app"), which provides a
     10883            graphical user interface for exploring and analyzing profiling results and
     10884            provides tools for creating "sampling configurations" (see below), among other
     10885            things.</p>
     10886                </li>
     10887                <li>
     10888                  <p>The "shark" program ("/usr/bin/shark"), which can be used to control the
     10889            CHUD profiling facility and to collect sampling data, which can then be
     10890            displayed and analyzed in Shark.app.</p>
     10891                </li>
     10892              </ol>
     10893            </div>
     10894            <p xmlns="http://www.w3.org/1999/xhtml">The fact that these two (substantially different) programs have names that
     10895        differ only in alphabetic case may be confusing.  The discussion below tries to
     10896        consistently distinguish between "the shark program" and "the Shark
     10897        application".</p>
     10898          </div>
     10899          <div class="sect2" lang="en" xml:lang="en">
     10900