diff options
author | Son Ho | 2023-12-15 17:20:30 +0100 |
---|---|---|
committer | Son Ho | 2023-12-15 17:20:30 +0100 |
commit | ea583d9f0f5e4a1a687b70f0e04e875969462157 (patch) | |
tree | 6afa76ace8e4771c6757d2ae8b65e2493b6660e6 /compiler/PrintPure.ml | |
parent | 62cb926e76ef0c9fb048b0e340bdae5b9dd76a84 (diff) |
Make good progress on updating SymbolicToPure
Diffstat (limited to 'compiler/PrintPure.ml')
-rw-r--r-- | compiler/PrintPure.ml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/PrintPure.ml b/compiler/PrintPure.ml index 2fe5843e..3a5ce513 100644 --- a/compiler/PrintPure.ml +++ b/compiler/PrintPure.ml @@ -592,6 +592,14 @@ let rec texpression_to_string (env : fmt_env) (inside : bool) (indent : string) in "[ " ^ String.concat ", " fields ^ " ]" | _ -> raise (Failure "Unexpected")) + | Lambda _ -> + let pats, e = destruct_lambdas e in + let vars = + String.concat " " (List.map (typed_pattern_to_string env) pats) + in + let e = texpression_to_string env false indent indent_incr e in + let s = "λ " ^ vars ^ " => " ^ e in + if inside then "(" ^ s ^ ")" else s | Meta (meta, e) -> ( let meta_s = emeta_to_string env meta in let e = texpression_to_string env inside indent indent_incr e in |