src/HOL/Imperative_HOL/Heap_Monad.thy
changeset 81706 7beb0cf38292
parent 77703 0262155d2743
child 81995 d67dadd69d07
equal deleted inserted replaced
81705:53fea2ccab19 81706:7beb0cf38292
   563 readArray = Data.Array.ST.readArray
   563 readArray = Data.Array.ST.readArray
   564 
   564 
   565 writeArray :: STArray s a -> Integer -> a -> ST s ()
   565 writeArray :: STArray s a -> Integer -> a -> ST s ()
   566 writeArray = Data.Array.ST.writeArray\<close>
   566 writeArray = Data.Array.ST.writeArray\<close>
   567 
   567 
   568 code_reserved Haskell Heap
   568 code_reserved (Haskell) Heap
   569 
   569 
   570 text \<open>Monad\<close>
   570 text \<open>Monad\<close>
   571 
   571 
   572 code_printing type_constructor Heap \<rightharpoonup> (Haskell) "Heap.ST/ Heap.RealWorld/ _"
   572 code_printing type_constructor Heap \<rightharpoonup> (Haskell) "Heap.ST/ Heap.RealWorld/ _"
   573 code_monad bind Haskell
   573 code_monad bind Haskell
   618   def freeze[A](a: T[A]): List[A] = a.toList
   618   def freeze[A](a: T[A]): List[A] = a.toList
   619 }
   619 }
   620 
   620 
   621 \<close>
   621 \<close>
   622 
   622 
   623 code_reserved Scala Heap Ref Array
   623 code_reserved (Scala) Heap Ref Array
   624 
   624 
   625 code_printing type_constructor Heap \<rightharpoonup> (Scala) "(Unit/ =>/ _)"
   625 code_printing type_constructor Heap \<rightharpoonup> (Scala) "(Unit/ =>/ _)"
   626 code_printing constant bind \<rightharpoonup> (Scala) "Heap.bind"
   626 code_printing constant bind \<rightharpoonup> (Scala) "Heap.bind"
   627 code_printing constant return \<rightharpoonup> (Scala) "('_: Unit)/ =>/ _"
   627 code_printing constant return \<rightharpoonup> (Scala) "('_: Unit)/ =>/ _"
   628 code_printing constant Heap_Monad.raise \<rightharpoonup> (Scala) "!sys.error((_))"
   628 code_printing constant Heap_Monad.raise \<rightharpoonup> (Scala) "!sys.error((_))"