Ticket #1127: proposal-1127-2.patch

File proposal-1127-2.patch, 3.6 KB (added by igloo, 8 years ago)
Line 
1
2New patches:
3
4[Make mtl lazier; trac proposal #1127
5Ian Lynagh <[email protected]>**20070131124139] {
6hunk ./Control/Monad/Error.hs 228
7-               (a, w) <- listen (runErrorT m)
8+               ~(a, w) <- listen (runErrorT m)
9hunk ./Control/Monad/RWS.hs 103
10-               (a, s', w) <- runRWST m r s
11+               ~(a, s', w) <- runRWST m r s
12hunk ./Control/Monad/RWS.hs 109
13-               (a, s', w)  <- runRWST m r s
14-               (b, s'',w') <- runRWST (k a) r s'
15+               ~(a, s', w)  <- runRWST m r s
16+               ~(b, s'',w') <- runRWST (k a) r s'
17hunk ./Control/Monad/RWS.hs 128
18-               (a, s', w) <- runRWST m r s
19+               ~(a, s', w) <- runRWST m r s
20hunk ./Control/Monad/RWS.hs 131
21-               ((a, f), s', w) <- runRWST m r s
22+               ~((a, f), s', w) <- runRWST m r s
23hunk ./Control/Monad/RWS.hs 149
24-    (a, _, w) <- runRWST m r s
25+    ~(a, _, w) <- runRWST m r s
26hunk ./Control/Monad/RWS.hs 154
27-    (_, s', w) <- runRWST m r s
28+    ~(_, s', w) <- runRWST m r s
29hunk ./Control/Monad/State.hs 189
30-               (x, s') <- runStateT m s
31+               ~(x, s') <- runStateT m s
32hunk ./Control/Monad/State.hs 195
33-               (a, s') <- runStateT m s
34+               ~(a, s') <- runStateT m s
35hunk ./Control/Monad/State.hs 227
36-               ((a, s'), w) <- listen (runStateT m s)
37+               ~((a, s'), w) <- listen (runStateT m s)
38hunk ./Control/Monad/State.hs 230
39-               ((a, f), s') <- runStateT m s
40+               ~((a, f), s') <- runStateT m s
41hunk ./Control/Monad/State.hs 236
42-       (a, _) <- runStateT m s
43+       ~(a, _) <- runStateT m s
44hunk ./Control/Monad/State.hs 242
45-       (_, s') <- runStateT m s
46+       ~(_, s') <- runStateT m s
47hunk ./Control/Monad/Writer.hs 67
48-       (a, w) <- listen m
49+       ~(a, w) <- listen m
50hunk ./Control/Monad/Writer.hs 114
51-               (a, w) <- runWriterT m
52+               ~(a, w) <- runWriterT m
53hunk ./Control/Monad/Writer.hs 120
54-               (a, w)  <- runWriterT m
55-               (b, w') <- runWriterT (k a)
56+               ~(a, w)  <- runWriterT m
57+               ~(b, w') <- runWriterT (k a)
58hunk ./Control/Monad/Writer.hs 135
59-               (a, w) <- runWriterT m
60+               ~(a, w) <- runWriterT m
61hunk ./Control/Monad/Writer.hs 138
62-               ((a, f), w) <- runWriterT m
63+               ~((a, f), w) <- runWriterT m
64hunk ./Control/Monad/Writer.hs 158
65-       (_, w) <- runWriterT m
66+       ~(_, w) <- runWriterT m
67}
68
69Context:
70
71[Proposal in trac #1059: Control.Monad.Error documentation
72Ian Lynagh <[email protected]>**20070131013720
73 Andriy Palamarchuk writes:
74 * Converted the module documentation to Haddock format.
75 * Per Jeff Newbern's gracious permission included relevant information
76   from his cool tutorial "All About Monads" http://www.nomaware.com/monads/.
77 * Added examples for custom error type, ErrorT.
78 * Use String instead of [Char].
79]
80[update broken URL as noticed by [email protected]
81Simon Marlow <[email protected]>**20070118094739]
82[Added Haddock documentation. Converted the module documentation to Haddock format. Per Jeff Newbern's permission included parts his tutorial "All About Monads" http://www.nomaware.com/monads/.
83Andriy Palamarchuk <[email protected]>**20061218165621]
84[add boilerplate Setup.hs
85Ross Paterson <[email protected]>**20060928231525]
86[use Control.Monad.Instances from base
87Ross Paterson <[email protected]>**20060410112533]
88[Add -fallow-undecidable-instances to some Control.Monad modules
89[email protected]**20060209121334
90 
91 I have recently tightened up GHC's implementation of the coverage
92 condition.  As a result some of the Control.Monad modules are rejected.
93 
94 Example:
95   class (Monad m) => MonadReader r m | m -> r where
96   instance (Monoid w, MonadReader r m) => MonadReader r (WriterT w m)
97 Here, fv(Writer w m) is not a superset of fv(r).
98 
99 The flag allows it.  I wonder if it's possible to use these modules
100 to send the type cheker into a loop.
101 
102 
103]
104[TAG Initial conversion from CVS complete
105John Goerzen <[email protected]>**20060112154134]
106Patch bundle hash:
107d84f095d78d6efe249083ad99f02b09e8a6320c0