0.8.9.13
[sbcl.git] / doc / manual / sbcl.texinfo
1 \input texinfo   @c -*-texinfo-*-
2 @c %**start of header
3 @setfilename sbcl.info
4 @settitle SBCL User Manual
5 @c %**end of header
6
7
8 @set EDITION 0.1
9 @set VERSION 0.8.9
10 @set UPDATED 24 March 2004
11 @set UPDATE-MONTH March 2004
12      
13
14 @copying
15
16 @quotation
17 This manual is part of the SBCL software system. See the @file{README} file
18 for more information.
19
20 This manual is largely derived from the manual for the CMUCL system,
21 which was produced at Carnegie Mellon University and later released
22 into the public domain. This manual is in the public domain and is
23 provided with absolutely no warranty. See the @file{COPYING} and
24 @file{CREDITS} files for more information.
25 @end quotation
26
27 @end copying
28
29 @titlepage
30
31 @title SBCL User Manual
32 @subtitle SBCL Version @value{VERSION}
33 @subtitle @value{UPDATE-MONTH}
34 @c @author The CMUCL and SBCL teams
35
36
37 @c The following two commands start the copyright page.
38 @page
39 @vskip 0pt plus 1filll
40 @insertcopying
41
42 @end titlepage
43
44 @contents
45
46 @ifnottex
47
48 @node Top, Introduction, (dir), (dir)
49 @comment  node-name,  next,  previous,  up
50 @top SBCL
51
52 @insertcopying
53
54 @menu
55 * Introduction::                
56 * The Compiler::                
57 * The Debugger::                
58 * Efficiency::                  
59 * Beyond The ANSI Standard::    
60 * The Foreign Function Interface::  
61 * Function Index::              
62 * Concept Index::
63 * Colophon::
64
65 @detailmenu
66  --- The Detailed Node Listing ---
67
68 Introduction
69
70 * More Common Lisp Information::  
71 * More SBCL Information::       
72 * Overview::                    
73
74 The Compiler
75
76 * Error Messages::              
77 * Handling of Types::           
78 * Compiler Policy::             
79 * Open Coding and Inline Expansion::  
80
81 Error Messages
82
83 * The Parts of the Error Message::  
84 * The Original and Actual Source::  
85 * Error Severity::              
86 * Errors During Macroexpansion::  
87 * Read Errors::                 
88
89 The Compiler's Handling of Types
90
91 * Implementation Limitations::  
92 * Type Errors at Compile Time::  
93 * Precise Type Checking::       
94 * Weakened Type Checking::      
95 * Getting Existing Programs to Run::  
96
97 The Debugger
98
99 * Starting the Debugger::       
100 * The Debugger Command Loop::   
101 * Controlling Printing in the Debugger::  
102 * Stack Frames::                
103 * Variable Access::             
104 * Source Location Printing::    
105 * Debugger Policy Control::     
106 * Exiting Commands::            
107 * Information Commands::        
108 * Function Tracing::            
109
110 Stack Frames
111
112 * Stack Motion::                
113 * How Arguments are Printed::   
114 * Function Names::              
115 * Funny Frames::                
116 * Debug Tail Recursion::        
117 * Unknown Locations and Interrupts::  
118
119 Variable Access
120
121 * Variable Value Availability::  
122 * Note On Lexical Variable Access::  
123
124 Source Location Printing
125
126 * How the Source is Found::     
127 * Source Location Availability::  
128
129 Efficiency
130
131 * Modular arithmetic::          
132
133 Beyond The ANSI Standard
134
135 * Non-Conformance With The ANSI Standard::  
136 * Idiosyncrasies::              
137 * Extensions::                  
138
139 Extensions
140
141 * Things Which Might Be In The Next ANSI Standard::  
142 * Threading::                   
143 * Support For Unix::            
144 * Customization Hooks for Users::  
145 * Tools To Help Developers::    
146 * Interface To Low-Level SBCL Implementation::  
147 * Efficiency Hacks::            
148
149 The Foreign Function Interface
150
151 * Introduction to the Foreign Function Interface::  
152 * Foreign Types::               
153 * Operations On Foreign Values::  
154 * Foreign Variables::           
155 * Foreign Data Structure Examples::  
156 * Loading Unix Object Files::   
157 * Foreign Function Calls::      
158 * Step-By-Step Example of the Foreign Function Interface::  
159
160 Foreign Types
161
162 * Defining Foreign Types::      
163 * Foreign Types and Lisp Types::  
164 * Foreign Type Specifiers::     
165
166 Operations On Foreign Values
167
168 * Accessing Foreign Values::    
169 * Coercing Foreign Values::     
170 * Foreign Dynamic Allocation::  
171
172 Foreign Variables
173
174 * Local Foreign Variables::     
175 * External Foreign Variables::  
176
177 Foreign Function Calls
178
179 * The alien-funcall Primitive::  
180 * The define-alien-routine Macro::  
181 * define-alien-routine Example::  
182 * Calling Lisp From C::         
183
184 @end detailmenu
185 @end menu
186
187 @end ifnottex
188
189 @include intro.texinfo
190 @include compiler.texinfo
191 @include debugger.texinfo
192 @include efficiency.texinfo
193 @include beyond-ansi.texinfo
194 @include ffi.texinfo
195 @include backmatter.texinfo
196
197 @bye