/[mojave]/metaprl/theories/mc/mp_mc_fir_base.ml
ViewVC logotype

Diff of /metaprl/theories/mc/mp_mc_fir_base.ml

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

revision 3589 by emre, Sat Apr 27 04:44:46 2002 UTC revision 3590 by emre, Sat Apr 27 19:52:38 2002 UTC
# Line 3  Line 3 
3   * @theory[Mp_mc_fir_base]   * @theory[Mp_mc_fir_base]
4   *   *
5   * The @tt{Mp_mc_fir_base} module defines terms to represent basic FIR   * The @tt{Mp_mc_fir_base} module defines terms to represent basic FIR
6   * terms and supporting Ocaml values.   * terms and supporting @OCaml values.
7   * @end[doc].   * @end[doc].
8   *   *
9   * ----------------------------------------------------------------   * ----------------------------------------------------------------
# Line 53  Line 53 
53   * Term declarations.   * Term declarations.
54   *************************************************************************)   *************************************************************************)
55    
56  (* Options, i.e. None | Some of 'a. *)  (*!
57     * @begin[doc]
58     * @terms
59     *
60     * @tt{noneOpt} and @tt{someOpt} represent @OCaml option
61     * values, in other words, values of the type @tt{'a option}.
62     * @tt{Some v} is represented as @tt{someOpt@{v@}}.
63     * @end[doc]
64     *)
65    
66  declare noneOpt  declare noneOpt
67  declare someOpt{ 'a }  declare someOpt{ 'a }
68    
69  (* Boolean constants. *)  (*!
70     * @begin[doc]
71     *
72     * @tt{val_true} and @tt{val_false} represent the @OCaml
73     * boolean constants @tt{true} and @tt{false}.
74     * @end[doc]
75     *)
76  declare val_true  declare val_true
77  declare val_false  declare val_false
78    
79  (* Floating-point and integer precisions. *)  (*!
80     * @begin[doc]
81     *
82     * The FIR has support for integer and floating point types of
83     * various precisions (see @hrefterm[tyRawInt] and @hrefterm[tyFloat]
84     * in @hreftheory[Mp_mc_fir_ty]).  The following seven terms specifiy
85     * 8-bit, 16-bit, 32-bit, and 64-bit integer precision as well as
86     * single precision (4 byte), double precision (8 byte), and
87     * long double (10 byte) precision floats.  By convention,
88     * subterms called @tt{int_precision} and @tt{float_precision}
89     * refer to one of these terms.
90     * @end[doc]
91     *)
92    
93  declare int8  declare int8
94  declare int16  declare int16
# Line 73  Line 98 
98  declare floatDouble  declare floatDouble
99  declare floatLongDouble  declare floatLongDouble
100    
101  (* Signed / unsigned integer qualifiers. *)  (*!
102     * @begin[doc]
103     *
104     * @hrefterm[tyRawInt] also requires information about whether
105     * the integer type is signed or unsigned, which is what the following
106     * two terms specify.  By convention, subterms called @tt{int_signed}
107     * refer to one of these terms.
108     * @end[doc]
109     *)
110    
111  declare signedInt  declare signedInt
112  declare unsignedInt  declare unsignedInt
113    
114  (* int and rawint sets. *)  (*!
115     * @begin[doc]
116     *
117     * Integer and raw-integer sets.
118     * @end[doc]
119     *)
120    
121  declare interval{ 'left; 'right } (* closed bounds, i.e. [left, right] *)  declare interval{ 'left; 'right } (* closed bounds, i.e. [left, right] *)
122  declare int_set{ 'interval_list }  declare int_set{ 'interval_list }
123  declare rawint_set{ 'int_precision; 'int_signed; 'interval_list }  declare rawint_set{ 'int_precision; 'int_signed; 'interval_list }
124    
125  (* Tuple classes. *)  (*!
126     * @begin[doc]
127     *
128     * Tuple classes.
129     * @end[doc]
130     *)
131    
132  declare normalTuple  declare normalTuple
133  declare rawTuple  declare rawTuple
134    
135  (* Union tags. *)  
136    (*!
137     * @begin[doc]
138     *
139     * Union types.
140     * @end[doc]
141     *)
142    
143  declare normalUnion  declare normalUnion
144  declare exnUnion  declare exnUnion
145    
146  (*  (*!
147     * @begin[doc]
148     *
149   * Subscript operators.   * Subscript operators.
150     * @end[doc]
151   *)   *)
152    
153  (* Kind of block. *)  (* Kind of block. *)
# Line 128  Line 180 
180    
181  declare subop{ 'sub_block; 'sub_value; 'sub_index; 'sub_script }  declare subop{ 'sub_block; 'sub_value; 'sub_index; 'sub_script }
182    
183    (*! @docoff *)
184    
185  (*************************************************************************  (*************************************************************************
186   * Term declarations.   * Term declarations.
187   *************************************************************************)   *************************************************************************)

Legend:
Removed from v.3589  
changed lines
  Added in v.3590

  ViewVC Help
Powered by ViewVC 1.1.26