next up previous contents index
Next: Exiting Up: Practical Details Previous: Starting Up

Hints on Using the System

 

Nuprl's windows are at the ``top-level'' in the X environment. The windows can be managed (positioned, sized, etc.) in the same way as other top-level applications such as X-terminals. Creation and destruction of Nuprl windows, and manipulation of window contents, is done solely via commands interpreted by Nuprl. Nuprl will receive mouse clicks and keyboard strokes whenever the the input focus is on any of its windows. Exactly one window is ``active''  at any given time; this window is identified by the presence of Nuprl's cursor. This appears either as a vertical bar or as a highlighted region. The specific location of the cursor determines the semantics of keyboard strokes and mouse clicks, and is independent of the location of the mouse cursor.

The two main windows --- the ML-Top-Loop window!ML-Top-Loop } and the library window  --- remain throughout the session and you cannot create new versions of them. Chapter gif describes use of the ML-Top-Loop \ window and Chapter gif describes the format of the library window. Chapter gif also describes the kinds of objects that can be found in the library.

There are two other kinds of windows; term editor windows  and proof editor windows . Both are used for editing objects in the library. Terms and the term editor is described in Chapter gif and the proof editor is described in Chapter gif .

Most Lisps allow computations to be interrupted . This is usually done by sending C-C to the Lisp process. (If Lisp is started up from an emacs sub-shell, you usually can do this by typing C-C C-C   to the sub-shell window). This will cause Lisp to enter its debugger  , from which the computation can be resumed or aborted. Aborting Nuprl is almost always safe. When Nuprl is restarted, the state should be exactly as it was when Nuprl was killed, except that any computations within Nuprl will have been aborted.

See Chapter gif for how to use the Lisp debugger, and in particular, for what to if Nuprl crashes. Nuprl is a continually-evolving experimental research system, and it is inevitable that it will contain bugs. Please report any behavior you think is due to a bug, or inconsistencies between the operation of the system and the documentation. Also report any break-points that you hit; they have either been left in the code accidentally, or they are there to help track down the source of bugs. We welcome suggestions for improvement. Send e-mail to nuprlbugs @cs.cornell.edu.

If the system appears to be inexplicably stuck, check the window running Lisp; it is very possible that Lisp is garbage-collecting  . This sometimes takes a few minutes.



next up previous contents index
Next: Exiting Up: Practical Details Previous: Starting Up



Karla Consroe
Wed Oct 23 13:48:45 EDT 1996