minor renamings
This commit is contained in:
parent
7a5130f51f
commit
1029f42aac
@ -214,16 +214,16 @@ and translate_expression ?(first=false) (expr:expression) (env:environment) : (m
|
|||||||
error title content in
|
error title content in
|
||||||
trace error @@
|
trace error @@
|
||||||
return code
|
return code
|
||||||
| E_empty_map sd ->
|
| E_make_empty_map sd ->
|
||||||
let%bind (src, dst) = bind_map_pair Compiler_type.type_ sd in
|
let%bind (src, dst) = bind_map_pair Compiler_type.type_ sd in
|
||||||
return @@ i_empty_map src dst
|
return @@ i_empty_map src dst
|
||||||
| E_empty_list t ->
|
| E_make_empty_list t ->
|
||||||
let%bind t' = Compiler_type.type_ t in
|
let%bind t' = Compiler_type.type_ t in
|
||||||
return @@ i_nil t'
|
return @@ i_nil t'
|
||||||
| E_make_none o ->
|
| E_make_none o ->
|
||||||
let%bind o' = Compiler_type.type_ o in
|
let%bind o' = Compiler_type.type_ o in
|
||||||
return @@ i_none o'
|
return @@ i_none o'
|
||||||
| E_Cond (c, a, b) -> (
|
| E_if_bool (c, a, b) -> (
|
||||||
let%bind (c' , env') = translate_expression c env in
|
let%bind (c' , env') = translate_expression c env in
|
||||||
let%bind (a' , _) = translate_expression a env' in
|
let%bind (a' , _) = translate_expression a env' in
|
||||||
let%bind (b' , _) = translate_expression b env' in
|
let%bind (b' , _) = translate_expression b env' in
|
||||||
|
@ -66,10 +66,10 @@ and expression' ppf (e:expression') = match e with
|
|||||||
| E_application(a, b) -> fprintf ppf "(%a)@(%a)" expression a expression b
|
| E_application(a, b) -> fprintf ppf "(%a)@(%a)" expression a expression b
|
||||||
| E_constant(p, lst) -> fprintf ppf "%s %a" p (pp_print_list ~pp_sep:space_sep expression) lst
|
| E_constant(p, lst) -> fprintf ppf "%s %a" p (pp_print_list ~pp_sep:space_sep expression) lst
|
||||||
| E_literal v -> fprintf ppf "%a" value v
|
| E_literal v -> fprintf ppf "%a" value v
|
||||||
| E_empty_map _ -> fprintf ppf "map[]"
|
| E_make_empty_map _ -> fprintf ppf "map[]"
|
||||||
| E_empty_list _ -> fprintf ppf "list[]"
|
| E_make_empty_list _ -> fprintf ppf "list[]"
|
||||||
| E_make_none _ -> fprintf ppf "none"
|
| E_make_none _ -> fprintf ppf "none"
|
||||||
| E_Cond (c, a, b) -> fprintf ppf "%a ? %a : %a" expression c expression a expression b
|
| E_if_bool (c, a, b) -> fprintf ppf "%a ? %a : %a" expression c expression a expression b
|
||||||
| E_if_none (c, n, ((name, _) , s)) -> fprintf ppf "%a ?? %a : %s -> %a" expression c expression n name expression s
|
| E_if_none (c, n, ((name, _) , s)) -> fprintf ppf "%a ?? %a : %s -> %a" expression c expression n name expression s
|
||||||
| E_if_left (c, ((name_l, _) , l), ((name_r, _) , r)) ->
|
| E_if_left (c, ((name_l, _) , l), ((name_r, _) , r)) ->
|
||||||
fprintf ppf "%a ?? %s -> %a : %s -> %a" expression c name_l expression l name_r expression r
|
fprintf ppf "%a ?? %s -> %a : %s -> %a" expression c name_l expression l name_r expression r
|
||||||
|
@ -57,10 +57,10 @@ and expression' =
|
|||||||
| E_constant of string * expression list
|
| E_constant of string * expression list
|
||||||
| E_application of expression * expression
|
| E_application of expression * expression
|
||||||
| E_variable of var_name
|
| E_variable of var_name
|
||||||
| E_empty_map of (type_value * type_value)
|
| E_make_empty_map of (type_value * type_value)
|
||||||
| E_empty_list of type_value
|
| E_make_empty_list of type_value
|
||||||
| E_make_none of type_value
|
| E_make_none of type_value
|
||||||
| E_Cond of expression * expression * expression
|
| E_if_bool of expression * expression * expression
|
||||||
| E_if_none of expression * expression * ((var_name * type_value) * expression)
|
| E_if_none of expression * expression * ((var_name * type_value) * expression)
|
||||||
| E_if_left of expression * ((var_name * type_value) * expression) * ((var_name * type_value) * expression)
|
| E_if_left of expression * ((var_name * type_value) * expression) * ((var_name * type_value) * expression)
|
||||||
| E_let_in of ((var_name * type_value) * expression * expression)
|
| E_let_in of ((var_name * type_value) * expression * expression)
|
||||||
|
@ -339,7 +339,7 @@ and translate_annotated_expression (env:Environment.t) (ae:AST.annotated_express
|
|||||||
let%bind lst' = bind_map_list (translate_annotated_expression env) lst in
|
let%bind lst' = bind_map_list (translate_annotated_expression env) lst in
|
||||||
let aux : expression -> expression -> expression result = fun prev cur ->
|
let aux : expression -> expression -> expression result = fun prev cur ->
|
||||||
return @@ E_constant ("CONS", [cur ; prev]) in
|
return @@ E_constant ("CONS", [cur ; prev]) in
|
||||||
let%bind (init : expression) = return @@ E_empty_list t in
|
let%bind (init : expression) = return @@ E_make_empty_list t in
|
||||||
bind_fold_list aux init lst'
|
bind_fold_list aux init lst'
|
||||||
| E_map m ->
|
| E_map m ->
|
||||||
let%bind (src, dst) = Mini_c.Combinators.get_t_map tv in
|
let%bind (src, dst) = Mini_c.Combinators.get_t_map tv in
|
||||||
@ -350,7 +350,7 @@ and translate_annotated_expression (env:Environment.t) (ae:AST.annotated_express
|
|||||||
bind_map_pair (translate_annotated_expression env) (k, v') in
|
bind_map_pair (translate_annotated_expression env) (k, v') in
|
||||||
return @@ E_constant ("UPDATE", [k' ; v' ; prev'])
|
return @@ E_constant ("UPDATE", [k' ; v' ; prev'])
|
||||||
in
|
in
|
||||||
let init = return @@ E_empty_map (src, dst) in
|
let init = return @@ E_make_empty_map (src, dst) in
|
||||||
List.fold_left aux init m
|
List.fold_left aux init m
|
||||||
| E_look_up dsi ->
|
| E_look_up dsi ->
|
||||||
let%bind (ds', i') = bind_map_pair f dsi in
|
let%bind (ds', i') = bind_map_pair f dsi in
|
||||||
@ -360,7 +360,7 @@ and translate_annotated_expression (env:Environment.t) (ae:AST.annotated_express
|
|||||||
match m with
|
match m with
|
||||||
| Match_bool {match_true ; match_false} ->
|
| Match_bool {match_true ; match_false} ->
|
||||||
let%bind (t , f) = bind_map_pair (translate_annotated_expression env) (match_true, match_false) in
|
let%bind (t , f) = bind_map_pair (translate_annotated_expression env) (match_true, match_false) in
|
||||||
return @@ E_Cond (expr', t, f)
|
return @@ E_if_bool (expr', t, f)
|
||||||
| Match_option { match_none; match_some = ((name, tv), s) } ->
|
| Match_option { match_none; match_some = ((name, tv), s) } ->
|
||||||
let%bind n = translate_annotated_expression env match_none in
|
let%bind n = translate_annotated_expression env match_none in
|
||||||
let%bind (tv' , s') =
|
let%bind (tv' , s') =
|
||||||
|
Loading…
Reference in New Issue
Block a user