Dear Gaby,

I saw you implemented map!$Stack as follows:

    map!(f: S -> S, s: %) ==               -- from HOAGG
      map!(f, deref s)$List(S)
      s

I have two questions:  

1) why didn't you say

    map!(f: S -> S, s: %) == ref map!(f, deref s)$List(S)

2) isn't 

    map!(f: S -> S, s: %) ==               -- from HOAGG
      map!(f, deref s)$List(S)
      s

   assuming that map! stores its result in s?  I'm not sure whether this is ok:

   pro: the documentation says: 

        map!(f,u) destructively replaces each element x of u by \axiom{f(x)}.

        which could be interpreted as "map! stores its result in s"

   con: it might well be possible to have an implementation where this is
        undesirable, i.e, although one which is destructive to s, but where s
        does not contain the result of map! afterwards.  If I recall correctly,
        sort! works that way:

(14) -> l := [1,16,81,1]

   (14)  [1,16,81,1]
                                                   Type: List PositiveInteger
(15) -> sort! l

   (15)  [1,1,16,81]
                                                   Type: List PositiveInteger
(16) -> l

   (16)  [1,16,81]
                                                   Type: List PositiveInteger


comments?

Martin


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to