1 {-# OPTIONS_GHC -XModalTypes -XScopedTypeVariables -ddump-types -XNoMonoPatBinds #-}
4 import IsomorphismForCodeTypes
5 import Prelude hiding ( id, (.) )
7 class GuestLanguageHeap c where
8 alloc :: <[ (Integer,Integer) -> Integer ]>@c
9 lookup :: <[ Integer -> (Integer,Integer) ]>@c
11 onetwocycle = back onetwocycle'
13 onetwocycle' xy = <[ let (x,y) = ~~xy
14 in let x' = ~~alloc (1,x)
15 in let y' = ~~alloc (2,y)