Previous Next Chapter Table of Contents Glossary Index

Clozure CL Documentation


1. About Clozure CL
1.1. Introduction to Clozure CL
2. Obtaining, Installing, and Running Clozure CL
2.1. Releases and System Requirements
2.2. Obtaining Clozure CL
2.3. Command Line Set Up
2.4. Personal Customization with the Init File
2.5. Command Line Options
2.6. Using Clozure CL with GNU Emacs and SLIME
2.7. Example Programs
3. Building Clozure CL from its Source Code
3.1. Building Definitions
3.2. Setting Up to Build
3.3. Building Everything
3.4. Building the kernel
3.5. Building the heap image
4. Using Clozure CL
4.1. Introduction
4.2. Trace
4.3. Unicode
4.4. Pathnames
4.5. Memory-mapped Files
4.6. Static Variables
4.7. Saving Applications
5. The Clozure CL IDE
5.1. Introduction
5.2. Building the IDE
5.3. Running the IDE
5.4. IDE Features
5.5. IDE Sources
5.6. The Application Builder
6. Programming with Threads
6.1. Threads Overview
6.2. (Intentionally) Missing Functionality
6.3. Implementation Decisions and Open Questions
6.4. Porting Code from the Old Thread Model
6.5. Background Terminal Input
6.6. The Threads which Clozure CL Uses for Its Own Purposes
6.7. Threads Dictionary
7. Programming with Sockets
7.1. Overview
7.2. Sockets Dictionary
8. Running Other Programs as Subprocesses
8.1. Overview
8.2. Examples
8.3. Limitations and known bugs
8.4. External-Program Dictionary
9. Streams
9.1. Stream Extensions
9.2. Creating Your Own Stream Classes with Gray Streams
10. Writing Portable Extensions to the Object System using the MetaObject Protocol
10.1. Overview
10.2. Implementation status
10.3. Concurrency issues
11. Profiling
11.1. Using the Linux oprofile system-level profiler
11.2. Using Apple's CHUD metering tools
12. The Foreign-Function Interface
12.1. Specifying And Using Foreign Types
12.2. Foreign Function Calls
12.3. Referencing and Using Foreign Memory Addresses
12.4. The Interface Database
12.5. Using Interface Directories
12.6. Using Shared Libraries
12.7. The Interface Translator
12.8. Case-sensitivity of foreign names in CCL
12.9. Reading Foreign Names
12.10. Tutorial: Using Basic Calls and Types
12.11. Tutorial: Allocating Foreign Data on the Lisp Heap
12.12. The Foreign-Function-Interface Dictionary
13. The Objective-C Bridge
13.1. Changes in 1.2
13.2. Using Objective-C Classes
13.3. Instantiating Objective-C Objects
13.4. Calling Objective-C Methods
13.5. Defining Objective-C Classes
13.6. Defining Objective-C Methods
13.7. Loading Frameworks
13.8. How Objective-C Names are Mapped to Lisp Symbols
14. Platform-specific notes
14.1. Overview
14.2. Unix/Posix/Darwin Features
14.3. Cocoa Programming in Clozure CL
14.4. Building an Application Bundle
14.5. Recommended Reading>
14.6. Operating-System Dictionary
15. Understanding and Configuring the Garbage Collector
15.1. Heap space allocation
15.2. The Ephemeral GC
15.3. GC Page reclamation policy
15.4. "Pure" areas are read-only, paged from image file
15.5. Weak Hash Tables
15.6. Garbage-Collection Dictionary
16. Implementation Details of Clozure CL
16.1. Threads and exceptions
16.2. Register usage and tagging
16.3. Heap Allocation
16.4. GC details
16.5. The ephemeral GC
16.6. Fasl files
16.7. The Objective-C Bridge
17. Modifying Clozure CL
17.1. Contributing Code Back to the Clozure CL Project
17.2. Using Clozure CL in "development" and in "user" mode
17.3. The Kernel Debugger
17.4. Using AltiVec in Clozure CL LAP functions
17.5. Development-Mode Dictionary
18. Questions and Answers
18.1. How can I do nonblocking (aka "unbuffered" and "raw") IO?
18.2. I'm using the graphics demos. Why doesn't the menubar change?
18.3. I'm using Slime and Cocoa. Why doesn't *standard-output* seem to work?
Glossary of Terms
Symbol Index

List of Tables

3.1. Platform-specific filename conventions
4.1. Line Termination Keywords

Previous Next Chapter Table of Contents Glossary Index