Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/vis15/src/compiler/translate/translate-ty.sml
ViewVC logotype

Annotation of /branches/vis15/src/compiler/translate/translate-ty.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4317 - (view) (download)

1 : jhr 3471 (* translate-ty.sml
2 :     *
3 :     * This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)
4 :     *
5 :     * COPYRIGHT (c) 2015 The University of Chicago
6 :     * All rights reserved.
7 :     *)
8 :    
9 :     structure TranslateTy : sig
10 :    
11 : jhr 3476 val tr : SimpleTypes.ty -> HighTypes.ty
12 : jhr 3471
13 :     end = struct
14 :    
15 :     structure Ty = SimpleTypes
16 : jhr 3476 structure DstTy = HighTypes
17 : jhr 3471
18 :     fun tr ty = (case ty
19 :     of Ty.T_Bool => DstTy.BoolTy
20 :     | Ty.T_Int => DstTy.IntTy
21 :     | Ty.T_String => DstTy.StringTy
22 :     | Ty.T_Tensor dd => let
23 :     fun cvtDim 1 = NONE
24 :     | cvtDim d = SOME d
25 :     in
26 :     DstTy.TensorTy(List.mapPartial cvtDim dd)
27 :     end
28 : jhr 4314 | Ty.T_Sequence(ty, optDim) => DstTy.SeqTy(tr ty, optDim)
29 : jhr 4317 | Ty.T_Tuple tys => DstTy.TupleTy(List.map tr tys)
30 :     | Ty.T_Strand n => DstTy.StrandTy n
31 : jhr 4193 | Ty.T_Image info => DstTy.ImageTy info
32 : jhr 3471 | Ty.T_Field fld => DstTy.FieldTy
33 : jhr 4207 | Ty.T_Kernel => DstTy.KernelTy
34 : jhr 3471 (* end case *))
35 :    
36 :     end

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