Logs: liberachat/#haskell
| 2021-07-09 04:32:19 | → | luna_ joins (~luna2021@124.205.197.98) |
| 2021-07-09 04:32:42 | → | norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 2021-07-09 04:35:46 | × | derelict quits (~derelict@user/derelict) (Ping timeout: 240 seconds) |
| 2021-07-09 04:38:25 | <nshepperd> | you could also just return whatever the underlying foldable is, instead of being paternalistic toward your user |
| 2021-07-09 04:38:49 | <c_wraith> | basically, users always want to do things you haven't imagined |
| 2021-07-09 04:38:58 | <qrpnxz> | but then changing it is a breaking change, it has nothing to do with paternalism |
| 2021-07-09 04:39:09 | <c_wraith> | breaking changes are fine, as long as they break compilation |
| 2021-07-09 04:41:14 | <qrpnxz> | well not really, because that change might've "taken away" features, features that i never intended to guarantee. It would not be an easy fix for you if my overkill type that i used is suddenly a very dumb type |
| 2021-07-09 04:42:08 | <c_wraith> | you keep imagining that you know every valid use case |
| 2021-07-09 04:42:24 | <c_wraith> | I assure you, users have weird ideas. :) |
| 2021-07-09 04:42:32 | × | luna_ quits (~luna2021@124.205.197.98) (Remote host closed the connection) |
| 2021-07-09 04:42:38 | <nshepperd> | if you never intended to guarantee it but it's useful then that's good, value was created |
| 2021-07-09 04:43:00 | → | dragestil joins (~quassel@user/dragestil) |
| 2021-07-09 04:43:19 | × | dragestil quits (~quassel@user/dragestil) (Client Quit) |
| 2021-07-09 04:43:54 | → | dragestil joins (~quassel@user/dragestil) |
| 2021-07-09 04:44:34 | × | norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 240 seconds) |
| 2021-07-09 04:49:32 | → | luna_ joins (~luna2021@124.205.197.98) |
| 2021-07-09 04:50:45 | <nshepperd> | you can just document what you guarantee in your haddock comments. this makes any usage outside that guarantee the user's responsibility, and freedom |
| 2021-07-09 04:51:01 | <qrpnxz> | More is not always good. Encapsulation is good. It would also allow one to return a different foldable based on the inputs. |
| 2021-07-09 04:51:38 | <c_wraith> | That sounds like a terrible thing to do |
| 2021-07-09 04:52:01 | → | Megant joins (~kaitsu@user/megant) |
| 2021-07-09 04:53:00 | <nshepperd> | The paternalism is that you are trying to protect the user from this responsibility |
| 2021-07-09 04:53:30 | <sm> | sounds like php/perl/lisp-type coding. I will admit, those rich do-everything functions can seem handy at times. |
| 2021-07-09 04:53:41 | <sm> | in those languages |
| 2021-07-09 04:54:16 | <sm> | nothing illegal about it in haskell either, if it's documented with types.. |
| 2021-07-09 04:54:23 | × | luna_ quits (~luna2021@124.205.197.98) (Ping timeout: 252 seconds) |
| 2021-07-09 04:54:26 | <qrpnxz> | like in some function I could do if you gave me a set maybe i use that directly and then return a set too, otherwise i do an ordered list. |
| 2021-07-09 04:55:24 | ← | hexreel parts (~hr@69.233.98.238) (WeeChat 3.2) |
| 2021-07-09 05:01:58 | × | ukari quits (~ukari@user/ukari) (Remote host closed the connection) |
| 2021-07-09 05:03:03 | → | ukari joins (~ukari@user/ukari) |
| 2021-07-09 05:03:14 | <qrpnxz> | i agree with my arguments, and yet i would like to return a concrete type too. At least for this function I'm currently writing, but I still think this is a legitimate feature. |
| 2021-07-09 05:04:39 | → | yauhsien joins (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) |
| 2021-07-09 05:09:09 | → | anandprabhu joins (~anandprab@94.202.243.198) |
| 2021-07-09 05:09:26 | × | edwtjo quits (~edwtjo@user/edwtjo) (Ping timeout: 258 seconds) |
| 2021-07-09 05:17:33 | <sm> | are we talking about a Monoid a => m a -> m a function ? |
| 2021-07-09 05:18:37 | <qrpnxz> | eh, no. idk where you got that |
| 2021-07-09 05:19:03 | <sm> | "some function I could do if you gave me a set maybe i use that directly and then return a set too, otherwise i do an ordered list" |
| 2021-07-09 05:19:29 | <sm> | I may not have understood you, no worries |
| 2021-07-09 05:20:05 | <qrpnxz> | well we were using foldable as an example, idk if set has monoid ig it does. |
| 2021-07-09 05:20:23 | <qrpnxz> | but sure you could say something similar but with monoid instead |
| 2021-07-09 05:20:41 | <sm> | I was just trying to think what's the haskell way of saying "some collection of things" |
| 2021-07-09 05:21:10 | <sm> | it sounded like you wanted to make a function polymorphic in the collection type. But I've just jumped in at the end of your discussion. |
| 2021-07-09 05:22:30 | <sm> | (afk) |
| 2021-07-09 05:22:45 | <qrpnxz> | ah well we are talking about function that returns an interface rather than a concrete type. For accepting any foldable, you use forall, but to return any generic (specific) foldable, you use existential. |
| 2021-07-09 05:23:54 | → | edwtjo joins (~edwtjo@h-109-228-137-133.A213.priv.bahnhof.se) |
| 2021-07-09 05:23:54 | × | edwtjo quits (~edwtjo@h-109-228-137-133.A213.priv.bahnhof.se) (Changing host) |
| 2021-07-09 05:23:54 | → | edwtjo joins (~edwtjo@user/edwtjo) |
| 2021-07-09 05:24:00 | <qrpnxz> | ok i have to go to bed now gn |
| 2021-07-09 05:24:20 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 2021-07-09 05:29:21 | → | luna_ joins (~luna2021@124.205.197.98) |
| 2021-07-09 05:29:21 | × | anandprabhu quits (~anandprab@94.202.243.198) (Quit: Leaving) |
| 2021-07-09 05:29:21 | × | oxide quits (~lambda@user/oxide) (Ping timeout: 272 seconds) |
| 2021-07-09 05:29:22 | → | tabemann_ joins (~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) |
| 2021-07-09 05:30:41 | → | oxide joins (~lambda@user/oxide) |
| 2021-07-09 05:31:01 | × | scrazen quits (~scrazen@user/scrazen) (Remote host closed the connection) |
| 2021-07-09 05:31:20 | × | tabemann quits (~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Ping timeout: 256 seconds) |
| 2021-07-09 05:31:20 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 272 seconds) |
| 2021-07-09 05:31:29 | → | scrazen joins (~scrazen@user/scrazen) |
| 2021-07-09 05:31:57 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 2021-07-09 05:41:30 | × | ptr_frac7al quits (~longlong@user/ptr-frac7al/x-0038398) (Quit: ptr_frac7al) |
| 2021-07-09 05:44:59 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2021-07-09 05:49:56 | × | Megant quits (~kaitsu@user/megant) (Ping timeout: 252 seconds) |
| 2021-07-09 05:50:44 | × | gioyik quits (~gioyik@gateway/tor-sasl/gioyik) (Quit: WeeChat 3.1) |
| 2021-07-09 05:51:21 | → | ishutin joins (~ishutin@79.120.162.129) |
| 2021-07-09 06:05:46 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 2021-07-09 06:11:23 | × | tabemann_ quits (~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Remote host closed the connection) |
| 2021-07-09 06:11:29 | → | tabemann_ joins (~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) |
| 2021-07-09 06:12:14 | → | artagnon joins (sid7560@id-7560.tooting.irccloud.com) |
| 2021-07-09 06:12:34 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 246 seconds) |
| 2021-07-09 06:14:13 | × | Cale quits (~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) (Ping timeout: 258 seconds) |
| 2021-07-09 06:14:48 | → | Cale joins (~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) |
| 2021-07-09 06:15:49 | → | chele joins (~chele@user/chele) |
| 2021-07-09 06:18:51 | → | jneira joins (~jneira@212.8.115.226) |
| 2021-07-09 06:18:53 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
| 2021-07-09 06:20:09 | → | turlando joins (~turlando@user/turlando) |
| 2021-07-09 06:22:00 | × | jespada quits (~jespada@90.254.247.46) (Ping timeout: 268 seconds) |
| 2021-07-09 06:22:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-07-09 06:22:33 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-07-09 06:25:04 | → | xerxes joins (~xerxes@117.222.64.149) |
| 2021-07-09 06:25:07 | → | jespada joins (~jespada@90.254.247.46) |
| 2021-07-09 06:27:47 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds) |
| 2021-07-09 06:28:31 | → | Megant joins (megant@user/megant) |
| 2021-07-09 06:28:34 | → | kenran joins (~kenran@b2b-37-24-119-190.unitymedia.biz) |
| 2021-07-09 06:29:05 | → | acidjnk joins (~acidjnk@p200300d0c72b9563509afe7c5cdd8ef5.dip0.t-ipconnect.de) |
| 2021-07-09 06:29:15 | × | awth13 quits (~user@user/awth13) (Remote host closed the connection) |
| 2021-07-09 06:29:36 | → | awth13 joins (~user@user/awth13) |
| 2021-07-09 06:34:51 | × | neurocyte40 quits (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
| 2021-07-09 06:39:38 | → | neurocyte404 joins (~neurocyte@46.243.81.30) |
| 2021-07-09 06:39:38 | × | neurocyte404 quits (~neurocyte@46.243.81.30) (Changing host) |
| 2021-07-09 06:39:38 | → | neurocyte404 joins (~neurocyte@user/neurocyte) |
| 2021-07-09 06:44:30 | → | wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
| 2021-07-09 06:45:40 | → | bOy_isOg joins (~bOy_isOg@119.93.22.3) |
| 2021-07-09 06:46:30 | ← | bOy_isOg parts (~bOy_isOg@119.93.22.3) () |
| 2021-07-09 06:49:34 | → | Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 2021-07-09 06:51:06 | × | polux quits (~polux@51.15.169.172) (Quit: The Lounge - https://thelounge.github.io) |
| 2021-07-09 06:51:23 | → | polux joins (~polux@51.15.169.172) |
| 2021-07-09 06:52:44 | → | fendor joins (~fendor@77.119.197.100.wireless.dyn.drei.com) |
| 2021-07-09 06:52:51 | → | anandprabhu joins (~anandprab@94.202.243.198) |
| 2021-07-09 06:54:20 | × | chris-the-slurpa quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2021-07-09 06:55:01 | → | chris-the-slurpa joins (~chris@81.96.113.213) |
All times are in UTC.