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/branches/SMLNJ/src/compiler/FLINT/plambda/chkplexp.sml
ViewVC logotype

Diff of /sml/branches/SMLNJ/src/compiler/FLINT/plambda/chkplexp.sml

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

revision 68, Fri Apr 3 00:06:42 1998 UTC revision 69, Fri Apr 3 00:06:55 1998 UTC
# Line 94  Line 94 
94    (LT.lt_select(lt, i)) handle _ => raise LtySelect    (LT.lt_select(lt, i)) handle _ => raise LtySelect
95    
96  (** build a function or functor type from a pair of arbitrary ltys *)  (** build a function or functor type from a pair of arbitrary ltys *)
97    fun ltFun (x, y) =
98  val ltFun = LT.ltc_fun    if (LT.ltp_tyc x) andalso (LT.ltp_tyc y) then LT.ltc_parrow(x, y)
99      else LT.ltc_pfct(x, y)
100    
101  fun ltTup ts = LT.ltc_tyc(LT.tcc_tuple (map LT.ltd_tyc ts))  fun ltTup ts = LT.ltc_tyc(LT.tcc_tuple (map LT.ltd_tyc ts))
102    
103  (** lazily finding out the arg and res of an lty *)  (** lazily finding out the arg and res of an lty *)
104  exception LtyArrow  exception LtyArrow
105  fun ltArrow lt = (LT.lt_arrow lt) handle _ => raise LtyArrow  fun ltArrow lt =
106      (if LT.ltp_tyc lt then LT.ltd_parrow lt
107       else LT.ltd_pfct lt) handle _ => raise LtyArrow
108    
109    val lt_inst_chk = LT.lt_inst_chk_gen()
110    
111  fun ltAppChk (lt, ts, kenv) =  fun ltAppChk (lt, ts, kenv) =
112    (case LT.lt_inst_chk(lt, ts, kenv)    (case lt_inst_chk(lt, ts, kenv)
113      of [b] => b      of [b] => b
114       | _ => bug "unexpected ase in ltAppChk")       | _ => bug "unexpected ase in ltAppChk")
115    

Legend:
Removed from v.68  
changed lines
  Added in v.69

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