LispWorks User Guide and Reference Manual

NextPrevTopIndex

Contents

Preface

1 Starting LispWorks

1.1 The usual way to start LispWorks

1.2 Passing arguments to LispWorks

1.2.1 Saving a new image

1.2.2 Saving a console mode image

1.2.3 Bypassing initialization files

1.2.4 Other command line options

1.3 Starting the Common LispWorks Graphical IDE

1.4 Using LispWorks with SLIME

1.5 Quitting LispWorks

2 The Listener

2.1 First use of the listener

2.2 Standard listener commands

2.2.1 Standard top-level loop commands

2.2.2 Examples

2.3 The listener prompt

3 The Debugger

3.1 Entering the REPL debugger

3.2 Simple use of the REPL debugger

3.3 The stack in the debugger

3.4 REPL debugger commands

3.4.1 Backtracing

3.4.2 Moving around the stack

3.4.3 Miscellaneous commands

3.4.4 Leaving the debugger

3.4.5 Example debugging session

3.5 Debugger control variables

4 The REPL Inspector

4.1 Describe

4.2 Inspect

4.3 Inspection modes

4.3.1 Hash table inspection modes

5 The Trace Facility

5.1 Simple tracing

5.2 Tracing options

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

5.2.2 Evaluating forms without printing results

5.2.3 Using the debugger when tracing

5.2.4 Entering stepping mode

5.2.5 Configuring function entry and exit information

5.2.6 Directing trace output

5.2.7 Restricting tracing

5.2.8 Storing the memory allocation made during a function call

5.2.9 Tracing functions from inside other functions

5.3 Example

5.4 Tracing methods

5.5 Trace variables

6 The Advice Facility

6.1 Defining advice

6.2 Combining the advice

6.2.1 :before and :after advice

6.2.2 :around advice

6.3 Removing advice

6.4 Advice for macros and methods

6.5 Examples

6.6 Advice functions and macros

7 Dspecs: Tools for Handling Definitions

7.1 Dspecs

7.2 Forms of dspecs

7.2.1 Canonical dspecs

7.3 Dspec namespaces

7.3.1 Dspec classes

7.3.1.1 Complete example of a top-level dspec class

7.3.1.2 Example of subclassing

7.3.2 Dspec aliases

7.4 Types of relations between definitions

7.4.1 Functionally equivalent definers

7.4.2 Grouping subdefinitions together

7.4.3 Distributed definitions

7.5 Details of system dspec classes and aliases

7.5.1 CLOS dspec classes

7.5.2 Part Classes

7.5.3 Foreign callable dspecs

7.6 Subfunction dspecs

7.7 Tracking definitions

7.7.1 Locations

7.7.2 Recording definitions and redefinition checking

7.7.2.1 Use of record-definition

7.8 Finding locations

7.9 Users of location information

7.9.1 Finding definitions in the LispWorks editor

7.9.2 The editor's implicit form parser

7.9.3 Reusing form parsers

7.9.4 Example: defcondition

8 Action Lists

8.1 Defining and undefining action lists

8.2 Exception handling variables

8.3 Other variables

8.4 Diagnostic utilities

8.5 Examples

8.6 Standard Action Lists

9 The Compiler

9.1 Compiling a function

9.2 Compiling a source file

9.3 How the compiler works

9.4 Compiler control

9.4.1 Examples of compiler control

9.5 Declare, proclaim, and declaim

9.5.1 Naming conventions

9.6 Optimizing your code

9.6.1 Compiler optimization hints

9.6.2 Fast 32-bit arithmetic

9.6.2.1 Optimized and unoptimized INT32 code

9.6.2.2 The INT32 API

9.6.2.3 INT32 Optimization

9.6.3 Floating point optimization

9.6.4 Tail call optimization

9.6.5 Usage of special variables

9.6.5.1 Finding symbols to declare

9.6.6 Stack allocation of objects with dynamic extent

9.6.7 Inlining foreign slot access

9.7 Compiler parameters affecting LispWorks

10 Storage Management

10.1 Introduction

10.2 Generations and segments

10.3 Memory Management in 32-bit LispWorks

10.3.1 Generations

10.3.2 Allocation of objects

10.3.2.1 Allocation of static objects

10.3.2.2 Allocation in different generations

10.3.3 GC operations

10.3.4 Garbage collection strategy

10.3.5 Overflow

10.3.6 Behavior of generation 1

10.3.7 Behavior of generation 2

10.3.8 Forcing expansion

10.3.9 Controlling Fragmentation

10.3.10 Summary of garbage collection symbols

10.3.10.1 Determining storage usage

10.3.10.2 Allocating in specific generations

10.3.10.3 Controlling a specific generation

10.3.10.4 Controlling the garbage collector

10.4 Memory Management in 64-bit LispWorks

10.4.1 General organization of memory

10.4.2 Segments and Allocation Types

10.4.3 Garbage Collection Operations

10.4.4 Generation Management

