diff options
author | Adam Chlipala <adamc@hcoop.net> | 2010-01-10 13:44:22 -0500 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2010-01-10 13:44:22 -0500 |
commit | 73b3f4158297d0161e1d18c24ff9a4604f07c32c (patch) | |
tree | 3519220c69228ad1cd9aba3c3e1096daf7eb1a58 /src/reduce.sml | |
parent | e5358b34831d7a333c5883873af65d0cbacf5524 (diff) |
Reduce concatenations of the empty record; unpoly non-recursive functions
Diffstat (limited to 'src/reduce.sml')
-rw-r--r-- | src/reduce.sml | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/reduce.sml b/src/reduce.sml index 95b26da8..cc8ba0fd 100644 --- a/src/reduce.sml +++ b/src/reduce.sml @@ -291,6 +291,8 @@ fun kindConAndExp (namedC, namedE) = case (#1 c1, #1 c2) of (CRecord (k, xcs1), CRecord (_, xcs2)) => (CRecord (kind env k, xcs1 @ xcs2), loc) + | (CRecord (_, []), _) => c2 + | (_, CRecord (_, [])) => c1 | _ => (CConcat (c1, c2), loc) end | CMap (dom, ran) => (CMap (kind env dom, kind env ran), loc) |