License: Public Domain , Load it with Quicklisp: (ql:quickload "enhanced-eval-when")
Library type: Wrapper macro , Project complexity: Embarrassingly trivial

enhanced-eval-when provides an enhanced eval-when macro that supports
(eval-when t ...) as a shorthand for
(eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity. An enhanced-eval-when alias is also supported, as well as an eval-always macro and package nickname, for good measure.

As eval-when with all situations specified is used an overwhelming majority of the time by most users, these shorthands can really come handy!

The recommended way to use enhanced-eval-when is to put (:shadowing-import-from #:enhanced-eval-when #:eval-when) in one's defpackage.

For those who would object to such shadowing, two alternatives are:

(:import-from #:enhanced-eval-when #:enhanced-eval-when)


(:import-from #:eval-always #:eval-always)
;;The name used for ASDF is still enhanced-eval-when.

As always, it's also possible to fully qualify symbols instead, with:

Don't (:use)!