diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 10 | ||||
| -rw-r--r-- | src/algebra/domain.spad.pamphlet | 7 | ||||
| -rw-r--r-- | src/algebra/syntax.spad.pamphlet | 12 | ||||
| -rw-r--r-- | src/testsuite/interpreter/aw-428.input | 5 | 
4 files changed, 27 insertions, 7 deletions
| diff --git a/src/ChangeLog b/src/ChangeLog index 7c707915..c2e51102 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,13 @@ +2008-07-03  Bill Page  <bill.page@newsynthesis.org> +	    Gabriel Dos Reis  <gdr@cs.tamu.edu> + +	Fix AW/428 +	* algebra/syntax.spad.pamphlet (ConstructorCall): Now a member of +	SetCategory.  +	(Domain): Likewise. +	* share/algebra: Update databases. +	* testsuite/interpreter/aw-428.input: New. +  2008-07-02  Gabriel Dos Reis  <gdr@cs.tamu.edu>  	* interp/compiler.boot (compExpression): Tidy. diff --git a/src/algebra/domain.spad.pamphlet b/src/algebra/domain.spad.pamphlet index 571c14a8..0b4d5847 100644 --- a/src/algebra/domain.spad.pamphlet +++ b/src/algebra/domain.spad.pamphlet @@ -38,7 +38,7 @@ Category(): Public == Private where  ++ Related Constructors: Type, Syntax, OutputForm  ++ Also See: Type, ConstructorCall  Domain(): Public == Private where -  Public ==> CoercibleTo(OutputForm) with +  Public == SetCategory with      reify: % -> ConstructorCall        ++ reify(d) returns the abstract syntax for the domain `x'. @@ -51,7 +51,7 @@ Domain(): Public == Private where        ++ showSummary(d) prints out implementation detail information        ++ of domain `d'. -  Private ==> add +  Private == add      coerce x ==        outputDomainConstructor(x)$Lisp @@ -61,6 +61,9 @@ Domain(): Public == Private where      reflect cc ==        evalDomain(cc)$Lisp @ % +    x = y == +      reify x = reify y +      showSummary x ==        showSummary(x)$Lisp diff --git a/src/algebra/syntax.spad.pamphlet b/src/algebra/syntax.spad.pamphlet index 365cac19..40b2f066 100644 --- a/src/algebra/syntax.spad.pamphlet +++ b/src/algebra/syntax.spad.pamphlet @@ -217,21 +217,20 @@ Syntax(): Public == Private where  )abbrev domain CTORCALL ConstructorCall  ++ Author: Gabriel Dos Reis  ++ Date Created: January 19, 2008 -++ Date Last Updated: January 19, 2008 +++ Date Last Updated: July 03, 2008  ++ Description: This domains represents a syntax object that  ++ designates a category, domain, or a package.  ++ See Also: Syntax, Domain  ConstructorCall(): Public == Private where -  Public ==> CoercibleTo OutputForm with +  Public == SetCategory with      constructorName: % -> Symbol        ++ constructorName c returns the name of the constructor      arguments: % -> List Syntax        ++ arguments returns the list of syntax objects for the        ++ arguments used to invoke the constructor. -  Private ==> add -    rep(x: %): List Syntax == -      x pretend List(Syntax) +  Private == add +    Rep == List Syntax      constructorName x ==        (first rep x)::Symbol @@ -239,6 +238,9 @@ ConstructorCall(): Public == Private where      arguments x ==        rest rep x +    x = y == +      rep x = rep y +      coerce x ==        outputDomainConstructor(x)$Lisp  @ diff --git a/src/testsuite/interpreter/aw-428.input b/src/testsuite/interpreter/aw-428.input new file mode 100644 index 00000000..9d8f23fc --- /dev/null +++ b/src/testsuite/interpreter/aw-428.input @@ -0,0 +1,5 @@ +V1 := DirectProduct(3+4,Integer) +V2 := DirectProduct(7,Integer) +V1 = V2 +%::Boolean +(Integer=Float)@Boolean | 
