#(error "foo" 42) と (error <error> "foo" 42) で中身が違うんですが、前者に揃えた方がよくないですか?
#gosh> (guard (e (else (d e))) (error "foo" 42))
#<error "foo 42"> is an instance of class <error>
slots:
message : "foo 42"
message-prefix: "foo"
message-args: (42)
gosh> (guard (e (else (d e))) (error <error> "foo" 42))
#<error "foo 42"> is an instance of class <error>
slots:
message : "foo 42"
message-prefix: "foo 42"
message-args: ()
gosh> (guard (e (else (d e))) (raise (make-error "foo" 42)))
#<error "foo 42"> is an instance of class <error>
slots:
message : "foo 42"
message-prefix: "foo"
message-args: (42)
#ありゃ、ほんとだ。message-prefixとmessage-argsって後付けだったからな
#