diff src/mono_reduce.sml @ 726:6fc633d990e7

onError
author Adam Chlipala <adamc@hcoop.net>
date Thu, 16 Apr 2009 12:36:01 -0400
parents 755a71c99be5
children 7c6b6c3c7b79
line wrap: on
line diff
--- a/src/mono_reduce.sml	Thu Apr 16 12:07:21 2009 -0400
+++ b/src/mono_reduce.sml	Thu Apr 16 12:36:01 2009 -0400
@@ -61,6 +61,7 @@
       | EFfiApp ("Basis", "new_channel", _) => true
       | EFfiApp ("Basis", "subscribe", _) => true
       | EFfiApp ("Basis", "send", _) => true
+      | EFfiApp ("Basis", "onError", _) => true
       | EFfiApp _ => false
       | EApp ((EFfi _, _), _) => false
       | EApp _ => true
@@ -207,6 +208,9 @@
             consider (xps, env)
         end
 
+      | (PNone _, ENone _) => Yes env
+      | (PSome (_, p), ESome (_, e)) => match (env, p, e)
+
       | _ => Maybe
 
 datatype event =
@@ -282,6 +286,7 @@
                       | EFfiApp ("Basis", "new_channel", es) => ffi es
                       | EFfiApp ("Basis", "subscribe", es) => ffi es
                       | EFfiApp ("Basis", "send", es) => ffi es
+                      | EFfiApp ("Basis", "onError", es) => ffi es
                       | EFfiApp (_, _, es) => List.concat (map (summarize d) es)
                       | EApp ((EFfi _, _), e) => summarize d e
                       | EApp _ =>