10e973667b2174f88faa934c14e45edce590e250
[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 2 April 2004
11 @set UPDATE-MONTH April 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 * Dynamic-extent allocation::   
132 * Modular arithmetic::          
133
134 Beyond The ANSI Standard
135
136 * Non-Conformance With The ANSI Standard::  
137 * Idiosyncrasies::              
138 * Extensions::                  
139
140 Extensions
141
142 * Things Which Might Be In The Next ANSI Standard::  
143 * Threading::                   
144 * Support For Unix::            
145 * Customization Hooks for Users::  
146 * Tools To Help Developers::    
147 * Interface To Low-Level SBCL Implementation::  
148 * Efficiency Hacks::            
149
150 The Foreign Function Interface
151
152 * Introduction to the Foreign Function Interface::  
153 * Foreign Types::               
154 * Operations On Foreign Values::  
155 * Foreign Variables::           
156 * Foreign Data Structure Examples::  
157 * Loading Unix Object Files::   
158 * Foreign Function Calls::      
159 * Step-By-Step Example of the Foreign Function Interface::  
160
161 Foreign Types
162
163 * Defining Foreign Types::      
164 * Foreign Types and Lisp Types::  
165 * Foreign Type Specifiers::     
166
167 Operations On Foreign Values
168
169 * Accessing Foreign Values::    
170 * Coercing Foreign Values::     
171 * Foreign Dynamic Allocation::  
172
173 Foreign Variables
174
175 * Local Foreign Variables::     
176 * External Foreign Variables::  
177
178 Foreign Function Calls
179
180 * The alien-funcall Primitive::  
181 * The define-alien-routine Macro::  
182 * define-alien-routine Example::  
183 * Calling Lisp From C::         
184
185 @end detailmenu
186 @end menu
187
188 @end ifnottex
189
190 @include intro.texinfo
191 @include compiler.texinfo
192 @include debugger.texinfo
193 @include efficiency.texinfo
194 @include beyond-ansi.texinfo
195 @include ffi.texinfo
196 @include backmatter.texinfo
197
198 @bye