10.4.5 Tuning the GC

10.4.5.1 Interface for tuning the GC

10.5 Common Memory Management Features

10.5.1 Timing the garbage collector

10.5.2 Reducing image size

10.5.3 Allocation of interned symbols and packages

10.5.4 Allocation of stacks

10.5.5 Mapping across all objects

10.5.6 Special actions

10.5.7 Garbage collection of foreign objects

10.5.8 Freeing of objects by the GC

10.6 Assisting the Garbage Collector

10.6.1 Breaking pointers from older objects

11 The Profiler

11.1 What the profiler does

11.2 Setting up the profiler

11.3 Running the profiler

11.3.1 Using the macro profile

11.3.2 Programmatic control of profiling

11.4 Profiler output

11.5 Interpretation of profiling results

11.6 Profiling pitfalls

11.7 Profiling and garbage collection

12 Customization of LispWorks

12.1 Introduction

12.1.1 Pre-loading code

12.1.2 Loading code at start up

12.1.3 Specific customizations

12.2 Configuration and initialization files

12.2.1 Configuration files

12.2.2 Initialization files

12.3 Saving a LispWorks image

12.3.1 The configuration file

12.3.2 The save-image script

12.3.3 Save your new image

12.3.4 Use your new image

12.3.5 Saving a non-GUI image with multiprocessing enabled

12.4 Saved sessions

12.4.1 The default session

12.4.2 What is saved and what is not saved

12.4.3 Saving a session programmatically

12.4.3.1 Save Session actions

12.4.3.2 Non-IDE interfaces

12.4.4 Saving a session using the IDE

12.5 Load and open your files on startup

12.6 Customizing the editor

12.6.1 Controlling appearance of found definitions

12.6.2 Specifying the number of editor windows

12.6.3 Binding commands to keystrokes

12.7 Finding source code

12.8 Controlling redefinition warnings

12.9 Specifying the initial working directory

12.10 Using ! for :redo

12.11 Customizing LispWorks for use with your own code

12.11.1 Preloading selected modules

12.11.2 Creating packages

12.12 Structure printing

12.13 Configuring the printer

12.13.1 PPD file details

13 LispWorks as a dynamic library

13.1 Introduction

13.2 Creating a dynamic library

13.2.1 C functions provided by the system

13.2.2 C functions provided by the application

13.2.3 Example

13.3 Initialization of the dynamic library

13.3.1 Automatic initialization

13.3.2 Initialization via InitLispWorks

13.4 Relocation

13.5 Multiprocessing in a dynamic library

13.6 Unloading a dynamic library

14 The Metaobject Protocol

14.1 Metaobject features incompatible with AMOP

14.1.1 Instance Structure Protocol

14.1.2 Method Metaobjects

14.1.3 Method Lambdas

14.1.4 Method Functions

14.1.5 EQL specializers

14.1.6 Generic Function Invocation Protocol

14.1.7 Method combinations

14.1.8 Compatible metaclasses

14.1.9 Inheritance Structure of Metaobject Classes

14.2 Common problems when using the MOP

14.2.1 Inheritance across metaclasses

14.2.2 Accessors not using structure instance protocol

14.2.3 The MOP in delivered images

14.3 Implementation of virtual slots

15 Multiprocessing

15.1 Introduction to processes

15.2 The process programming interface

15.2.1 Creating a process

15.2.2 Finding out about processes

15.2.3 Process Priorities

15.2.3.1 Process priorities in SMP LispWorks

15.2.3.2 Process priorities in non-SMP LispWorks

15.2.4 Interrupting a process

15.2.5 Blocking interrupts

15.2.6 Old interrupt blocking APIs removed

15.2.6.1 Atomic increment

15.2.6.2 Atomic push/pop

15.2.6.3 Atomic push/delete

15.2.6.4 Atomic plist update

15.2.6.5 Atomic update of a data structure

15.2.6.6 Atomic access to a cache in a hash table

15.2.7 Multiprocessing

15.2.7.1 Starting multiprocessing interactively

15.2.7.2 Multiprocessing on startup

15.2.7.3 Running your own processes on startup

15.2.8 Values across processes

15.2.8.1 Returning a value from another process

15.2.8.2 Accessing symbol values across processes

15.2.9 Stopping and unstopping processes

15.2.10 Example

15.3 Atomicity and thread safety of the LispWorks implementation

15.3.1 Immutable objects

15.3.2 Mutable objects supporting atomic access

15.3.3 Mutable objects not supporting atomic access

15.3.4 Issues with order of memory accesses

15.3.5 Single-thread context arrays and hash-tables

15.4 Low level atomic operations

15.5 Aids for implementing modification checks

15.5.1 Example modification check

15.6 Ensuring order of memory between operations in different threads

15.6.1 Example of ensuring order of memory

15.7 Locks

15.7.1 Features of lock APIs for SMP

15.7.1.1 Recursive and sharing locks

15.7.1.2 Querying locks

