Given that a is being declared special the behaviour of CMUCL below
seems right to me, but I'm no guru. Do sbcl and clisp automatically
declare a special?
Stephen Horner wrote:
> I apologize in advance for not knowing exactly what the issue is since
> I've been writing lisp code for a month now. Anyways David S.
> Touretzky's Common Lisp: A gentle Introduction to Symbolic Computation
> is the book i'm working with (which is very good). I've included what
> I believe to be the pertenent facts about my setup in order to help
> anyone diagnose the issue. First up is the lisp session where the boog
> appeared.
>
>
> CMU Common Lisp CVS 19c 19c-release + minimal debian patches (19C),
> running on navi
> With core: /usr/lib/cmucl/lisp.core
> Dumped on: Tue, 2005-12-13 19:26:30-08:00 on navi
> For support see http://www.cons.org/cmucl/support.html
> Send bug reports to http://bugs.gentoo.org
> Type (help) for help or (quit) to exit.
>
> Loaded subsystems:
> Python 1.1, target Intel x86
> CLOS based on Gerd's PCL 2004/04/14 03:32:47
> * (setf a 100)
> Warning: Declaring A special.
>
> 100
> * (defun g (b) (list a b))
>
> G
> * (defun f (a) (list a (g (+ a 1))))
>
> F
> * (f 3)
>
> (3 (3 4))
> *
> --------------------------------------------------------------------------------
>
> NOTE:
> (3 (100 4)) is what what I was "taught" _should_ return. That is according to
> David S. Touretzky's Common Lisp: A gentle Introduction to Symbolic
> Computation.
> Also (3 (100 4)) is returned in clisp-2.34-r1, and sbcl-0.9.7
>
> --------------------------------------------------------------------------------
> System Information, ala Gentoo emerge info...
>
> [EMAIL PROTECTED]:15 AM Tue Dec 27]-[lisp]
> # emerge info
>
> Portage 2.0.51.22-r3 (!/usr/portage/profiles/default-linux/x86/2005.1,
> gcc-3.4.4, glibc-2.3.6-r0, 2.6.14-nekrohitler5 i686)
> =================================================================
> System uname: 2.6.14-nekrohitler5 i686 Pentium III (Coppermine)
> Gentoo Base System version 1.6.13
> ccache version 2.3 [enabled]
> dev-lang/python: 2.3.5, 2.4.2
> sys-apps/sandbox: 1.2.12
> sys-devel/autoconf: 2.13, 2.59-r6
> sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
> sys-devel/binutils: 2.15.92.0.2-r10, 2.16.1
> sys-devel/libtool: 1.5.20
> virtual/os-headers: 2.6.11-r2
> ACCEPT_KEYWORDS="x86"
> AUTOCLEAN="yes"
> CBUILD="i686-pc-linux-gnu"
> CFLAGS="-O2 -march=pentium3 -mtune=pentium3 -fomit-frame-pointer -pipe"
> CHOST="i686-pc-linux-gnu"
> CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
> /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
> /usr/share/cursors/xorg-x11/default /usr/share/texmf/dvipdfm/config/
> /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
> /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/
> /var/qmail/control"
> CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
> CXXFLAGS="-O2 -march=pentium3 -mtune=pentium3 -fomit-frame-pointer
> -pipe -fvisibility-inlines-hidden"
> DISTDIR="/usr/distfiles"
> FEATURES="autoconfig buildpkg candy ccache distlocks fixpackages
> notitles sandbox sfperms strict"
> GENTOO_MIRRORS="http://gentoo.osuosl.org/
> ftp://cs.ubishops.ca/pub/gentoo
> ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo
> ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/
> ftp://gentoo.mirrored.ca/"
> LANG="en_US.UTF-8"
> LC_ALL="en_US.UTF-8"
> LDFLAGS="-Wl,-O1 -Wl,--sort-common -s"
> PKGDIR="/usr/portage/packages"
> PORTAGE_TMPDIR="/usr/build/tmp"
> PORTDIR="/other/usr/portage"
> PORTDIR_OVERLAY="/usr/local/overlays/bmg-main
> /usr/local/overlays/voidengineer"
> SYNC="rsync://rsync.gentoo.org/gentoo-portage"
> USE="x86 X aalib alsa apm audiofile avi berkdb bitmap-fonts bzip2
> cairo cdb cdr crypt cscope curl dbus directfb dts emboss encode
> examples exif expat fam fbcon flac foomaticdb fortran gd gdbm gif
> gimpprint glut gmp gnome gpm gstreamer gtk gtk2 idn imagemagick imlib
> imlib2 ipv6 jack java jpeg lcms libcaca libg++ libwww mad maildir
> matroska mikmod mime mmx mng motif mozilla mozsvg mp3 mpeg mplayer
> ncurses nls nptl nptlonly ogg oggvorbis openal opengl pam pcre pdf
> pdflib perl png python quicktime readline ruby sdl slang smime spell
> sqlite sse ssl svga tcpd tetex theora tiff truetype truetype-fonts
> type1-fonts udev unicode userlocales vorbis win32codecs wmf xine xml
> xml2 xmms xv xvid zlib userland_GNU kernel_linux elibc_glibc"
> Unset: ASFLAGS, CTARGET, LINGUAS, MAKEOPTS
>
> Thanks
>
> Stephen Horner
>
>