[Maxima-commits] Maxima, A Computer Algebra System branch master updated. branch-5_27-base-72-g5287650
Subject: [Maxima-commits] Maxima, A Computer Algebra System branch master updated. branch-5_27-base-72-g5287650
From: Raymond Toy
Date: Wed, 23 May 2012 09:31:13 -0700
On Wed, May 23, 2012 at 8:31 AM, Robert Dodier
> commit 0917e90a6f760a7bb8b93002e67728b4a572b502
> Author: robert_dodier <robert_dodier at users.sourceforge.net>
> Date: Tue May 22 08:02:08 2012 -0600
>
> Clean up duplicate special variables.
>
> * src/macsys.lisp: replace DEFVAR by (DECLARE-TOP (SPECIAL ...))
> * src/nparse.lisp: replace DEFVAR by (DECLARE (SPECIAL ...))
> * src/plot.lisp: replace DEFVAR by (DECLARE-TOP (SPECIAL ...))
> * src/rat3e.lisp: replace DEFVAR by (DECLARE (SPECIAL ...))
> * src/simp.lisp: cut out DEFVAR (variable not used in src/simp.lisp)
> * src/simp.lisp: replace DEFMVAR by (DECLARE-TOP (SPECIAL ...))
> * src/spgcd.lisp: cut out DEFVAR (variable already declared special)
> * src/trigi.lisp: replace DEFVAR by (DECLARE-TOP (SPECIAL ...))
>
Do we really want to replace defvars with declare-top special? My actual
(unstated) goal was to get rid of declare-top as much as possible and use
defvar/defmvar isntead and try to use *earmuffs* for all speical variables
when possible.
declare-top has certain semantics, including being able to declare
something as not special. This currently works for most lisps we support,
but it looks like ccl and abcl have no support for this, so this could be
great source of bugs when running maxima with ccl. (There are quite a few
places with declare-top unspecial.)
Ray