15.7.2 Guarantees and limitations when locking and unlocking

15.8 Process Waiting

15.8.1 Specific Process Wait functions

15.8.2 Generic Process Wait functions

15.8.3 Communication between processes and synchronization

15.8.4 Synchronization

15.9 Synchronization between threads

15.9.1 Condition variables

15.9.2 Synchronization barriers

15.9.3 Counting semaphores

15.10 Timers

15.10.1 Timers and multiprocessing

15.10.2 Input and output for timer functions

15.11 Process properties

15.12 Native threads and foreign code

15.12.1 Native threads on Windows, Mac OS X, Linux, x86/x64 Solaris and FreeBSD

15.12.2 Native threads on other platforms

15.12.3 Foreign callbacks on threads not created by Lisp

15.13 Example

16 Common Defsystem

16.1 Introduction

16.2 Defining a system

16.2.1 DEFSYSTEM syntax

16.2.2 DEFSYSTEM options

16.2.3 DEFSYSTEM members

16.2.4 DEFSYSTEM rules

16.2.5 Examples

17 The Parser Generator

17.1 Introduction

17.2 Grammar rules

17.2.1 Example

17.2.2 Resolving ambiguities

17.3 Functions defined by defparser

17.4 Error handling

17.5 Interface to lexical analyzer

17.6 Example

18 Dynamic Data Exchange

18.1 Introduction

18.1.1 Types of transaction

18.1.2 Conversations, servers, topics, and items

18.1.3 Advise loops

18.1.4 Execute transactions

18.2 Client interface

18.2.1 Opening and closing conversations

18.2.2 Automatically managed conversations

18.2.3 Advise loops

18.2.3.1 Example advise loop

18.2.4 Request and poke transactions

18.2.5 Execute transactions

18.3 Server interface

18.3.1 Starting a DDE server

18.3.2 Handling poke and request transactions

18.3.3 Topics

18.3.3.1 General topics

18.3.3.2 Dispatching topics

18.3.3.3 The system topic

19 Common SQL

19.1 Introduction

19.1.1 Overview

19.1.2 Supported databases

19.2 Initialization

19.2.1 SQL interface

19.2.2 Database classes

19.2.3 Initialization functions and variables

19.2.4 Database libraries

19.2.5 General database connection and disconnection

19.2.5.1 Connection example

19.2.6 Connecting to Oracle

19.2.7 Connecting to ODBC

19.2.7.1 Connecting to ODBC using a string

19.2.7.2 Connecting to ODBC using a plist

19.2.8 Connecting to MySQL

19.2.8.1 Connecting to MySQL using a string

19.2.8.2 Connecting to MySQL using a plist

19.2.8.3 Locating the MySQL client library

19.2.8.4 Special instructions for MySQL on Mac OS X

19.2.9 Connecting to PostgreSQL

19.2.9.1 Connecting to PostgreSQL using a string

19.2.9.2 Connecting to PostgreSQL using a plist

19.3 Functional interface

19.3.1 Functional Data Manipulation Language (FDML)

19.3.1.1 Querying

19.3.1.2 Modification

19.3.1.3 Caching of table queries

19.3.1.4 Transaction handling

19.3.1.5 Iteration

19.3.1.6 Specifying SQL directly

19.3.1.7 Building vendor-specific SQL

19.3.2 Functional Data Definition Language (FDDL)

19.3.2.1 Querying the schema

19.3.2.2 FDDL Querying example

19.3.2.3 Modification

19.4 Object oriented interface

19.4.1 Object oriented/relational model

19.4.1.1 Inheritance for View Classes

19.4.2 Object-Oriented Data Definition Language (OODDL)

19.4.2.1 Example View Class definition

19.4.3 Object-Oriented Data Manipulation Language (OODML)

19.4.3.1 Examples

19.4.3.2 Iteration

19.4.3.3 Garbage collection of view instances

19.5 Symbolic SQL syntax

19.5.1 The "[...]" Syntax

19.5.1.1 Enclosing database identifiers

19.5.1.2 SQL strings representing symbolic expressions

19.5.1.3 Calling database functions

19.5.1.4 Enclosing literal SQL

19.5.2 Programmatic interface

19.5.2.1 Examples

19.5.3 Utilities

19.6 Working with date fields

19.6.1 Testing date values

19.6.2 DATE returned as universal time

19.6.2.1 Timezone of returned DATEs

19.6.3 DATE returned as string

19.6.4 Using universal time format

19.7 SQL I/O recording

19.8 Error handling in Common SQL

19.8.1 SQL condition classes

19.8.2 Database error accessors

19.9 Using MySQL

19.9.1 Connection specification

19.9.2 Case of table names and and database names

19.9.3 Encoding (character sets in MySQL).

19.9.4 SQL mode

19.9.5 Meaning of the :owner argument to select

19.9.6 Special considerations for iteration functions and macros

19.9.6.1 Fetching multiple records

19.9.6.2 Aborting queries which fetch many records

