CVS: sml-dist notes, 1.1.2.7, 1.1.2.8 primop-list, 1.1.2.8, 1.1.2.9

David MacQueen <[email protected]> Thu, 29 Jun 2006 13:09:25 -0700
Newsgroups gmane.comp.lang.sml.smlnj.commits
Message-ID <[email protected]>
Update of /cvsroot/smlnj/sml-dist
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv20843

Modified Files:
      Tag: primop-branch-2
	notes primop-list 
Log Message:
minor change to primop-list to note anomaly

Index: notes
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/Attic/notes,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -C2 -d -r1.1.2.7 -r1.1.2.8
*** notes	27 Jun 2006 22:06:28 -0000	1.1.2.7
--- notes	29 Jun 2006 20:09:22 -0000	1.1.2.8
***************
*** 409,410 ****
--- 409,440 ----
  the corresponding generalized polymorphic variable.  [The code for mkPE
  in translate.sml seems to imply this is not the case.]
+ 
+ 
+ More on Single Generalization Conjecture
+ 
+ Here is an expression containing two mutually recursive functions that
+ have the same return type, which will be polymorphic.  It seems likely
+ that the return type will be represented by the same type metavariable
+ in both parts of the mutually recursive definition, and that this
+ metavariable is generalized twice, once for the type of f and once for
+ g.  This needs to be verified by a careful look at the type checking
+ process though.
+ 
+ let fun f () = g ()
+     and g () = f ()
+ in ()
+ end;
+ 
+ Another variant would that would show the types of f and g would be:
+ 
+ fun h () =
+ let fun f () = g ()
+     and g () = f ()
+ in (f,g)
+ end;
+ 
+ val h = fn : unit -> (unit -> 'a) * (unit -> 'b)
+ 
+ Here it is clear that f and g have independent polymorphic types,
+ indicating two independent generalizations.
+ 

Index: primop-list
===================================================================
RCS file: /cvsroot/smlnj/sml-dist/Attic/primop-list,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -C2 -d -r1.1.2.8 -r1.1.2.9
*** primop-list	28 Jun 2006 20:25:15 -0000	1.1.2.8
--- primop-list	29 Jun 2006 20:09:22 -0000	1.1.2.9
***************
*** 751,758 ****
  251  w31rshift_8,  word31 P.RSHIFT,		word8 * word -> word8
  	InlineT.Word8.rshift :			word8 * word -> word8
  
  252  w31rshiftl_8, word31 P.RSHIFTL,		word8 * word -> word8
  	(** This may be a bug... InlineT.Word8.rshiftl is incorrectly
! 	    aliased to InLine.w31right_8 *)
  
  253  w31lshift_8,  word31 P.LSHIFT,		word8 * word -> word8
--- 751,759 ----
  251  w31rshift_8,  word31 P.RSHIFT,		word8 * word -> word8
  	InlineT.Word8.rshift :			word8 * word -> word8
+ 	InlineT.Word8.rshiftl :			word8 * word -> word8  (* Error?! *)
  
  252  w31rshiftl_8, word31 P.RSHIFTL,		word8 * word -> word8
  	(** This may be a bug... InlineT.Word8.rshiftl is incorrectly
! 	    aliased to InLine.w31rshift_8 *)
  
  253  w31lshift_8,  word31 P.LSHIFT,		word8 * word -> word8


Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642