Displays and Screens

A ProXL screen is what it sounds like: a physical screen on a monitor. Normally each CPU has one screen associated with it. However, there can be more; for instance, you might have both a color and a monochrome screen. ProXL allows programs to use all available screens.

X is network transparent, meaning that a program may open windows on any screen that is accessible through a network. This is possible because commands to X are sent via interprocess communication (IPC) to a separate X server process, which actually does the work. A ProXL display is essentially a connection between your Prolog program and the X server. Think of a display as one CPU on a network. Each display has a fixed number of screens, one of which is opened by default upon opening X. Also, given a display, you can enumerate its screens, as well as find its default screen.

Unless network transparency is being exploited, a ProXL programmer will not normally have to deal with displays explicitly. Screens are almost always handled by a default mechanism. Consult an Xlib manual for an overview of how screens and displays are used and why they exist.