19.9.7 Table types

19.9.8 Rollback errors

19.9.9 Types of values returned from queries

19.9.10 Autocommit

19.10 Using Oracle

19.10.1 Connection specification

19.10.2 Setting connection parameters

19.11 Oracle LOB interface

19.11.1 Introduction

19.11.1.1 Retrieving LOB locators

19.11.1.2 Operating on LOB locators

19.11.1.3 Inserting empty LOBs

19.11.2 Retrieving Lob Locators

19.11.3 Locking

19.11.4 Retrieving LOB Locators as streams

19.11.5 Attaching a stream to a LOB locator

19.11.6 Interactions with foreign calls

19.11.7 Determining the type of a LOB

19.11.8 Reading and writing from and to LOBs

19.11.9 The LOB functions

19.11.9.1 Querying functions

19.11.9.2 LOB management functions

19.11.9.3 Modifying LOBs

19.11.9.4 File operations

19.11.9.5 Direct I/O

19.11.9.6 Temporary LOBs

19.11.9.7 Control of buffering

20 User Defined Streams

20.1 Introduction

20.2 An illustrative example of user defined streams

20.2.1 Defining a new stream class

20.2.2 Recognizing the stream element type

20.2.3 Stream directionality

20.2.4 Stream input

20.2.5 Stream output

20.2.6 Instantiating the stream

21 Socket Stream SSL interface

21.1 Creating a stream with SSL

21.2 SSL-CTX and SSL objects

21.3 OpenSSL interface

21.3.1 OpenSSL constants

21.3.2 Naming conventions for direct OpenSSL calls

21.3.2.1 Mapping C names to Lisp names

21.3.2.2 Mapping Lisp names to C names

21.3.3 Direct calls to OpenSSL

21.4 Socket Stream SSL keyword arguments

21.5 Attaching SSL to an existing socket-stream

21.6 Using SSL objects directly

21.7 Initialization

21.8 Obtaining and installing the OpenSSL library

21.8.1 Installing the OpenSSL library on Solaris

21.8.2 Loading the OpenSSL libraries

21.9 Errors in SSL

22 Internationalization

22.1 Introduction

22.2 Character and String types

22.2.1 Character types

22.2.2 Character Syntax

22.2.3 String types

22.2.3.1 String types at runtime

22.2.3.2 String types at compile time

22.3 String accessors

22.4 String Construction

22.4.1 Default string construction

22.4.2 String construction with known type

22.4.3 Controlling string construction

22.4.4 String construction on Windows systems

22.5 External Formats

22.6 External Formats and File Streams

22.6.1 Complete external format ef-specs

22.6.2 Using complete external formats

22.6.3 Guessing the external format

22.6.3.1 Example of using UTF-8 by default

22.6.4 External formats and stream-element-type

22.6.5 External formats and the LispWorks Editor

22.6.6 Byte Order Mark

22.7 External Formats and the Foreign Language Interface

22.8 Unicode character and string functions

22.8.1 Unicode case insensitive character comparision

22.8.2 Unicode case insensitive string comparision

22.8.3 Unicode character predicates

23 LispWorks' Operating Environment

23.1 The Operating System

23.2 Site Name

23.3 The Lisp Image

23.4 The Command Line

23.4.1 Command Line Arguments

23.5 Address Space and Image Size

23.5.1 Size of real memory

23.5.2 Layout of memory

23.5.3 Reporting current allocation

23.6 Startup relocation

23.6.1 How to relocate LispWorks

23.6.2 Startup relocation of 32-bit LispWorks

23.6.2.1 Linux

23.6.2.2 FreeBSD

23.6.2.3 x86/x64 Solaris

23.6.2.4 Windows and Macintosh

23.6.3 Startup relocation of 64-bit LispWorks

23.6.3.1 Linux

23.6.3.2 SPARC Solaris

23.6.3.3 Windows and Macintosh

23.7 Calling external programs

23.8 Snapshot debugging of startup errors

23.9 System message log

23.10 Exit status

23.11 Creating a new executable with code preloaded

23.12 Universal binaries on Mac OS X

23.13 User Preferences

23.13.1 Location of persistant settings

23.13.2 Accessing persistant settings

23.13.3 Example using user preferences

23.14 Accessing the Windows registry

23.15 The home directory

23.16 Special Folders

24 64-bit LispWorks

24.1 Introduction

24.2 Heap size

24.3 Architectural constants

24.4 Speed

24.5 Memory Management

24.6 Float types

24.7 External libraries

25 The CLOS Package

break-new-instances-on-access

break-on-access

class-extra-initargs

compute-class-potential-initargs

compute-discriminating-function

funcallable-standard-object

process-a-class-option

process-a-slot-option

set-make-instance-argument-checking

slot-boundp-using-class

slot-makunbound-using-class

slot-value-using-class

trace-new-instances-on-access

trace-on-access

unbreak-new-instances-on-access

unbreak-on-access

untrace-new-instances-on-access

