Search Haskell Channel Logs

Thursday, January 26, 2017

#haskell channel featuring M0000, lambdabot, uiop, glguy, orzo, Axman6,

glguy 2017-01-26 17:59:36
M0000: Have you heard of https://en.wikipedia.org/wiki/Rubber_duck_debugging ?
M0000 2017-01-26 18:02:53
I hadn't heard that term — it's really amusing but also SOO true… just have to laugh
Axman6 2017-01-26 18:05:04
it's a very common and well known phenomenon
M0000 2017-01-26 18:07:31
Axman6: I don't program now, but at my old place it was common for people to learn from explaining code … what's new to me is aiming for greater simplicity.. I program as a hobby now and I'm far better than I ever was while working, thanks to studying Haskell
M0000 2017-01-26 18:07:48
I never realized just how far simplicity can go....
M0000 2017-01-26 18:08:38
so the idea of explaining it to a rubber duck, makes me think of explaining it in terms so simple that a duck could relate . maybe that's not the actual point.. anyway explaining it to a five-year-old works too
orzo 2017-01-26 18:15:42
is there an operator for flip <$> ?
glguy 2017-01-26 18:16:23
:t (<&>)
lambdabot 2017-01-26 18:16:25
Functor f => f a -> (a -> b) -> f b
uiop 2017-01-26 18:25:51
orzo: RE: you earlier talking about it being hard to find space leaks in haskell...
uiop 2017-01-26 18:27:03
orzo: it comes with experience. at least, experience is the only unqualified solution.. tools may help, tools may come and go, but experience is the only hard solution here (in my experience)
uiop 2017-01-26 18:29:07
my own personal philosophy, and i have no doubt many many here's opinions will differ from mine, but my personal opinion is... i prefer to actively explicitly force *everything* *EXCEPT* the things i'm explicitly on purpose and with reason intending to be lazy in order for them to work properly
uiop 2017-01-26 18:29:54
this way, you basically have a small list of where laziness-induced accidental space leaks come from
uiop 2017-01-26 18:30:09
because almost by definition, they arent accidents at all when they're all intended
uiop 2017-01-26 18:30:33
instead they're a result of faulty logic
uiop 2017-01-26 18:32:56
.. and i used slight hyperbole there, but only to make my point
uiop 2017-01-26 18:33:36
once you get to the point where you're doing everything on purpose, if something blows up (space-wise)
uiop 2017-01-26 18:34:57
it's just a matter of running over your mental representation of what's going on wrt evalutation, identifying where the blow up could be occuring, then narrowing it down (if there's even more than one possibility once you've arrived at this step)