Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,804,118 events total
2021-08-19 16:19:01 <c_wraith> Like.. there actually isn't a good alternative in that case. Nothing is safe!
2021-08-19 16:19:21 <kuribas> but many lisps also allow side effects at module level.
2021-08-19 16:19:27 <kuribas> They just give up on safety...
2021-08-19 16:19:39 <kuribas> although probably not segfault...
2021-08-19 16:20:03 <c_wraith> but at least module designers think about dynamic loading when writing code that does that.
2021-08-19 16:20:18 <c_wraith> Haskell authors tend not to, because it's not a language feature.
2021-08-19 16:20:51 <kuribas> well, IMO haskell authors shouldn't do that...
2021-08-19 16:21:30 <kuribas> Put mutable variables in global variables.
2021-08-19 16:21:53 bebenon joins (~ayurev@8.42.52.35)
2021-08-19 16:22:00 <c_wraith> Until dynamic loading gets involved, it's the least-bad way to handle bindings to C libraries that don't provide a thread-safe interface
2021-08-19 16:22:11 Cesionaut[m] joins (~cesionaut@2001:470:69fc:105::dd3b)
2021-08-19 16:22:27 <kuribas> ah right
2021-08-19 16:22:30 <c_wraith> when dynamic loading gets involved, every way to handle bindings to such a library is bad
2021-08-19 16:24:01 × mjrosenb_ quits (~mrosenbe@nyc.schrodinger.com) (Ping timeout: 248 seconds)
2021-08-19 16:24:05 × Atum_ quits (~IRC@user/atum/x-2392232) (Remote host closed the connection)
2021-08-19 16:24:27 Atum_ joins (~IRC@user/atum/x-2392232)
2021-08-19 16:25:48 mjrosenb joins (~mrosenbe@nyc.schrodinger.com)
2021-08-19 16:27:07 cuolin^ joins (~cuolin@209.65.131.194)
2021-08-19 16:27:38 × abhixec quits (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-08-19 16:29:09 × amahl quits (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection)
2021-08-19 16:30:27 amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-08-19 16:30:29 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Quit: FinnElija)
2021-08-19 16:33:00 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-08-19 16:34:12 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
2021-08-19 16:34:47 × d0ku quits (~d0ku@178.43.198.70.ipv4.supernova.orange.pl) (Remote host closed the connection)
2021-08-19 16:35:32 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Client Quit)
2021-08-19 16:36:06 × Atum_ quits (~IRC@user/atum/x-2392232) (Remote host closed the connection)
2021-08-19 16:36:44 × bebenon quits (~ayurev@8.42.52.35) (Quit: Konversation terminated!)
2021-08-19 16:37:15 Atum_ joins (~IRC@user/atum/x-2392232)
2021-08-19 16:37:28 × nschoe quits (~quassel@178.251.84.79) (Ping timeout: 252 seconds)
2021-08-19 16:37:30 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
2021-08-19 16:38:25 × Moyst quits (~moyst@user/moyst) (Ping timeout: 248 seconds)
2021-08-19 16:40:17 × o1lo01ol1o quits (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) (Remote host closed the connection)
2021-08-19 16:41:12 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-08-19 16:42:23 × sander quits (~sander@user/sander) (Quit: So long! :))
2021-08-19 16:42:25 × drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 258 seconds)
2021-08-19 16:43:13 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds)
2021-08-19 16:45:08 Moyst joins (~moyst@user/moyst)
2021-08-19 16:45:12 sander joins (~sander@user/sander)
2021-08-19 16:45:18 burnsidesLlama joins (~burnsides@client-8-91.eduroam.oxuni.org.uk)
2021-08-19 16:46:18 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
2021-08-19 16:50:40 × burnsidesLlama quits (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 252 seconds)
2021-08-19 16:54:04 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 244 seconds)
2021-08-19 16:54:04 ec joins (~ec@gateway/tor-sasl/ec)
2021-08-19 16:55:01 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
2021-08-19 16:59:10 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 240 seconds)
2021-08-19 17:01:27 geekosaur joins (~geekosaur@xmonad/geekosaur)
2021-08-19 17:04:04 Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-08-19 17:07:05 <siers> is it possible to diff basic types with this? https://hackage.haskell.org/package/gdiff-1.1/docs/Data-Generic-Diff.html#t:Family
2021-08-19 17:07:12 <siers> the html anchor was accidental
2021-08-19 17:07:51 o1lo01ol1o joins (~o1lo01ol1@5.181.115.89.rev.vodafone.pt)
2021-08-19 17:08:49 <siers> I was thinking lists of, say, ints
2021-08-19 17:09:32 <siers> it seems like a cool idea, but I am a bit too incompetent to figure out how to make use of it as for now
2021-08-19 17:10:22 pavonia joins (~user@user/siracusa)
2021-08-19 17:12:10 × o1lo01ol1o quits (~o1lo01ol1@5.181.115.89.rev.vodafone.pt) (Ping timeout: 240 seconds)
2021-08-19 17:12:21 <siers> ah, the pdf in the docs should have examples, apparently
2021-08-19 17:13:16 × catern quits (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (Ping timeout: 272 seconds)
2021-08-19 17:13:52 × aweinstock quits (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 245 seconds)
2021-08-19 17:14:34 × keltono quits (~kelton@x-160-94-179-178.acm.umn.edu) (Ping timeout: 240 seconds)
2021-08-19 17:14:53 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
2021-08-19 17:15:32 keltono joins (~kelton@x-160-94-179-178.acm.umn.edu)
2021-08-19 17:15:39 aweinstock joins (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com)
2021-08-19 17:19:07 <siers> it probably doesn't work with lists, because it needs a GADT-defined type, it seems
2021-08-19 17:19:48 <lechner> Hi, here is a nice personal article from the Haskell Weekly https://cscalfani.medium.com/why-is-learning-functional-programming-so-damned-hard-bfd00202a7d1
2021-08-19 17:21:59 mnrmnaugh is now known as KeziahMason
2021-08-19 17:24:40 × spruit11 quits (~quassel@2a02:a467:ccd6:1:2d8e:31e9:d2b5:c97d) (Ping timeout: 240 seconds)
2021-08-19 17:25:10 × keutoi quits (~keutoi@106.208.52.146) (Ping timeout: 240 seconds)
2021-08-19 17:25:10 doyougnu joins (~user@c-73-25-202-122.hsd1.or.comcast.net)
2021-08-19 17:25:28 <tomsmeding> siers: you _could_ use that library, but it's probably too focused on diffing trees (ADTs are trees, really) as opposed to diffing lists
2021-08-19 17:25:50 <tomsmeding> like, you could define a GADT that is just a cons list, map a [] list to that, diff, and convert back
2021-08-19 17:26:02 <tomsmeding> but you're probably better off using a dedicated algorithm for diffing lists of things
2021-08-19 17:27:00 keutoi joins (~keutoi@223.238.95.231)
2021-08-19 17:27:15 <tomsmeding> siers: possible alternative: https://hackage.haskell.org/package/patience-0.3/docs/Patience.html (note: just found this lib on hackage, never used it personally)
2021-08-19 17:27:39 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds)
2021-08-19 17:27:54 nschoe joins (~quassel@2a01:e0a:8e:a190:54dd:c68a:57b4:f0fd)
2021-08-19 17:28:40 <sclv> the standard diff pkg can diff lists of anything with eq
2021-08-19 17:29:49 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2021-08-19 17:29:59 <tomsmeding> that would be https://hackage.haskell.org/package/Diff , which is used in https://hackage.haskell.org/package/diff3
2021-08-19 17:30:20 stiell joins (~stiell@gateway/tor-sasl/stiell)
2021-08-19 17:30:25 <siers> I was wanting to play with a package that can do both lists and trees
2021-08-19 17:31:52 × nschoe quits (~quassel@2a01:e0a:8e:a190:54dd:c68a:57b4:f0fd) (Client Quit)
2021-08-19 17:33:01 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 252 seconds)
2021-08-19 17:34:01 <dsal> lechner: That's interesting. A shorter story, imo, is that unlearning is harder than learning.
2021-08-19 17:34:36 <lechner> yeah, i thought it was a bit long too
2021-08-19 17:35:48 <lechner> at least i'm not alone
2021-08-19 17:36:01 × KeziahMason quits (~mnrmnaugh@68.162.206.56) (Ping timeout: 248 seconds)
2021-08-19 17:38:47 spruit11 joins (~quassel@2a02:a467:ccd6:1:1d3f:e608:d1ad:6d58)
2021-08-19 17:39:22 <monochrom> No, it is me who is alone.
2021-08-19 17:39:35 <lechner> in what?
2021-08-19 17:40:19 <tomsmeding> siers: ah I think you only have to make a suitable description GADT and Family instance to be able to diff lists using gdiff
2021-08-19 17:40:25 <monochrom> I learn by starting from clean slate. My mind has some unusual ability of doing that. Resisting from making premature "connection" "analogy" with what I previously knew.
2021-08-19 17:41:18 <Lycurgus> O.o
2021-08-19 17:41:28 <monochrom> I learned FP on its own terms, not by "how to translate to/from the Pascal and C I have so fondly known"
2021-08-19 17:42:13 <Lycurgus> when them was things
2021-08-19 17:42:54 <monochrom> Besides, recursion really makes more sense than iteration. Recursion enjoys induction directly. Iteration is more indirect.
2021-08-19 17:43:46 <lechner> monochrom: were you motivated by a desire to reduce bugs, or did you like Haskell for other reasons?
2021-08-19 17:44:03 <Lycurgus> i remember about a half century ago asking in my first IT job what recursion was
2021-08-19 17:44:09 × qbt quits (~edun@user/edun) (Remote host closed the connection)
2021-08-19 17:44:20 <Rembane_> Lycurgus: Did they answer with: "See recursion." ?
2021-08-19 17:44:29 <monochrom> I am motivated by the desire to reduce bugs all my life. Haskell helps, yes. But not the only way.

All times are in UTC.