untrace-on-access

26 The COMM Package

attach-ssl

destroy-ssl

destroy-ssl-ctx

detach-ssl

do-rand-seed

ensure-ssl

get-host-entry

get-socket-address

get-socket-peer-address

get-verification-mode

ip-address-string

make-ssl-ctx

open-tcp-stream

openssl-version

pem-read

read-dhparams

set-verification-mode

set-ssl-ctx-dh

set-ssl-ctx-options

set-ssl-ctx-password-callback

set-ssl-library-path

socket-error

socket-stream

socket-stream-address

socket-stream-ctx

socket-stream-peer-address

socket-stream-ssl

ssl-cipher-pointer

ssl-cipher-pointer-stack

ssl-closed

ssl-condition

ssl-ctx-pointer

ssl-error

ssl-failure

ssl-new

ssl-pointer

ssl-x509-lookup

start-up-server

start-up-server-and-mp

string-ip-address

with-noticed-socket-stream

27 The COMMON-LISP Package

apropos

apropos-list

base-string

close

coerce

compile

compile-file

concatenate

declaim

declare

defclass

defpackage

describe

directory

disassemble

documentation

double-float

*features*

input-stream-p

interactive-stream-p

load-logical-pathname-translations

long-float

long-site-name

loop

make-array

make-hash-table

make-instance

make-sequence

map

merge

open

open-stream-p

output-stream-p

proclaim

restart-case

room

short-float

short-site-name

simple-base-string

single-float

software-type

software-version

step

stream-element-type

string

time

trace

truename

untrace

update-instance-for-different-class

update-instance-for-redefined-class

with-output-to-string

28 The COMPILER Package

deftransform

29 The DBG Package

*debug-print-length*

*debug-print-level*

executable-log-file

*hidden-packages*

log-bug-form

logs-directory

output-backtrace

*print-binding-frames*

*print-catch-frames*

*print-handler-frames*

*print-open-frames*

*print-restart-frames*

*terminal-debugger-block-multiprocessing*

with-debugger-wrapper

30 The DSPEC Package

*active-finders*

at-location

canonicalize-dspec

def

define-dspec-alias

define-dspec-class

define-form-parser

dspec-class

*dspec-classes*

dspec-defined-p

dspec-definition-locations

dspec-equal

dspec-name

dspec-primary-name

dspec-progenitor

dspec-subclass-p

dspec-undefiner

discard-source-info

find-dspec-locations

find-name-locations

get-form-parser

local-dspec-p

location

name-defined-dspecs

name-definition-locations

name-only-form-parser

parse-form-dspec

record-definition

*record-source-files*

*redefinition-action*

save-tags-database

single-form-form-parser

single-form-with-options-form-parser

traceable-dspec-p

tracing-enabled-p

tracing-state

31 The EXTERNAL-FORMAT Package

char-external-code

decode-external-string

encode-lisp-string

external-format-error

external-format-foreign-type

external-format-type

find-external-char

valid-external-format-p

32 The HCL Package

add-special-free-action

add-symbol-profiler

allocation-in-gen-num

analysing-special-variables-usage

array-weak-p

avoid-gc

binds-who

block-promotion

building-universal-intermediate-p

calls-who

cd

change-directory

check-fragmentation

clean-down

clean-generation-0

collect-generation-2

collect-highest-generation

*compiler-break-on-error*

compile-file-if-needed

copy-to-weak-simple-vector

create-macos-application-bundle

create-universal-binary

current-stack-length

*default-package-use-list*

*default-profiler-collapse*

*default-profiler-cutoff*

*default-profiler-limit*

*default-profiler-sort*

defglobal-parameter

defglobal-variable

delete-advice

*disable-trace*

do-profiling

dump-form

dump-forms-to-file

enlarge-generation

enlarge-static

expand-generation-1

extend-current-stack

extended-time

file-string

file-writable-p

find-object-size

finish-heavy-allocation

flag-not-special-free-action

flag-special-free-action

gc-generation

gc-if-needed

get-default-generation

get-gc-parameters

get-temp-directory

get-working-directory

*handle-existing-defpackage*

*handle-old-in-package*

*handle-old-in-package-used-as-make-package*

*load-fasl-or-lisp-file*

mark-and-sweep

*max-trace-indent*

modify-hash

normal-gc

*packages-for-warn-on-redefinition*

parse-float

print-profile-list

profile

*profiler-threshold*

*profile-symbol-list*

profiler-tree-from-function

profiler-tree-to-function

references-who

remove-special-free-action

remove-symbol-profiler

reset-profiler

save-argument-real-p

save-current-session

save-image

save-image-with-bundle

save-universal-from-script

set-array-single-thread-p

set-array-weak

set-default-generation

set-gc-parameters

set-hash-table-weak

set-minimum-free-space

set-process-profiling

set-profiler-threshold

set-promotion-count

set-system-message-log

set-up-profiler

sets-who

source-debugging-on-p

