Diff
checker
Texto
Texto
Imágenes
Documentos
Excel
Carpetas
Legal
Enterprise
Aplicación de escritorio
Precios
Iniciar sesión
Descargar Diffchecker Desktop
Comparar texto
Encuentra la diferencia entre dos archivos de texto
Herramientas
Historial
Editor live
Ocultar sin cambios
Sin ajuste de línea
Vista
Dividido
Unificado
Nivel de detalle
Inteligente
Palabra
Letra
Resaltado de sintaxis
Elegir sintaxis
Ignorar
Transformar texto
Ir al primer cambio
Editar entrada
Diffchecker Desktop
La forma más segura de usar Diffchecker. ¡Obtén la app de Diffchecker Desktop: tus diffs nunca salen de tu computadora!
Obtener Desktop
Untitled diff
Creado
hace 10 años
El diff nunca expira
Borrar
Exportar
Compartir
Explicar
71 eliminaciones
Líneas
Total
Eliminado
Caracteres
Total
Eliminado
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
246 líneas
Copiar todo
85 adiciones
Líneas
Total
Añadido
Caracteres
Total
Añadido
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
258 líneas
Copiar todo
==================== Tidy Core ====================
==================== Tidy Core ====================
Copiar
Copiado
Copiar
Copiado
2016-07-13 02:20:57.
288844358
UTC
2016-07-13 02:20:57.
281410206
UTC
Copiar
Copiado
Copiar
Copiado
Result size of Tidy Core = {terms:
120
, types:
664
, coercions:
458
}
Result size of Tidy Core = {terms:
119
, 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}]
Copiar
Copiado
Copiar
Copiado
$trModule1 = TrNameS "
FooBench
"#
$trModule1 = TrNameS "
BarBench
"#
-- 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}
Copiar
Copiado
Copiar
Copiado
benches
2
:: [Char]
benches
15
:: [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}]
Copiar
Copiado
Copiar
Copiado
benches
2
= unpackCString# "
Foo
"#
benches
15
= unpackCString# "
Bar
"#
-- RHS size: {terms: 3, types: 4, coercions: 7}
-- RHS size: {terms: 3, types: 4, coercions: 7}
Copiar
Copiado
Copiar
Copiado
$sfoo14
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo14
= 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}
Copiar
Copiado
Copiar
Copiado
$sfoo13
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo13
=
benches13
=
SP ($fSingIPrimeBinP_$d~~ `cast` ...) (
$sfoo14
`cast` ...)
SP ($fSingIPrimeBinP_$d~~ `cast` ...) (
benches14
`cast` ...)
-- RHS size: {terms: 3, types: 4, coercions: 7}
-- RHS size: {terms: 3, types: 4, coercions: 7}
Copiar
Copiado
Copiar
Copiado
$sfoo12
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo12
= 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}
Copiar
Copiado
Copiar
Copiado
$sfoo11
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo11
= SS ($fSingIPosS_$d~~ `cast` ...) (
$sfoo12
`cast` ...)
benches11
= SS ($fSingIPosS_$d~~ `cast` ...) (
benches12
`cast` ...)
-- RHS size: {terms: 3, types: 10, coercions: 16}
-- RHS size: {terms: 3, types: 10, coercions: 16}
Copiar
Copiado
Copiar
Copiado
$sfoo10
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo10
= SS ($fSingIPosS_$d~~ `cast` ...) (
$sfoo11
`cast` ...)
benches10
= SS ($fSingIPosS_$d~~ `cast` ...) (
benches11
`cast` ...)
-- RHS size: {terms: 3, types: 13, coercions: 19}
-- RHS size: {terms: 3, types: 13, coercions: 19}
Copiar
Copiado
Copiar
Copiado
$sfoo9
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo9
= SS ($fSingIPosS_$d~~ `cast` ...) (
$sfoo10
`cast` ...)
benches9
= SS ($fSingIPosS_$d~~ `cast` ...) (
benches10
`cast` ...)
-- RHS size: {terms: 3, types: 16, coercions: 22}
-- RHS size: {terms: 3, types: 16, coercions: 22}
Copiar
Copiado
Copiar
Copiado
$sfoo8
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo8
= SS ($fSingIPosS_$d~~ `cast` ...) (
$sfoo9
`cast` ...)
benches8
= SS ($fSingIPosS_$d~~ `cast` ...) (
benches9
`cast` ...)
-- RHS size: {terms: 3, types: 19, coercions: 25}
-- RHS size: {terms: 3, types: 19, coercions: 25}
Copiar
Copiado
Copiar
Copiado
$sfoo7
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo7
= SS ($fSingIPosS_$d~~ `cast` ...) (
$sfoo8
`cast` ...)
benches7
= SS ($fSingIPosS_$d~~ `cast` ...) (
benches8
`cast` ...)
-- RHS size: {terms: 4, types: 37, coercions: 45}
-- RHS size: {terms: 4, types: 37, coercions: 45}
Copiar
Copiado
Copiar
Copiado
$sfoo6
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}]
Copiar
Copiado
Copiar
Copiado
$sfoo6
=
benches6
=
STuple2
STuple2
($fSingI(,)(,)_$d~~ `cast` ...)
($fSingI(,)(,)_$d~~ `cast` ...)
Copiar
Copiado
Copiar
Copiado
(
$sfoo13
`cast` ...)
(
benches13
`cast` ...)
(
$sfoo7
`cast` ...)
(
benches7
`cast` ...)
-- RHS size: {terms: 3, types: 40, coercions: 48}
-- RHS size: {terms: 3, types: 40, coercions: 48}
Copiar
Copiado
Copiar
Copiado
$sfoo5
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}]
Copiar
Copiado
Copiar
Copiado
$sfoo5
=
benches5
=
SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (
$sfoo6
`cast` ...)
SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) (
benches6
`cast` ...)
-- RHS size: {terms: 4, types: 53, coercions: 61}
-- RHS size: {terms: 4, types: 53, coercions: 61}
Copiar
Copiado
Copiar
Copiado
$sfoo4
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}]
Copiar
Copiado
Copiar
Copiado
$sfoo4
=
benches4
=
SCons
SCons
($fSingI[]:_$d~~ `cast` ...)
($fSingI[]:_$d~~ `cast` ...)
Copiar
Copiado
Copiar
Copiado
(
$sfoo5
`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}
Copiar
Copiado
Copiar
Copiado
$sfoo3
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}]
Copiar
Copiado
Copiar
Copiado
$sfoo3
= SF ($fSingIFactoredF_$d~~ `cast` ...) (
$sfoo4
`cast` ...)
benches3
= SF ($fSingIFactoredF_$d~~ `cast` ...) (
benches4
`cast` ...)
-- RHS size: {terms: 2, types: 19, coercions: 25}
-- RHS size: {terms: 2, types: 19, coercions: 25}
Copiar
Copiado
Copiar
Copiado
$sfoo2
benches2
:: Tagged
:: Tagged
Copiar
Copiado
Copiar
Copiado
(FSym1
'[
'PP
'
('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}]
Copiar
Copiado
Copiar
Copiado
$sfoo2
= ppsFact (
$sfoo3
`cast` ...)
benches2
= ppsFact (
benches3
`cast` ...)
-- RHS size: {terms: 7, types: 1, coercions: 23}
-- RHS size: {terms: 7, types: 1, coercions: 23}
Copiar
Copiado
Copiar
Copiado
$sfoo_totm
:: 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}]
Copiar
Copiado
Copiar
Copiado
$sfoo_totm
=
benches_n
=
case $wgo (
$sfoo2
`cast` ...) 1# of ww { __DEFAULT -> I64# ww }
case $wgo (
benches2
`cast` ...) 1# of ww { __DEFAULT -> I64# ww }
Copiar
Copiado
Copiar
Copiado
-- RHS size: {terms: 9, types: 5, coercions:
63
}
-- 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] ->
Copiar
Copiado
Copiar
Copiado
benches_$s$wgo12 w1 ww1 (
$sfoo_totm
`cast` ...) @~ ...
benches_$s$wgo12 w1 ww1 (
benches_n
`cast` ...) @~ ...
}}]
}}]
benches1 =
benches1 =
\ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) ->
\ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) ->
case w of _ [Occ=Dead] { I64# ww1 ->
case w of _ [Occ=Dead] { I64# ww1 ->
Copiar
Copiado
Copiar
Copiado
benches_$s$wgo12 w1 ww1 (
$sfoo_totm
`cast` ...) @~ ...
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}]
Copiar
Copiado
Copiar
Copiado
benches = Benchmark benches
2
(benches1 `cast` ...)
benches = Benchmark benches
15
(benches1 `cast` ...)
Rec {
Rec {
Copiar
Copiado
Copiar
Copiado
-- RHS size: {terms:
31
, types: 1
2
9, coercions:
1
}
-- RHS size: {terms:
30
, types: 1
6
9, coercions:
47
}
benches_$s$wgo12 [Occ=LoopBreaker]
benches_$s$wgo12 [Occ=LoopBreaker]
:: State# RealWorld
:: State# RealWorld
-> Int#
-> Int#
Copiar
Copiado
Copiar
Copiado
->
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
->
Bar
-> ((
Foo
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> ((
Bar
-> Int64) :: *)
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
~R#
((
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
-> Foo
Copiar
Copiado
Copiar
Copiado
('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
('F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *) =>
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *) =>
(# State# RealWorld, () #)
(# State# RealWorld, () #)
[GblId, Arity=4, Str=DmdType <S,U><S,U><L,U><L,U>]
[GblId, Arity=4, Str=DmdType <S,U><S,U><L,U><L,U>]
benches_$s$wgo12 =
benches_$s$wgo12 =
\ (sc [OS=OneShot] :: State# RealWorld)
\ (sc [OS=OneShot] :: State# RealWorld)
(sc1 :: Int#)
(sc1 :: Int#)
(sc2
(sc2
Copiar
Copiado
Copiar
Copiado
::
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))))))]))
(sg0
(sg0
Copiar
Copiado
Copiar
Copiado
:: ((
Foo
:: ((
Bar
('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))))))])
-> Int64) :: *)
~R#
((
Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])
-> Foo
-> Foo
Copiar
Copiado
Copiar
Copiado
('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
('F
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *)) ->
'['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) :: *)) ->
case tagToEnum# (<=# sc1 0#) of _ [Occ=Dead] {
case tagToEnum# (<=# sc1 0#) of _ [Occ=Dead] {
False ->
False ->
case seq#
case seq#
Copiar
Copiado
Copiar
Copiado
(case
sc2
of _ [Occ=Dead] { __DEFAULT ->
(case
foo (benches3 `cast` ...) (
sc2
`cast` ...)
case $sfoo_totm of _ [Occ=Dead] { I64# y# -> () }
of _ [Occ=Dead] { __DEFAULT ->
()
})
})
sc
sc
of _ [Occ=Dead] { (# ipv, ipv1 #) ->
of _ [Occ=Dead] { (# ipv, ipv1 #) ->
benches_$s$wgo12 ipv (-# sc1 1#) sc2 @~ ...
benches_$s$wgo12 ipv (-# sc1 1#) sc2 @~ ...
};
};
True -> (# sc, () #)
True -> (# sc, () #)
}
}
end Rec }
end Rec }
Copiar
Copiado
Copiar
Copiado
Diferencias guardadas
Texto original
Abrir archivo
==================== Tidy Core ==================== 2016-07-13 02:20:57.288844358 UTC Result size of Tidy Core = {terms: 120, types: 664, coercions: 458} -- 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 "FooBench"# -- 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} benches2 :: [Char] [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 40 0}] benches2 = unpackCString# "Foo"# -- RHS size: {terms: 3, types: 4, coercions: 7} $sfoo14 :: 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}] $sfoo14 = SD0 ($fSingIBinD0_$d~~ `cast` ...) $fSingIBinB1_$s$WSB1 -- RHS size: {terms: 3, types: 7, coercions: 13} $sfoo13 :: 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}] $sfoo13 = SP ($fSingIPrimeBinP_$d~~ `cast` ...) ($sfoo14 `cast` ...) -- RHS size: {terms: 3, types: 4, coercions: 7} $sfoo12 :: 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}] $sfoo12 = SS ($fSingIPosS_$d~~ `cast` ...) $fSingIPosO_$s$WSO -- RHS size: {terms: 3, types: 7, coercions: 13} $sfoo11 :: 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}] $sfoo11 = SS ($fSingIPosS_$d~~ `cast` ...) ($sfoo12 `cast` ...) -- RHS size: {terms: 3, types: 10, coercions: 16} $sfoo10 :: 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}] $sfoo10 = SS ($fSingIPosS_$d~~ `cast` ...) ($sfoo11 `cast` ...) -- RHS size: {terms: 3, types: 13, coercions: 19} $sfoo9 :: 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}] $sfoo9 = SS ($fSingIPosS_$d~~ `cast` ...) ($sfoo10 `cast` ...) -- RHS size: {terms: 3, types: 16, coercions: 22} $sfoo8 :: 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}] $sfoo8 = SS ($fSingIPosS_$d~~ `cast` ...) ($sfoo9 `cast` ...) -- RHS size: {terms: 3, types: 19, coercions: 25} $sfoo7 :: 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}] $sfoo7 = SS ($fSingIPosS_$d~~ `cast` ...) ($sfoo8 `cast` ...) -- RHS size: {terms: 4, types: 37, coercions: 45} $sfoo6 :: 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}] $sfoo6 = STuple2 ($fSingI(,)(,)_$d~~ `cast` ...) ($sfoo13 `cast` ...) ($sfoo7 `cast` ...) -- RHS size: {terms: 3, types: 40, coercions: 48} $sfoo5 :: 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}] $sfoo5 = SPP ($fSingIPrimePowerPP_$d~~ `cast` ...) ($sfoo6 `cast` ...) -- RHS size: {terms: 4, types: 53, coercions: 61} $sfoo4 :: 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}] $sfoo4 = SCons ($fSingI[]:_$d~~ `cast` ...) ($sfoo5 `cast` ...) ($fSingI[][]1 `cast` ...) -- RHS size: {terms: 3, types: 55, coercions: 62} $sfoo3 :: 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}] $sfoo3 = SF ($fSingIFactoredF_$d~~ `cast` ...) ($sfoo4 `cast` ...) -- RHS size: {terms: 2, types: 19, coercions: 25} $sfoo2 :: Tagged (FSym1 '['PP '('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}] $sfoo2 = ppsFact ($sfoo3 `cast` ...) -- RHS size: {terms: 7, types: 1, coercions: 23} $sfoo_totm :: Int64 [GblId, Str=DmdType, Unf=Unf{Src=<vanilla>, TopLvl=True, Value=False, ConLike=False, WorkFree=False, Expandable=False, Guidance=IF_ARGS [] 50 20}] $sfoo_totm = case $wgo ($sfoo2 `cast` ...) 1# of ww { __DEFAULT -> I64# ww } -- RHS size: {terms: 9, types: 5, coercions: 63} 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 ($sfoo_totm `cast` ...) @~ ... }}] benches1 = \ (w :: Int64) (w1 [OS=OneShot] :: State# RealWorld) -> case w of _ [Occ=Dead] { I64# ww1 -> benches_$s$wgo12 w1 ww1 ($sfoo_totm `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 benches2 (benches1 `cast` ...) Rec { -- RHS size: {terms: 31, types: 129, coercions: 1} benches_$s$wgo12 [Occ=LoopBreaker] :: State# RealWorld -> Int# -> 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))))))]) -> Int64) :: *) ~R# ((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))))))])) :: *) => (# 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 :: Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))])) (sg0 :: ((Foo ('F '['PP '('P ('D0 'B1), 'S ('S ('S ('S ('S ('S 'O))))))]) -> Int64) :: *) ~R# ((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))))))])) :: *)) -> case tagToEnum# (<=# sc1 0#) of _ [Occ=Dead] { False -> case seq# (case sc2 of _ [Occ=Dead] { __DEFAULT -> case $sfoo_totm of _ [Occ=Dead] { I64# y# -> () } }) sc of _ [Occ=Dead] { (# ipv, ipv1 #) -> benches_$s$wgo12 ipv (-# sc1 1#) sc2 @~ ... }; True -> (# sc, () #) } end Rec }
Texto modificado
Abrir archivo
==================== 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 }
Encontrar la diferencia