Next Prev Top Index

Contents

1 Introduction

1.1 About this manual

1.2 The LispWorks manuals

1.3 Other documentation

1.4 Notation

2 The Debugger

2.1 Entering the TTY debugger

2.2 Simple use of the TTY debugger

2.3 The stack in the debugger

2.4 TTY debugger commands

2.4.1 Backtracing

2.4.2 Moving around the stack

2.4.3 Miscellaneous commands

2.4.4 Leaving the debugger

2.4.5 Example TTY session

2.5 Debugger control variables

3 The TTY Inspector

3.1 Describe

3.2 Inspect

3.3 Inspection modes

3.3.1 Hash table inspection modes

4 The Trace Facility

4.1 Simple tracing

4.2 Tracing options

4.2.1 Evaluating forms on entry to and exit from a traced function

4.2.2 Evaluating forms without printing results

4.2.3 Using the debugger when tracing

4.2.4 Entering stepping mode

4.2.5 Configuring function entry and exit information

4.2.6 Directing trace output

4.2.7 Restricting tracing

4.2.8 Storing the memory allocation made during a function call

4.2.9 Tracing functions from inside other functions

4.3 Example

4.4 Tracing methods

4.5 Trace variables

5 The Advice Facility

5.1 Combining the advice

5.2 Removing advice

5.3 Advice for macros and methods

5.4 Example

5.5 Advice functions and macros

6 Action Lists

6.1 Defining and undefining action lists

6.2 Exception handling variables

6.3 Other variables

6.4 Diagnostic utilities

6.5 Examples

6.6 Standard Action Lists

7 The Compiler

7.1 Compiling a function

7.2 Compiling a source file

7.3 How the compiler works

7.4 Compiler control

7.5 Declare, proclaim, and declaim

7.5.1 Naming conventions

7.6 Compiler parameters affecting LispWorks

8 Storage Management

8.1 Introduction

8.2 Generations and segments

8.3 Allocation of objects

8.3.1 Allocation of static objects

8.3.2 Allocation in different generations

8.4 Mark and sweep

8.5 Promotion

8.6 Garbage collection strategy

8.7 Overflow

8.8 Behavior of generation 1

8.9 Behavior of generation 2

8.10 Controlling Fragmentation

8.11 Timing the garbage collector

8.12 Summary of garbage collection symbols

8.12.1 Determining storage usage

8.12.2 Allocating in specific generations

8.12.3 Controlling a specific generation

8.12.4 Reducing image size

8.12.5 Controlling the garbage collector

8.12.6 Garbage collection of foreign objects

8.12.7 Using special actions

8.12.8 Mapping across all objects

9 The Profiler

9.1 What the profiler does

9.2 Setting up the profiler

9.3 Running the profiler

9.4 Interpretation of profiling results

9.5 Profiling pitfalls

9.6 Profiling and garbage collection

10 Simple Customization of LispWorks

10.1 Customizing the editor

10.1.1 Placing definitions at the top of a window

10.1.2 Specifying the number of editor windows

10.1.3 Binding commands to keystrokes

10.2 Using ! for :redo

10.3 Customizing LispWorks for use with your own code

10.3.1 Preloading selected modules

10.3.2 Creating packages

10.4 Configuring the printer

10.4.1 PPD file details

11 Multiprocessing

11.1 Introduction to processes

11.2 The process programming interface

11.2.1 Creating a process

11.2.2 Finding out about processes

11.2.3 Interrupting a process

11.2.4 Multiprocessing

11.2.4.1 Starting multiprocessing interactively

11.2.4.2 Multiprocessing on startup

11.2.4.3 Running your own process on startup

11.2.5 Example

11.3 Locks

11.4 Example

12 Common Defsystem

12.1 Introduction

12.2 Defining a system

12.2.1 DEFSYSTEM syntax

12.2.2 DEFSYSTEM options

12.2.3 DEFSYSTEM members

12.2.4 DEFSYSTEM rules

12.2.5 Examples

13 The Parser Generator

13.1 Introduction

13.2 Grammar rules

13.2.1 Example

13.2.2 Resolving ambiguities

13.3 Functions defined by defparser

13.4 Error handling

13.5 Interface to lexical analyzer

13.6 Example

14 Common SQL

14.1 Introduction

14.1.1 Overview

14.2 Initialization

14.2.1 SQL interface

14.2.2 Database classes

14.2.3 Initialization functions and variables

14.2.4 Database libraries

14.2.5 Database connection and disconnection

14.2.5.1 Connection example

14.3 Functional interface

14.3.1 Functional Data Manipulation Language (FDML)

14.3.1.1 Querying

14.3.1.2 Modification

14.3.1.3 Transaction handling

14.3.1.4 Iteration

14.3.2 Functional Data Definition Language (FDDL)

14.3.2.1 Queries

14.3.2.2 FDDL Querying example

14.3.2.3 Modification

14.4 Object oriented interface

14.4.1 Object oriented/relational model

14.4.2 Object-Oriented Data Definition Language (OODDL)

14.4.2.1 Example view-class definition

14.4.3 Object-Oriented Data Manipulation Language (OODML)

14.4.3.1 Examples

14.4.3.2 Iteration

14.5 Symbolic SQL syntax

14.5.1 The "[...]" Syntax

14.5.1.1 Enclosing database identifiers

14.5.1.2 SQL strings representing symbolic expressions

14.5.1.3 Enclosing literal SQL

14.5.2 Programmatic interface

14.5.2.1 Examples

14.5.3 Utilities

14.6 SQL I/O recording

14.7 SQL errors

15 User Defined Streams

15.1 Introduction

15.2 An illustrative example of user defined streams

15.2.1 Defining a new stream class

15.2.2 Recognizing the stream element type

15.2.3 Stream directionality

15.2.4 Stream input

15.2.5 Stream output

15.2.6 Instantiating the stream

16 Internationalization

16.1 Introduction

16.2 Character and String types

16.2.1 Character types

16.2.2 Character Syntax

16.2.3 String types

16.2.4 String accessors

16.3 String Construction

16.4 External Formats

16.5 External Formats and File Streams

16.5.1 Using complete external formats

16.5.2 Guessing the external format

16.5.3 External formats and stream-element-type

16.5.4 External formats and the LispWorks Editor

16.6 External Formats and the Foreign Language Interface

Index


LispWorks User Guide - 14 Dec 2001

Next Prev Top Index