MacroPackage: exclToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 9.0
Unrevised from 8.2 to 9.0.
8.2 version

ensuring-compiled-body

Arguments: &body body

This macro is like progn, in that is executes the forms in body sequentially, but when a ensuring-compiled-body form is encountered in interpreted code, it wraps the code body in a lambda, processes it with compile-lambda-expr-in-env, and funcalls the result.

Here is this macro being used by the Allegro CL implementation of cl:time, as an example of its use:

(defmacro time (form)
  `(ensuring-compiled-body
    (excl::time-a-funcall #'excl::time-report *trace-output*
                    #'(lambda () ,form))))

See Compiling individual forms or groups of forms in compiling.htm.


Copyright (c) 1998-2015, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 9.0. This page was not revised from the 8.2 page.
Created 2012.5.30.

ToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 9.0
Unrevised from 8.2 to 9.0.
8.2 version