Changeset 9026


Ignore:
Timestamp:
Apr 4, 2008, 7:45:37 PM (11 years ago)
Author:
mikel
Message:

added about.xml. many style edits and link repairs in build.xml and install.xml

Location:
trunk/source/doc/src
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/doc/src/build.xml

    r8993 r9026  
    1010]>
    1111  <chapter><title>Building &CCL; from its Source Code</title>
    12 
     12    <anchor id="Building-CCL"/>
    1313    <para>&CCL;, like many other Lisp implementations, consists of a
    1414    kernel and a heap image.  The kernel is an ordinary C program, and
  • trunk/source/doc/src/ccl-documentation.xml

    r8820 r9026  
    1616 </bookinfo>
    1717<!-- -->
     18<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
     19            href="about.xml"/>
    1820<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
    1921            href="install.xml"/>
  • trunk/source/doc/src/install.xml

    r8993 r9026  
    11<?xml version="1.0" encoding="utf-8"?>
    22<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
    3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"[
    4 <!ENTITY rest "<varname>&amp;rest</varname>">
    5 <!ENTITY key "<varname>&amp;key</varname>">
    6 <!ENTITY optional "<varname>&amp;optional</varname>">
    7 <!ENTITY body "<varname>&amp;body</varname>">
    8 <!ENTITY aux "<varname>&amp;aux</varname>">
    9 <!ENTITY allow-other-keys "<varname>&amp;allow-other-keys</varname>">
    10 <!ENTITY CCL "Clozure CL">
    11 ]>
    12 
    13  <chapter><title>Obtaining, Installing, and Running &CCL;</title>
     3          "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"[
     4          <!ENTITY rest "<varname>&amp;rest</varname>">
     5          <!ENTITY key "<varname>&amp;key</varname>">
     6          <!ENTITY optional "<varname>&amp;optional</varname>">
     7          <!ENTITY body "<varname>&amp;body</varname>">
     8          <!ENTITY aux "<varname>&amp;aux</varname>">
     9          <!ENTITY allow-other-keys "<varname>&amp;allow-other-keys</varname>">
     10          <!ENTITY CCL "Clozure CL">
     11          ]>
     12
     13<chapter><title>Obtaining, Installing, and Running &CCL;</title>
    1414 
    1515  <sect1><title>Releases and System Requirements</title>
    16    
    17    <para>There are three active versions of &CCL;.  Version 1.0 was
    18    a stable release (released in late 2005); it is no longer under
    19    active development.  Version 1.1 has been under active development
    20    since shortly after 1.0 was released; it's been distributed as a
    21    series of development "snapshots" and CVS updates.  1.1 snapshots
    22    have introduced support for x86-64 platforms, internal use of
    23    Unicode, and many other features, but have presented something of a
    24    moving target.  Version 1.2 (being released in early 2008) is
    25    intended to both a more stable and predictable release schedule and
    26    to make it a bit easier for users who wish to track the "bleeding
    27    edge" of development to do so.</para>
    28 
    29       <para>Version 1.0 is available for three platform configurations:</para>
    30       <itemizedlist>
    31         <listitem>
    32           <para>Linux on PowerPC (32-bit implementation)</para>
    33         </listitem>
    34         <listitem>
    35           <para>Mac OS X on PowerPC (32-bit implementation)</para>
    36         </listitem>
    37         <listitem>
    38           <para>Mac OS X on PowerPC (64-bit implementation)</para>
    39         </listitem>
    40       </itemizedlist>
    41 
    42       <para>Versions 1.1 and 1.2 are available for five platform
     16   
     17    <para>There are three active versions of &CCL;.  Version 1.0 was a
     18      stable release (released in late 2005); it is no longer under
     19      active development.  Version 1.1 has been under active
     20      development since shortly after 1.0 was released; it's been
     21      distributed as a series of development "snapshots" and CVS
     22      updates.  1.1 snapshots have introduced support for x86-64
     23      platforms, internal use of Unicode, and many other features, but
     24      have presented something of a moving target.  Version 1.2 (being
     25      released in early 2008) is intended to be a more stable release
     26      and provide a more predictable release schedule, and to make it
     27      a bit easier for users who wish to track the "bleeding edge" of
     28      development to do so.</para>
     29
     30    <para>Version 1.0 is available for three platform configurations:</para>
     31    <itemizedlist>
     32      <listitem>
     33        <para>Linux on PowerPC (32-bit implementation)</para>
     34      </listitem>
     35      <listitem>
     36        <para>Mac OS X on PowerPC (32-bit implementation)</para>
     37      </listitem>
     38      <listitem>
     39        <para>Mac OS X on PowerPC (64-bit implementation)</para>
     40      </listitem>
     41    </itemizedlist>
     42
     43    <para>Versions 1.1 and 1.2 are available for five platform
    4344      configurations:</para>
    44       <itemizedlist>
    45         <listitem>
    46           <para>Linux on PowerPC (32-bit and 64-bit implementations)</para>
    47         </listitem>
    48         <listitem>
    49           <para>>Mac OS X on PowerPC (32-bit and 64-bit implementations)</para>
    50         </listitem>
    51         <listitem>
    52           <para>Linux on X86-64 (64-bit implementation)</para>
    53         </listitem>
    54         <listitem>
    55           <para>Mac OS X on X86-64 (64-bit implementation)</para>
    56         </listitem>
    57         <listitem><para>FreeBSD on X86-64 (64-bit implementation)</para></listitem>
    58       </itemizedlist>
    59 
    60       <para>A 64-bit version of &CCL; requires a 64-bit processor
     45    <itemizedlist>
     46      <listitem>
     47        <para>Linux on PowerPC (32-bit and 64-bit implementations)</para>
     48      </listitem>
     49      <listitem>
     50        <para>Mac OS X on PowerPC (32-bit and 64-bit implementations)</para>
     51      </listitem>
     52      <listitem>
     53        <para>Linux on X86-64 (64-bit implementation)</para>
     54      </listitem>
     55      <listitem>
     56        <para>Mac OS X on X86-64 (64-bit implementation)</para>
     57      </listitem>
     58      <listitem><para>FreeBSD on X86-64 (64-bit implementation)</para></listitem>
     59    </itemizedlist>
     60
     61    <para>A 64-bit version of &CCL; requires a 64-bit processor
    6162      (obviously) running a 64-bit OS variant.</para>
     63   
     64    <para>There are ongoing efforts to port &CCL; to the Windows
     65      operating system and 32-bit x86 processors.</para>
     66   
     67   
     68    <para>Additional platform-specific information is given in the
     69      following subsections.</para>
     70
     71    <sect2><title>LinuxPPC</title>
    6272     
    63       <para>There are ongoing efforts to port &CCL; to the Windows
    64       operating system and 32-bit x86 processors.</para>
    65      
    66      
    67       <para>Additional platform-specific information is given in the
    68       following subsections.</para>
    69 
    70       <sect2><title>LinuxPPC</title>
    71        
    72         <para>&CCL; versions 1.0 and later run under relatively
     73      <para>&CCL; versions 1.0 and later run under relatively
    7374        recent versions of LinuxPPC. All versions of &CCL; require
    7475        version 2.2.13 (or later) of the Linux kernel and version
    7576        2.1.3 (or later) of the GNU C library (glibc) at a bare
    7677        minimum.</para>
    77       </sect2>
    78 
    79       <sect2><title>Linux
    80 X8664</title>
    81 
    82         <para>Version 1.1 and later of &CCL; runs on relatively
     78    </sect2>
     79
     80    <sect2><title>Linux X8664</title>
     81
     82      <para>Version 1.1 and later of &CCL; runs on relatively
    8383        recent Linux distributions for the x86-64 architecture.  It
    8484        requires a Linux with Thread Local Storage support in the
     
    9494        the address space ... it's difficult to enumerate exactly what
    9595        versions of what Linux distributions have what problems.  A
    96         rule of thumb is that - since much of the development of
    97         &CCL; for x86-64 took place in that time frame - Linux
     96        rule of thumb is that&mdash;since much of the development of
     97        &CCL; for x86-64 took place in that time frame&mdash;Linux
    9898        distributions released earlier than early 2006 may have
    9999        problems running &CCL;.) </para>
    100       </sect2>
    101 
    102       <sect2><title>FreeBSD-amd64</title>
    103         <para>Versions 1.1 and later of &CCL; runs on FreeBSD on
    104         x86-64 (FreeBSD releases generally call the platform "and64")
     100    </sect2>
     101
     102    <sect2><title>FreeBSD-amd64</title>
     103      <para>Versions 1.1 and later of &CCL; runs on FreeBSD on
     104        x86-64 (FreeBSD releases generally call the platform "amd64")
    105105        &CCL; should run under FreeBSD 6.0 or later; as of this
    106106        writing, FreeBSD 7.0 is about to be released and it may be
     
    108108        package in order to use a version of &CCL; built on FreeBSD
    109109        6.x under FreeBSD 7.  .</para>
    110       </sect2>
    111 
    112       <sect2><title>DarwinPPC-MacOS-X</title>
    113 
    114         <para> &CCL; 1.0 runs on MacOS X versions 10.2, 10.3 and
     110    </sect2>
     111
     112    <sect2><title>DarwinPPC-MacOS-X</title>
     113
     114      <para> &CCL; 1.0 runs on MacOS X versions 10.2, 10.3 and
    115115        10.4 on the PowerPC.</para>
    116116
    117         <para>Current development on version 1.1 and later takes place
     117      <para>Current development on version 1.1 and later takes place
    118118        under OS X versions 10.4 and 10.5 and requires at least
    119119        version 10.3.9</para>
    120120
    121         <para>The 64-bit DarwinPPC version of &CCL; requires
     121      <para>The 64-bit DarwinPPC version of &CCL; requires
    122122        functionality introduced in OSX 10.4 (namely, the ability to
    123123        run 64-bit binaries).  It also, obviously, requires a G5
    124124        processor.</para>
    125125
    126         <para>&CCL; hasn't been tested under Darwin proper, but
     126      <para>&CCL; hasn't been tested under Darwin proper, but
    127127        &CCL; doesn't intentionally use any Mac OS X features beyond
    128128        the Darwin subset and therefore it seems likely that &CCL;
    129129        would run on PPC Darwin versions that correspond to recent OSX
    130130        versions.</para>
    131       </sect2>
    132 
    133       <sect2><title>Darwinx8664-MacOS-X</title>
    134         <para>Versions 1.1 and later of &CCL; runs on 64-bit
     131    </sect2>
     132
     133    <sect2><title>Darwinx8664-MacOS-X</title>
     134      <para>Versions 1.1 and later of &CCL; runs on 64-bit
    135135        DarwinX86 (MacOS on Intel).</para>
    136136
    137         <para>&CCL; Darwinx8664/MacOS X requires a 64-bit processor.
     137      <para>&CCL; Darwinx8664/MacOS X requires a 64-bit processor.
    138138        All Macintoshes currently sold by Apple (as of early 2008) and
    139139        all Macintoshes introduced by Apple since August 2006 have
     
    143143        them.</para>
    144144
    145       </sect2>
    146     </sect1>
    147 
    148 
    149     <sect1><title>Obtaining Clozure CL</title>
    150       <para>There two main ways to obtain Clozure CL.  For Mac OS X,
     145    </sect2>
     146  </sect1>
     147
     148
     149  <sect1><title>Obtaining Clozure CL</title>
     150    <para>There two main ways to obtain Clozure CL.  For Mac OS X,
    151151      there are disk images that can be used to install Clozure CL in
    152       the usual Macintosh way.  For other OSes (or for Mac OS X),
    153       Subversion is the best way to obtain Clozure CL.  Tarballs are
    154       available for those who prefer them, but Subversion is simpler
    155       and more flexible.</para>
    156 
    157       <para> There are three popular ways to use Clozure CL: as a
     152      the usual Macintosh way. For other OSes, Subversion is the best
     153      way to obtain Clozure CL, and Mac OS X users can also use
     154      Subversion if they prefer to. Tarballs are available for those
     155      who prefer them, but Subversion is simpler and more
     156      flexible.</para>
     157
     158    <para> There are three popular ways to use Clozure CL: as a
    158159      stand-alone double-clickable application (Mac OS X only), as a
    159160      command-line application, or with EMACS and SLIME.  These are
     
    161162
    162163    <sect2><title>The Mac Way</title>
    163       <para>If you are using Mac OS X then Clozure CL can be installed
    164       and used in the usual Macintosh way.  A disk image is downloaded
    165       and mounted, then Clozure CL is dragged to the Applications
    166       folder.  After that you can double-click on the Clozure CL
    167       application to run it.  The disk images are found at <ulink
    168       url="ftp://clozure.com/pub/testing/"/> </para>
    169 
    170       <para>In order to locate Clozure CL source code (and for other
    171       reasons <xref linkend="Predefined-Logical-Hosts"/>) the
    172       <literal>ccl</literal> directory should either be in the same
    173       directory as the Clozure CL application, or the Clozure CL
    174       application should be in the <literal>ccl</literal> directory.
    175       If you use a shell, then the
    176       <varname>CCL_DEFAULT_DIRECTORY</varname> environment variable
    177       can be set to explicitly indicate the location of the
    178       <literal>ccl</literal> directory.</para>
    179     </sect2>
    180  
     164      <para>If you are using Mac OS X then you can install and use
     165         Clozure CL in the usual Macintosh way.  Download and mount a
     166         disk image, then drag Clozure CL to the Applications folder.
     167         After that you can double-click on the Clozure CL application
     168         to run it.  The disk images are found at
     169         <ulink url="ftp://clozure.com/pub/testing/"/> </para>
     170
     171      <para>So that &CCL; can locate its source code (and for other
     172        reasons explained in
     173        <xref linkend="Predefined-Logical-Hosts"/>) either the
     174        <literal>ccl</literal> directory should be in the same
     175        directory as the Clozure CL application, or the Clozure CL
     176        application should be in the <literal>ccl</literal> directory.
     177        If you use a shell, then you can set the value of the
     178        <varname>CCL_DEFAULT_DIRECTORY</varname> environment variable
     179        to explicitly indicate the location of
     180        the <literal>ccl</literal> directory. If you choose to do
     181        that, then the <literal>ccl</literal> and the Clozure CL
     182        application can each be in any location you find
     183        convenient.</para>
     184    </sect2>
     185   
    181186
    182187    <sect2><title>Getting Clozure CL with Subversion</title>
    183188      <para>It is very easy to download, install, and build Clozure CL
    184       using Subversion.  This is the preferred way to get either the
    185       latest, or a specific version of Clozure CL (unless you're
    186       using the Mac Way).  Subversion is a source code control system
    187       that is in wide usage.  Most modern OSes come with subversion
    188       pre-installed. A complete, buildable and runnable set of Clozure
    189       CL sources and binaries can be retrieved by doing one subversion
    190       checkout.</para>
     189        using Subversion. Unless you're using the Mac Way, this is the
     190        preferred way to get either the latest, or a specific version
     191        of Clozure CL.  Subversion is a source code control system
     192        that is in wide usage.  Most modern OSes come with subversion
     193        pre-installed. A complete, buildable and runnable set of
     194        Clozure CL sources and binaries can be retrieved by doing one
     195        subversion checkout.</para>
    191196
    192197      <para>First, make sure that Subversion is installed on your
    193       system.  Bring up a command line shell and type:
    194       <programlisting>
    195         <![CDATA[
     198        system.  Bring up a command line shell and type:
     199        <programlisting>
     200          <![CDATA[
    196201shell> svn]]>
    197       </programlisting>
    198       If Subversion is installed, it will say something like:
    199       <programlisting>
    200         <![CDATA[
     202        </programlisting>
     203        If Subversion is installed, it will say something like:
     204        <programlisting>
     205          <![CDATA[
    201206Type 'svn help' for usage]]>
    202       </programlisting>
    203       If Subversion is not installed, it will say something
    204       like:
    205       <programlisting>
    206         <![CDATA[
     207        </programlisting>
     208        If Subversion is not installed, it will say something
     209        like:
     210        <programlisting>
     211          <![CDATA[
    207212-bash: svn: command not found]]>
    208       </programlisting>
    209       If subversion is not installed, you'll need to figure out how to
    210      install it on your OS.</para>
    211 
    212      <para>Create the directory where Clozure CL will live, <literal>cd</literal> to that directory, then type a Subversion checkout command.  For example:
    213 
    214       <programlisting>
    215         <![CDATA[
     213        </programlisting>
     214        If Subversion is not installed, you'll need to figure out how
     215        to install it on your OS. You can find information about
     216        obtaining and installing Subversion at
     217        the <ulink url="http://subversion.tigris.org/project_packages.html">Subversion
     218        Packages page</ulink>.</para>
     219
     220      <para>Create the directory where Clozure CL will live, <literal>cd</literal> to that directory, then type a Subversion checkout command.  For example:
     221
     222        <programlisting>
     223          <![CDATA[
    216224joe:~> mkdir ccl
    217225joe:~> cd ccl
    218226joe:ccl> svn co svn+ssh://svn.clozure.com/usr/local/publicsvn/openmcl]]>
    219       </programlisting>
    220       Once the checkout is complete you can build Clozure CL by doing:
    221       <programlisting>
    222         <![CDATA[
     227        </programlisting>
     228        Once the checkout is complete you can build Clozure CL by
     229        running the lisp kernel and executing
     230        the <literal>rebuild-ccl</literal> function. For example:
     231        <programlisting>
     232          <![CDATA[
    223233joe:ccl> ./dx86cl64
    224234Welcome to Clozure Common Lisp Version 1.2  (DarwinX8664)!
    225235? (rebuild-ccl :full t)
    226236<lots of compilation output>
    227 ? (quit)
    228 joe:ccl>]]>
    229       </programlisting>
     237  ? (quit)
     238  joe:ccl>]]>
     239        </programlisting>
    230240      </para>
    231241    </sect2>
    232242
    233243    <sect2><title>Tarballs</title>
    234       <para>Tarballs are available at <ulink
    235       url="ftp://clozure.com/pub/testing/"/>.  These should be
    236       downloaded and extracted onto your local disk.  Then a shell
    237       script should be edited to set
    238       <varname>CCL_DEFAULT_DIRECTORY</varname> and start up the
    239       appropriate Clozure CL kernel. <xref
    240       linkend="The-openmcl-Shell-Script"/> </para>
    241     </sect2>
    242     </sect1>
    243 
    244     <sect1><title>Command Line Set Up</title>
     244      <para>Tarballs are available at
     245                                         <ulink url="ftp://clozure.com/pub/testing/"/>.
     246                                         Download and extract one on
     247                                         your local disk.  Then edit
     248                                         the &CCL; shell script to set
     249                                         the value of
     250        <varname>CCL_DEFAULT_DIRECTORY</varname> and start up the
     251        appropriate Clozure CL kernel. See
     252        <xref linkend="The-openmcl-Shell-Script"/> for more
     253        information about the &CCL; shell scripts.</para>
     254    </sect2>
     255  </sect1>
     256
     257  <sect1><title>Command Line Set Up</title>
    245258    <para>Sometimes it is convenient to use Clozure CL from a Unix
    246     shell command line.  This is especially true when using Clozure CL
    247     as a way to run Common Lisp utilities.</para>
    248 
    249       <sect2 id="The-openmcl-Shell-Script"><title>The openmcl Shell Script</title>
     259      shell command line.  This is especially true when using Clozure CL
     260      as a way to run Common Lisp utilities.</para>
     261
     262    <sect2 id="The-openmcl-Shell-Script"><title>The openmcl Shell Script</title>
    250263      <para>&CCL; needs to be able to find the
    251       <literal>ccl</literal> directory in order to support features
    252       such as <literal>require</literal> and
    253       <literal>provide</literal>, access to foreign interface
    254       information (see ) and the lisp build process (see
    255       ). Specifically, it needs to set up logical pathname
    256       translations for the <literal>"ccl:"</literal> logical host.  If
    257       this logical host isn't defined (or isn't defined correctly),
    258       some things might work, some things might not... and it'll
    259       generally be hard to invoke and use &CCL; productively.</para>
    260 
    261         <para>&CCL; uses the value of the environment variable
     264        <literal>ccl</literal> directory in order to support features
     265        such as <literal>require</literal> and
     266        <literal>provide</literal>, access to foreign interface
     267        information (see <link linkend="The-Interface-Database">The
     268        Interface Database</link>) and the Lisp build process (see
     269        <link linkend="Building-CCL">Building &CCL; from its Source
     270        Code</link>). Specifically, it needs to set up logical
     271        pathname translations for the <literal>"ccl:"</literal>
     272        logical host.  If this logical host isn't defined (or isn't
     273        defined correctly), some things might work, some things might
     274        not, and it'll generally be hard to invoke and use &CCL;
     275        productively.</para>
     276
     277      <para>&CCL; uses the value of the environment variable
    262278        <literal>CCL_DEFAULT_DIRECTORY</literal> to determine the
    263279        filesystem location of the <literal>ccl</literal> directory;
     
    265281        invoke &CCL; with that environment variable set
    266282        correctly.</para>
    267         <para>There are two versions of the shell script:
     283      <para>There are two versions of the shell script:
    268284        <literal>"ccl/scripts/openmcl"</literal> is used to invoke
    269285        32-bit implementations of &CCL; and
    270286        <literal>"ccl/scripts/openmcl64"</literal> is used to invoke
    271287        64-bit implementations.</para>
    272         <para>To use the script:</para>
    273         <orderedlist>
    274           <listitem>
    275             <para>Edit the definition of
     288      <para>To use the script:</para>
     289      <orderedlist>
     290        <listitem>
     291          <para>Edit the definition of
    276292            <literal>CCL_DEFAULT_DIRECTORY</literal> near the
    277             beginning of theshell script so that it refers to your ccl
    278             directory.  Alternately,set
    279             <literal>CCL_DEFAULT_DIRECTORY</literal> in your .cshrc,
    280             .tcshrc, .bashrc,.bash_profile, .MacOSX/environment.plist,
    281             or wherever you usually set environment variables.  If
    282             there is an existing definition of thevariable, the
    283             openmcl script will not override it.The shell script sets
    284             a local variable (<literal>OPENMCL_KERNEL</literal>) to
    285             the standard name of the &CCL; kernel approprate for the
    286             platform (as determined by 'uname -s'.) You might prefer to
     293            beginning of the shell script so that it refers to
     294            your <literal>ccl</literal> directory.  Alternately, set
     295            the value of the <literal>CCL_DEFAULT_DIRECTORY</literal>
     296            environment variable in your .cshrc, .tcshrc,
     297            .bashrc,.bash_profile, .MacOSX/environment.plist, or
     298            wherever you usually set environment variables.  If there
     299            is an existing definition of the variable, the openmcl
     300            script will not override it. The shell script sets a local
     301            variable (<literal>OPENMCL_KERNEL</literal>) to the
     302            standard name of the &CCL; kernel approprate for the
     303            platform, as determined by 'uname -s'. You might prefer to
    287304            set this variable manually in the shell script</para>
    288           </listitem>
    289 
    290           <listitem>
    291             <para>Ensure that the shell script is executable, for
    292             example:<literal>$ chmod +x
    293             ~/openmcl/ccl/scripts/openmcl64</literal>This command
    294             grants execute permission to the named script. If you
    295             are using a 32-bit platform, substitute "openmcl" in place
    296             of "openmcl64".
     305        </listitem>
     306
     307        <listitem>
     308          <para>Ensure that the shell script is executable, for
     309            example:</para>
     310          <para><literal>$ chmod +x
     311            ~/openmcl/ccl/scripts/openmcl64</literal></para>
     312          <para>This command grants execute permission to the named
     313            script. If you are using a 32-bit platform, substitute
     314            "openmcl" in place of "openmcl64".
    297315            <warning>
    298               <para>The above command won't work if you are not the
    299               owner of the installed copy of &CCL;. In that case,
    300               you can use the "sudo" command like this:</para>
     316                  <para>The above command won't work if you are not the
     317                    owner of the installed copy of &CCL;. In that case,
     318                    you can use the "sudo" command like this:</para>
    301319              <para><literal>$ sudo chmod +x
    302               ~/openmcl/ccl/scripts/openmcl64</literal></para>
     320                  ~/openmcl/ccl/scripts/openmcl64</literal></para>
    303321              <para>Give your password when prompted.</para>
    304322              <para>If the "sudo" command doesn't work, then you are
    305               not an administrator on the system you're using, and you
    306               don't have the appropriate "sudo" permissions. In that
    307               case you'll need to get help from the system's
    308               administrator.</para>
    309             </warning></para>
    310           </listitem>
    311           <listitem>
    312             <para>Install the shell script somewhere on your shell's
    313             search path</para>
    314           </listitem>
    315         </orderedlist>
    316 
    317         <para>Once this is done, it should be possible to invoke
    318         &CCL; by typing <literal>openmcl</literal> at a shell
    319         prompt:</para>
    320         <programlisting>
     323                not an administrator on the system you're using, and you
     324                don't have the appropriate "sudo" permissions. In that
     325                case you'll need to get help from the system's
     326                administrator.</para>
     327          </warning></para>
     328        </listitem>
     329        <listitem>
     330          <para>Install the shell script somewhere on your shell's
     331            search path, or add the location of the shell script to
     332            your <literal>PATH</literal> environment variable.</para>
     333        </listitem>
     334      </orderedlist>
     335
     336      <para>Once this is done, it should be possible to invoke &CCL;
     337        by typing <literal>openmcl</literal>
     338        or <literal>openmcl64</literal> at a shell prompt:</para>
     339      <programlisting>
    321340&gt; openmcl [args ...]
    322341Welcome to &CCL; Version whatever (DarwinPPC32)!
    323342?
    324 </programlisting>
    325         <para>The openmcl shell script will pass all of its arguments
    326         to the &CCL; kernel.  See <xref linkend="Invocation"/> for
    327         more information about "args".  When invoked this way, the
    328         lisp should be able to initialize the
     343      </programlisting>
     344      <para>The openmcl shell script passes all of its arguments to
     345        the &CCL; kernel.  See <xref linkend="Invocation"/> for more
     346        information about "args".  When invoked this way, the Lisp
     347        should be able to initialize the
    329348        <literal>"ccl:"</literal> logical host so that its
    330349        translations refer to the <literal>"ccl"</literal>
     
    332351        <literal>probe-file</literal> in &CCL;'s read-eval-print
    333352        loop:</para>
    334         <programlisting>
     353      <programlisting>
    335354? (probe-file "ccl:level-1;level-1.lisp")  ;will return the physical pathname of the file
    336355#P"/Users/alms/my_lisp_stuff/ccl/level-1/level-1.lisp"
    337 </programlisting>
    338       </sect2>
    339       <sect2 id="Invocation">
    340         <title>Invocation</title>
    341         <para>Assuming that the shell script is properly installed, it can be used to invoke &CCL; from a shell prompt:
    342         <programlisting>
     356      </programlisting>
     357    </sect2>
     358    <sect2 id="Invocation">
     359          <title>Invocation</title>
     360          <para>Assuming that the shell script is properly installed, it can be used to invoke &CCL; from a shell prompt:
     361            <programlisting>
    343362shell&gt;<replaceable>ccl</replaceable> <emphasis>args</emphasis>
    344         </programlisting>
    345         <literal>ccl</literal> will run a 32-bit session;
    346         <literal>ccl64</literal> will run a 64-bit session.
    347         </para>
    348       </sect2>
    349     </sect1>
    350       <sect1 id="Personal-Customization-with-the-Init-File">
     363            </programlisting>
     364            <literal>ccl</literal> will run a 32-bit session;
     365            <literal>ccl64</literal> will run a 64-bit session.
     366          </para>
     367    </sect2>
     368  </sect1>
     369  <sect1 id="Personal-Customization-with-the-Init-File">
    351370        <title>Personal Customization with the Init File</title>
    352         <para>By default &CCL; will try to load the file
    353         <literal>"home:openmcl-init.lisp"</literal> or the compiled
    354        
    355         <literal>"home:openmcl-init.fasl"</literal> upon starting
    356         up. It does this by executing <literal>(load
     371    <para>By default &CCL; tries to load the file
     372      <literal>"home:openmcl-init.lisp"</literal> or the compiled
     373         
     374      <literal>"home:openmcl-init.fasl"</literal> upon starting
     375      up. It does this by executing <literal>(load
    357376        "home:openmcl-init")</literal>.  If it is unable to load the
    358         file (for example because it does not exist) no action is
    359         taken; an error is not signaled.</para>
    360         <para>The <literal>"home:"</literal> prefix to the filename is
    361         a Common Lisp logical host, which &CCL; initializes to refer
    362         to your home directory, so this looks for either of the files
    363         <literal>~/openmcl-init.lisp</literal> or
    364         <literal>~/openmcl-init.fasl</literal>.</para>
    365         <para>Since the init file is loaded the same way as normal
    366         Lisp code is, you can put anything you want in it.  For
    367         example, you can change the working directory, and load
    368         packages which you use frequently.</para>
    369         <para>To suppress the loading of this init-file, invoke &CCL; with the
    370 <literal>--no-init</literal> option.</para>
    371       </sect1>
    372 
    373       <sect1 id="Command-Line-Options">
     377      file (for example because it does not exist) no action is
     378      taken; an error is not signaled.</para>
     379    <para>The <literal>"home:"</literal> prefix to the filename is
     380      a Common Lisp logical host, which &CCL; initializes to refer
     381      to your home directory, so this looks for either of the files
     382      <literal>~/openmcl-init.lisp</literal> or
     383      <literal>~/openmcl-init.fasl</literal>.</para>
     384    <para>Since the init file is loaded the same way as normal Lisp
     385      code is, you can put anything you want in it.  For example, you
     386      can change the working directory, and load packages that you use
     387      frequently.</para>
     388    <para>To suppress the loading of this init-file, invoke &CCL; with the
     389      <literal>--no-init</literal> option.</para>
     390  </sect1>
     391
     392  <sect1 id="Command-Line-Options">
    374393        <title>Command Line Options</title>
    375         <para>When using Clozure CL from the command line, these
    376         options may be used to modify its behavior.  The exact set of
    377         Clozure CL command-line arguments may vary per platform and
    378         slowly changes over time.  The current set of command line
    379         options may be retrieved by using the
    380         <literal>--help</literal> option.</para>
     394    <para>When using Clozure CL from the command line, these
     395      options may be used to modify its behavior.  The exact set of
     396      Clozure CL command-line arguments may vary per platform and
     397      slowly changes over time.  The current set of command line
     398      options may be retrieved by using the
     399      <literal>--help</literal> option.</para>
    381400        <itemizedlist>
    382401          <listitem>
    383402            <para><literal>-h</literal> (or
    384             <literal>--help</literal>).  Provides a definitive (if
    385             somewhat terse) summary of the command line options
    386             accepted by the Clozure CL implementation and then
    387             exits.</para>
     403              <literal>--help</literal>).  Provides a definitive (if
     404              somewhat terse) summary of the command line options
     405              accepted by the Clozure CL implementation and then
     406              exits.</para>
    388407          </listitem>
    389408
    390409          <listitem>
    391410            <para><literal>-V</literal> (or
    392             <literal>--version</literal>).  Prints the version of
    393             Clozure CL then exits.  This is the same thing that is
    394             returned by
    395             <function>LISP-APPLICATION-VERSION</function>.</para>
     411              <literal>--version</literal>).  Prints the version of
     412              Clozure CL then exits.  This is the same thing that is
     413              returned by
     414              <function>LISP-APPLICATION-VERSION</function>.</para>
    396415          </listitem>
    397416
    398417          <listitem>
    399418            <para><literal>-K</literal>
    400             <parameter>character-encoding-name</parameter> (or
    401             <literal>--terminal-encoding</literal>
    402             <parameter>character-encoding-name</parameter>).
    403             Specifies the character encoding to use for
    404             <varname>*TERMINAL-IO*</varname> (see <xref
    405             linkend="Character-Encodings"/>).  Specifically, the
    406             <parameter>character-encoding-name</parameter> string
    407             is uppercased and interned in the KEYWORD package. If an
    408             encoding named by that keyword exists,
    409              <varname>CCL:*TERMINAL-CHARACTER-ENCODING-NAME*</varname> is set to the name
    410             of that encoding.   <varname>CCL:*TERMINAL-CHARACTER-ENCODING-NAME*</varname> defaults to <literal>NIL</literal>, which
    411             is a synonym for <literal>:ISO-8859-1</literal>.</para>
     419              <parameter>character-encoding-name</parameter> (or
     420              <literal>--terminal-encoding</literal>
     421              <parameter>character-encoding-name</parameter>).
     422              Specifies the character encoding to use for
     423              <varname>*TERMINAL-IO*</varname> (see <xref
     424                                                       linkend="Character-Encodings"/>).  Specifically, the
     425              <parameter>character-encoding-name</parameter> string
     426              is uppercased and interned in the KEYWORD package. If an
     427              encoding named by that keyword exists,
     428              <varname>CCL:*TERMINAL-CHARACTER-ENCODING-NAME*</varname> is set to the name
     429              of that encoding.   <varname>CCL:*TERMINAL-CHARACTER-ENCODING-NAME*</varname> defaults to <literal>NIL</literal>, which
     430              is a synonym for <literal>:ISO-8859-1</literal>.</para>
    412431            <para>For example:
    413             <programlisting>
    414               <![CDATA[shell> ccl -K utf-8]]>
    415             </programlisting>
    416             will have the effect of making the standard CL streams use
    417             <literal>:UTF-8</literal> as their character
    418             encoding.</para>
     432              <programlisting>
     433<![CDATA[shell> ccl -K utf-8]]>
     434              </programlisting>
     435              will have the effect of making the standard CL streams use
     436              <literal>:UTF-8</literal> as their character
     437              encoding.</para>
    419438          </listitem>
    420439
    421440          <listitem>
    422441            <para><literal>-n</literal> (or
    423             <literal>--no-init</literal>). If this option is given,
    424             the init file is not loaded.  This is useful if &CCL; is
    425             being invoked by a shell script which should not be
    426             affected by whatever customizations a user might have in
    427             place.</para>
     442              <literal>--no-init</literal>). If this option is given,
     443              the init file is not loaded.  This is useful if &CCL; is
     444              being invoked by a shell script which should not be
     445              affected by whatever customizations a user might have in
     446              place.</para>
    428447          </listitem>
    429448
    430449          <listitem>
    431450            <para><literal>-e</literal> <parameter>form</parameter>
    432             (or <literal>--eval</literal>). An expression is read (via
    433             <function>READ-FROM-STRING</function>) from the string
    434             <parameter>form</parameter> and evaluated. If
    435             <parameter>form</parameter> contains shell metacharacters,
    436             it may be necessary to escape or quote them to prevent the
    437             shell from interpreting them.</para>
     451              (or <literal>--eval</literal>). An expression is read (via
     452              <function>READ-FROM-STRING</function>) from the string
     453              <parameter>form</parameter> and evaluated. If
     454              <parameter>form</parameter> contains shell metacharacters,
     455              it may be necessary to escape or quote them to prevent the
     456              shell from interpreting them.</para>
    438457          </listitem>
    439458
    440459          <listitem>
    441460            <para><literal>-l</literal> <parameter>path</parameter>
    442             (or <literal>--load</literal>
    443             <parameter>path</parameter>). Loads file specified by
    444             <parameter>path</parameter>.</para>
     461              (or <literal>--load</literal>
     462              <parameter>path</parameter>). Loads file specified by
     463              <parameter>path</parameter>.</para>
    445464          </listitem>
    446465
    447466          <listitem>
    448467            <para><literal>-T</literal> <parameter>n</parameter> (or
    449             <literal>--set-lisp-heap-gc-threshold</literal>
    450             <parameter>n</parameter>).  Sets the Lisp gc threshold to
    451             <parameter>n</parameter>. (see <xref
    452             linkend="GC-Page-reclamation-policy"/></para>
     468              <literal>--set-lisp-heap-gc-threshold</literal>
     469              <parameter>n</parameter>).  Sets the Lisp gc threshold to
     470              <parameter>n</parameter>. (see <xref
     471                                                linkend="GC-Page-reclamation-policy"/></para>
    453472          </listitem>
    454473
    455474          <listitem>
    456475            <para><literal>-Q</literal> (or
    457             <literal>--quiet</literal>). Suppresses printing of
    458             heralds and prompts when the <literal>--batch</literal>
    459             command line option is specified.</para>
     476              <literal>--quiet</literal>). Suppresses printing of
     477              heralds and prompts when the <literal>--batch</literal>
     478              command line option is specified.</para>
    460479          </listitem>
    461480
    462481          <listitem>
    463482            <para><literal>-R</literal> <parameter>n</parameter> (or
    464             <literal>--heap-reserve</literal>). Reserves
    465             <parameter>n</parameter> bytes for heap expansion.  The
    466             default is <literal> 549755813888</literal>.  (see <xref
    467             linkend="Heap-space-allocation"/>)</para>
     483              <literal>--heap-reserve</literal>). Reserves
     484              <parameter>n</parameter> bytes for heap expansion.  The
     485              default is <literal> 549755813888</literal>.  (see <xref
     486                                                                    linkend="Heap-space-allocation"/>)</para>
    468487          </listitem>
    469488
    470489          <listitem>
    471490            <para><literal>-S</literal> <parameter>n</parameter> (or
    472             <literal>--stack-size</literal> <parameter>n</parameter>). Sets the size of the
    473             initial control stack to <parameter>n</parameter>. (see <xref
    474             linkend="Thread-Stack-Sizes"/>)</para>
     491              <literal>--stack-size</literal> <parameter>n</parameter>). Sets the size of the
     492              initial control stack to <parameter>n</parameter>. (see <xref
     493                                                                         linkend="Thread-Stack-Sizes"/>)</para>
    475494          </listitem>
    476495
    477496          <listitem>
    478497            <para><literal>-Z</literal> <parameter>n</parameter> (or
    479             <literal>--thread-stack-size</literal>
    480             <parameter>n</parameter>). Sets the size of the first
    481             thread's stack to <parameter>n</parameter>. (see <xref
    482             linkend="Thread-Stack-Sizes"/>)</para>
     498              <literal>--thread-stack-size</literal>
     499              <parameter>n</parameter>). Sets the size of the first
     500              thread's stack to <parameter>n</parameter>. (see <xref
     501                                                                  linkend="Thread-Stack-Sizes"/>)</para>
    483502          </listitem>
    484503
    485504          <listitem>
    486505            <para><literal>-b</literal> (or <literal>--batch</literal>). Execute in "batch mode". End-of-file
    487             from <varname>*STANDARD-INPUT*</varname> will cause &CCL; to exit, as will attempts to
    488             enter a break loop.</para>
     506              from <varname>*STANDARD-INPUT*</varname> will cause &CCL; to exit, as will attempts to
     507              enter a break loop.</para>
    489508          </listitem>
    490509
     
    495514          <listitem>
    496515            <para><literal>-I</literal>
    497             <parameter>image-name</parameter> (or
    498             <literal>--image-name</literal>
    499             <parameter>image-name</parameter>). Specifies the image
    500             name for the kernel to load.  Defaults to the kernel name
    501             with ".image" appended.</para>
     516              <parameter>image-name</parameter> (or
     517              <literal>--image-name</literal>
     518              <parameter>image-name</parameter>). Specifies the image
     519              name for the kernel to load.  Defaults to the kernel name
     520              with ".image" appended.</para>
    502521          </listitem>
    503522        </itemizedlist>
    504523
    505         <para>The <literal>--load</literal> and
    506         <literal>--eval</literal> options can each be provided
    507         multiple times.  They're executed in the order specified on
    508         the command line, after the init file (if there is one) is
    509         loaded and before the toplevel read-eval-print loop is
    510         entered.</para>
    511       </sect1>
    512 
    513     <sect1 id="Using-CCL-with-GNU-Emacs-and-SLIME">
    514       <title>Using &CCL; with GNU Emacs and SLIME</title>
    515       <para>A very common way to use &CCL; is to run it within the
     524    <para>The <literal>--load</literal> and
     525      <literal>--eval</literal> options can each be provided
     526      multiple times.  They're executed in the order specified on
     527      the command line, after the init file (if there is one) is
     528      loaded and before the toplevel read-eval-print loop is
     529      entered.</para>
     530  </sect1>
     531
     532  <sect1 id="Using-CCL-with-GNU-Emacs-and-SLIME">
     533    <title>Using &CCL; with GNU Emacs and SLIME</title>
     534    <para>A very common way to use &CCL; is to run it within the
    516535      GNU Emacs editor, using a Lisp interface called SLIME ("Superior
    517536      Lisp Interaction Mode for Emacs"). SLIME is an Emacs package
     
    521540      download SLIME and set it up to work with your &CCL;
    522541      installation.</para>
    523       <para>Why use SLIME? With SLIME, you can do the following things from within
    524 an Emacs editing session:</para>
    525       <itemizedlist>
    526         <listitem><para>run and control Lisp</para></listitem>
    527         <listitem><para>evaluate, compile, and load files or expressions</para></listitem>
    528         <listitem><para>macroexpand expressions</para></listitem>
    529         <listitem><para>fetch documentation and source code for Lisp symbols</para></listitem>
    530         <listitem><para>autocomplete symbols and package names</para></listitem>
    531         <listitem><para>cross-reference function calls</para></listitem>
    532         <listitem><para>examine stack traces and debug errors</para></listitem>
     542    <para>Why use SLIME? With SLIME, you can do the following things from within
     543      an Emacs editing session:</para>
     544    <itemizedlist>
     545      <listitem><para>run and control Lisp</para></listitem>
     546      <listitem><para>evaluate, compile, and load files or expressions</para></listitem>
     547      <listitem><para>macroexpand expressions</para></listitem>
     548      <listitem><para>fetch documentation and source code for Lisp symbols</para></listitem>
     549      <listitem><para>autocomplete symbols and package names</para></listitem>
     550      <listitem><para>cross-reference function calls</para></listitem>
     551      <listitem><para>examine stack traces and debug errors</para></listitem>
    533552     
    534       </itemizedlist>
    535       <para>There is an excellent SLIME tutorial video available at
    536 Common-Lisp.net.  For
    537 complete information about SLIME, see the
    538 SLIME home page.</para>
    539 
    540       <sect2 id="Assumptions-and-Requirements">
    541         <title>Assumptions and Requirements</title>
    542         <para>In order to simplify these instructions, we'll make
     553    </itemizedlist>
     554    <para>There is an excellent SLIME tutorial video available at
     555      Common-Lisp.net.  For
     556      complete information about SLIME, see the
     557      SLIME home page.</para>
     558
     559    <sect2 id="Assumptions-and-Requirements">
     560          <title>Assumptions and Requirements</title>
     561      <para>In order to simplify these instructions, we'll make
    543562        several assumptions about your system. Specifically, we
    544563        assume:</para>
    545         <itemizedlist>
    546           <listitem>
    547             <para>You have a working installation of GNU Emacs. If you
    548             don't have a working copy of GNU Emacs, see the web page on
    549             obtaining Emacs.  If you prefer to use XEmacs instead of
    550             GNU Emacs,these instructions should still work; SLIME
    551             supports XEmacs Version21. Mac OS X includes an Emacs
    552             installation.  If you want to look into different versions,
    553             you can check out theEmacsWiki, which maintains a
    554             page,EmacsForMacOS,that provides much more information
    555             about using Emacs on the Mac.
     564      <itemizedlist>
     565        <listitem>
     566              <para>You have a working installation of GNU Emacs. If you
     567                don't have a working copy of GNU Emacs, see the web page on
     568                obtaining Emacs.  If you prefer to use XEmacs instead of
     569                GNU Emacs,these instructions should still work; SLIME
     570                supports XEmacs Version21. Mac OS X includes an Emacs
     571                installation.  If you want to look into different versions,
     572                you can check out theEmacsWiki, which maintains a
     573                page,EmacsForMacOS,that provides much more information
     574                about using Emacs on the Mac.
    556575            <warning>
    557576              <para>A popular version of Emacs among Mac users is
    558               Aquamacs. This application is a version of GNU Emacs
    559               with a number of customizations meant to make it behave
    560               more like a standard Macintosh application, with
    561               windows, a menubar, etc.  Aquamacs includes SLIME; if
    562               you like Aquamacs then you can use SLIME right away,
    563               without getting and installing it separately. You just
    564               need to tell SLIME where to find your installation of
    565               &CCL;.</para>
     577                Aquamacs. This application is a version of GNU Emacs
     578                with a number of customizations meant to make it behave
     579                more like a standard Macintosh application, with
     580                windows, a menubar, etc.  Aquamacs includes SLIME; if
     581                you like Aquamacs then you can use SLIME right away,
     582                without getting and installing it separately. You just
     583                need to tell SLIME where to find your installation of
     584                &CCL;.</para>
    566585            </warning>
    567           </para>
    568           </listitem>
    569           <listitem>
    570             <para>You have a working copy of &CCL;, installed in
     586              </para>
     587            </listitem>
     588        <listitem>
     589          <para>You have a working copy of &CCL;, installed in
    571590            <literal>"~/openmcl/ccl"</literal>If you prefer to install
    572591            &CCL; in some directory other
     
    575594            path to your ccl directory instead of the one that we give
    576595            here.</para>
    577           </listitem>
    578           <listitem>
    579             <para>You install emacs add-ons in the folder
     596        </listitem>
     597        <listitem>
     598          <para>You install emacs add-ons in the folder
    580599            <literal>"~/emacs/site/"</literal>If this directory
    581600            doesn't exist on your system, you can just create it.If
     
    584603            remember to use your path to Emacs add-ons in place of
    585604            ours.</para>
    586           </listitem>
     605        </listitem>
    587606       
    588         </itemizedlist>
    589       </sect2>
    590 
    591       <sect2 id="Getting_Slime"><title>Getting SLIME</title>       
    592 
    593         <para>You can get SLIME from the SLIME Home Page. Stable
     607      </itemizedlist>
     608    </sect2>
     609
     610    <sect2 id="Getting_Slime"><title>Getting SLIME</title>       
     611
     612      <para>You can get SLIME from the SLIME Home Page. Stable
    594613        releases and CVS snapshots are available as archive files, or
    595614        you can follow the instructions on the SLIME Home Page to
    596615        check out the latest version from their CVS repository.</para>
    597616
    598         <para>It's worth noting that stable SLIME releases happen very
     617      <para>It's worth noting that stable SLIME releases happen very
    599618        seldom, but the SLIME developers often make changes and
    600619        improvements that are available through CVS updates. If you
     
    603622        frequently.</para>
    604623
    605         <para>Whether you get it from CVS, or download and unpack one
     624      <para>Whether you get it from CVS, or download and unpack one
    606625        of the available archives, you should end up with a folder
    607626        named "slime" that contains the SLIME distribution.</para>
    608       </sect2>
    609 
    610       <sect2><title>Installing SLIME</title>
    611 
    612         <para>Once you have the "slime" folder described in the
     627    </sect2>
     628
     629    <sect2><title>Installing SLIME</title>
     630
     631      <para>Once you have the "slime" folder described in the
    613632        previous section,installation is a simple matter of copying
    614633        the folder to the proper place. You can drag it into the
     
    616635        copy it there. For example, assuming your working directory
    617636        contains the unpacked "slime" folder:</para> <para><literal>$
    618         cp -R slime ~/emacs/site/</literal></para> <para>That's all it
     637          cp -R slime ~/emacs/site/</literal></para> <para>That's all it
    619638        takes.</para>
    620639
    621       </sect2>
    622 
    623       <sect2 id="Telling-Emacs-About-SLIME">
    624         <title>Telling Emacs About SLIME</title>
    625         <para> Once SLIME and &CCL; are installed, you just need to
     640    </sect2>
     641
     642    <sect2 id="Telling-Emacs-About-SLIME">
     643          <title>Telling Emacs About SLIME</title>
     644      <para> Once SLIME and &CCL; are installed, you just need to
    626645        add a line to your "~/.emacs" file that tells SLIME where to
    627646        find the script that runs &CCL;:</para>
    628         <para><literal>(setq inferior-lisp-program "~/openmcl/ccl/scripts/openmcl64")</literal></para>
    629         <para>or</para>
    630         <para><literal>(setq inferior-lisp-program "~/openmcl/ccl/scripts/openmcl")</literal></para>
    631         <warning>
    632           <para>Aquamacs users should add this line to the file "~/Library/Preferences/Aquamacs Emacs/Preferences.el".</para>
    633         </warning>
    634       </sect2>
    635 
    636       <sect2 id="Running-CCL-with-SLIME">
    637         <title>Running &CCL; with SLIME</title>
    638         <para>Once the preparations in the previous section are
     647      <para><literal>(setq inferior-lisp-program "~/openmcl/ccl/scripts/openmcl64")</literal></para>
     648      <para>or</para>
     649      <para><literal>(setq inferior-lisp-program "~/openmcl/ccl/scripts/openmcl")</literal></para>
     650      <warning>
     651        <para>Aquamacs users should add this line to the file "~/Library/Preferences/Aquamacs Emacs/Preferences.el".</para>
     652      </warning>
     653    </sect2>
     654
     655    <sect2 id="Running-CCL-with-SLIME">
     656          <title>Running &CCL; with SLIME</title>
     657      <para>Once the preparations in the previous section are
    639658        complete, exit Emacs and restart it, to ensure that it reads
    640659        the changes you made in your ".emacs" file (alternatively, you
     
    642661        well, you should now be ready to run &CCL; using
    643662        SLIME.</para>
    644         <para>To run &CCL;, execute the command "M-x slime". SLIME
     663      <para>To run &CCL;, execute the command "M-x slime". SLIME
    645664        should start an &CCL; session in a new buffer.  (If you are
    646665        unfamiliar with the Emacs notation "M-x command", see the GNU
    647666        Emacs FAQ; specifically, take a look at questions 1, 2, and
    648667        128.)</para>
    649       </sect2>
    650 
    651       <sect2 id="What-if-a-New-Version-of-CCL-Breaks-SLIME-">
    652         <title>What if a New Version of &CCL; Breaks SLIME?</title>
    653         <para>Sometimes you'll get a new version of &CCL;, set up
    654         Emacs to use it with SLIME, and SLIME will fail. Most likely
    655         what has happened is that the new version of &CCL; has a
    656         change in the output files produced by the compiler (&CCL;
    657         developers will say "the fasl version has changed." fasl
    658         stands for "fast load" aka compiled files). This
    659         problem is easy to fix: just delete the existing SLIME fasl
    660         files. The next time you launch Emacs and start SLIME, it will
    661         automatically recompile the Lisp files, and that should fix
    662         the problem.</para>
    663         <para>SLIME's load process stores its fasl files in a hidden
     668    </sect2>
     669
     670    <sect2 id="What-if-a-New-Version-of-CCL-Breaks-SLIME-">
     671          <title>What if a New Version of &CCL; Breaks SLIME?</title>
     672          <para>Sometimes you'll get a new version of &CCL;, set up
     673            Emacs to use it with SLIME, and SLIME will fail. Most likely
     674            what has happened is that the new version of &CCL; has a
     675            change in the output files produced by the compiler (&CCL;
     676            developers will say "the fasl version has changed." fasl
     677            stands for "fast load" aka compiled files). This
     678            problem is easy to fix: just delete the existing SLIME fasl
     679            files. The next time you launch Emacs and start SLIME, it will
     680            automatically recompile the Lisp files, and that should fix
     681            the problem.</para>
     682      <para>SLIME's load process stores its fasl files in a hidden
    664683        folder inside your home folder. The path is</para>
    665         <para><literal>~/.slime/fasl</literal></para>
    666         <para>You can use a shell command to remove the fasl files, or
     684      <para><literal>~/.slime/fasl</literal></para>
     685      <para>You can use a shell command to remove the fasl files, or
    667686        remove them using your system's file browser.</para>
    668         <screen><emphasis role="bold">Note for Macintosh Users:</emphasis>
    669         The leading "." character in the ".slime" folder's name
    670         prevents the Finder from showing this folder to you. If you
    671         use the "Go To Folder" menu item in the Finder's "Go" menu,
    672         you can type in "~/.slime" and the Finder will show it to
    673         you. You can then drag the "fasl" folder to the trash.
    674         </screen>
    675       </sect2>
    676 
    677       <sect2 id="Known-Bugs">
    678         <title>Known Bugs</title>
    679         <para>SLIME has not been updated to account for recent changes
    680         made in &CCL; to support x86-64 processors. You may run into
    681         bugs running on those platforms.</para>
    682         <para>The SLIME backtrace sometimes shows incorrect information.</para>
    683         <para><literal>return-from-frame</literal> and
     687      <screen><emphasis role="bold">Note for Macintosh Users:</emphasis>
     688            The leading "." character in the ".slime" folder's name
     689            prevents the Finder from showing this folder to you. If you
     690            use the "Go To Folder" menu item in the Finder's "Go" menu,
     691            you can type in "~/.slime" and the Finder will show it to
     692            you. You can then drag the "fasl" folder to the trash.
     693          </screen>
     694    </sect2>
     695
     696    <sect2 id="Known-Bugs">
     697          <title>Known Bugs</title>
     698          <para>SLIME has not been updated to account for recent changes
     699            made in &CCL; to support x86-64 processors. You may run into
     700            bugs running on those platforms.</para>
     701      <para>The SLIME backtrace sometimes shows incorrect information.</para>
     702      <para><literal>return-from-frame</literal> and
    684703        <literal>apply-in-frame</literal> do not work reliably.  (If
    685704        they work at all, it's pure luck.)</para>
    686         <para>Some versions of Emacs on the Macintosh may have trouble
     705      <para>Some versions of Emacs on the Macintosh may have trouble
    687706        finding the shell script that runs &CCL; unless you specify
    688707        a full path to it. See the above section "Telling Emacs About
    689708        SLIME" to learn how to specify the path to the shell
    690709        script.</para>
    691         <para>For more help with &CCL; on Mac OS X, consult the
     710      <para>For more help with &CCL; on Mac OS X, consult the
    692711        &CCL; mailing lists.</para>
    693       </sect2>
    694     </sect1>
    695 
    696     <sect1 id="Example-Programs">
    697       <title>Example Programs</title>
    698       <para>Beginning with release 0.9, a number (ok, a
     712    </sect2>
     713  </sect1>
     714
     715  <sect1 id="Example-Programs">
     716    <title>Example Programs</title>
     717    <para>Beginning with release 0.9, a number (ok, a
    699718      <emphasis>small</emphasis> number, at least initially) of
    700719      example programs are distributed in the "ccl:examples;"
     
    702721      README-OPENMCL-EXAMPLES text file in that directory for
    703722      information about prerequisites and usage.</para>
    704       <para>Some of the example programs are derived from C examples
     723    <para>Some of the example programs are derived from C examples
    705724      in textbooks, etc.; in those cases, the original author and work
    706725      are cited in the source code.</para>
    707       <para>It may be a stretch to imply that the examples have a
     726    <para>It may be a stretch to imply that the examples have a
    708727      great deal of value as "intellectual property", but I might as
    709728      well say this: Unless the original author or contributor claims
     
    714733      responsible for any consequences of your decision to use
    715734      it.</para>
    716       <para>If you've developed &CCL; examples that you'd like to
     735    <para>If you've developed &CCL; examples that you'd like to
    717736      see added to the distribution, please send mail to let me
    718737      know. Any such contributions would be welcome and appreciated
    719738      (as would bug fixes and improvements to the existing
    720739      examples.)</para>
    721     </sect1>
    722   </chapter>
     740  </sect1>
     741</chapter>
Note: See TracChangeset for help on using the changeset viewer.