Greetings! I've resolved it now, but we should be aware of this going forward.
axiom currently relies on a broken GCL implementation of functionp, which incorrectly returns t for fboundp symbols. axiom uses this to decide whether to funcall, as in (if (functionp x) (funcall x ...)). With a correct functionp, as in GCL master, it should read (if (if (symbolp x) (fboundp x) (functionp x)) (funcall x ...)). I think you already have something like this in |functionp|. Anyway, when I release a fix to this eventually, axiom will need to be changed. Luckily, the axiom change can occur now with existing gcl as well. The forthcoming 2.6.11 will still have the broken functionp. (see book5) Take care, [email protected] writes: >> Hi Tim! Working on 2.6.11, and did something to prevent the >> hashing/memoization from taking place in pascal.input, e.g. pn(50) >> hangs. How can I see what functions are being generated and trace the >> compiler? )lisp (trace compile) does not work. > > The function you want is |genMapCode| in src/interp/i-map.lisp.pamphlet > This calls |reportFunctionCompilation| in src/interp/slam.lisp.pamphlet > > It appears to use the variable |$whereCacheList| > > Tim > > > > -- Camm Maguire [email protected] ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah _______________________________________________ Axiom-developer mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/axiom-developer
