[project @ 1997-05-26 05:58:06 by sof]
[ghc-hetmet.git] / ghc / compiler / tests / deSugar / ds009.stderr
1
2
3 ================================================================================
4 Desugared:
5 j{-r3R,x-}  :: 
6     _forall_
7     [t{-aXD-} t{-aXG-} t{-aXJ-} t{-aXM-} a{-aXO-}]
8     =>
9     {PrelBase.Monad{-28,p-} a{-aXO-}}
10     -> a{-aXO-} (t{-aXD-}, t{-aXG-}, t{-aXJ-}, t{-aXM-})
11     -> a{-aXO-} (t{-aXD-}, t{-aXG-})
12 {-# L #-}
13 j{-r3R,x-} =
14     _/\_ t{-aXD-} t{-aXG-} t{-aXJ-} t{-aXM-} a{-aXO-} -> \ d.Monad_aXY  :: 
15                                                                {PrelBase.Monad{-28,p-} a{-aXO-}}
16                                                            {-# L #-}
17                                                            d.Monad_aXY ->
18         let {
19           >>=_a1c0  :: 
20               _forall_
21               [rjI{-a107-} rjJ{-a106-}]
22               =>
23               a{-aXO-} rjI{-a107-}
24               -> (rjI{-a107-} -> a{-aXO-} rjJ{-a106-})
25               -> a{-aXO-} rjJ{-a106-}
26           {-# L #-}
27           >>=_a1c0 =
28               PrelBase.>>={-811,p-}
29                   _@_ a{-aXO-} d.Monad_aXY } in
30         let {
31           d.Monad_aY0  :: 
32               {PrelBase.Monad{-28,p-} a{-aXO-}}
33           {-# L #-}
34           d.Monad_aY0 =
35               d.Monad_aXY } in
36         let {
37           return_a1bZ  :: 
38               _forall_ [rjQ{-a108-}] => rjQ{-a108-} -> a{-aXO-} rjQ{-a108-}
39           {-# L #-}
40           return_a1bZ =
41               PrelBase.return{-816,p-}
42                   _@_ a{-aXO-} d.Monad_aY0
43         } in 
44           \ xs_r3L  :: 
45                 a{-aXO-} (t{-aXD-}, t{-aXG-}, t{-aXJ-}, t{-aXM-})
46             {-# L #-}
47             xs_r3L ->
48               let {
49                 ds_d1cw  :: 
50                     (t{-aXD-}, t{-aXG-}, t{-aXJ-}, t{-aXM-})
51                     -> a{-aXO-} (t{-aXD-}, t{-aXG-})
52                 {-# L #-}
53                 ds_d1cw =
54                     \ ds_d1cC  :: 
55                           (t{-aXD-}, t{-aXG-}, t{-aXJ-}, t{-aXM-})
56                       {-# L #-}
57                       ds_d1cC ->
58                         case
59                             ds_d1cC
60                         of {
61                         PrelTup.(,,,){-64,p-}{i} a_r3N b_r3O c_r3P d_r3Q  ->
62                         let {
63                           ds_d1cQ  :: 
64                               (t{-aXD-}, t{-aXG-})
65                           {-# L #-}
66                           ds_d1cQ =
67                               PrelTup.(,){-62,p-}{i}
68                                   {_@_ t{-aXD-} _@_ t{-aXG-} a_r3N b_r3O}
69                         } in 
70                           return_a1bZ
71                               _@_ (t{-aXD-}, t{-aXG-}) ds_d1cQ;}
72               } in 
73                 >>=_a1c0
74                     _@_ (t{-aXD-}, t{-aXG-}, t{-aXJ-}, t{-aXM-})
75                     _@_ (t{-aXD-}, t{-aXG-})
76                     xs_r3L
77                     ds_d1cw
78 i{-r3S,x-}  :: 
79     _forall_
80     [a{-aYh-} t{-aYm-} t{-aYo-}]
81     =>
82     {PrelBase.Eq{-23,p-} t{-aYm-}}
83     -> {PrelBase.Eq{-23,p-} t{-aYo-}}
84     -> {PrelBase.MonadZero{-29,p-} a{-aYh-}}
85     -> a{-aYh-} ([t{-aYm-}], [t{-aYo-}])
86     -> a{-aYh-} [t{-aYm-}]
87 {-# L #-}
88 i{-r3S,x-} =
89     _/\_ a{-aYh-} t{-aYm-} t{-aYo-} -> \ d.Eq_aYC  :: 
90                                              {PrelBase.Eq{-23,p-} t{-aYm-}}
91                                          {-# L #-}
92                                          d.Eq_aYC d.Eq_aYF  :: 
93                                                       {PrelBase.Eq{-23,p-} t{-aYo-}}
94                                                   {-# L #-}
95                                                   d.Eq_aYF d.MonadZero_aYL  :: 
96                                                                {PrelBase.MonadZero{-29,p-} a{-aYh-}}
97                                                            {-# L #-}
98                                                            d.MonadZero_aYL ->
99         let {
100           d.Monad_aYH  :: 
101               {PrelBase.Monad{-28,p-} a{-aYh-}}
102           {-# L #-}
103           d.Monad_aYH =
104               PrelBase.scsel_MonadZeroPrelBaseMonad{-a1dR,p-}
105                   _@_ a{-aYh-} d.MonadZero_aYL } in
106         let {
107           d.Eq_aYA  :: 
108               {PrelBase.Eq{-23,p-} [t{-aYm-}]}
109           {-# L #-}
110           d.Eq_aYA =
111               PrelBase.$d27{-rqA,p-}
112                   _@_ t{-aYm-} d.Eq_aYC } in
113         let {
114           d.Eq_aYD  :: 
115               {PrelBase.Eq{-23,p-} [t{-aYo-}]}
116           {-# L #-}
117           d.Eq_aYD =
118               PrelBase.$d27{-rqA,p-}
119                   _@_ t{-aYo-} d.Eq_aYF } in
120         let {
121           d.Eq_aYy  :: 
122               {PrelBase.Eq{-23,p-} ([t{-aYm-}], [t{-aYo-}])}
123           {-# L #-}
124           d.Eq_aYy =
125               PrelTup.$d9{-rq7,p-}
126                   _@_ [t{-aYm-}] _@_ [t{-aYo-}] d.Eq_aYA d.Eq_aYD } in
127         let {
128           ==_a1dH  :: 
129               ([t{-aYm-}], [t{-aYo-}])
130               -> ([t{-aYm-}], [t{-aYo-}])
131               -> PrelBase.Bool{-34,p-}
132           {-# L #-}
133           ==_a1dH =
134               PrelBase.=={-8Y,p-}
135                   _@_ ([t{-aYm-}], [t{-aYo-}]) d.Eq_aYy } in
136         let {
137           >>=_a1dG  :: 
138               _forall_
139               [rjI{-a10a-} rjJ{-a109-}]
140               =>
141               a{-aYh-} rjI{-a10a-}
142               -> (rjI{-a10a-} -> a{-aYh-} rjJ{-a109-})
143               -> a{-aYh-} rjJ{-a109-}
144           {-# L #-}
145           >>=_a1dG =
146               PrelBase.>>={-811,p-}
147                   _@_ a{-aYh-} d.Monad_aYH } in
148         let {
149           d.Monad_aYJ  :: 
150               {PrelBase.Monad{-28,p-} a{-aYh-}}
151           {-# L #-}
152           d.Monad_aYJ =
153               d.Monad_aYH } in
154         let {
155           return_a1dF  :: 
156               _forall_ [rjQ{-a10b-}] => rjQ{-a10b-} -> a{-aYh-} rjQ{-a10b-}
157           {-# L #-}
158           return_a1dF =
159               PrelBase.return{-816,p-}
160                   _@_ a{-aYh-} d.Monad_aYJ } in
161         let {
162           zero_a1dE  :: 
163               _forall_ [rjD{-a10c-}] => a{-aYh-} rjD{-a10c-}
164           {-# L #-}
165           zero_a1dE =
166               PrelBase.zero{-810,p-}
167                   _@_ a{-aYh-} d.MonadZero_aYL
168         } in 
169           \ xs_r3F  :: 
170                 a{-aYh-} ([t{-aYm-}], [t{-aYo-}])
171             {-# L #-}
172             xs_r3F ->
173               let {
174                 ds_d1f5  :: 
175                     ([t{-aYm-}], [t{-aYo-}]) -> a{-aYh-} [t{-aYm-}]
176                 {-# L #-}
177                 ds_d1f5 =
178                     \ all_r3H  :: 
179                           ([t{-aYm-}], [t{-aYo-}])
180                       {-# L #-}
181                       all_r3H ->
182                         case all_r3H of { PrelTup.(,){-62,p-}{i} x_r3I y_r3J  ->
183                         case
184                             let { ds_d1fr  :: 
185                                       ([t{-aYm-}], [t{-aYo-}])
186                                   {-# L #-}
187                                   ds_d1fr =
188                               let {
189                                 ds_d1fE  :: 
190                                     [t{-aYm-}]
191                                 {-# L #-}
192                                 ds_d1fE =
193                                     PrelBase.[]{-5i,p-}{i}
194                                         _@_ t{-aYm-} } in
195                               let {
196                                 ds_d1fI  :: 
197                                     [t{-aYo-}]
198                                 {-# L #-}
199                                 ds_d1fI =
200                                     PrelBase.[]{-5i,p-}{i}
201                                         _@_ t{-aYo-}
202                               } in 
203                                 PrelTup.(,){-62,p-}{i}
204                                     {_@_ [t{-aYm-}] _@_ [t{-aYo-}] ds_d1fE ds_d1fI}
205                             } in
206                             ==_a1dH
207                                 all_r3H ds_d1fr
208                         of {
209                           PrelBase.True{-5E,p-}{i} ->
210                               return_a1dF
211                                   _@_ [t{-aYm-}] x_r3I;
212                           PrelBase.False{-58,p-}{i} ->
213                               zero_a1dE
214                                   _@_ [t{-aYm-}];
215                         };}
216               } in 
217                 >>=_a1dG
218                     _@_ ([t{-aYm-}], [t{-aYo-}]) _@_ [t{-aYm-}] xs_r3F ds_d1f5
219 h{-r3T,x-}  :: 
220     _forall_
221     [a{-aYU-} t{-aYZ-}]
222     =>
223     {PrelBase.MonadZero{-29,p-} a{-aYU-}}
224     -> a{-aYU-} t{-aYZ-}
225     -> a{-aYU-} t{-aYZ-}
226     -> a{-aYU-} [t{-aYZ-}]
227 {-# L #-}
228 h{-r3T,x-} =
229     _/\_ a{-aYU-} t{-aYZ-} -> \ d.MonadZero_aZd  :: 
230                                     {PrelBase.MonadZero{-29,p-} a{-aYU-}}
231                                 {-# L #-}
232                                 d.MonadZero_aZd ->
233         let {
234           d.Monad_aZ9  :: 
235               {PrelBase.Monad{-28,p-} a{-aYU-}}
236           {-# L #-}
237           d.Monad_aZ9 =
238               PrelBase.scsel_MonadZeroPrelBaseMonad{-a1dR,p-}
239                   _@_ a{-aYU-} d.MonadZero_aZd } in
240         let {
241           >>=_a1gH  :: 
242               _forall_
243               [rjI{-a10e-} rjJ{-a10d-}]
244               =>
245               a{-aYU-} rjI{-a10e-}
246               -> (rjI{-a10e-} -> a{-aYU-} rjJ{-a10d-})
247               -> a{-aYU-} rjJ{-a10d-}
248           {-# L #-}
249           >>=_a1gH =
250               PrelBase.>>={-811,p-}
251                   _@_ a{-aYU-} d.Monad_aZ9 } in
252         let {
253           d.Monad_aZb  :: 
254               {PrelBase.Monad{-28,p-} a{-aYU-}}
255           {-# L #-}
256           d.Monad_aZb =
257               d.Monad_aZ9 } in
258         let {
259           return_a1gG  :: 
260               _forall_ [rjQ{-a10f-}] => rjQ{-a10f-} -> a{-aYU-} rjQ{-a10f-}
261           {-# L #-}
262           return_a1gG =
263               PrelBase.return{-816,p-}
264                   _@_ a{-aYU-} d.Monad_aZb } in
265         let {
266           zero_a1gF  :: 
267               _forall_ [rjD{-a10g-}] => a{-aYU-} rjD{-a10g-}
268           {-# L #-}
269           zero_a1gF =
270               PrelBase.zero{-810,p-}
271                   _@_ a{-aYU-} d.MonadZero_aZd
272         } in 
273           \ xs_r3x  :: 
274                 a{-aYU-} t{-aYZ-}
275             {-# L #-}
276             xs_r3x ys_r3z  :: 
277                        a{-aYU-} t{-aYZ-}
278                    {-# L #-}
279                    ys_r3z ->
280               let {
281                 ds_d1hu  :: 
282                     t{-aYZ-} -> a{-aYU-} [t{-aYZ-}]
283                 {-# L #-}
284                 ds_d1hu =
285                     \ x_r3B  :: 
286                           t{-aYZ-}
287                       {-# L #-}
288                       x_r3B ->
289                         let {
290                           ds_d1hK  :: 
291                               t{-aYZ-} -> a{-aYU-} [t{-aYZ-}]
292                           {-# L #-}
293                           ds_d1hK =
294                               \ y_r3D  :: 
295                                     t{-aYZ-}
296                                 {-# L #-}
297                                 y_r3D ->
298                                   zero_a1gF
299                                       _@_ [t{-aYZ-}]
300                         } in 
301                           >>=_a1gH
302                               _@_ t{-aYZ-} _@_ [t{-aYZ-}] ys_r3z ds_d1hK
303               } in 
304                 >>=_a1gH
305                     _@_ t{-aYZ-} _@_ [t{-aYZ-}] xs_r3x ds_d1hu
306 g{-r3U,x-}  :: 
307     _forall_
308     [a{-aZn-} t{-aZp-} t{-aZs-} t{-aZv-}]
309     =>
310     {PrelBase.MonadZero{-29,p-} a{-aZn-}}
311     -> a{-aZn-} t{-aZp-}
312     -> a{-aZn-} t{-aZs-}
313     -> a{-aZn-} t{-aZv-}
314     -> a{-aZn-} (t{-aZp-}, t{-aZs-}, t{-aZv-})
315 {-# L #-}
316 g{-r3U,x-} =
317     _/\_ a{-aZn-} t{-aZp-} t{-aZs-} t{-aZv-} -> \ d.MonadZero_aZJ  :: 
318                                                       {PrelBase.MonadZero{-29,p-} a{-aZn-}}
319                                                   {-# L #-}
320                                                   d.MonadZero_aZJ ->
321         let {
322           d.Monad_aZF  :: 
323               {PrelBase.Monad{-28,p-} a{-aZn-}}
324           {-# L #-}
325           d.Monad_aZF =
326               PrelBase.scsel_MonadZeroPrelBaseMonad{-a1dR,p-}
327                   _@_ a{-aZn-} d.MonadZero_aZJ } in
328         let {
329           >>=_a1im  :: 
330               _forall_
331               [rjI{-a10i-} rjJ{-a10h-}]
332               =>
333               a{-aZn-} rjI{-a10i-}
334               -> (rjI{-a10i-} -> a{-aZn-} rjJ{-a10h-})
335               -> a{-aZn-} rjJ{-a10h-}
336           {-# L #-}
337           >>=_a1im =
338               PrelBase.>>={-811,p-}
339                   _@_ a{-aZn-} d.Monad_aZF } in
340         let {
341           d.Monad_aZH  :: 
342               {PrelBase.Monad{-28,p-} a{-aZn-}}
343           {-# L #-}
344           d.Monad_aZH =
345               d.Monad_aZF } in
346         let {
347           return_a1il  :: 
348               _forall_ [rjQ{-a10j-}] => rjQ{-a10j-} -> a{-aZn-} rjQ{-a10j-}
349           {-# L #-}
350           return_a1il =
351               PrelBase.return{-816,p-}
352                   _@_ a{-aZn-} d.Monad_aZH } in
353         let {
354           zero_a1ik  :: 
355               _forall_ [rjD{-a10k-}] => a{-aZn-} rjD{-a10k-}
356           {-# L #-}
357           zero_a1ik =
358               PrelBase.zero{-810,p-}
359                   _@_ a{-aZn-} d.MonadZero_aZJ
360         } in 
361           \ xs_r3l  :: 
362                 a{-aZn-} t{-aZp-}
363             {-# L #-}
364             xs_r3l ys_r3n  :: 
365                        a{-aZn-} t{-aZs-}
366                    {-# L #-}
367                    ys_r3n zs_r3p  :: 
368                               a{-aZn-} t{-aZv-}
369                           {-# L #-}
370                           zs_r3p ->
371               let {
372                 ds_d1ja  :: 
373                     t{-aZp-} -> a{-aZn-} (t{-aZp-}, t{-aZs-}, t{-aZv-})
374                 {-# L #-}
375                 ds_d1ja =
376                     \ x_r3r  :: 
377                           t{-aZp-}
378                       {-# L #-}
379                       x_r3r ->
380                         let {
381                           ds_d1jq  :: 
382                               t{-aZs-} -> a{-aZn-} (t{-aZp-}, t{-aZs-}, t{-aZv-})
383                           {-# L #-}
384                           ds_d1jq =
385                               \ y_r3t  :: 
386                                     t{-aZs-}
387                                 {-# L #-}
388                                 y_r3t ->
389                                   let {
390                                     ds_d1jG  :: 
391                                         t{-aZv-} -> a{-aZn-} (t{-aZp-}, t{-aZs-}, t{-aZv-})
392                                     {-# L #-}
393                                     ds_d1jG =
394                                         \ z_r3v  :: 
395                                               t{-aZv-}
396                                           {-# L #-}
397                                           z_r3v ->
398                                             let {
399                                               ds_d1jR  :: 
400                                                   (t{-aZp-}, t{-aZs-}, t{-aZv-})
401                                               {-# L #-}
402                                               ds_d1jR =
403                                                   PrelTup.(,,){-63,p-}{i}
404                                                       {_@_ t{-aZp-}
405                                                        _@_ t{-aZs-}
406                                                        _@_ t{-aZv-}
407                                                        x_r3r
408                                                        y_r3t
409                                                        z_r3v}
410                                             } in 
411                                               return_a1il
412                                                   _@_ (t{-aZp-}, t{-aZs-}, t{-aZv-}) ds_d1jR
413                                   } in 
414                                     >>=_a1im
415                                         _@_ t{-aZv-}
416                                         _@_ (t{-aZp-}, t{-aZs-}, t{-aZv-})
417                                         zs_r3p
418                                         ds_d1jG
419                         } in 
420                           >>=_a1im
421                               _@_ t{-aZs-} _@_ (t{-aZp-}, t{-aZs-}, t{-aZv-}) ys_r3n ds_d1jq
422               } in 
423                 >>=_a1im
424                     _@_ t{-aZp-} _@_ (t{-aZp-}, t{-aZs-}, t{-aZv-}) xs_r3l ds_d1ja
425 f{-r3V,x-}  :: 
426     _forall_
427     [a{-aZR-} t{-aZT-}]
428     =>
429     {PrelBase.Monad{-28,p-} a{-aZR-}}
430     -> a{-aZR-} t{-aZT-}
431     -> a{-aZR-} t{-aZT-}
432 {-# L #-}
433 f{-r3V,x-} =
434     _/\_ a{-aZR-} t{-aZT-} -> \ d.Monad_a103  :: 
435                                     {PrelBase.Monad{-28,p-} a{-aZR-}}
436                                 {-# L #-}
437                                 d.Monad_a103 ->
438         let {
439           >>=_a1ky  :: 
440               _forall_
441               [rjI{-a10m-} rjJ{-a10l-}]
442               =>
443               a{-aZR-} rjI{-a10m-}
444               -> (rjI{-a10m-} -> a{-aZR-} rjJ{-a10l-})
445               -> a{-aZR-} rjJ{-a10l-}
446           {-# L #-}
447           >>=_a1ky =
448               PrelBase.>>={-811,p-}
449                   _@_ a{-aZR-} d.Monad_a103 } in
450         let {
451           d.Monad_a105  :: 
452               {PrelBase.Monad{-28,p-} a{-aZR-}}
453           {-# L #-}
454           d.Monad_a105 =
455               d.Monad_a103 } in
456         let {
457           return_a1kx  :: 
458               _forall_ [rjQ{-a10n-}] => rjQ{-a10n-} -> a{-aZR-} rjQ{-a10n-}
459           {-# L #-}
460           return_a1kx =
461               PrelBase.return{-816,p-}
462                   _@_ a{-aZR-} d.Monad_a105
463         } in 
464           \ xs_r3h  :: 
465                 a{-aZR-} t{-aZT-}
466             {-# L #-}
467             xs_r3h ->
468               let {
469                 ds_d1l4  :: 
470                     t{-aZT-} -> a{-aZR-} t{-aZT-}
471                 {-# L #-}
472                 ds_d1l4 =
473                     \ x_r3j  :: 
474                           t{-aZT-}
475                       {-# L #-}
476                       x_r3j ->
477                         return_a1kx
478                             _@_ t{-aZT-} x_r3j
479               } in 
480                 >>=_a1ky
481                     _@_ t{-aZT-} _@_ t{-aZT-} xs_r3h ds_d1l4