Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/compiler/FLINT/trans/translate.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/FLINT/trans/translate.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 902, Wed Aug 15 21:17:05 2001 UTC revision 903, Mon Aug 20 19:34:06 2001 UTC
# Line 64  Line 64 
64  (** old-style fold for cases where it is partially applied *)  (** old-style fold for cases where it is partially applied *)
65  fun fold f l init = foldr f init l  fun fold f l init = foldr f init l
66    
 (*  
  * MAJOR CLEANUP REQUIRED ! The function mkv is currently directly taken  
  * from the LambdaVar module; I think it should be taken from the  
  * "compInfo". Similarly, should we replace all mkLvar in the backend  
  * with the mkv in "compInfo" ? (ZHONG)  
  *)  
 val mkv = LambdaVar.mkLvar  
 fun mkvN NONE = mkv()  
   | mkvN (SOME s) = LambdaVar.namedLvar s  
   
67  (** sorting the record fields for record types and record expressions *)  (** sorting the record fields for record types and record expressions *)
68  fun elemgtr ((LABEL{number=x,...},_),(LABEL{number=y,...},_)) = (x>y)  fun elemgtr ((LABEL{number=x,...},_),(LABEL{number=y,...},_)) = (x>y)
69  fun sorted x = ListMergeSort.sorted elemgtr x  fun sorted x = ListMergeSort.sorted elemgtr x
# Line 102  Line 92 
92           compInfo as {errorMatch,error,...}: Absyn.dec CompInfo.compInfo) =           compInfo as {errorMatch,error,...}: Absyn.dec CompInfo.compInfo) =
93  let  let
94    
95    (* We take mkLvar from compInfo.  This should answer Zhong's question... *)
96    (*
97    (*
98     * MAJOR CLEANUP REQUIRED ! The function mkv is currently directly taken
99     * from the LambdaVar module; I think it should be taken from the
100     * "compInfo". Similarly, should we replace all mkLvar in the backend
101     * with the mkv in "compInfo" ? (ZHONG)
102     *)
103    val mkv = LambdaVar.mkLvar
104    fun mkvN NONE = mkv()
105      | mkvN (SOME s) = LambdaVar.namedLvar s
106    *)
107    
108    val mkvN = #mkLvar compInfo
109    fun mkv () = mkvN NONE
110    
111  (** generate the set of ML-to-FLINT type translation functions *)  (** generate the set of ML-to-FLINT type translation functions *)
112  val {tpsKnd, tpsTyc, toTyc, toLty, strLty, fctLty, markLBOUND} =  val {tpsKnd, tpsTyc, toTyc, toLty, strLty, fctLty, markLBOUND} =
113      TT.genTT()      TT.genTT()

Legend:
Removed from v.902  
changed lines
  Added in v.903

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0