1. Introduction to the IDE

This chapter has the following sections

1.1 Version and History
1.2 Documentation
1.3 Editor
1.4 Case mode and international characters
1.5 Configuration
1.6 Reporting bugs and asking questions

This is chapter 1 of the User Guide for the Allegro CL 6.0 Integrated Development Environment (IDE). The IDE is only supported on Windows machines.

The chapters of the IDE User Guide are:

Chapter 1: Introduction to the IDE (this chapter)
Chapter 2: The Allegro CL Development Environment (IDE)
Chapter 3: An example
Chapter 4: Projects
Chapter 5: Components
Chapter 6: Designing a user interface
Chapter 7: Menus
Chapter 8: Events

1.1 Version and History

Release 6.0 is the third major release of the unified Windows/Unix Allegro CL implementation. There remain two important differences between the Windows and the Unix implementations: (1) the Windows implementation is closely integrated with the Windows operating system, and provides (particularly with the Integrated Development Environment described in this document) tools for producing Windows-style applications; and (2) the Windows implementation uses OS threads for within Lisp multiprocessing while the Unix implementation uses Lisp-defined lightweight processes. With regard to the second point, in release 6.0, you can now have windows run in different threads (in releases 5.0 and 5.0.1, all windows had to be defined in a single thread).

The Integrated Development Environment is a windowized tool for developing user interfaces to applications. Common Graphics is the window system used by the IDE. Most symbols associated with the IDE and Common Graphics are in the common-graphics package.

1.2 Documentation

Allegro CL 6.0, Common Graphics, and the IDE are documented with HTML files integrated with the rest of the Allegro CL documentation. (In earlier releases, Common Graphics documentation was in Windows Help files. In 6.0, Windows Help files are only used for the tutorial.) The documentation includes (<Allegro directory> is the directory where Allegro CL is installed):

Extensions and implementation details of standard Common Lisp functionality are described in various Allegro CL documents, particularly implementation.htm. The index in index.htm has links to this documentation (look up, e.g. open and disassemble -- the links go where the index link will go).

1.3 Editor

You can run the Allegro CL 6.0 IDE as a subprocess of GNU Emacs. Just start Allegro CL within Emacs in the usual way. Make sure you specify allegro.dxl as the image file (rather than mlisp.dxl, which is Allegro CL without the IDE).

Files will be opened in Emacs (rather than the IDE Editor Workbook) if the Open Files in GNU Emacs option on the Editor Options pane is selected and Emacs is running and linked to Lisp. (The illustration just below shows the Editor Options pane with the Open Files in GNU Emacs option not checked.)

Editing (other than using Emacs) should be in text-edit windows or panes, such as the Debug window and the Editor Workbook (which has tabs for different editor buffers). The editing mode for text-edit windows can be Host, Emacs, or Brief. The mode is set in the Editor tab of the Options dialog (displayed with Tools | Options). Here is that dialog. The Host mode is chosen:

opt-ed.bmp (532154 bytes)

The :EMACS mode uses a subset of standard Emacs keybindings. Note that these may alter menu shortcuts, to prevent them from conflicting with the Emacs keybindings.

1.4 Case mode and International Characters

Allegro CL is available in modern mode (case-sensitive, lowercase preferred) and ANSI mode (case-insensitive, uppercase preferred). Allegro CL has always supported various case modes, but starting with 6.0, images with different modes are supplied with the Allegro CL distribution. You may run Allegro CL with the IDE in either modern mode or ANSI mode (there are separate Start menu items for each mode). Previous releases of the IDE used case-insensitive, uppercase preferred mode (what is now called ANSI mode). You may wish to use that mode if you already have applications developed. If you are developing new applications, however, consider using modern mode.

Allegro CL 6.0 also support international characters, meaning that characters are 16-bits wide rather than 8-bits wide as in earlier releases. (8-bit versions of Allegro CL 6.0 are supplied, but no pre-built 8-bit IDE image is supplied, though one could be built.) You should not see any difference because you are using an international version. Please contact Franz Inc. for assistance if you run into problems. International character support is described in doc/iacl.htm (iacl for International Allegro CL).

1.5 Configuration

Your preferences about window arrangement, choice of fonts, editor mode, and so on are stored in a file in the Allegro folder (where Allegro CL was installed) called prefs.cl. This file is updated when you exit Allegro CL (unless the menu command Tools | Save Options on Exit is toggled off), incorporating changes made using the Options dialog (displayed with Tools | Options) and when you make direct changes to the configuration using the Inspector as described just below. Deleting or renaming prefs.cl (and deleting prefs.fasl if it exists) will cause the IDE to revert to the initial default settings.

Most details of the system are stored as the value of the variable *system*. The information about the configuration choices are in the data structure returned by

(configuration *system*)

Many configuration properties correspond to global variables. Accessors to such properties are named, generally, by the global variable name associated with the property without the *'s. Thus

(print-base (configuration *system*))

returns the value of *print-base* and setting it with setf changes the value in the configuration and the current value of the variable. Other accessors are not associated with a specific global. Their names are usually intuitive. Thus, the editor mode is accessed (and with setf set) by 

(editor-mode (configuration *system*))

You can examine the configuration by clicking Tools | Inspect System Data | Configuration Options. The Inspector shows all configuration properties and their values. Values can be changed directly in the Inspector, by clicking on the value and typing or clicking on the extended editor button to the right of the value and entering the new value in the dialog that appears (different dialogs appear for different types of values). Here is the Inspector showing some configuration options:

1.6 Reporting bugs and asking questions

Send problem reports and technical questions of any type by email to bugs@franz.com. Our mailing address is Franz Inc., Suite 275, 1995 University Ave., Berkeley CA 94704 USA; and our telephone number (in the USA) is +510-548-3600.

Please state explicitly in your message that you have Allegro CL 6.0 with the IDE and say what version of Windows you are using (95, 98, 2000, or NT). Use dribble-bug to write a file showing a transcript of a failure. dribble-bug writes information about the release and its features as well as recording a transcript, so use it in preference to dribble. You can produce an automatic dribble along with a backtrace by doing File | Save while a backtrace pane is selected (the backtrace pane is displayed when you click on the Debug button of a Restarts dialog after an error). The saved file is suitable for including in a bug report. See the topic About submitting a bug report from a break in the IDE in the doc/cgide.htm file. See also Reporting bugs in introduction.htm.

Go to chapter 2. Go to the beginning of this document.

Copyright (c) 1998-2000 by Franz Inc. All rights reserved.