start-profiling

stop-profiling

sweep-all-objects

switch-static-allocation

*symbol-alloc-gen-num*

toggle-source-debugging

total-allocation

*traced-arglist*

*traced-results*

*trace-indent-width*

*trace-level*

*trace-print-circle*

*trace-print-length*

*trace-print-level*

*trace-print-pretty*

*trace-verbose*

try-compact-in-generation

try-move-in-generation

unwind-protect-blocking-interrupts

unwind-protect-blocking-interrupts-in-cleanups

who-binds

who-calls

who-references

who-sets

with-hash-table-locked

with-heavy-allocation

with-output-to-fasl-file

33 The LINK-LOAD Package

break-on-unresolved-functions

foreign-symbol-address

get-foreign-symbol

lisp-name-to-foreign-name

read-foreign-modules

34 The LISPWORKS Package

8-bit-string

16-bit-string

appendf

base-character

base-character-p

base-char-p

base-char-code-limit

base-string-p

*browser-location*

call-next-advice

choose-unicode-string-hash-function

compile-system

concatenate-system

current-pathname

defadvice

*default-action-list-sort-time*

*default-character-element-type*

define-action

define-action-list

defsystem

*defsystem-verbose*

delete-directory

deliver

*describe-length*

*describe-level*

*describe-print-length*

*describe-print-level*

dll-quit

dotted-list-length

dotted-list-p

do-nothing

*enter-debugger-directly*

environment-variable

errno-value

example-file

example-compile-file

example-load-binary-file

execute-actions

extended-char

extended-character

extended-character-p

extended-char-p

*external-formats*

false

file-directory-p

find-regexp-in-string

function-lambda-list

get-inspector-values

get-unix-error

*grep-command*

*grep-command-format*

*grep-fixed-args*

*handle-existing-action-in-action-list*

*handle-existing-action-list*

*handle-missing-action-list*

*handle-missing-action-in-action-list*

*handle-warn-on-redefinition*

hardcopy-system

*init-file-name*

*inspect-through-gui*

lisp-image-name

*lispworks-directory*

load-all-patches

load-system

make-unregistered-action-list

make-mt-random-state

mt-random

*mt-random-state*

mt-random-state

mt-random-state-p

pathname-location

precompile-regexp

print-actions

print-action-lists

*print-command*

*print-nickname*

*prompt*

quit

rebinding

regexp-find-symbols

remove-advice

removef

*require-verbose*

round-to-single-precision

sbchar

set-default-character-element-type

simple-base-string-p

simple-char

simple-char-p

simple-text-string

simple-text-string-p

split-sequence

split-sequence-if

split-sequence-if-not

start-tty-listener

stchar

string-append

text-string

text-string-p

true

undefine-action

undefine-action-list

unicode-alpha-char-p

unicode-alphanumeric-p

unicode-both-case-p

unicode-char-equal

unicode-char-greaterp

unicode-char-lessp

unicode-char-not-equal

unicode-char-not-greaterp

unicode-char-not-lessp

unicode-lower-case-p

unicode-string-equal

unicode-string-greaterp

unicode-string-lessp

unicode-string-not-equal

unicode-string-not-greaterp

unicode-string-not-lessp

unicode-upper-case-p

user-preference

when-let

when-let*

whitespace-char-p

with-action-item-error-handling

with-action-list-mapping

with-unique-names

35 The MP Package

allowing-block-interrupts

barrier-arriver-count

barrier-change-count

barrier-count

barrier-disable

barrier-enable

barrier-name

barrier-pass-through

barrier-unblock

barrier-wait

change-process-priority

condition-variable-broadcast

condition-variable-signal

condition-variable-wait

condition-variable-wait-count

create-simple-process

*current-process*

current-process-block-interrupts

current-process-in-cleanup-p

current-process-pause

current-process-unblock-interrupts

debug-other-process

*default-process-priority*

*default-simple-process-priority*

ensure-process-cleanup

find-process-from-name

general-handle-event

get-current-process

get-process

get-process-private-property

initialize-multiprocessing

*initial-processes*

last-callback-on-thread

list-all-processes

lock-locked-p

lock-owned-by-current-process-p

lock-recursive-p

lock-recursively-locked-p

lock-name

lock-owner

mailbox-empty-p

mailbox-peek

mailbox-read

mailbox-reader-process

mailbox-send

mailbox-wait-for-event

*main-process*

make-barrier

make-condition-variable

make-lock

make-mailbox

make-named-timer

make-semaphore

make-timer

map-all-processes

map-all-processes-backtrace

map-process-backtrace

map-processes

notice-fd

process-alive-p

process-all-events

process-allow-scheduling

process-arrest-reasons

process-break

process-continue

process-exclusive-lock

process-exclusive-unlock

process-idle-time

*process-initial-bindings*

process-interrupt

process-join

process-kill

process-lock

process-mailbox

process-name

process-p

process-plist

process-poke

process-priority

process-private-property

process-property

