itz> Hi, does PolyML support the syntax itz> itz> <sig> where type t = foo and t' = bar
Stephen> This is not valid signature expression syntax, however the following Stephen> is.
Stephen> <sig> where type t = foo and type t' = bar Stephen> ^^^^
Stephen> You also have to be careful, because the following is valid (although Stephen> it is only accepted by MLton and Poly/ML -- the ML Kit, Moscow ML, and Stephen> SML/NJ reject it).
Stephen> signature S = Stephen> sig Stephen> type t Stephen> end where type t = int Stephen> and S' = REAL
Stephen> The indentation is intended to make clear that "and S' = REAL" is part Stephen> of the signature binding, not the signature expression, using the Stephen> productions
Stephen> <sigdec> ::= signature <sigbind> Stephen> <sigbind> ::= <sigid> = <sigexp> [and <sigbind>]
OK, but what is the standard (ML97) syntax? I got the syntax above from Larry Paulson's book - I'd assume that it follows the standard (although I wouldn't be _that_ much surprised if it unwittingly endorsed some SMLNJisms).