1 |
22fe1c93
|
ploc
|
(* ----------------------------------------------------------------------------
|
2 |
|
|
* SchedMCore - A MultiCore Scheduling Framework
|
3 |
|
|
* Copyright (C) 2009-2011, ONERA, Toulouse, FRANCE - LIFL, Lille, FRANCE
|
4 |
|
|
*
|
5 |
|
|
* This file is part of Prelude
|
6 |
|
|
*
|
7 |
|
|
* Prelude is free software; you can redistribute it and/or
|
8 |
|
|
* modify it under the terms of the GNU Lesser General Public License
|
9 |
|
|
* as published by the Free Software Foundation ; either version 2 of
|
10 |
|
|
* the License, or (at your option) any later version.
|
11 |
|
|
*
|
12 |
|
|
* Prelude is distributed in the hope that it will be useful, but
|
13 |
|
|
* WITHOUT ANY WARRANTY ; without even the implied warranty of
|
14 |
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
15 |
|
|
* Lesser General Public License for more details.
|
16 |
|
|
*
|
17 |
|
|
* You should have received a copy of the GNU Lesser General Public
|
18 |
|
|
* License along with this program ; if not, write to the Free Software
|
19 |
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
20 |
|
|
* USA
|
21 |
|
|
*---------------------------------------------------------------------------- *)
|
22 |
|
|
|
23 |
|
|
(** Base types and predefined operator types. *)
|
24 |
|
|
open Delay
|
25 |
|
|
|
26 |
|
|
let delay_zero () = new_univar ()
|
27 |
|
|
|
28 |
|
|
let delay_un =
|
29 |
|
|
new_delay Dundef
|
30 |
|
|
|
31 |
|
|
let delay_unary_poly_op =
|
32 |
|
|
let univ = new_univar () in
|
33 |
|
|
new_delay (Darrow (univ, univ))
|
34 |
|
|
|
35 |
|
|
let delay_binary_poly_op =
|
36 |
|
|
let univ = new_univar () in
|
37 |
|
|
new_delay (Darrow (new_delay (Dtuple [univ;univ]), univ))
|
38 |
|
|
|
39 |
|
|
let delay_ternary_poly_op =
|
40 |
|
|
let univ = new_univar () in
|
41 |
|
|
new_delay (Darrow (new_delay (Dtuple [univ;univ;univ]), univ))
|
42 |
|
|
|
43 |
|
|
|
44 |
|
|
|
45 |
|
|
(* Local Variables: *)
|
46 |
|
|
(* compile-command:"make -C .." *)
|
47 |
|
|
(* End: *)
|