Newest at the top
2024-11-20 17:28:02 +0100 | euleritian | (~euleritia@ip4d16fc9f.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-11-20 17:26:47 +0100 | <bwe> | dminuoso: Do I have to define HasDict instances now? |
2024-11-20 17:25:52 +0100 | <bwe> | dminuoso: `Dict (IntoGeneral a)` in the function head of `fromDBEntry` remains, because that is the dict for `withDict dict`? |
2024-11-20 17:22:44 +0100 | <bwe> | dminuoso: https://play-haskell.tomsmeding.com/saved/Yl8rZptl |
2024-11-20 17:20:42 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) ubert |
2024-11-20 17:20:37 +0100 | <mari-estel> | huh come on, functors are not that scary |
2024-11-20 17:20:31 +0100 | <Square2> | Not sure I can, but yeah I see your point. |
2024-11-20 17:20:23 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) (Remote host closed the connection) |
2024-11-20 17:19:53 +0100 | <dminuoso> | Avoid the constructs entirely. |
2024-11-20 17:19:46 +0100 | <dminuoso> | Square2: My best advice, avoid the words `functor` and `monad`. |
2024-11-20 17:19:30 +0100 | <Square2> | dminuoso, Yes, I've been there. But, yeah. To begin with, they'll only need to grasp basic functor/monad constructs. I feel it should be doable for people who got MSc's in comp science. |
2024-11-20 17:19:23 +0100 | <dminuoso> | bwe: So if you bring your HasGeneral typeclass back, make instances for `HasGeneral SiteA` and `HasGeneral SiteB` |
2024-11-20 17:18:42 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 272 seconds) |
2024-11-20 17:18:31 +0100 | <bwe> | Yeah, I had that gut feeling already. |
2024-11-20 17:18:29 +0100 | <dminuoso> | Might as well go all-in! |
2024-11-20 17:18:13 +0100 | <dminuoso> | Well, we're of course overcomplicating all of this. I did not know this was an XY problem yesterday. ;-) |
2024-11-20 17:17:15 +0100 | <bwe> | (I was scared for it to complicate things further.) |
2024-11-20 17:16:53 +0100 | <dminuoso> | So you dont have both A and SiteA flying around. |
2024-11-20 17:16:43 +0100 | <dminuoso> | bwe: Right, DataKinds just cleans it up. |
2024-11-20 17:16:31 +0100 | <dminuoso> | bwe: Say you can attach evidence onto a SiteVariant for your HasGeneral constraint. |
2024-11-20 17:16:18 +0100 | <dminuoso> | bwe: So the idea is that with HasDict you can provide evidence for another constraint. |
2024-11-20 17:16:16 +0100 | <bwe> | dminuoso: oh, I see, there's not too much difference in concepts with or without DataKinds |
2024-11-20 17:15:31 +0100 | <bwe> | dminuoso: here's the latest version: https://play-haskell.tomsmeding.com/saved/9jXIcvKT |
2024-11-20 17:15:05 +0100 | <dminuoso> | bwe: Lets keep the DataKinds, though. |
2024-11-20 17:14:57 +0100 | <dminuoso> | With Haskell, there is a large portion about unlearning mindsets and learning new techniques, almost starting from scratch. |
2024-11-20 17:14:43 +0100 | <bwe> | dminuoso: can we go back to complete the withDict first? I pretty much appreciate that DataKinds, though, later. |
2024-11-20 17:14:36 +0100 | <dminuoso> | You can only lead a horse to the water. |
2024-11-20 17:14:19 +0100 | <Square2> | dminuoso, I mean, they can probably see the motivation of using it. We're in a "there is no other way" situation. |
2024-11-20 17:13:12 +0100 | <dminuoso> | Square2: If they are hardcore Java developers, not motivated to learn Haskell... Im not sure this is going to end well. |
2024-11-20 17:12:39 +0100 | <Square2> | dminuoso, Probably not. But most of them will just use it to write simple functions. All IO will remain in Java. |
2024-11-20 17:12:15 +0100 | <bwe> | dminuoso: I am just before that fun bit :). |
2024-11-20 17:12:13 +0100 | <dminuoso> | You decide. :-) |
2024-11-20 17:11:54 +0100 | <dminuoso> | bwe: Hey, we're just exploring for fun, right? |
2024-11-20 17:11:46 +0100 | <dminuoso> | Square2: Are they motivated to learn Haskell? |
2024-11-20 17:11:43 +0100 | <bwe> | dminuoso: so we drop withDict or not? |
2024-11-20 17:11:38 +0100 | <Square2> | dminuoso, Yeah, I feel it could be a uphill battle. Some are probably not up to it. |
2024-11-20 17:11:35 +0100 | <dminuoso> | bwe: I think we just ended up on a fun journey about constraints due to an XY problem. ;) |
2024-11-20 17:10:57 +0100 | <dminuoso> | Square2: Having onboarded a bunch of people onto Haskell, Id say it depends very much on the company culture and the people. |
2024-11-20 17:10:50 +0100 | Alleria | (~Alleria@user/alleria) (Quit: Textual IRC Client: www.textualapp.com) |
2024-11-20 17:10:07 +0100 | <dminuoso> | bwe: Right. |
2024-11-20 17:09:59 +0100 | <Square2> | I might get into the situation of making my department of 50 (12 devs) adapt Haskell. It's a bit scary tbh. How to onboard people who mostly programmed java past 15 years. |
2024-11-20 17:09:56 +0100 | <bwe> | but this will be no more instance but normal function, right? |
2024-11-20 17:09:15 +0100 | <dminuoso> | Ultimately all you need is just `fromHTML :: SiteVariant -> ByteString -> General` of couerse. |
2024-11-20 17:08:58 +0100 | <dminuoso> | This is all getting really strange, at the end. |
2024-11-20 17:08:38 +0100 | <dminuoso> | So Im thinking maybe a HasDict instance. |
2024-11-20 17:08:19 +0100 | <bwe> | ay, what's next? |
2024-11-20 17:07:59 +0100 | <dminuoso> | Right. |
2024-11-20 17:07:55 +0100 | <bwe> | (while `SiteA` and `SiteB` continue to exist on the data level, too) |
2024-11-20 17:06:29 +0100 | <dminuoso> | bwe: DataKind promotes `SiteVariant` into a Kind, and conjures types `SiteA :: SiteVariant` and `SiteB :: SiteVariant` |
2024-11-20 17:05:38 +0100 | alp_ | (~alp@2001:861:8ca0:4940:fc9d:90cc:a5de:4f14) |