summaryrefslogtreecommitdiff
path: root/src/gen_lib/prompt.lem
diff options
context:
space:
mode:
authorChristopher Pulte2016-11-27 21:38:41 +0000
committerChristopher Pulte2016-11-27 21:38:41 +0000
commitcf7478cf2ab1251902b0d78322d8588009707c21 (patch)
treedd2f319ba18cc4950c370da2b8970324d4510aad /src/gen_lib/prompt.lem
parentf3d52f7900f17e941ee0e7e4e06ab25952cdd06f (diff)
make outcome_s contain the instruction state pretty print rather than the instruction state, factor out interpreter/shallow embedding value conversion
Diffstat (limited to 'src/gen_lib/prompt.lem')
-rw-r--r--src/gen_lib/prompt.lem10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/gen_lib/prompt.lem b/src/gen_lib/prompt.lem
index 5532089d..f770042c 100644
--- a/src/gen_lib/prompt.lem
+++ b/src/gen_lib/prompt.lem
@@ -2,14 +2,10 @@ open import Pervasives_extra
open import Sail_impl_base
open import Sail_values
- import Interp_interface
-(* this needs to go away: it's only so we can make the ppcmem outcome types the
-same *)
-
-val return : forall 's 'a. 'a -> outcome 's 'a
+val return : forall 'a. 'a -> outcome 'a
let return a = Done a
-val bind : forall 's 'a 'b. outcome 's 'a -> ('a -> outcome 's 'b) -> outcome 's 'b
+val bind : forall 'a 'b. outcome 'a -> ('a -> outcome 'b) -> outcome 'b
let rec bind m f = match m with
| Done a -> f a
| Read_mem descr k -> Read_mem descr (fun v -> let (o,opt) = k v in (bind o f,opt))
@@ -26,7 +22,7 @@ let rec bind m f = match m with
end
-type M 'a = Sail_impl_base.outcome Interp_interface.instruction_state 'a
+type M 'a = outcome 'a
let inline (>>=) = bind
val (>>) : forall 'b. M unit -> M 'b -> M 'b