Fix bug #2116: lambda form for taylor_simplifier
commitea6b2794ff4785154b0bffee30444c3144f6b0ac
authorKris Katterjohn <katterjohn@gmail.com>
Mon, 21 May 2018 22:55:07 +0000 (21 17:55 -0500)
committerKris Katterjohn <katterjohn@gmail.com>
Mon, 21 May 2018 22:55:07 +0000 (21 17:55 -0500)
treeb50ca8321beec9831300957922087f06dbfdedb2
parent9edba669c7374a81b7706060374384edac79e9f4
Fix bug #2116: lambda form for taylor_simplifier

The problem was that the value of taylor_simplifier had to be a
symbol because it was passed to FBOUNDP in TAYLOR1.  This was noted
in a comment in src/hayat.lisp but not in the documentation.

I think the idea is that (for efficiency) if the value of
taylor_simplifier is an fbound symbol then it should just be
funcalled directly (in various places in src/hayat.lisp) rather than
funcalling TAYLOR_SIMPLIFIER_CALLER, which calls MCALL, which calls
MAPPLY1, and so on.

Now an explicit check is done for a symbol before calling FBOUNDP on
the value of taylor_simplifier.

The test suite runs fine, with new tests.
src/hayat.lisp
tests/rtest_taylor.mac