Diff
checker
Texte
Texte
Images
Documents
Excel
Dossiers
Legal
Enterprise
Application de bureau
Prix
Se connecter
Télécharger Diffchecker Desktop
Comparer le texte
Trouver la différence entre deux fichiers texte
Outils
Historique
Éditeur live
Masquer les espaces
Cacher identiques
Sans retour à la ligne
Vue
Divisé
Unifié
Niveau de précision
Intelligent
Mot
Caractère
Styles de texte
Modifier l’apparence
Coloration syntaxique
Choisir la syntaxe
Ignorer
Transformer le texte
Aller au premier écart
Modifier l'entrée
Diffchecker Desktop
La façon la plus sécurisée d'utiliser Diffchecker. Obtenez l'application Diffchecker Desktop : vos diffs ne quittent jamais votre ordinateur !
Obtenir Desktop
Untitled diff
Créé
il y a 10 ans
Le diff n'expire jamais
Effacer
Exporter
Partager
Expliquer
70 suppressions
Lignes
Total
Supprimé
Caractères
Total
Supprimé
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
260 lignes
Copier tout
74 ajouts
Lignes
Total
Ajouté
Caractères
Total
Ajouté
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
258 lignes
Copier tout
==================== Tidy Core ====================
==================== Tidy Core ====================
Copier
Copié
Copier
Copié
2016-07-13 02:20:57.281410
183
UTC
2016-07-13 02:20:57.281410
206
UTC
Copier
Copié
Copier
Copié
Result size of Tidy Core = {terms: 1
2
9, types:
681
, coercions:
440
}
Result size of Tidy Core = {terms: 1
1
9, types:
727
, coercions:
529
}
-- RHS size: {terms: 2, types: 0, coercions: 0}
-- RHS size: {terms: 2, types: 0, coercions: 0}
$trModule2 :: TrName
$trModule2 :: TrName
[GblId,
[GblId,
Caf=NoCafRefs,
Caf=NoCafRefs,
Str=DmdType m1,
Str=DmdType m1,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 20}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 20}]
$trModule2 = TrNameS "main"#
$trModule2 = TrNameS "main"#
-- RHS size: {terms: 2, types: 0, coercions: 0}
-- RHS size: {terms: 2, types: 0, coercions: 0}
$trModule1 :: TrName
$trModule1 :: TrName
[GblId,
[GblId,
Caf=NoCafRefs,
Caf=NoCafRefs,
Str=DmdType m1,
Str=DmdType m1,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 20}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 20}]
Copier
Copié
Copier
Copié
$trModule1 = TrNameS "
T
Bench"#
$trModule1 = TrNameS "
Bar
Bench"#
-- RHS size: {terms: 3, types: 0, coercions: 0}
-- RHS size: {terms: 3, types: 0, coercions: 0}
$trModule :: Module
$trModule :: Module
[GblId,
[GblId,
Caf=NoCafRefs,
Caf=NoCafRefs,
Str=DmdType m,
Str=DmdType m,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
$trModule = Module $trModule2 $trModule1
$trModule = Module $trModule2 $trModule1
-- RHS size: {terms: 2, types: 0, coercions: 0}
-- RHS size: {terms: 2, types: 0, coercions: 0}
benches15 :: [Char]
benches15 :: [Char]
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 40 0}]
WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 40 0}]
Copier
Copié
Copier
Copié
benches15 = unpackCString# "
T
"#
benches15 = unpackCString# "
Bar
"#
-- RHS size: {terms: 3, types: 4, coercions: 7}
-- RHS size: {terms: 3, types: 4, coercions: 7}
benches14 :: R:SingBinz ('D0 'B1)
benches14 :: R:SingBinz ('D0 'B1)
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches14 = SD0 ($fSingIBinD0_$d~~ `cast` ...) $fSingIBinB1_$s$WSB1
benches14 = SD0 ($fSingIBinD0_$d~~ `cast` ...) $fSingIBinB1_$s$WSB1
-- RHS size: {terms: 3, types: 7, coercions: 13}
-- RHS size: {terms: 3, types: 7, coercions: 13}
benches13 :: R:SingPrimeBinz ('P ('D0 'B1))
benches13 :: R:SingPrimeBinz ('P ('D0 'B1))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches13 =
benches13 =
SP ($fSingIPrimeBinP_$d~~ `cast` ...) (benches14 `cast` ...)
SP ($fSingIPrimeBinP_$d~~ `cast` ...) (benches14 `cast` ...)
-- RHS size: {terms: 3, types: 4, coercions: 7}
-- RHS size: {terms: 3, types: 4, coercions: 7}
benches12 :: R:SingPosz ('S 'O)
benches12 :: R:SingPosz ('S 'O)
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches12 = SS ($fSingIPosS_$d~~ `cast` ...) $fSingIPosO_$s$WSO
benches12 = SS ($fSingIPosS_$d~~ `cast` ...) $fSingIPosO_$s$WSO
-- RHS size: {terms: 3, types: 7, coercions: 13}
-- RHS size: {terms: 3, types: 7, coercions: 13}
benches11 :: R:SingPosz ('S ('S 'O))
benches11 :: R:SingPosz ('S ('S 'O))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches11 = SS ($fSingIPosS_$d~~ `cast` ...) (benches12 `cast` ...)
benches11 = SS ($fSingIPosS_$d~~ `cast` ...) (benches12 `cast` ...)
-- RHS size: {terms: 3, types: 10, coercions: 16}
-- RHS size: {terms: 3, types: 10, coercions: 16}
benches10 :: R:SingPosz ('S ('S ('S 'O)))
benches10 :: R:SingPosz ('S ('S ('S 'O)))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches10 = SS ($fSingIPosS_$d~~ `cast` ...) (benches11 `cast` ...)
benches10 = SS ($fSingIPosS_$d~~ `cast` ...) (benches11 `cast` ...)
-- RHS size: {terms: 3, types: 13, coercions: 19}
-- RHS size: {terms: 3, types: 13, coercions: 19}
benches9 :: R:SingPosz ('S ('S ('S ('S 'O))))
benches9 :: R:SingPosz ('S ('S ('S ('S 'O))))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches9 = SS ($fSingIPosS_$d~~ `cast` ...) (benches10 `cast` ...)
benches9 = SS ($fSingIPosS_$d~~ `cast` ...) (benches10 `cast` ...)
-- RHS size: {terms: 3, types: 16, coercions: 22}
-- RHS size: {terms: 3, types: 16, coercions: 22}
benches8 :: R:SingPosz ('S ('S ('S ('S ('S 'O)))))
benches8 :: R:SingPosz ('S ('S ('S ('S ('S 'O)))))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches8 = SS ($fSingIPosS_$d~~ `cast` ...) (benches9 `cast` ...)
benches8 = SS ($fSingIPosS_$d~~ `cast` ...) (benches9 `cast` ...)
-- RHS size: {terms: 3, types: 19, coercions: 25}
-- RHS size: {terms: 3, types: 19, coercions: 25}
benches7 :: R:SingPosz ('S ('S ('S ('S ('S ('S 'O))))))
benches7 :: R:SingPosz ('S ('S ('S ('S ('S ('S 'O))))))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches7 = SS ($fSingIPosS_$d~~ `cast` ...) (benches8 `cast` ...)
benches7 = SS ($fSingIPosS_$d~~ `cast` ...) (benches8 `cast` ...)
-- RHS size: {terms: 4, types: 37, coercions: 45}
-- RHS size: {terms: 4, types: 37, coercions: 45}
benches6
benches6
:: R:Sing(,)z
:: R:Sing(,)z
PrimeBin Pos '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))
PrimeBin Pos '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}]
benches6 =
benches6 =
STuple2
STuple2
($fSingI(,)(,)_$d~~ `cast` ...)
($fSingI(,)(,)_$d~~ `cast` ...)
(benches13 `cast` ...)
(benches13 `cast` ...)
(benches7 `cast` ...)
(benches7 `cast` ...)
-- RHS size: {terms: 3, types: 40, coercions: 48}
-- RHS size: {terms: 3, types: 40, coercions: 48}
benches5
benches5
:: R:SingPrimePowerz
:: R:SingPrimePowerz
('PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O)))))))
('PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O)))))))
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches5 =
benches5 =
SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (benches6 `cast` ...)
SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (benches6 `cast` ...)
-- RHS size: {terms: 4, types: 53, coercions: 61}
-- RHS size: {terms: 4, types: 53, coercions: 61}
benches4
benches4
:: R:Sing[]z
:: R:Sing[]z
PrimePower '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]
PrimePower '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}]
benches4 =
benches4 =
SCons
SCons
($fSingI[]:_$d~~ `cast` ...)
($fSingI[]:_$d~~ `cast` ...)
(benches5 `cast` ...)
(benches5 `cast` ...)
($fSingI[][]1 `cast` ...)
($fSingI[][]1 `cast` ...)
-- RHS size: {terms: 3, types: 55, coercions: 62}
-- RHS size: {terms: 3, types: 55, coercions: 62}
benches3
benches3
:: R:SingFactoredz
:: R:SingFactoredz
('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches3 = SF ($fSingIFactoredF_$d~~ `cast` ...) (benches4 `cast` ...)
benches3 = SF ($fSingIFactoredF_$d~~ `cast` ...) (benches4 `cast` ...)
-- RHS size: {terms: 2, types: 19, coercions: 25}
-- RHS size: {terms: 2, types: 19, coercions: 25}
benches2
benches2
:: Tagged
:: Tagged
(FSym1 ('PP (Tuple2Sym2 ('P ('D0 'B1)) ('S ('S ('S ('S ('S ('S 'O))))))) :$$$ '[])) [PP]
(FSym1 ('PP (Tuple2Sym2 ('P ('D0 'B1)) ('S ('S ('S ('S ('S ('S 'O))))))) :$$$ '[])) [PP]
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}]
WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}]
benches2 = ppsFact (benches3 `cast` ...)
benches2 = ppsFact (benches3 `cast` ...)
-- RHS size: {terms: 7, types: 1, coercions: 23}
-- RHS size: {terms: 7, types: 1, coercions: 23}
benches_n :: Int64
benches_n :: Int64
[GblId,
[GblId,
Str=DmdType,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 50 20}]
WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 50 20}]
benches_n =
benches_n =
case $wgo (benches2 `cast` ...) 1# of ww { __DEFAULT -> I64# ww }
case $wgo (benches2 `cast` ...) 1# of ww { __DEFAULT -> I64# ww }
Copier
Copié
Copier
Copié
-- RHS size: {terms:
8
, types: 5, coercions:
0
}
-- RHS size: {terms:
9
, types: 5, coercions:
88
}
benches1 [InlPrag=INLINE[0]]
benches1 [InlPrag=INLINE[0]]
:: Int64 -> State# RealWorld -> (# State# RealWorld, () #)
:: Int64 -> State# RealWorld -> (# State# RealWorld, () #)
[GblId,
[GblId,
Arity=2,
Arity=2,
Str=DmdType <S(S),1*U(U)><S,U>,
Str=DmdType <S(S),1*U(U)><S,U>,
Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True,
WorkFree=True, Expandable=True,
Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False)
Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False)
Tmpl= \ (w [Occ=Once!] :: Int64)
Tmpl= \ (w [Occ=Once!] :: Int64)
(w1 [Occ=Once, OS=OneShot] :: State# RealWorld) ->
(w1 [Occ=Once, OS=OneShot] :: State# RealWorld) ->
case w of _ [Occ=Dead] { I64# ww1 [Occ=Once] ->
case w of _ [Occ=Dead] { I64# ww1 [Occ=Once] ->
Copier
Copié
Copier
Copié
$w
benches
ww1
w1
benches
_$s$wgo12 w1
ww1
(benches_n `cast` ...) @~ ...
}}]
}}]
benches1 =
benches1 =
\ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) ->
\ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) ->
Copier
Copié
Copier
Copié
case w of _ [Occ=Dead] { I64# ww1 ->
$w
benches
ww1
w1
}
case w of _ [Occ=Dead] { I64# ww1 ->
benches
_$s$wgo12 w1
ww1
(benches_n `cast` ...) @~ ...
}
-- RHS size: {terms: 3, types: 0, coercions: 8}
-- RHS size: {terms: 3, types: 0, coercions: 8}
benches :: Benchmark
benches :: Benchmark
[GblId,
[GblId,
Str=DmdType m2,
Str=DmdType m2,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}]
benches = Benchmark benches15 (benches1 `cast` ...)
benches = Benchmark benches15 (benches1 `cast` ...)
Copier
Copié
Copier
Copié
-- RHS size: {terms: 2, types: 19, coercions: 25}
benches_eta
:: Foo
(FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
(FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
[GblId,
Str=DmdType,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False,
WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}]
benches_eta = foo (benches3 `cast` ...)
-- RHS size: {terms: 7, types: 3, coercions: 21}
$wbenches [InlPrag=[0]]
:: Int# -> State# RealWorld -> (# State# RealWorld, () #)
[GblId,
Arity=2,
Str=DmdType <S,U><S,U>,
Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True,
WorkFree=True, Expandable=True, Guidance=IF_ARGS [0 0] 40 0}]
$wbenches =
\ (ww :: Int#) (w [OS=OneShot] :: State# RealWorld) ->
$wgo12 benches_eta (benches_n `cast` ...) ww w
Rec {
Rec {
Copier
Copié
Copier
Copié
-- RHS size: {terms: 30, types:
101
, coercions:
0}
-- RHS size: {terms: 30, types:
169
, coercions:
47}
$wgo12 [
InlPrag=[0],
Occ=LoopBreaker]
benches_$s
$wgo12 [
Occ=LoopBreaker]
:: (Foo
:: State# RealWorld
(FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
(FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
-> Foo
(FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Int#
-> Int#
Copier
Copié
Copier
Copié
-> State# RealWorld
-> Bar
-> (# State# RealWorld, () #)
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
[GblId,
-> ((Bar
Arity=4,
Foo ('F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
Caf=NoCafRefs,
Str=DmdType <L,C(U)><L,U><S,U><S,U>]
$wgo12 =
\ (w :: Foo
(FSym1
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
-> Foo
Copier
Copié
Copier
Copié
(
FSym1
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
(
'F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
:: *)
(w1
~R#
:: Foo
((Bar
(
FSym1
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
(ww :: Int
#)
-> Bar
(w2
[OS=OneShot] :: State# RealWorld
) ->
Foo
case tagToEnum# (<=#
ww
0#) of _ [Occ=Dead] {
(
'F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
:: *) =>
(# State# RealWorld, ()
#)
[GblId, Arity=4, Str=DmdType <S,U><S,U><L,U><L,U>]
benches_$s$wgo12 =
\ (sc
[OS=OneShot] :: State# RealWorld
)
(sc1 :: Int#)
(sc2
:: Bar
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]))
(sg0
:: ((Bar
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *)
~R#
((Bar
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Bar
Foo
('F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *)) ->
case tagToEnum# (<=#
sc1
0#) of _ [Occ=Dead] {
False ->
False ->
Copier
Copié
Copier
Copié
case seq#
(case
w w1
of _ [Occ=Dead] { __DEFAULT ->
()
})
w2
case seq#
(case
foo (benches3 `cast` ...) (sc2 `cast` ...)
of _ [Occ=Dead] { __DEFAULT ->
()
})
sc
of _ [Occ=Dead] { (# ipv, ipv1 #) ->
of _ [Occ=Dead] { (# ipv, ipv1 #) ->
Copier
Copié
Copier
Copié
$wgo12
w w1
(-#
ww
1#)
ipv
benches_$s
$wgo12
ipv
(-#
sc1
1#)
sc2 @~ ...
};
};
Copier
Copié
Copier
Copié
True -> (#
w2
, () #)
True -> (#
sc
, () #)
}
}
end Rec }
end Rec }
Copier
Copié
Copier
Copié
Différences enregistrées
Texte d'origine
Ouvrir un fichier
==================== Tidy Core ==================== 2016-07-13 02:20:57.281410183 UTC Result size of Tidy Core = {terms: 129, types: 681, coercions: 440} -- RHS size: {terms: 2, types: 0, coercions: 0} $trModule2 :: TrName [GblId, Caf=NoCafRefs, Str=DmdType m1, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 20}] $trModule2 = TrNameS "main"# -- RHS size: {terms: 2, types: 0, coercions: 0} $trModule1 :: TrName [GblId, Caf=NoCafRefs, Str=DmdType m1, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 20}] $trModule1 = TrNameS "TBench"# -- RHS size: {terms: 3, types: 0, coercions: 0} $trModule :: Module [GblId, Caf=NoCafRefs, Str=DmdType m, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] $trModule = Module $trModule2 $trModule1 -- RHS size: {terms: 2, types: 0, coercions: 0} benches15 :: [Char] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 40 0}] benches15 = unpackCString# "T"# -- RHS size: {terms: 3, types: 4, coercions: 7} benches14 :: R:SingBinz ('D0 'B1) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches14 = SD0 ($fSingIBinD0_$d~~ `cast` ...) $fSingIBinB1_$s$WSB1 -- RHS size: {terms: 3, types: 7, coercions: 13} benches13 :: R:SingPrimeBinz ('P ('D0 'B1)) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches13 = SP ($fSingIPrimeBinP_$d~~ `cast` ...) (benches14 `cast` ...) -- RHS size: {terms: 3, types: 4, coercions: 7} benches12 :: R:SingPosz ('S 'O) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches12 = SS ($fSingIPosS_$d~~ `cast` ...) $fSingIPosO_$s$WSO -- RHS size: {terms: 3, types: 7, coercions: 13} benches11 :: R:SingPosz ('S ('S 'O)) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches11 = SS ($fSingIPosS_$d~~ `cast` ...) (benches12 `cast` ...) -- RHS size: {terms: 3, types: 10, coercions: 16} benches10 :: R:SingPosz ('S ('S ('S 'O))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches10 = SS ($fSingIPosS_$d~~ `cast` ...) (benches11 `cast` ...) -- RHS size: {terms: 3, types: 13, coercions: 19} benches9 :: R:SingPosz ('S ('S ('S ('S 'O)))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches9 = SS ($fSingIPosS_$d~~ `cast` ...) (benches10 `cast` ...) -- RHS size: {terms: 3, types: 16, coercions: 22} benches8 :: R:SingPosz ('S ('S ('S ('S ('S 'O))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches8 = SS ($fSingIPosS_$d~~ `cast` ...) (benches9 `cast` ...) -- RHS size: {terms: 3, types: 19, coercions: 25} benches7 :: R:SingPosz ('S ('S ('S ('S ('S ('S 'O)))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches7 = SS ($fSingIPosS_$d~~ `cast` ...) (benches8 `cast` ...) -- RHS size: {terms: 4, types: 37, coercions: 45} benches6 :: R:Sing(,)z PrimeBin Pos '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O)))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}] benches6 = STuple2 ($fSingI(,)(,)_$d~~ `cast` ...) (benches13 `cast` ...) (benches7 `cast` ...) -- RHS size: {terms: 3, types: 40, coercions: 48} benches5 :: R:SingPrimePowerz ('PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches5 = SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (benches6 `cast` ...) -- RHS size: {terms: 4, types: 53, coercions: 61} benches4 :: R:Sing[]z PrimePower '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}] benches4 = SCons ($fSingI[]:_$d~~ `cast` ...) (benches5 `cast` ...) ($fSingI[][]1 `cast` ...) -- RHS size: {terms: 3, types: 55, coercions: 62} benches3 :: R:SingFactoredz ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches3 = SF ($fSingIFactoredF_$d~~ `cast` ...) (benches4 `cast` ...) -- RHS size: {terms: 2, types: 19, coercions: 25} benches2 :: Tagged (FSym1 ('PP (Tuple2Sym2 ('P ('D0 'B1)) ('S ('S ('S ('S ('S ('S 'O))))))) :$$$ '[])) [PP] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}] benches2 = ppsFact (benches3 `cast` ...) -- RHS size: {terms: 7, types: 1, coercions: 23} benches_n :: Int64 [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 50 20}] benches_n = case $wgo (benches2 `cast` ...) 1# of ww { __DEFAULT -> I64# ww } -- RHS size: {terms: 8, types: 5, coercions: 0} benches1 [InlPrag=INLINE[0]] :: Int64 -> State# RealWorld -> (# State# RealWorld, () #) [GblId, Arity=2, Str=DmdType <S(S),1*U(U)><S,U>, Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False) Tmpl= \ (w [Occ=Once!] :: Int64) (w1 [Occ=Once, OS=OneShot] :: State# RealWorld) -> case w of _ [Occ=Dead] { I64# ww1 [Occ=Once] -> $wbenches ww1 w1 }}] benches1 = \ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) -> case w of _ [Occ=Dead] { I64# ww1 -> $wbenches ww1 w1 } -- RHS size: {terms: 3, types: 0, coercions: 8} benches :: Benchmark [GblId, Str=DmdType m2, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches = Benchmark benches15 (benches1 `cast` ...) -- RHS size: {terms: 2, types: 19, coercions: 25} benches_eta :: Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}] benches_eta = foo (benches3 `cast` ...) -- RHS size: {terms: 7, types: 3, coercions: 21} $wbenches [InlPrag=[0]] :: Int# -> State# RealWorld -> (# State# RealWorld, () #) [GblId, Arity=2, Str=DmdType <S,U><S,U>, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [0 0] 40 0}] $wbenches = \ (ww :: Int#) (w [OS=OneShot] :: State# RealWorld) -> $wgo12 benches_eta (benches_n `cast` ...) ww w Rec { -- RHS size: {terms: 30, types: 101, coercions: 0} $wgo12 [InlPrag=[0], Occ=LoopBreaker] :: (Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) -> Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Int# -> State# RealWorld -> (# State# RealWorld, () #) [GblId, Arity=4, Caf=NoCafRefs, Str=DmdType <L,C(U)><L,U><S,U><S,U>] $wgo12 = \ (w :: Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) (w1 :: Foo (FSym1 '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) (ww :: Int#) (w2 [OS=OneShot] :: State# RealWorld) -> case tagToEnum# (<=# ww 0#) of _ [Occ=Dead] { False -> case seq# (case w w1 of _ [Occ=Dead] { __DEFAULT -> () }) w2 of _ [Occ=Dead] { (# ipv, ipv1 #) -> $wgo12 w w1 (-# ww 1#) ipv }; True -> (# w2, () #) } end Rec }
Texte modifié
Ouvrir un fichier
==================== Tidy Core ==================== 2016-07-13 02:20:57.281410206 UTC Result size of Tidy Core = {terms: 119, types: 727, coercions: 529} -- RHS size: {terms: 2, types: 0, coercions: 0} $trModule2 :: TrName [GblId, Caf=NoCafRefs, Str=DmdType m1, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 30 20}] $trModule2 = TrNameS "main"# -- RHS size: {terms: 2, types: 0, coercions: 0} $trModule1 :: TrName [GblId, Caf=NoCafRefs, Str=DmdType m1, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 40 20}] $trModule1 = TrNameS "BarBench"# -- RHS size: {terms: 3, types: 0, coercions: 0} $trModule :: Module [GblId, Caf=NoCafRefs, Str=DmdType m, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] $trModule = Module $trModule2 $trModule1 -- RHS size: {terms: 2, types: 0, coercions: 0} benches15 :: [Char] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 40 0}] benches15 = unpackCString# "Bar"# -- RHS size: {terms: 3, types: 4, coercions: 7} benches14 :: R:SingBinz ('D0 'B1) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches14 = SD0 ($fSingIBinD0_$d~~ `cast` ...) $fSingIBinB1_$s$WSB1 -- RHS size: {terms: 3, types: 7, coercions: 13} benches13 :: R:SingPrimeBinz ('P ('D0 'B1)) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches13 = SP ($fSingIPrimeBinP_$d~~ `cast` ...) (benches14 `cast` ...) -- RHS size: {terms: 3, types: 4, coercions: 7} benches12 :: R:SingPosz ('S 'O) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches12 = SS ($fSingIPosS_$d~~ `cast` ...) $fSingIPosO_$s$WSO -- RHS size: {terms: 3, types: 7, coercions: 13} benches11 :: R:SingPosz ('S ('S 'O)) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches11 = SS ($fSingIPosS_$d~~ `cast` ...) (benches12 `cast` ...) -- RHS size: {terms: 3, types: 10, coercions: 16} benches10 :: R:SingPosz ('S ('S ('S 'O))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches10 = SS ($fSingIPosS_$d~~ `cast` ...) (benches11 `cast` ...) -- RHS size: {terms: 3, types: 13, coercions: 19} benches9 :: R:SingPosz ('S ('S ('S ('S 'O)))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches9 = SS ($fSingIPosS_$d~~ `cast` ...) (benches10 `cast` ...) -- RHS size: {terms: 3, types: 16, coercions: 22} benches8 :: R:SingPosz ('S ('S ('S ('S ('S 'O))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches8 = SS ($fSingIPosS_$d~~ `cast` ...) (benches9 `cast` ...) -- RHS size: {terms: 3, types: 19, coercions: 25} benches7 :: R:SingPosz ('S ('S ('S ('S ('S ('S 'O)))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches7 = SS ($fSingIPosS_$d~~ `cast` ...) (benches8 `cast` ...) -- RHS size: {terms: 4, types: 37, coercions: 45} benches6 :: R:Sing(,)z PrimeBin Pos '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O)))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}] benches6 = STuple2 ($fSingI(,)(,)_$d~~ `cast` ...) (benches13 `cast` ...) (benches7 `cast` ...) -- RHS size: {terms: 3, types: 40, coercions: 48} benches5 :: R:SingPrimePowerz ('PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches5 = SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (benches6 `cast` ...) -- RHS size: {terms: 4, types: 53, coercions: 61} benches4 :: R:Sing[]z PrimePower '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 40}] benches4 = SCons ($fSingI[]:_$d~~ `cast` ...) (benches5 `cast` ...) ($fSingI[][]1 `cast` ...) -- RHS size: {terms: 3, types: 55, coercions: 62} benches3 :: R:SingFactoredz ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches3 = SF ($fSingIFactoredF_$d~~ `cast` ...) (benches4 `cast` ...) -- RHS size: {terms: 2, types: 19, coercions: 25} benches2 :: Tagged (FSym1 ('PP (Tuple2Sym2 ('P ('D0 'B1)) ('S ('S ('S ('S ('S ('S 'O))))))) :$$$ '[])) [PP] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=True, Guidance=IF_ARGS [] 20 0}] benches2 = ppsFact (benches3 `cast` ...) -- RHS size: {terms: 7, types: 1, coercions: 23} benches_n :: Int64 [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 50 20}] benches_n = case $wgo (benches2 `cast` ...) 1# of ww { __DEFAULT -> I64# ww } -- RHS size: {terms: 9, types: 5, coercions: 88} benches1 [InlPrag=INLINE[0]] :: Int64 -> State# RealWorld -> (# State# RealWorld, () #) [GblId, Arity=2, Str=DmdType <S(S),1*U(U)><S,U>, Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False) Tmpl= \ (w [Occ=Once!] :: Int64) (w1 [Occ=Once, OS=OneShot] :: State# RealWorld) -> case w of _ [Occ=Dead] { I64# ww1 [Occ=Once] -> benches_$s$wgo12 w1 ww1 (benches_n `cast` ...) @~ ... }}] benches1 = \ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) -> case w of _ [Occ=Dead] { I64# ww1 -> benches_$s$wgo12 w1 ww1 (benches_n `cast` ...) @~ ... } -- RHS size: {terms: 3, types: 0, coercions: 8} benches :: Benchmark [GblId, Str=DmdType m2, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=True, ConLike=True, WorkFree=True, Expandable=True, Guidance=IF_ARGS [] 10 30}] benches = Benchmark benches15 (benches1 `cast` ...) Rec { -- RHS size: {terms: 30, types: 169, coercions: 47} benches_$s$wgo12 [Occ=LoopBreaker] :: State# RealWorld -> Int# -> Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> ((Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *) ~R# ((Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *) => (# State# RealWorld, () #) [GblId, Arity=4, Str=DmdType <S,U><S,U><L,U><L,U>] benches_$s$wgo12 = \ (sc [OS=OneShot] :: State# RealWorld) (sc1 :: Int#) (sc2 :: Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) (sg0 :: ((Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *) ~R# ((Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Bar Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *)) -> case tagToEnum# (<=# sc1 0#) of _ [Occ=Dead] { False -> case seq# (case foo (benches3 `cast` ...) (sc2 `cast` ...) of _ [Occ=Dead] { __DEFAULT -> () }) sc of _ [Occ=Dead] { (# ipv, ipv1 #) -> benches_$s$wgo12 ipv (-# sc1 1#) sc2 @~ ... }; True -> (# sc, () #) } end Rec }
Trouver la différence