Re:Please do not attempt to simplify this code
by yawaramin on Saturday December 29, 2018 @05:55PM
(#18786201)
Bindings in the `where` clause can still access names in the main binding: https://wiki.haskell.org/Let_vs._Where#Advantages_of_where
This runs the risk of strongly coupling them to the main binding and making them less reusable. IMHO strong coupling where two bindings are aware of each others' internals should be avoided.
Re:Please do not attempt to simplify this code
by cannabis_sam on Sunday December 30, 2018 @08:55AM
(#18789171)
Like your link says: doesn’t lambda lifting solve that problem?
That’s what I always do if I want to move an auxillary function to the top-level for reusing elsewhere.
A relatively bad example here: https://wiki.haskell.org/Worker_wrapper#Hiding_the_worker