On Mar 24, 2013, at 13:55, Erik Huelsmann <ehuels@gmail.com> wrote:Hi all,What is the current status of this problem?
(I think the ticket #230 might be relevant to this problem.)
My current workaround is to make truly-the a macro.
CL-USER> (defmacro truly-the (type value)
`(the ,type ,value))
TRULY-THE
CL-USER> (ql:quickload 'screamer)
To load "screamer":
Load 1 ASDF system:
screamer
; Loading "screamer"
[package screamer]................................
[package screamer-user].............
(SCREAMER)
CL-USER> (lisp-implementation-type)
"Armed Bear Common Lisp"
CL-USER> (lisp-implementation-version)
"1.0.1-svn-13750-13751"
CL-USER>To cut a long story short: the problem hasn't progressed.However, your analysis is entirely correct: defining a macro for the TRULY-THE form would indeed by the short term solution. My thoughts would be to remove the special form longer term. Even though we have special-purpose compilation support for it, I don't see benefits in keeping it around. It's supposed to allow increased performance for compiled programs. So, upon removal, we probably need to verify that the performance degradation is small enough.Supplying a macro for a non-standard special form is the right solution, regardless of whether we keep TRULY-THE; sbcl does the same, and they won't ever eliminate TRULY-THE, I think.