Logs: freenode/#haskell
| 2020-10-26 13:54:12 | × | DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection) |
| 2020-10-26 13:54:46 | → | Neo-- joins (~neo@188-230-154-134.dynamic.t-2.net) |
| 2020-10-26 13:54:47 | → | DavidEichmann joins (~david@43.240.198.146.dyn.plus.net) |
| 2020-10-26 13:54:58 | × | texasmynsted quits (~texasmyns@99.96.221.112) (Remote host closed the connection) |
| 2020-10-26 13:55:29 | → | GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) |
| 2020-10-26 13:55:29 | × | GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host) |
| 2020-10-26 13:55:29 | → | GyroW_ joins (~GyroW@unaffiliated/gyrow) |
| 2020-10-26 13:56:42 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds) |
| 2020-10-26 13:57:05 | → | lucasb joins (uid333435@gateway/web/irccloud.com/x-uadkacgdennrevsw) |
| 2020-10-26 13:58:17 | → | hyiltiz joins (~quassel@unaffiliated/hyiltiz) |
| 2020-10-26 13:58:32 | <thblt> | (I just read on some blog post that monad transformers are like onions. If monads are still burritos, the weird consequence is that transformers are both part of the monad as an ingredient, but the monad is part of its own ingredient as one level in a stack.) |
| 2020-10-26 13:58:44 | <thblt> | (tl;dr metaphors are bad) |
| 2020-10-26 14:02:09 | <[exa]> | in metaphor language, leaky onions that grow from inside are apparently perfectly okay! |
| 2020-10-26 14:03:02 | <thblt> | Ho good point. |
| 2020-10-26 14:03:05 | × | hyiltiz quits (~quassel@unaffiliated/hyiltiz) (Ping timeout: 240 seconds) |
| 2020-10-26 14:03:56 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 2020-10-26 14:05:18 | <tomsmeding> | nah, you just get recursive burritos |
| 2020-10-26 14:05:24 | → | bitmagie joins (~Thunderbi@200116b8061e1300eda32c0368104b2f.dip.versatel-1u1.de) |
| 2020-10-26 14:05:34 | <tomsmeding> | I mean, more burritos, right? |
| 2020-10-26 14:05:35 | <dminuoso> | A recursive burrito is one with one side plugged into the other right? |
| 2020-10-26 14:05:38 | <dminuoso> | A circular burrito |
| 2020-10-26 14:05:53 | <Uniaika> | a mexican doughtnut |
| 2020-10-26 14:05:57 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Client Quit) |
| 2020-10-26 14:06:08 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 2020-10-26 14:06:14 | <dminuoso> | 14:58:43 thblt | (tl;dr metaphors are bad) |
| 2020-10-26 14:06:26 | <thblt> | Isn't it more of a non-euclidian burrito? |
| 2020-10-26 14:06:26 | × | komasa quits (~komasa@2a03:b0c0:3:d0::2097:6001) (Remote host closed the connection) |
| 2020-10-26 14:06:40 | <[exa]> | just a klein burrito |
| 2020-10-26 14:06:48 | <thblt> | When you near the center of the burrito where the onions live you're at the same time outside in the presentation plate. |
| 2020-10-26 14:06:55 | × | polyrain quits (~polyrain@2001:8003:e501:6901:15fa:5e4:342f:f38b) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-10-26 14:07:15 | → | komasa joins (~komasa@2a03:b0c0:3:d0::2097:6001) |
| 2020-10-26 14:07:19 | <Uniaika> | I have already eaten but I'm hungry again now |
| 2020-10-26 14:07:27 | <dminuoso> | thblt: https://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/ |
| 2020-10-26 14:07:52 | <dminuoso> | These metaphors and mindmodels are not bad, they're usually just bad for *explaining* |
| 2020-10-26 14:08:06 | <dminuoso> | The above blog article goes into why |
| 2020-10-26 14:08:24 | <dminuoso> | If "burrito" makes perfect sense to you, then it's an adequate metaphor. |
| 2020-10-26 14:09:14 | → | damianfral3 joins (~damianfra@25.red-176-87-152.dynamicip.rima-tde.net) |
| 2020-10-26 14:09:38 | <[exa]> | thblt: anyway the most practical "metaphor" I saw is that you just run a program in a DSL 1 that borrows some actions from another DSL 2, and the transformer is a magic burrito-bending function that converts such program to the language of DSL 2 |
| 2020-10-26 14:10:31 | <[exa]> | which kinda describes lift/run*T without much unnecessary cutlery |
| 2020-10-26 14:10:34 | <thblt> | dminuoso: as a teacher, in a classroom context, metaphors aren't bad. What's bad (and this article rightfully criticizes) is the confusion between my intuitive understanding of x and the best explanatory analogy for x. |
| 2020-10-26 14:10:51 | <dminuoso> | Even in a classroom context metaphors can be bad. |
| 2020-10-26 14:11:05 | <thblt> | Because the latter doesn't exist. Teaching is often trying different explanations until one works. |
| 2020-10-26 14:11:06 | <[exa]> | metaphors != illustrative examples |
| 2020-10-26 14:12:12 | <thblt> | Yeah, wrote too fast. What I meant is that you can use metaphors, but not believe there's one definitive metaphor. Some people will grab $complex-topic through abstraction, some through examples, some through metaphors. |
| 2020-10-26 14:12:13 | <Ferdirand> | i thought monads were just type-safe continuations |
| 2020-10-26 14:13:01 | → | polyrain joins (~polyrain@2001:8003:e501:6901:15fa:5e4:342f:f38b) |
| 2020-10-26 14:13:32 | × | dexterlb quits (~dexterlb@2a01:9e40:2:2::2) (Quit: Boing) |
| 2020-10-26 14:13:43 | <dminuoso> | The easiest way to think of a monad on K, is as a lax 2-functor from the terminal bicategory 1 to K. |
| 2020-10-26 14:14:02 | → | dexterlb joins (~dexterlb@2a01:9e40:2:2::2) |
| 2020-10-26 14:14:13 | <[exa]> | I sometimes wonder that we shall once explain the imperative programming as a metaphor, originating from IO monad |
| 2020-10-26 14:14:53 | <[exa]> | "You know guys, now just imagine that IO is everywhere." |
| 2020-10-26 14:15:27 | <thblt> | That's actually a nice idea. |
| 2020-10-26 14:15:55 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 2020-10-26 14:17:25 | <[exa]> | "But how can everything change the world?" -> "OK look, the programs are like spaghetti" |
| 2020-10-26 14:17:37 | <[exa]> | well now I'm hungry |
| 2020-10-26 14:18:08 | <dminuoso> | [exa]: Maybe a burrito would help? |
| 2020-10-26 14:18:13 | <dminuoso> | with onions. |
| 2020-10-26 14:19:14 | <[exa]> | well tbh I have a Maybe Burrito in FridgeT now |
| 2020-10-26 14:19:22 | <thblt> | Seriously you should eat something then write this because now I want to read it. |
| 2020-10-26 14:19:23 | <[exa]> | (this needs to stop) |
| 2020-10-26 14:19:39 | → | hyiltiz joins (~quassel@82.118.227.47) |
| 2020-10-26 14:19:39 | × | hyiltiz quits (~quassel@82.118.227.47) (Changing host) |
| 2020-10-26 14:19:39 | → | hyiltiz joins (~quassel@unaffiliated/hyiltiz) |
| 2020-10-26 14:20:03 | <thblt> | And in all seriousness it can *also* be a powerful method of explanation. |
| 2020-10-26 14:20:31 | × | DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...) |
| 2020-10-26 14:21:00 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
| 2020-10-26 14:21:10 | <[exa]> | the greater point is that the students at c++ course sometimes already lack this "basic computers" understanding of instructions that just get executed and everything is a side effect |
| 2020-10-26 14:22:09 | <[exa]> | ("uninitialized memory? that's not like null?!") |
| 2020-10-26 14:22:29 | <[exa]> | so we might even get to the spaghetti analogy sooner than I hope |
| 2020-10-26 14:23:25 | × | raichoo quits (~raichoo@213.240.178.58) (Quit: Lost terminal) |
| 2020-10-26 14:26:18 | × | knupfer quits (~Thunderbi@i59F7FFDF.versanet.de) (Ping timeout: 260 seconds) |
| 2020-10-26 14:26:41 | <Franciman> | hi, Standard ML has an easier syntax than Haskell, why don't we change to SML syntax? |
| 2020-10-26 14:27:06 | <merijn> | Define "easier: |
| 2020-10-26 14:27:54 | <Franciman> | it's easier to parse |
| 2020-10-26 14:27:56 | <merijn> | Also, Python syntax is easier than C, so why don't all C compilers just use Python syntax? |
| 2020-10-26 14:28:07 | <Franciman> | because C people aren't open minded |
| 2020-10-26 14:28:13 | <Franciman> | so we could have better tools |
| 2020-10-26 14:28:21 | <Franciman> | for example a good tool to automatically indent haskell code |
| 2020-10-26 14:28:25 | <merijn> | Franciman: And you expect Haskell programmers will throw away 3 decades of work to start over? |
| 2020-10-26 14:28:35 | → | alp joins (~alp@2a01:e0a:58b:4920:f036:1a06:bf83:85b) |
| 2020-10-26 14:28:35 | <merijn> | It will never happen |
| 2020-10-26 14:28:36 | <Franciman> | :< |
| 2020-10-26 14:28:42 | <Franciman> | time to fork! |
| 2020-10-26 14:28:42 | <Franciman> | lol |
| 2020-10-26 14:28:49 | <merijn> | Also, I fundamentally disagree with the notion of autoformatting code |
| 2020-10-26 14:29:02 | <Franciman> | how so? |
| 2020-10-26 14:29:39 | → | ryjm_matrix joins (~matrixirc@pool-74-105-197-68.nwrknj.fios.verizon.net) |
| 2020-10-26 14:30:33 | <merijn> | https://twitter.com/comerijn/status/1257804634833420292 |
| 2020-10-26 14:30:50 | <merijn> | (specifically the replies) |
| 2020-10-26 14:31:03 | <Franciman> | thranx |
| 2020-10-26 14:31:33 | <Franciman> | oh I see |
| 2020-10-26 14:31:39 | <Franciman> | well my problem is of pragmatic form |
| 2020-10-26 14:31:42 | <Franciman> | I have tendonitis |
| 2020-10-26 14:31:48 | <Franciman> | the less I have to type the better I feel |
| 2020-10-26 14:32:02 | <Franciman> | having my computer automatically position the cursor is RAD |
| 2020-10-26 14:32:33 | <merijn> | Franciman: Did you see the talk on coding by voice? |
| 2020-10-26 14:32:51 | <Franciman> | no |
| 2020-10-26 14:33:09 | × | bitmagie quits (~Thunderbi@200116b8061e1300eda32c0368104b2f.dip.versatel-1u1.de) (Quit: bitmagie) |
| 2020-10-26 14:33:14 | <Franciman> | worth a check, thanks |
| 2020-10-26 14:33:16 | <merijn> | https://www.youtube.com/watch?v=8SkdfdXWYaI |
All times are in UTC.