diff options
-rwxr-xr-x | configure | 18 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | configure.ac.pamphlet | 2 | ||||
-rw-r--r-- | src/ChangeLog | 6 | ||||
-rw-r--r-- | src/boot/tokens.boot | 3 | ||||
-rw-r--r-- | src/interp/compiler.boot | 3 | ||||
-rw-r--r-- | src/interp/define.boot | 8 |
7 files changed, 28 insertions, 14 deletions
@@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for OpenAxiom 1.3.0-2009-06-07. +# Generated by GNU Autoconf 2.63 for OpenAxiom 1.3.0-2009-06-09. # # Report bugs to <open-axiom-bugs@lists.sf.net>. # @@ -745,8 +745,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='OpenAxiom' PACKAGE_TARNAME='openaxiom' -PACKAGE_VERSION='1.3.0-2009-06-07' -PACKAGE_STRING='OpenAxiom 1.3.0-2009-06-07' +PACKAGE_VERSION='1.3.0-2009-06-09' +PACKAGE_STRING='OpenAxiom 1.3.0-2009-06-09' PACKAGE_BUGREPORT='open-axiom-bugs@lists.sf.net' ac_unique_file="src/Makefile.pamphlet" @@ -1500,7 +1500,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OpenAxiom 1.3.0-2009-06-07 to adapt to many kinds of systems. +\`configure' configures OpenAxiom 1.3.0-2009-06-09 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1570,7 +1570,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2009-06-07:";; + short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2009-06-09:";; esac cat <<\_ACEOF @@ -1672,7 +1672,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -OpenAxiom configure 1.3.0-2009-06-07 +OpenAxiom configure 1.3.0-2009-06-09 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1686,7 +1686,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OpenAxiom $as_me 1.3.0-2009-06-07, which was +It was created by OpenAxiom $as_me 1.3.0-2009-06-09, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -17686,7 +17686,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by OpenAxiom $as_me 1.3.0-2009-06-07, which was +This file was extended by OpenAxiom $as_me 1.3.0-2009-06-09, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17749,7 +17749,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -OpenAxiom config.status 1.3.0-2009-06-07 +OpenAxiom config.status 1.3.0-2009-06-09 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.ac b/configure.ac index 3aea15a2..2cf9f8b0 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ sinclude(config/open-axiom.m4) sinclude(config/aclocal.m4) -AC_INIT([OpenAxiom], [1.3.0-2009-06-07], +AC_INIT([OpenAxiom], [1.3.0-2009-06-09], [open-axiom-bugs@lists.sf.net]) AC_CONFIG_AUX_DIR(config) diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet index 420201d2..91cf175f 100644 --- a/configure.ac.pamphlet +++ b/configure.ac.pamphlet @@ -1131,7 +1131,7 @@ information: <<Autoconf init>>= sinclude(config/open-axiom.m4) sinclude(config/aclocal.m4) -AC_INIT([OpenAxiom], [1.3.0-2009-06-07], +AC_INIT([OpenAxiom], [1.3.0-2009-06-09], [open-axiom-bugs@lists.sf.net]) @ diff --git a/src/ChangeLog b/src/ChangeLog index 70174393..0d54fe8f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2009-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compLogicalNot): Tidy. + * interp/define.boot (doIt): Tidy conditional case. + * boot/tokens.boot: 'fourth' is a now a builtin function. + 2009-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> * algebra/kl.spad.pamphlet (Kernel): Tidy. diff --git a/src/boot/tokens.boot b/src/boot/tokens.boot index 6a98317a..a51fe58b 100644 --- a/src/boot/tokens.boot +++ b/src/boot/tokens.boot @@ -1,6 +1,6 @@ -- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007-2008, Gabriel Dos Reis. +-- Copyright (C) 2007-2009, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -242,6 +242,7 @@ for i in [ _ ["exit", "EXIT"] , _ ["false", 'NIL] , _ ["first", "CAR"] , _ + ["fourth", "CADDDR"] , _ ["function","FUNCTION"] , _ ["genvar", "GENVAR"] , _ ["IN", "MEMBER"] , _ diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 817517ef..357e8564 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -1438,7 +1438,8 @@ compLogicalNot(x,m,e) == $normalizeTree and resolve(m,$Boolean) = $Boolean => $Boolean $EmptyMode yT := comp(y,yTarget,e) or return nil - yTarget = $Boolean => (rplac(first yT, ["NOT",yT.expr]); yT) + yT.mode = $Boolean and yTarget = $Boolean => + [["NOT",yT.expr],yT.mode,yT.env] compResolveCall("not",[yT],m,yT.env) diff --git a/src/interp/define.boot b/src/interp/define.boot index 8cbc7ce9..543450d9 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -1482,7 +1482,13 @@ doIt(item,$predl) == item is ["%SignatureImport",:.] => [.,.,$e] := compSignatureImport(item,$EmptyMode,$e) mutateToNothing item - item is ["IF",:.] => doItIf(item,$predl,$e) + item is ["IF",p,x,y] => + p is ["not",p'] => + rplac(second item,p') + rplac(third item,y) + rplac(fourth item,x) + doIt(item,$predl) + doItIf(item,$predl,$e) item is ["where",b,:l] => compOrCroak(item,$EmptyMode,$e) item is ["MDEF",:.] => [.,.,$e]:= compOrCroak(item,$EmptyMode,$e) item is ['DEF,[op,:.],:.] => |