I think you're basically right and what happens is this:
CL-USER> (defclass foo (excl::fundamental-character-stream) ((bar :initarg :external-format :initform (error "No external format.")))) #<STANDARD-CLASS FOO> CL-USER> (make-instance 'foo) #<FOO @ #x2122c9aa> CL-USER> (slot-value * 'bar) :DEFAULT
So, it looks like there's some :AROUND method within AllegroCL which modifies the initargs before the FOO instance is initialized. I couldn't find a place in their documentation where they explicitely talk about the :EXTERNAL-FORMAT initarg, and I'm hesitant to rename it in FLEXI-STREAMS because it is the right name, isn't it?
At least, before I do that, it'd be nice if you could ask Franz about their take.
Cheers, Edi.