aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-07-13 05:51:57 +0000
committerdos-reis <gdr@axiomatics.org>2010-07-13 05:51:57 +0000
commit82c5eafa04137f6c660d8b4d3f8512587d4fef9c (patch)
tree40354e8cd58a7d871d52c14c953cd24c35feb383 /src/algebra
parente5f701265114472fd307faff46539a5c619faf2a (diff)
downloadopen-axiom-82c5eafa04137f6c660d8b4d3f8512587d4fef9c.tar.gz
* interp/g-opt.boot: %sname is a side-effect free operator.
* interp/g-util.boot: Expand it. * algebra/syntax.spad.pamphlet (Identifer): Now satisfies CoercibleTo String.
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/syntax.spad.pamphlet6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/algebra/syntax.spad.pamphlet b/src/algebra/syntax.spad.pamphlet
index 0adfc2dc..a8d6c7a3 100644
--- a/src/algebra/syntax.spad.pamphlet
+++ b/src/algebra/syntax.spad.pamphlet
@@ -581,16 +581,18 @@ Literal(T: SetCategory): Public == Private where
++
)abbrev domain IDENT Identifier
Identifier(): Public == Private where
- Public == Join(SetCategory, CoercibleTo Symbol) with
+ Public == Join(SetCategory, CoercibleTo Symbol, CoercibleTo String) with
gensym: () -> %
++ \spad{gensym()} returns a new identifier, different from
++ any other identifier in the running system
Private == add
import %peq: (%,%) -> Boolean from Foreign Builtin
- import %gensym: () -> % from Foreign Builtin
+ import %gensym: () -> % from Foreign Builtin
+ import %sname: % -> String from Foreign Builtin
gensym() == %gensym()
x = y == %peq(x,y)
coerce(x: %): Symbol == x : Symbol
+ coerce(x: %): String == %sname x
coerce(x: %): OutputForm == x : OutputForm
@