X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/lisp/blobdiff_plain/a035dd4a8175317f19a35cd04568d1655fb8d417..7f853a8ae70d1f8c922db2840194aa0afbbe4f79:/infix.lisp diff --git a/infix.lisp b/infix.lisp index ea78422..579bce4 100644 --- a/infix.lisp +++ b/infix.lisp @@ -11,12 +11,12 @@ ;;; it under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 2 of the License, or ;;; (at your option) any later version. -;;; +;;; ;;; This program is distributed in the hope that it will be useful, ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. -;;; +;;; ;;; You should have received a copy of the GNU General Public License ;;; along with this program; if not, write to the Free Software Foundation, ;;; Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -70,7 +70,7 @@ (defstruct (operator (:predicate operatorp) (name nil :type symbol) (lprec nil :type (or fixnum null)) (rprec nil :type (or fixnum null)) - (func (lambda () nil) :type (function () t))) + (func (lambda () nil) :type #-ecl (function () t) #+ecl function)) ;;;-------------------------------------------------------------------------- ;;; Global parser state. @@ -673,7 +673,7 @@ (defun parse-func-name () (cond ((delim '|(| nil) (prog1 (parse-infix) (delim '|)|))) (t (prog1 *token* (get-token))))) - + (defopfunc lambda operand (get-token) (pushval `(lambda ,(parse-lambda-list) ,@(strip-progn (parse-infix 0)))))