@@ -1,45 +0,0 @@
1−module Main
2−
3−import Data.Buffer
4−
5−em : Buffer 0
6−em = allocate 4
7−
8−one : Bits32
9−one = 1
10−
11−two : Bits8
12−two = 2
13−
14−firstHalf : Buffer 4
15−firstHalf = appendBits32LE em 1 one
16−
17−full : Buffer 8
18−full = appendBits8 firstHalf 4 two
19−
20−firstByte : Bits8
21−firstByte = peekBits8 full 0
22−
23−firstHalfView : Buffer 4
24−firstHalfView = peekBuffer full 0
25−
26−firstHalfCopy : Buffer 4
27−firstHalfCopy = copy firstHalfView
28−
29−oneFromFirstHalf : Bits32
30−oneFromFirstHalf = peekBits32LE firstHalf 0
31−
32−oneFromFirstHalfCopy : Bits32
33−oneFromFirstHalfCopy = peekBits32LE firstHalfCopy 0
34−
35−viewsAndCopiesPreserveEquality : Bool
36−viewsAndCopiesPreserveEquality = ( oneFromFirstHalf == one ) && ( oneFromFirstHalfCopy == one )
37−
38−secondHalfWord : Bits32
39−secondHalfWord = peekBits32LE full 4
40−
41−main : IO ()
42−main = do
43− putStrLn $ show firstByte
44− putStrLn $ show viewsAndCopiesPreserveEquality
45− putStrLn $ show secondHalfWord