= Release Notes for Clozure CL Trunk = When making a change you want users to know about, add a description of it here. When it becomes time to make a release, we can copy the relevant entries from here into notes for the new release. ---- == Background processes in the Cocoa IDE == As of r12416 in the trunk, CCL supports "background listener processes" in the IDE. {{{ (gui:background-process-run-function name thunk) }}} executes the 0-argument function THUNK in a lisp process named NAME with the standard stream variables effectively bound to a stream which references a listener window (with associated Hemlock buffer and infrastructure.) The window is invisible (it's actually created on demand) unless/until an I/O operation is performed on this stream. When the process is runing, the window's close button (and CMD-W/the Close menu item) hides the window but doesn't deallocate its resources or kill the process; subsequent I/O operations to the stream cause the window to become visible again. If a background listener window is visible when the associated process exits, it stays visible (so that its contents can be saved - via "Save To ..." - or otherwise manipulated.) When the window is visible and the process is in a break loop, they behave like other listener windows/processes: the backtrace and restarts dialogs can be used, and the listener window/process can be used to evaluate selections from editor windows when the listener window is the frontmost listener window.