diff -r 102dc5cc1aed -r fc074e669f9f ProgTutorial/Helper/Command/Command.thy --- a/ProgTutorial/Helper/Command/Command.thy Sat Aug 28 13:37:25 2010 +0800 +++ b/ProgTutorial/Helper/Command/Command.thy Fri Oct 29 11:00:37 2010 +0100 @@ -40,8 +40,13 @@ *} ML {* -val r = Unsynchronized.ref (NONE:(unit -> term) option) +structure Result = Proof_Data( + type T = unit -> term + fun init thy () = error "Result") + +val result_cookie = (Result.get, Result.put, "Result.put") *} + ML{* let fun after_qed thm_name thms lthy = @@ -49,7 +54,7 @@ fun setup_proof (thm_name, (txt, pos)) lthy = let - val trm = ML_Context.evaluate lthy true ("r", r) txt + val trm = Code_Runtime.value lthy result_cookie ("", txt) in Proof.theorem NONE (after_qed thm_name) [[(trm,[])]] lthy end @@ -63,4 +68,5 @@ + end