process-reset

process-run-function

process-run-reasons

process-run-time

process-send

process-sharing-lock

process-sharing-unlock

process-stop

process-stopped-p

process-unlock

process-unstop

process-wait

process-wait-for-event

process-wait-function

process-wait-local

process-wait-local-with-periodic-checks

process-wait-local-with-timeout

process-wait-local-with-timeout-and-periodic-checks

process-wait-with-timeout

process-whostate

pushnew-to-process-private-property

pushnew-to-process-property

ps

remove-from-process-private-property

remove-from-process-property

remove-process-private-property

remove-process-property

schedule-timer

schedule-timer-milliseconds

schedule-timer-relative

schedule-timer-relative-milliseconds

semaphore-acquire

semaphore-count

semaphore-name

semaphore-release

semaphore-wait-count

simple-process-p

symeval-in-process

timer-expired-p

timer-name

unnotice-fd

unschedule-timer

wait-processing-events

with-exclusive-lock

with-interrupts-blocked

with-lock

with-sharing-lock

without-interrupts

without-preemption

yield

36 The PARSERGEN Package

defparser

37 The SERIAL-PORT Package

open-serial-port

close-serial-port

get-serial-port-state

serial-port

read-serial-port-char

read-serial-port-string

serial-port-input-available-p

set-serial-port-state

wait-serial-port-state

write-serial-port-char

write-serial-port-string

38 The SQL Package

add-sql-stream

attribute-type

cache-table-queries

*cache-table-queries-default*

commit

connect

*connect-if-exists*

connected-databases

create-index

create-table

create-view

create-view-from-class

database-name

*default-database*

*default-database-type*

*default-update-objects-max-len*

def-view-class

delete-instance-records

delete-records

delete-sql-stream

disable-sql-reader-syntax

disconnect

do-query

drop-index

drop-table

drop-view

drop-view-from-class

enable-sql-reader-syntax

execute-command

find-database

initialize-database-type

*initialized-database-types*

insert-records

instance-refreshed

list-attribute-types

list-attributes

list-classes

list-sql-streams

list-tables

lob-stream

locally-disable-sql-reader-syntax

locally-enable-sql-reader-syntax

loop

map-query

*mysql-library-directories*

*mysql-library-path*

ora-lob-append

ora-lob-assign

ora-lob-char-set-form

ora-lob-char-set-id

ora-lob-close

ora-lob-copy

ora-lob-create-empty

ora-lob-create-temporary

ora-lob-disable-buffering

ora-lob-element-type

ora-lob-enable-buffering

ora-lob-env-handle

ora-lob-erase

ora-lob-file-close

ora-lob-file-close-all

ora-lob-file-exists

ora-lob-file-get-name

ora-lob-file-is-open

ora-lob-file-open

ora-lob-file-set-name

ora-lob-flush-buffer

ora-lob-free

ora-lob-free-temporary

ora-lob-get-buffer

ora-lob-get-chunk-size

ora-lob-get-length

ora-lob-internal-lob-p

ora-lob-is-equal

ora-lob-is-open

ora-lob-is-temporary

ora-lob-load-from-file

ora-lob-lob-locator

ora-lob-locator-is-init

ora-lob-open

ora-lob-read-buffer

ora-lob-read-into-plain-file

ora-lob-read-foreign-buffer

ora-lob-svc-ctx-handle

ora-lob-trim

ora-lob-write-buffer

ora-lob-write-from-plain-file

ora-lob-write-foreign-buffer

p-oci-env

p-oci-file

p-oci-lob-locator

p-oci-lob-or-file

p-oci-svc-ctx

print-query

query

reconnect

restore-sql-reader-syntax-state

rollback

select

simple-do-query

sql

sql-connection-error

sql-database-data-error

sql-database-error

*sql-enlarge-static*

sql-expression

sql-fatal-error

*sql-libraries*

*sql-loading-verbose*

sql-operation

sql-operator

sql-recording-p

sql-stream

sql-temporary-error

sql-timeout-error

sql-user-error

standard-db-object

start-sql-recording

status

stop-sql-recording

table-exists-p

update-instance-from-records

update-objects-joins

update-records

update-records-from-instance

update-record-from-slot

update-slot-from-record

with-transaction

39 The STREAM Package

buffered-stream

fundamental-binary-input-stream

fundamental-binary-output-stream

fundamental-binary-stream

fundamental-character-input-stream

fundamental-character-output-stream

fundamental-character-stream

fundamental-input-stream

fundamental-output-stream

fundamental-stream

stream-advance-to-column

stream-check-eof-no-hang

stream-clear-input

stream-clear-output

stream-file-position

stream-fill-buffer

stream-finish-output

stream-flush-buffer

stream-force-output

stream-fresh-line

stream-line-column

stream-listen

stream-output-width

stream-peek-char

stream-read-buffer

stream-read-byte

stream-read-char

stream-read-char-no-hang

stream-read-line

stream-read-sequence

