2024/11/20

Newest at the top

2024-11-20 17:35:10 +0100 <bwe> dminuoso: still here? https://play-haskell.tomsmeding.com/saved/6PnEpvyR
2024-11-20 17:32:44 +0100 <bwe> `withDict :: Dict (IntoGeneral a) -> (IntoGeneral a => SiteVariant) -> SiteVariant`
2024-11-20 17:31:26 +0100 <bwe> I don't, because `withDict :: Dict c -> (c => r) -> r` is possible and `Dict (IntoGeneral a)` comes into play hereā€¦
2024-11-20 17:30:33 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-11-20 17:29:44 +0100euleritian(~euleritia@ip4d16fc9f.dynamic.kabel-deutschland.de)
2024-11-20 17:28:02 +0100euleritian(~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 +0100ubert(~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 +0100ubert(~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 +0100ljdarj(~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 +0100Alleria(~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.