You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*[Laziness from What I Wish I Knew When Learning Haskell](http://dev.stephendiehl.com/hask/#laziness)
152
173
*[The GHC Runtime System - Ch. 4 Laziness](http://ezyang.com/jfp-ghc-rts-draft.pdf)
174
+
* Haskell 2010 Language Report:
175
+
* See p. 3.17.2 Informal Semantics of Pattern Matching in [Pattern Matching](https://www.haskell.org/onlinereport/haskell2010/haskellch3.html#x8-580003.17)
176
+
*[Irrefutable Patterns in Let Expressions](https://www.haskell.org/onlinereport/haskell2010/haskellch3.html#x8-440003.12)
177
+
* See p. 4.4.3.2 Pattern bindings in [Nested declarations](https://www.haskell.org/onlinereport/haskell2010/haskellch4.html#x10-800004.4)
153
178
154
179
## Exceptions
155
180
@@ -164,6 +189,8 @@ How can we bundle Pattern Synonyms with datatypes in export and import lists?
164
189
Why do we need it?
165
190
* What is the purpose of `safe-exceptions` library? Which exception handling problems does it address?
166
191
Why is `unliftio` considered safer by the author of `safe-exceptions`?
192
+
* When does the problem of rethrowing asynchronous exceptions as synchronous
193
+
happen and how can it be solved?
167
194
* Describe a problem which arises when handling exceptions and using functions like `bracket` with stateful monadic stacks.
168
195
* How is it solved in `monad-control` library?
169
196
* How is it solved in `unliftio` library?
@@ -235,13 +262,18 @@ What are the commands which help with that?
235
262
*What is a `Traversal`?
236
263
*What is an `Iso`?
237
264
*Why is `Monoid` constraint required in`view` for traversals?
265
+
*Is a `Prism` a `Lens`, a `Traversal` a `Lens`, an `Iso` a `Lens`, a
266
+
`Traversal` an `Iso`, a `Prism` an `Iso`, or vice versa?
267
+
*Is the `traverse` method of the `Traversable` class a `Traverse`?
238
268
*What are the lens laws?
239
269
*Whydo lenses fit well for composing?
240
270
*How operators are grouped by name (which ones are started with `^`, which ones contain `~`, `.` (dot), `%`, `=`)?
241
271
*What combinators are purposed for working in `State` monad?
242
272
Why is it convenient?
243
273
*What is the goal of the microlens library?
244
274
When to use it and when donot?
275
+
*Whenand why is it better to use `generic-lens` and`optics` libraries?What
0 commit comments