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.


Bye,


Erik.