stream-read-timeout

stream-start-line-p

stream-terpri

stream-unread-char

stream-write-buffer

stream-write-byte

stream-write-char

stream-write-sequence

stream-write-string

with-stream-input-buffer

with-stream-output-buffer

40 The SYSTEM Package

apply-with-allocation-in-gen-num

atomic-decf

atomic-incf

atomic-exchange

atomic-fixnum-decf

atomic-fixnum-incf

atomic-pop

atomic-push

augmented-string

augmented-string-p

call-system

call-system-showing-output

cdr-assoc

*check-network-server*

coerce-to-gesture-spec

compare-and-swap

copy-preferences-from-older-version

count-gen-num-allocation

*debug-initialization-errors-in-snap-shot*

default-eol-style

*default-stack-group-list-length*

define-atomic-modify-macro

define-top-loop-command

detect-eol-style

detect-japanese-encoding-in-file

detect-unicode-bom

*directory-link-transparency*

ensure-loads-after-loads

ensure-memory-after-store

ensure-stores-after-memory

ensure-stores-after-stores

*extended-spaces*

*file-encoding-detection-algorithm*

file-encoding-resolution-error

*file-eol-style-detection-algorithm*

*filename-pattern-encoding-matches*

find-encoding-option

find-filename-pattern-encoding-match

gen-num-segments-fragmentation-state

generation-number

gesture-spec-accelerator-bit

gesture-spec-control-bit

gesture-spec-data

gesture-spec-hyper-bit

gesture-spec-meta-bit

gesture-spec-modifiers

gesture-spec-p

gesture-spec-shift-bit

gesture-spec-super-bit

gesture-spec-to-character

get-file-stat

get-folder-path

get-user-profile-directory

guess-external-format

in-static-area

int32

int32*

int32+

int32-

+int32-0+

+int32-1+

int32-1+

int32-1-

int32/

int32/=

int32<

int32<<

int32<=

int32=

int32>

int32>=

int32>>

int32-aref

int32-logand

int32-logandc1

int32-logandc2

int32-logbitp

int32-logeqv

int32-logior

int32-lognand

int32-lognor

int32-lognot

int32-logorc1

int32-logorc2

int32-logtest

int32-logxor

int32-minusp

int32-plusp

int32-to-integer

int32-zerop

integer-to-int32

*line-arguments-list*

load-data-file

locale-file-encoding

low-level-atomic-place-p

make-gesture-spec

make-simple-int32-vector

make-stderr-stream

make-typed-aref-vector

marking-gc

memory-growth-margin

merge-ef-specs

object-address

open-pipe

open-url

pid-exit-status

pointer-from-address

print-pretty-gesture-spec

*print-symbols-using-bars*

product-registry-path

room-values

run-shell-command

safe-locale-file-encoding

set-automatic-gc-callback

set-blocking-gen-num

set-default-segment-size

set-delay-promotion

set-file-dates

set-gen-num-gc-threshold

set-maximum-memory

set-maximum-segment-size

set-memory-check

set-memory-exhausted-callback

set-signal-handler

set-spare-keeping-policy

setup-atomic-funcall

*sg-default-size*

simple-augmented-string

simple-augmented-string-p

simple-int32-vector

*stack-overflow-behaviour*

staticp

storage-exhausted

sweep-gen-num-objects

typed-aref

wait-for-input-streams

wait-for-input-streams-returning-first

with-modification-change

with-modification-check-macro

with-other-threads-disabled

41 Miscellaneous WIN32 symbols

dismiss-splash-screen

*latin-1-code-pages*

long-namestring

*multibyte-code-page-ef*

set-application-themed

short-namestring

str

lpcstr

lpstr

tstr

lpctstr

lptstr

wstr

lpcwstr

lpwstr

42 The Windows registry API

close-registry-key

collect-registry-subkeys

collect-registry-values

create-registry-key

delete-registry-key

enum-registry-value

open-registry-key

query-registry-key-info

query-registry-value

registry-key-exists-p

registry-value

set-registry-value

with-registry-key

43 The DDE client interface

dde-advise-start

dde-advise-start*

dde-advise-stop

dde-advise-stop*

dde-client-advise-data

dde-connect

dde-disconnect

dde-execute

dde-execute*

dde-execute-command

dde-execute-command*

dde-execute-string

dde-execute-string*

dde-item

dde-item*

dde-poke

dde-poke*

dde-request

dde-request*

define-dde-client

with-dde-conversation

44 The DDE server interface

dde-server-poke

dde-server-request

dde-server-topic

dde-server-topics

dde-system-topic

dde-topic

dde-topic-items

define-dde-dispatch-topic

define-dde-server

define-dde-server-function

start-dde-server

45 Dynamic library C functions

InitLispWorks

LispWorksDlsym

LispWorksState

SimpleInitLispWorks

QuitLispWorks

Index

 


LispWorks User Guide and Reference Manual - 22 Dec 2009

NextPrevTopIndex