-Desugared:
-Test.f :: for all d, e. <Ord e> -> <Num e> -> d -> e
-Test.f =
- /\ o79 t102 -> \ dict.103 dict.104 x.107 ->
- let
- ds.124 =
- /\ t108 -> \ dict.109 dict.110 ->
- let dict.111 = dict.110 in
- let dict.112 = dict.111 in
- let dict.113 = dict.112 in
- let dict.114 = dict.113 in
- let dict.115 = dict.114 in
- let dict.116 = dict.109
- in
- let
- {- CoRec -}
- ds.117 =
- case ((< t108) dict.116 y.118 z.119) of {
- True ->
- MkTuple2!
- t108
- t108
- ((fromInteger t108)
- dict.115 (MkInteger! 0##))
- ((fromInteger t108)
- dict.114 (MkInteger! 1##))
- False ->
- case ((> t108) dict.109 y.118 z.119) of {
- True ->
- MkTuple2!
- t108
- t108
- ((fromInteger t108)
- dict.113 (MkInteger! 1##))
- ((fromInteger t108)
- dict.112 (MkInteger! 2##))
- False ->
- MkTuple2!
- t108
- t108
- ((fromInteger t108)
- dict.111 (MkInteger! 2##))
- ((fromInteger t108)
- dict.110 (MkInteger! 3##))
- }
- }
- y.118 =
- case ds.117 of {
- MkTuple2 y.120 z.121 -> y.120
- }
- z.119 =
- case ds.117 of {
- MkTuple2 y.122 z.123 -> z.123
- }
- {- end CoRec -}
- in MkTuple2! t108 t108 y.118 z.119 in
- let
- y.130 =
- /\ t125 -> \ dict.126 dict.127 ->
- case ((ds.124 t125) dict.126 dict.127) of {
- MkTuple2 y.128 z.129 -> y.128
- } in
- let
- z.136 =
- /\ t131 -> \ dict.132 dict.133 ->
- case ((ds.124 t131) dict.132 dict.133) of {
- MkTuple2 y.134 z.135 -> z.135
- }
- in (y.130 t102) dict.103 dict.104
+
+================================================================================
+Desugared:
+f{-r3h,x-} ::
+ _forall_
+ [t{-aY1-} t{-aYi-}]
+ =>
+ {PrelBase.Ord{-2d,p-} t{-aY1-}}
+ -> {PrelBase.Num{-2c,p-} t{-aY1-}}
+ -> t{-aYi-}
+ -> t{-aY1-}
+{-# L #-}
+f{-r3h,x-} =
+ _/\_ t{-aY1-} t{-aYi-} -> \ d.Ord_aYk ::
+ {PrelBase.Ord{-2d,p-} t{-aY1-}}
+ {-# L #-}
+ d.Ord_aYk d.Num_aYn ::
+ {PrelBase.Num{-2c,p-} t{-aY1-}}
+ {-# L #-}
+ d.Num_aYn ->
+ let {
+ <_a137 ::
+ t{-aY1-} -> t{-aY1-} -> PrelBase.Bool{-34,p-}
+ {-# L #-}
+ <_a137 =
+ PrelBase.<{-rcJ,p-}
+ _@_ t{-aY1-} d.Ord_aYk } in
+ let {
+ fromInt_a136 ::
+ PrelBase.Int{-3g,p-} -> t{-aY1-}
+ {-# L #-}
+ fromInt_a136 =
+ PrelBase.fromInt{-8R,p-}
+ _@_ t{-aY1-} d.Num_aYn } in
+ let { lit_a135 ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a135 =
+ let {
+ ds_d13v ::
+ PrelBase.Int{-3g,p-}
+ {-# L #-}
+ ds_d13v =
+ PrelBase.I#{-5b,p-}{i}
+ 0
+ } in
+ fromInt_a136
+ ds_d13v
+ } in
+ let {
+ fromInt_a134 ::
+ PrelBase.Int{-3g,p-} -> t{-aY1-}
+ {-# L #-}
+ fromInt_a134 =
+ fromInt_a136 } in
+ let { lit_a133 ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a133 =
+ let {
+ ds_d13K ::
+ PrelBase.Int{-3g,p-}
+ {-# L #-}
+ ds_d13K =
+ PrelBase.I#{-5b,p-}{i}
+ 1
+ } in
+ fromInt_a134
+ ds_d13K
+ } in
+ let {
+ d.Ord_aYq ::
+ {PrelBase.Ord{-2d,p-} t{-aY1-}}
+ {-# L #-}
+ d.Ord_aYq =
+ d.Ord_aYk } in
+ let {
+ >_a132 ::
+ t{-aY1-} -> t{-aY1-} -> PrelBase.Bool{-34,p-}
+ {-# L #-}
+ >_a132 =
+ PrelBase.>{-rcL,p-}
+ _@_ t{-aY1-} d.Ord_aYq } in
+ let {
+ fromInt_a131 ::
+ PrelBase.Int{-3g,p-} -> t{-aY1-}
+ {-# L #-}
+ fromInt_a131 =
+ fromInt_a136 } in
+ let { lit_a130 ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a130 =
+ let {
+ ds_d148 ::
+ PrelBase.Int{-3g,p-}
+ {-# L #-}
+ ds_d148 =
+ PrelBase.I#{-5b,p-}{i}
+ 2
+ } in
+ fromInt_a131
+ ds_d148
+ } in
+ let {
+ fromInt_a12Z ::
+ PrelBase.Int{-3g,p-} -> t{-aY1-}
+ {-# L #-}
+ fromInt_a12Z =
+ fromInt_a136 } in
+ let { lit_a12W ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a12W =
+ let {
+ ds_d14n ::
+ PrelBase.Int{-3g,p-}
+ {-# L #-}
+ ds_d14n =
+ PrelBase.I#{-5b,p-}{i}
+ 3
+ } in
+ fromInt_a12Z
+ ds_d14n
+ } in
+ \ x_r3d ::
+ t{-aYi-}
+ {-# L #-}
+ x_r3d ->
+ _letrec_ {
+ lit_a14F ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a14F =
+ lit_a133;
+ lit_a14H ::
+ t{-aY1-}
+ {-# L #-}
+ lit_a14H =
+ lit_a130;
+ ds_d14Q ::
+ (t{-aY1-}, t{-aY1-})
+ {-# L #-}
+ ds_d14Q =
+ case
+ <_a137
+ y_aXx z_aXy
+ of {
+ PrelBase.True{-5E,p-}{i} ->
+ PrelTup.(,){-62,p-}{i}
+ {_@_ t{-aY1-} _@_ t{-aY1-} lit_a135 lit_a133};
+ PrelBase.False{-58,p-}{i} ->
+ case
+ >_a132
+ y_aXx z_aXy
+ of {
+ PrelBase.True{-5E,p-}{i} ->
+ PrelTup.(,){-62,p-}{i}
+ {_@_ t{-aY1-} _@_ t{-aY1-} lit_a14F lit_a130};
+ PrelBase.False{-58,p-}{i} ->
+ PrelTup.(,){-62,p-}{i}
+ {_@_ t{-aY1-} _@_ t{-aY1-} lit_a14H lit_a12W};
+ };
+ };
+ y_aXx ::
+ t{-aY1-}
+ {-# L #-}
+ y_aXx =
+ case ds_d14Q of { PrelTup.(,){-62,p-}{i} y_aXx z_aXy -> y_aXx;};
+ z_aXy ::
+ t{-aY1-}
+ {-# L #-}
+ z_aXy =
+ case ds_d14Q of { PrelTup.(,){-62,p-}{i} y_aXx z_aXy -> z_aXy;};
+ y_r3f ::
+ t{-aY1-}
+ {-# L #-}
+ y_r3f =
+ y_aXx;
+ z_r3g ::
+ t{-aY1-}
+ {-# L #-}
+ z_r3g =
+ z_aXy;
+ } in
+ y_r3f