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.
Common Lisp
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
README
UNLICENSE
enhanced-eval-when.asd
main.lisp
package.lisp

README

Project's home: http://www.hexstreamsoft.com/projects/enhanced-eval-when/


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)
;; and
(: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:
enhanced-eval-when:eval-when
e-eval-when:eval-when
eval-always:eval-always

Don't (:use)!


This library is in the Public Domain.
See the UNLICENSE file for details.