>>>>> "CY" == C Y writes:
CY> In the mactex file, there exists the following statement:
CY> (declare-top
CY> (special lop rop ccol $gcprint texport $labels $inchar
CY> vaxima-main-dir
CY> )
CY> (*expr tex-lbp tex-rbp))
CY> What does it mean, from a coding standpoint, to declare these things
CY> special or "*expr"? I never quite understood this - I was under the
CY> impression that this was something that appeared on a "per-file" basis,
CY> but since most everything was in the "MAXIMA" package these statements
CY> presumably have a global effect? Any insight appreciated.
If you look many files with declare-top at the top also have
declare-top at the bottom. The one at the top declares some variables
as special and then at the bottom makes some not special anymore.
But this isn't possible in Common Lisp. Once special, it's forever
special.
Also a peek at the declare-top macro seems to indicate that only the
special and unspecial declarations are used. And unspecial is only
applicable to gcl and acl (excl).
Ray