<html>
<head></head>
<body>
<pre>
kadath:script> cabal repl
Preprocessing library deepseq-bounded-0.5.0...
In-place registering deepseq-bounded-0.5.0...
Preprocessing test suite 'deepseq-bounded-tests' for deepseq-bounded-0.5.0...
GHCi, version 7.8.3: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
...
Ok, modules loaded: Main, Tests, Blah, Bottom, Foo, FooG.
*Main> main
Running tests for deepseq-bounded...
Cases: 1 Tried: 0 Errors: 0 Failures: 0
Testing.
Pattern Compiles to
* Node WW []
# Node WI []
. Node WS []
.{} Node WR []
.{*} Node WR [Node WW []]
.{**} Node WR [Node WW [],Node WW []]
.{.*} Node WR [Node WS [],Node WW []]
.{#.} Node WR [Node WI [],Node WS []]
compilePat-"{": warning: # with subpattern
.{#{#}} Node WR [Node WI []]
.{.{#}} Node WR [Node WR [Node WI []]]
.{*#*#*#**#*#*} Node WR [Node WW [],Node WI [],Node WW [],Node WI [],Node WW [],Node WI [],Node WW [],Node WW [],Node WI [],Node WW [],Node WI [],Node WW []]
compilePat-"{": warning: * with subpattern
.{*#.{*#.{*#}*}*{#*}#*} Node WR [Node WW [],Node WI [],Node WR [Node WW [],Node WI [],Node WR [Node WW [],Node WI []],Node WW []],Node WW [],Node WI [],Node WW []]
.{*#.{*#.{*#}*}*#*} Node WR [Node WW [],Node WI [],Node WR [Node WW [],Node WI [],Node WR [Node WW [],Node WI []],Node WW []],Node WW [],Node WI [],Node WW []]
.{.*.{*23*}} Node WR [Node WS [],Node WW [],Node WR [Node (WN 23) [],Node WW []]]
.{.=*.{=*23*}} Node WR [Node WS [],Node PW [],Node WR [Node (PN 23) [],Node WW []]]
===================================================
exp = (3.4, [5,__,7], __) :: (Float, [Int], Bool)
get (_,xs,_) = show $ (xs!!2)
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .##
showPat.compilePat = compilePat: disconnected pattern (not rooted)
Perhaps you used parentheses instead of braces?
---------------------------------------------------
patstr = .{.##}
showPat.compilePat = .{.##}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{.{}#{}#{}}
expected value = 7 (but "# with subpattern" warning)
showPat.compilePat = .{.{}##}
actual value = 7
---------------------------------------------------
patstr = *
showPat.compilePat = *
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{***}
showPat.compilePat = .{***}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{###}
showPat.compilePat = .{###}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*##}
showPat.compilePat = .{*##}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{**#}
showPat.compilePat = .{**#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{##*}
showPat.compilePat = .{##*}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..{*#*}#}
expected value = 7 (but with pattern-match failure warning)
showPat.compilePat = .{..{*#*}#}
actual value = 7
---------------------------------------------------
patstr = .{..{*###}#}
expected value = 7 (but with pattern-match failure warning)
showPat.compilePat = .{..{*###}#}
actual value = 7
---------------------------------------------------
patstr = .{..{*####}#}
expected value = 7 (but with pattern-match failure warning)
showPat.compilePat = .{..{*####}#}
actual value = 7
---------------------------------------------------
patstr = .{..{*####}.}
expected value = Prelude.undefined (but with pattern-match failure warning)
showPat.compilePat = .{..{*####}.}
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..{*#}*}
showPat.compilePat = .{..{*#}*}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..{*#}#}
showPat.compilePat = .{..{*#}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{..{*.{#*}}#}
showPat.compilePat = .{..{*.{#*}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{..{*.{*#}}#}
showPat.compilePat = .{..{*.{*#}}#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..{.{..{#*}}}#}
expected value = 7 (but with pattern-match failure warning)
showPat.compilePat = .{..{.{..{#*}}}#}
actual value = 7
---------------------------------------------------
patstr = .{#.{..{..{#*}}}#}
showPat.compilePat = .{#.{..{..{#*}}}#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..{..{#.{..}}}#}
showPat.compilePat = .{..{..{#.{..}}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{..{..{#*}}#}
showPat.compilePat = .{..{..{#*}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*.{*.{#*}}#}
showPat.compilePat = .{*.{*.{#*}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{##*}
showPat.compilePat = .{##*}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#*}
showPat.compilePat = .{*#*}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .:Tuple3{*.{*.{#*}}#}
showPat.compilePat = .:Tuple3{*.{*.{#*}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .:(,,){*.{*.{#*}}#}
showPat.compilePat = .:(,,){*.{*.{#*}}#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .:(,,){*.{*.{.*}}#}
showPat.compilePat = .:(,,){*.{*.{.*}}#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .:Bool{***}
showPat.compilePat = .:Bool{***}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *:Bool
showPat.compilePat = *:Bool
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *:(,,)
showPat.compilePat = *:(,,)
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#.}
showPat.compilePat = .{*#.}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#.:Bool}
showPat.compilePat = .{*#.:Bool{}}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#.:Bool{}}
showPat.compilePat = .{*#.:Bool{}}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#.:Int{}}
showPat.compilePat = .{*#.:Int{}}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*#.:(,){}}
showPat.compilePat = .{*#.:(,){}}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*#.:Int }
showPat.compilePat = .{*#.:Int{}}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*#.:Int'}
showPat.compilePat = .{*#.:Int'{}}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*##:Bool}
showPat.compilePat = .{*##:Bool}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{*##:Int}
showPat.compilePat = .{*##:Int}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*##:(,)}
showPat.compilePat = .{*##:(,)}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*##:Bool{}}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*##:Bool}
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = .{*##:Int{}}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*##:Int}
expected value = Prelude.undefined
compilePat-"{": warning: # with subpattern
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*##:(,){}}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*##:(,)}
expected value = Prelude.undefined
compilePat-"{": warning: # with subpattern
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{**2#}
showPat.compilePat = .{**2#}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{**3#}
showPat.compilePat = .{**3#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{*#:G2{}#}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*#:G2#}
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = .{*#:Int{}#}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*#:Int#}
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
--------------------------------------------------
===================================================
exp = (G1, G2 5 __ 7, __) :: (TG, TG, Bool)
get (_,(G2 _ _ n),_) = n
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{*#:G2{}#}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*#:G2#}
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = .{*#:Int{}#}
showPat.compilePat = compilePat-"{": warning: # with subpattern
.{*#:Int#}
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
--------------------------------------------------
===================================================
exp = G2 5 __ 7 :: TG
get (G2 _ _ n) = n
? = get $ forcep patstr exp
===================================================
patstr = ..
showPat.compilePat = compilePat: disconnected pattern (not rooted)
Perhaps you used parentheses instead of braces?
---------------------------------------------------
patstr = *
showPat.compilePat = *
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = *0
showPat.compilePat = *0
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *1
showPat.compilePat = *1
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *2
showPat.compilePat = *2
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = *3
showPat.compilePat = *3
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.#.}
showPat.compilePat = .{.#.}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .{...}
showPat.compilePat = .{...}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = *:TG
showPat.compilePat = *:TG
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *:G1
showPat.compilePat = *:G1
expected value = 7
actual value = 7
---------------------------------------------------
patstr = *:G2
showPat.compilePat = *:G2
expected value = Prelude.undefined
actual value = 7
---------------------------------------------------
patstr = *:G1{..}
showPat.compilePat = compilePat-"{": warning: * with subpattern
*:G1
expected value = 7
compilePat-"{": warning: * with subpattern
actual value = 7
---------------------------------------------------
patstr = *:G1{...}
showPat.compilePat = compilePat-"{": warning: * with subpattern
*:G1
expected value = 7
compilePat-"{": warning: * with subpattern
actual value = 7
---------------------------------------------------
patstr = *:G2{..}
showPat.compilePat = compilePat-"{": warning: * with subpattern
*:G2
expected value = Prelude.undefined
compilePat-"{": warning: * with subpattern
actual value = 7
---------------------------------------------------
patstr = *:G2{...}
showPat.compilePat = compilePat-"{": warning: * with subpattern
*:G2
expected value = Prelude.undefined
compilePat-"{": warning: * with subpattern
actual value = 7
---------------------------------------------------
patstr = #:G1
showPat.compilePat = #:G1
expected value = 7
actual value = 7
---------------------------------------------------
patstr = #:G2
showPat.compilePat = #:G2
expected value = 7
actual value = 7
---------------------------------------------------
patstr = #:G1{..}
showPat.compilePat = compilePat-"{": warning: # with subpattern
#:G1
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = #:G1{...}
showPat.compilePat = compilePat-"{": warning: # with subpattern
#:G1
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = #:G2{..}
showPat.compilePat = compilePat-"{": warning: # with subpattern
#:G2
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = #:G2{...}
showPat.compilePat = compilePat-"{": warning: # with subpattern
#:G2
expected value = 7
compilePat-"{": warning: # with subpattern
actual value = 7
---------------------------------------------------
patstr = .:G1{..}
showPat.compilePat = .:G1{..}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .:G1{...}
showPat.compilePat = .:G1{...}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .:G2{..}
showPat.compilePat = .:G2{..}
expected value = 7
actual value = 7
---------------------------------------------------
patstr = .:G2{...}
showPat.compilePat = .:G2{...}
expected value = Prelude.undefined
actual value = Prelude.undefined
--------------------------------------------------
===================================================
exp = J2 (1, J4 (J3, K3 __ (J1 4.5))) False
get = (J2 (_, J4 (_, K3 _ (J1 f))) _) = show f
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{.{..{.{..{..{.}}}}}.}
showPat.compilePat = .{.{..{.{..{..{.}}}}}.}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.{..{.{#.{..{.}}}}}#}
showPat.compilePat = .{.{..{.{#.{..{.}}}}}#}
expected value = 4.5
actual value = 4.5
--------------------------------------------------
===================================================
exp = J2 (1, J4 (__, K2)) False
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{.{..{.{..}}}.}
showPat.compilePat = .{.{..{.{..}}}.}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.{..{.{#.}}}.}
showPat.compilePat = .{.{..{.{#.}}}.}
expected value = 1
actual value = 1
---------------------------------------------------
patstr = .{.{..{#{..}}}.}
showPat.compilePat = .{.{..{#}}.}
expected value = 1
actual value = 1
---------------------------------------------------
patstr = .{.{.#{.{..}}}.}
showPat.compilePat = .{.{.#}.}
expected value = 1
actual value = 1
--------------------------------------------------
===================================================
exp = J4 (__, K2)
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{.{..}}
showPat.compilePat = .{.{..}}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.{#.}}
showPat.compilePat = .{.{#.}}
expected value = 1
actual value = 1
---------------------------------------------------
patstr = .{#{..}}
showPat.compilePat = .{#}
expected value = 1
actual value = 1
---------------------------------------------------
patstr = #{.{..}}
showPat.compilePat = #
expected value = 1
actual value = 1
--------------------------------------------------
===================================================
exp = (__, K2)
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{..}
showPat.compilePat = .{..}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{#.}
showPat.compilePat = .{#.}
expected value = 1
actual value = 1
---------------------------------------------------
patstr = #{..}
showPat.compilePat = #
expected value = 1
actual value = 1
--------------------------------------------------
===================================================
exp = __ :: TJ
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .
showPat.compilePat = .
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = #
showPat.compilePat = #
expected value = 1
actual value = Prelude.undefined
--------------------------------------------------
===================================================
exp = (K5 (__::TJ))
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .
showPat.compilePat = .
expected value = okay
actual value = okay
---------------------------------------------------
patstr = .{#}
showPat.compilePat = .{#}
expected value = okay
actual value = okay
---------------------------------------------------
patstr = .{.}
showPat.compilePat = .{.}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = #
showPat.compilePat = #
expected value = okay
actual value = okay
--------------------------------------------------
===================================================
exp = K3 (__::TK) J3
get ~_ = show 1 -- seems to suffice?!?...
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .
showPat.compilePat = .
expected value = okay
actual value = okay
---------------------------------------------------
patstr = .{#.}
showPat.compilePat = .{#.}
expected value = okay
actual value = okay
---------------------------------------------------
patstr = .{.#}
showPat.compilePat = .{.#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{..}
showPat.compilePat = .{..}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = #
showPat.compilePat = #
expected value = okay
actual value = okay
--------------------------------------------------
===================================================
exp = L1 5.6 (M1 __)
get (L1 f (M1 _)) = show f
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = #
showPat.compilePat = #
expected value = 5.6
actual value = 5.6
---------------------------------------------------
patstr = #{..}
expected value = 5.6 (but "# with subpattern" warning)
showPat.compilePat = #
actual value = 5.6
---------------------------------------------------
patstr = .{..}
showPat.compilePat = .{..}
expected value = 5.6
actual value = 5.6
---------------------------------------------------
patstr = .{.{.}.}
showPat.compilePat = .{.{.}.}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.{#}.}
showPat.compilePat = .{.{#}.}
expected value = 5.6
actual value = 5.6
--------------------------------------------------
===================================================
exp = K3 __ (J1 4.5)
get = (K3 _ (J1 f)) = show f
? = get $ forcep patstr exp
===================================================
patstr =
showPat.compilePat = compilePat: empty pattern (syntax error)
---------------------------------------------------
patstr = .{..{.}}
showPat.compilePat = .{..{.}}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{##}
showPat.compilePat = .{##}
expected value = 4.5
actual value = 4.5
---------------------------------------------------
patstr = .{#.}
showPat.compilePat = .{#.}
expected value = 4.5
actual value = 4.5
---------------------------------------------------
patstr = .{#.{#}}
showPat.compilePat = .{#.{#}}
expected value = 4.5
actual value = 4.5
---------------------------------------------------
patstr = .{#.{.}}
showPat.compilePat = .{#.{.}}
expected value = 4.5
actual value = 4.5
---------------------------------------------------
patstr = .{.#{.}}
showPat.compilePat = .{.#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{.#{#}}
showPat.compilePat = .{.#}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr = .{##{#}}
showPat.compilePat = .{##}
expected value = 4.5
actual value = 4.5
---------------------------------------------------
patstr = #{##{#}}
showPat.compilePat = #
expected value = 4.5
actual value = 4.5
--------------------------------------------------
===================================================
exp = (3.4, [5,__,7], __) :: (Float, [Int], Bool)
get (_,xs,_) = show $ (xs!!2)
? = get $ ( forcep patstr2 . forcep patstr1 ) exp
? = get $! ( forcep_ ( unionPats [ pat1, pat2 ] ) ) exp
(Results were more interesting with a previous semantics...).
===================================================
patstr1 = .
patstr2 = .
patstrU = .
showPat.compilePat patstr1 = .
showPat.compilePat patstr2 = .
showPat.compilePat patstrU = .
expected value = 7
actual value = 7
actual value = 7
---------------------------------------------------
patstr1 = .
patstr2 = *
patstrU = *
showPat.compilePat patstr1 = .
showPat.compilePat patstr2 = *
showPat.compilePat patstrU = *
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr1 = *
patstr2 = .
patstrU = *
showPat.compilePat patstr1 = *
showPat.compilePat patstr2 = .
showPat.compilePat patstrU = *
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr1 = *
patstr2 = *
patstrU = *
showPat.compilePat patstr1 = *
showPat.compilePat patstr2 = *
showPat.compilePat patstrU = *
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr1 = .{...}
patstr2 = .{*..}
patstrU = .{*..}
showPat.compilePat patstr1 = .{...}
showPat.compilePat patstr2 = .{*..}
showPat.compilePat patstrU = .{*..}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr1 = .{*..}
patstr2 = .{..*}
patstrU = .{*.*}
showPat.compilePat patstr1 = .{*..}
showPat.compilePat patstr2 = .{..*}
showPat.compilePat patstrU = .{*.*}
expected value = Prelude.undefined
actual value = Prelude.undefined
---------------------------------------------------
patstr1 = .{.*#}
patstr2 = .{.#.}
patstrU = .{.*.}
showPat.compilePat patstr1 = .{.*#}
showPat.compilePat patstr2 = .{.#.}
showPat.compilePat patstrU = .{.*.}
expected value = Prelude.undefined
actual value = Prelude.undefined
--------------------------------------------------
===================================================
Testing splicePats.
---------------------------------------------------
target .
path []
isibs [(0,"*")]
result .{*}
---------------------------------------------------
target .{}
path []
isibs [(0,"*")]
result .{*}
---------------------------------------------------
target .
path [0]
isibs [(0,"*")]
result splicePats: path escapes target (depth)
---------------------------------------------------
target .{..}
path []
isibs [(0,"*")]
result .{*..}
---------------------------------------------------
target .{..}
path [0]
isibs [(0,"*")]
result .{.{*}.}
---------------------------------------------------
target .{..}
path [2]
isibs [(0,"*")]
result splicePats: path escapes target (breadth)
---------------------------------------------------
target .{..}
path []
isibs [(0,"*"),(0,"#")]
result .{*#..}
---------------------------------------------------
target .{..}
path []
isibs [(0,"*"),(1,"#")]
result .{*.#.}
---------------------------------------------------
target .{..}
path []
isibs [(1,"#"),(0,"*")]
result .{*.#.}
---------------------------------------------------
target .{..}
path []
isibs [(0,"*"),(2,"#")]
result .{*..#}
---------------------------------------------------
target .{..}
path []
isibs [(2,"*"),(2,"#"),(2,"#")]
result .{..*##}
---------------------------------------------------
target .{..}
path []
isibs [(-1,"*")]
result .{..*}
---------------------------------------------------
target .{..}
path []
isibs [(0,"*")]
result .{*..}
---------------------------------------------------
target .{..}
path []
isibs [(1,"*")]
result .{.*.}
---------------------------------------------------
target .{..}
path []
isibs [(2,"*")]
result .{..*}
---------------------------------------------------
target .{..}
path []
isibs [(3,"*")]
result splicePats: sibling indices must not exceed the number of existing children
---------------------------------------------------
target .{..{..}.}
path [1]
isibs [(0,"*")]
result .{..{*..}.}
---------------------------------------------------
target .{..{..}.}
path [1]
isibs [(0,"*3"),(1,"#"),(2,"*")]
result .{..{*3.#.*}.}
---------------------------------------------------
target .{..{..}.}
path [1,0]
isibs [(0,"*"),(0,"#")]
result .{..{.{*#}.}.}
---------------------------------------------------
target .{.{...}.{.{}.}.}
path [1]
isibs [(0,"*"),(0,"#")]
result .{.{...}.{*#.{}.}.}
---------------------------------------------------
target .{.{...}.{.{}.}.}
path [1,0]
isibs [(0,"*"),(0,"#")]
result .{.{...}.{.{*#}.}.}
---------------------------------------------------
target .{.{###}.{.{}#}#}
path [1,0]
isibs [(0,"*"),(0,"#")]
result .{.{###}.{.{*#}#}#}
---------------------------------------------------
target .{.:(,,){###}.{.{}#}#}
path [1,0]
isibs [(0,"*"),(0,"#")]
result .{.:(,,){###}.{.{*#}#}#}
===================================================
Testing elidePats.
---------------------------------------------------
target .{.{..}..{.}}
path []
isibs [0]
result .{..{.}}
---------------------------------------------------
target .{.{..}..{.}}
path [0]
isibs [0]
result .{.{.}..{.}}
---------------------------------------------------
target .{.{..}..{.}}
path [1]
isibs [0]
result elidePats: (2) path escapes target: [0]
---------------------------------------------------
target .{.{..}..{.}}
path [1]
isibs [1]
result elidePats: sibling indices must not exceed the number of existing children
===================================================
Testing erodePat.
---------------------------------------------------
target .{.{..}..{.}}
stdgen 1355035016 2147483398
path []
result .{.{.#}..{.}}
---------------------------------------------------
target .{.{..}..{.}}
stdgen 164232961 367188984
path []
result .{.{.#}..{.}}
---------------------------------------------------
target .{.{..}..{.}}
stdgen 23844443 223185073
path []
result .{.{..}..{#}}
---------------------------------------------------
target .{.{..}..{.}}
stdgen 1900020236 1632766708
path []
result .{.{..}..{#}}
---------------------------------------------------
target .{.{..}..{.}}
stdgen 1186277707 709377745
path []
result .{.{..}#.{.}}
---------------------------------------------------
===================================================
Testing miscellaneous PatAlg functions...
---------------------------------------------------
unionPats test already done test13-1!
---------------------------------------------------
Testing intersectPats [patA, patB]
patA .{...}
patB .{.#}
result intersection: node arity disparity!
.{#.}
---------------------------------------------------
Testing isSubPatOf patA patB
patA .
patB .
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA #
patB #
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA *
patB *
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA .
patB .{}
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{}
patB .
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{}
patB .{.}
intersection: node arity disparity!
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{.}
patB .{.}
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{.}
patB .{..}
intersection: node arity disparity!
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{.}
patB .{.{.}}
expect True
result False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{..}
patB .{.#}
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{.#}
patB .{..}
expect True
result False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{..}
patB .{...}
intersection: node arity disparity!
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .{}
patB .{...}
intersection: node arity disparity!
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA .
patB .{*.#}
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA #
patB .{*.#}
as expected True
---------------------------------------------------
Testing isSubPatOf patA patB
patA *
patB .{*.#}
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA *
patB .{*}
as expected False
---------------------------------------------------
Testing isSubPatOf patA patB
patA *
patB .{**}
as expected False
doit13: unexpected code 4
---------------------------------------------------
Testing emptyPat
result #
---------------------------------------------------
Testing mkPat ([1,2,3],(False,"foo"))
result .{.{..{..{..}}}.{..{..{..{..}}}}}
---------------------------------------------------
Testing growPat patA ([1,2,3],(False,"foo"))
patA .{.{..{..}}.{..{..}}}
result .{.{..{..{..}}}.{..{..{..}}}}
---------------------------------------------------
Testing growPat patA ([1,2,3],(False,"foo"))
patA .{.{..{..{..}}}.{..{..{..}}}}
result .{.{..{..{..}}}.{..{..{..{..}}}}}
---------------------------------------------------
Testing growPat patA ([1,2,3],(False,"foo"))
patA .{.{..{..{..}}}.{..{..{..{..}}}}}
result .{.{..{..{..}}}.{..{..{..{..}}}}}
---------------------------------------------------
Testing shrinkPat patA
patA .{.{..{..{..}}}.{..{..{..{..}}}}}
result .{.{#.{#.{##}}}.{#.{#.{#.{##}}}}}
---------------------------------------------------
Testing shrinkPat patA
patA .{.{..{..{..}}}.{..{..{..}}}}
result .{.{#.{#.{##}}}.{#.{#.{##}}}}
---------------------------------------------------
Testing shrinkPat patA
patA .{.{..{..}}.{..{..}}}
result .{.{#.{##}}.{#.{##}}}
---------------------------------------------------
Testing shrinkPat patA
patA .{.{#.{..}}.{#.{*3.}}}
result .{.{#.{##}}.{#.{*2#}}}
---------------------------------------------------
Testing shrinkPat patA
patA .{.{#.}.{#.}}
result .{.{##}.{##}}
---------------------------------------------------
Testing shrinkPat patA
patA .{..}
result .{##}
---------------------------------------------------
Testing shrinkPat patA
patA .
result #
---------------------------------------------------
Testing liftPats patstrlst
patstrs [".{...}",".{.#}"]
result .{.{...}.{.#}}
---------------------------------------------------
splicePats test already done test13-10!
---------------------------------------------------
isPath test already done test13-11!
---------------------------------------------------
Testing mkPatN 2 ([1,2,3],(False,"foo"))
result .{.{..{}}.{..{}}}
---------------------------------------------------
Testing fusion
-fenable-rewrite-rules -O -ddump-rules -ddump-simpl-stats -ddump-rule-firings
7
7
7
7
expN_1 = [__] :: [Int]
expN_2 = [0,1,__,3] :: [Int]
expN_3 = (3.4, [5,__,7], True) :: (Float, [Int], Bool)
expN_4 = (3.4, [5,__,7], __) :: (Float, [Int], Bool)
getN_1 xs = show $ ()
--getN_1 xs = show $ head xs
--getN_2 xs = show $ (xs!!1)
getN_2 xs = show $ (xs!!3)
getN_3 (_,xs,_) = show $ (xs!!2)
forcen 0 expN_1 `seq` () = ()
forcen 1 expN_1 `seq` () = ()
forcen 2 expN_1 `seq` () = Prelude.undefined
forcen 3 expN_1 `seq` () = Prelude.undefined
forcen 4 expN_1 `seq` () = Prelude.undefined
getN_2 $ forcen 0 expN_2 = 3
getN_2 $ forcen 1 expN_2 = 3
getN_2 $ forcen 2 expN_2 = 3
getN_2 $ forcen 3 expN_2 = 3
getN_2 $ forcen 4 expN_2 = Prelude.undefined
getN_3 $ forcen 0 expN_3 = 7
getN_3 $ forcen 1 expN_3 = 7
getN_3 $ forcen 2 expN_3 = 7
getN_3 $ forcen 3 expN_3 = 7
getN_3 $ forcen 4 expN_3 = Prelude.undefined
getN_3 $ forcen 0 expN_4 = 7
getN_3 $ forcen 1 expN_4 = 7
getN_3 $ forcen 2 expN_4 = Prelude.undefined
getN_3 $ forcen 3 expN_4 = Prelude.undefined
getN_3 $ forcen 4 expN_4 = Prelude.undefined
===================================================
Testing generic GNFDataN (refer to Foo.hs for the defs).
---------------------------------------------------
( getB_1 $ forcen 0 expTB_1 ) True
( getB_1 $ forcen 1 expTB_1 ) True
( getB_1 $ forcen 2 expTB_1 ) True
( getB_1 $ forcen 3 expTB_1 ) True
( getB_1 $ forcen 4 expTB_1 ) True
( getB_1 $ forcen 5 expTB_1 ) True
( getB_1 $ forcen 6 expTB_1 ) True
( getB_1 $ forcen 7 expTB_1 ) True
( getB_1 $ forcen 8 expTB_1 ) True
( getB_1 $ forcen 9 expTB_1 ) True
( getB_1 $ forcen 10 expTB_1 ) True
( getB_1 $ forcen 0 expTB_2 ) True
( getB_1 $ forcen 1 expTB_2 ) True
( getB_1 $ forcen 2 expTB_2 ) True
( getB_1 $ forcen 3 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_2 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 1 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 2 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_3 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 1 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 2 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_4 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_5 ) True
( getB_1 $ forcen 1 expTB_5 ) True
( getB_1 $ forcen 2 expTB_5 ) True
( getB_1 $ forcen 3 expTB_5 ) True
( getB_1 $ forcen 4 expTB_5 ) True
( getB_1 $ forcen 5 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_5 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_6 ) True
( getB_1 $ forcen 1 expTB_6 ) True
( getB_1 $ forcen 2 expTB_6 ) True
( getB_1 $ forcen 3 expTB_6 ) True
( getB_1 $ forcen 4 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_6 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 1 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 2 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_7 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_8 ) True
( getB_1 $ forcen 1 expTB_8 ) True
( getB_1 $ forcen 2 expTB_8 ) True
( getB_1 $ forcen 3 expTB_8 ) True
( getB_1 $ forcen 4 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_8 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_9 ) True
( getB_1 $ forcen 1 expTB_9 ) True
( getB_1 $ forcen 2 expTB_9 ) True
( getB_1 $ forcen 3 expTB_9 ) True
( getB_1 $ forcen 4 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_9 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_10 ) True
( getB_1 $ forcen 1 expTB_10 ) True
( getB_1 $ forcen 2 expTB_10 ) True
( getB_1 $ forcen 3 expTB_10 ) True
( getB_1 $ forcen 4 expTB_10 ) True
( getB_1 $ forcen 5 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_10 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_11 ) True
( getB_1 $ forcen 1 expTB_11 ) True
( getB_1 $ forcen 2 expTB_11 ) True
( getB_1 $ forcen 3 expTB_11 ) True
( getB_1 $ forcen 4 expTB_11 ) True
( getB_1 $ forcen 5 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_11 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_12 ) True
( getB_1 $ forcen 1 expTB_12 ) True
( getB_1 $ forcen 2 expTB_12 ) True
( getB_1 $ forcen 3 expTB_12 ) True
( getB_1 $ forcen 4 expTB_12 ) True
( getB_1 $ forcen 5 expTB_12 ) True
( getB_1 $ forcen 6 expTB_12 ) True
( getB_1 $ forcen 7 expTB_12 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_12 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_12 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_12 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_13 ) True
( getB_1 $ forcen 1 expTB_13 ) True
( getB_1 $ forcen 2 expTB_13 ) True
( getB_1 $ forcen 3 expTB_13 ) True
( getB_1 $ forcen 4 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_13 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_14 ) True
( getB_1 $ forcen 1 expTB_14 ) True
( getB_1 $ forcen 2 expTB_14 ) True
( getB_1 $ forcen 3 expTB_14 ) True
( getB_1 $ forcen 4 expTB_14 ) True
( getB_1 $ forcen 5 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_14 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_15 ) True
( getB_1 $ forcen 1 expTB_15 ) True
( getB_1 $ forcen 2 expTB_15 ) True
( getB_1 $ forcen 3 expTB_15 ) True
( getB_1 $ forcen 4 expTB_15 ) True
( getB_1 $ forcen 5 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_15 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_16 ) 5
( getB_1 $ forcen 1 expTB_16 ) 5
( getB_1 $ forcen 2 expTB_16 ) 5
( getB_1 $ forcen 3 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_16 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_17 ) 5
( getB_1 $ forcen 1 expTB_17 ) 5
( getB_1 $ forcen 2 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_17 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_18 ) 5
( getB_1 $ forcen 1 expTB_18 ) 5
( getB_1 $ forcen 2 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_18 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_19 ) False
( getB_1 $ forcen 1 expTB_19 ) False
( getB_1 $ forcen 2 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_19 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_20 ) beesix
( getB_1 $ forcen 1 expTB_20 ) beesix
( getB_1 $ forcen 2 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_20 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_21 ) <bah>
( getB_1 $ forcen 1 expTB_21 ) <bah>
( getB_1 $ forcen 2 expTB_21 ) <bah>
( getB_1 $ forcen 3 expTB_21 ) <bah>
( getB_1 $ forcen 4 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_21 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_22 ) <bah>
( getB_1 $ forcen 1 expTB_22 ) <bah>
( getB_1 $ forcen 2 expTB_22 ) <bah>
( getB_1 $ forcen 3 expTB_22 ) <bah>
( getB_1 $ forcen 4 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_22 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_23 ) <bah>
( getB_1 $ forcen 1 expTB_23 ) <bah>
( getB_1 $ forcen 2 expTB_23 ) <bah>
( getB_1 $ forcen 3 expTB_23 ) <bah>
( getB_1 $ forcen 4 expTB_23 ) <bah>
( getB_1 $ forcen 5 expTB_23 ) <bah>
( getB_1 $ forcen 6 expTB_23 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_23 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_23 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_23 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_23 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_24 ) <bah>
( getB_1 $ forcen 1 expTB_24 ) <bah>
( getB_1 $ forcen 2 expTB_24 ) <bah>
( getB_1 $ forcen 3 expTB_24 ) <bah>
( getB_1 $ forcen 4 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_24 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_25 ) <bah>
( getB_1 $ forcen 1 expTB_25 ) <bah>
( getB_1 $ forcen 2 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 3 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 4 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 5 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 6 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 7 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_25 ) Prelude.undefined
( getB_1 $ forcen 0 expTB_26 ) <bah>
( getB_1 $ forcen 1 expTB_26 ) <bah>
( getB_1 $ forcen 2 expTB_26 ) <bah>
( getB_1 $ forcen 3 expTB_26 ) <bah>
( getB_1 $ forcen 4 expTB_26 ) <bah>
( getB_1 $ forcen 5 expTB_26 ) <bah>
( getB_1 $ forcen 6 expTB_26 ) <bah>
( getB_1 $ forcen 7 expTB_26 ) Prelude.undefined
( getB_1 $ forcen 8 expTB_26 ) Prelude.undefined
( getB_1 $ forcen 9 expTB_26 ) Prelude.undefined
( getB_1 $ forcen 10 expTB_26 ) Prelude.undefined
Testing SOP rnfpDyn with SYB generic stop condition.
Float
WR
BBB 3.4
[Int]
WI
AAA
Bool
WI
AAA
7
Testing SOP/SYB rnfpDyn again.
[[Int]]
Noo-C
WI
Noo-C
AAA
[[[Int]]]
Noo-D
WI
Noo-D
AAA
6
Testing SOP rnfpDyn' with SOP generic stop condition.
*** :
WR
Testing SOP rnfpDyn'' with Typeable generic stop condition
[[Int]]
WI
AAA
[[[Int]]]
WI
AAA
7
Testing Seqable class (tuple with list):
===================================================
exp = <refer to test code>
get (_,xs,_) = show $ (xs!!2)
? = get $! exp
===================================================
1 expected value = 7
1 actual value = 7
---------------------------------------------------
2 expected value = Prelude.undefined
2 actual value = Prelude.undefined
---------------------------------------------------
3 expected value = Prelude.undefined
3 actual value = Prelude.undefined
---------------------------------------------------
4 expected value = 7
4 actual value = 7
---------------------------------------------------
5 expected value = 7
5 actual value = 7
---------------------------------------------------
6 expected value = Prelude.undefined
6 actual value = Prelude.undefined
---------------------------------------------------
7 expected value = 7
7 actual value = 7
---------------------------------------------------
8 expected value = 7
8 actual value = 7
---------------------------------------------------
9 expected value = 7
9 actual value = 7
--------------------------------------------------
Testing Seqable class (nested tuples):
===================================================
exp = <refer to test code>
get (_,(_,x),_) = show x
? = get $! exp
===================================================
1 expected value = 7
1 actual value = 7
---------------------------------------------------
2 expected value = 7
2 actual value = 7
---------------------------------------------------
3 expected value = Prelude.undefined
3 actual value = Prelude.undefined
---------------------------------------------------
4 expected value = Prelude.undefined
4 actual value = Prelude.undefined
---------------------------------------------------
5 expected value = Prelude.undefined
5 actual value = Prelude.undefined
---------------------------------------------------
6 expected value = 7
6 actual value = 7
---------------------------------------------------
7 expected value = Prelude.undefined
7 actual value = Prelude.undefined
---------------------------------------------------
8 expected value = 7
8 actual value = 7
---------------------------------------------------
9 expected value = Prelude.undefined
9 actual value = Prelude.undefined
--------------------------------------------------
Testing generic Seqable (tuple with list):
===================================================
exp = <refer to test code>
get (_,xs,_) = show $ (xs!!2)
? = get $! exp
===================================================
1 expected value = 7
1 actual value = 7
---------------------------------------------------
2 expected value = Prelude.undefined
2 actual value = Prelude.undefined
---------------------------------------------------
3 expected value = Prelude.undefined
3 actual value = Prelude.undefined
---------------------------------------------------
4 expected value = 7
4 actual value = 7
---------------------------------------------------
5 expected value = 7
5 actual value = 7
---------------------------------------------------
6 expected value = Prelude.undefined
6 actual value = Prelude.undefined
---------------------------------------------------
7 expected value = 7
7 actual value = 7
---------------------------------------------------
8 expected value = 7
8 actual value = 7
---------------------------------------------------
9 expected value = 7
9 actual value = 7
--------------------------------------------------
Testing generic Seqable (expTJ_*):
===================================================
exp = J2 (1, J4 (__, K3 __ (J1 4.5))) __
get = (J2 (_, J4 (_, K3 _ (J1 f))) _) = show f
? = get exp
===================================================
1 expected value = 4.5
1 actual value = 4.5
---------------------------------------------------
2 expected value = Prelude.undefined
2 actual value = Prelude.undefined
---------------------------------------------------
3 expected value = 4.5
3 actual value = 4.5
---------------------------------------------------
4 expected value = Prelude.undefined
4 actual value = Prelude.undefined
---------------------------------------------------
5 expected value = Prelude.undefined
5 actual value = Prelude.undefined
---------------------------------------------------
6 expected value = Prelude.undefined
6 actual value = Prelude.undefined
--------------------------------------------------
FAILING ON PURPOSE TO DISPLAY THE LOGGED OUTPUT!
### Failure in: All:0
expected: 0
but got: 1
Cases: 1 Tried: 1 Errors: 0 Failures: 1
*** Exception: ExitFailure 1
*Main>
Leaving GHCi.
kadath:script>
</pre>
</body>
</html>