2021/11/21

2021-11-21 00:05:40 +0100Alleria(~textual@user/alleria)
2021-11-21 00:07:14 +0100CannabisIndica(~herb@user/mesaboogie) (Ping timeout: 268 seconds)
2021-11-21 00:07:33 +0100Codaraxis_(~Codaraxis@user/codaraxis)
2021-11-21 00:08:08 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net)
2021-11-21 00:09:57 +0100CannabisIndica(~herb@user/mesaboogie)
2021-11-21 00:11:33 +0100Codaraxis__(~Codaraxis@user/codaraxis) (Ping timeout: 268 seconds)
2021-11-21 00:16:23 +0100Successus(~Successus@gateway/tor-sasl/successus) ()
2021-11-21 00:17:34 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3)
2021-11-21 00:20:09 +0100timCF_(~timCF@m91-129-99-212.cust.tele2.ee)
2021-11-21 00:21:15 +0100fernand(~fernand@179.156.35.4)
2021-11-21 00:24:02 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Remote host closed the connection)
2021-11-21 00:27:31 +0100jmorris(uid433911@hampstead.irccloud.com)
2021-11-21 00:27:40 +0100Codaraxis(~Codaraxis@user/codaraxis)
2021-11-21 00:27:52 +0100vysn(~vysn@user/vysn)
2021-11-21 00:27:56 +0100unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving)
2021-11-21 00:28:34 +0100AlexNoo_(~AlexNoo@94.233.241.104)
2021-11-21 00:28:59 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 250 seconds)
2021-11-21 00:30:03 +0100Codaraxis_(~Codaraxis@user/codaraxis) (Ping timeout: 268 seconds)
2021-11-21 00:30:41 +0100mimmy(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com)
2021-11-21 00:31:09 +0100AlexZenon(~alzenon@178.34.161.211) (Ping timeout: 265 seconds)
2021-11-21 00:31:17 +0100Alex_test(~al_test@178.34.161.211) (Ping timeout: 268 seconds)
2021-11-21 00:32:07 +0100AlexNoo(~AlexNoo@178.34.161.211) (Ping timeout: 265 seconds)
2021-11-21 00:34:02 +0100cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) (Ping timeout: 240 seconds)
2021-11-21 00:34:37 +0100kayvank(~soostone@52-119-115-185.PUBLIC.monkeybrains.net)
2021-11-21 00:35:45 +0100mimmy(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds)
2021-11-21 00:36:22 +0100Alex_test(~al_test@94.233.241.104)
2021-11-21 00:36:28 +0100AlexZenon(~alzenon@94.233.241.104)
2021-11-21 00:37:01 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2021-11-21 00:37:15 +0100max22-(~maxime@2a01cb0883359800a2387d5f4d01fe15.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-11-21 00:39:14 +0100hololeap(~hololeap@user/hololeap) (Remote host closed the connection)
2021-11-21 00:40:00 +0100 <timCF_> Is there the way to unlift somehow name of the type (just normal kind *) from type level (in case of usage from generic function) to value level (for example a String)?
2021-11-21 00:41:01 +0100 <geekosaur> not entirely sure what you're talking about
2021-11-21 00:41:14 +0100 <geekosaur> types don't exist at runtime so their names normally aren't known
2021-11-21 00:42:07 +0100 <geekosaur> there is Data.Typeable which carries type information in a dictionary at runtime, but (a) it won't work for polymorphic types (b) you need to carry it around in your types
2021-11-21 00:42:07 +0100 <timCF_> Something like `showType :: forall a. a -> String`
2021-11-21 00:42:34 +0100 <EvanR> that type doesn't have enough information to work
2021-11-21 00:42:36 +0100 <geekosaur> :t typeOf
2021-11-21 00:42:38 +0100 <lambdabot> Typeable a => a -> TypeRep
2021-11-21 00:42:42 +0100 <awpr> > show (typeRep (Proxy @Int))
2021-11-21 00:42:43 +0100 <lambdabot> <hint>:1:22: error: parse error on input ‘@’
2021-11-21 00:42:46 +0100 <EvanR> :t show . typeOf
2021-11-21 00:42:47 +0100 <lambdabot> Typeable a => a -> String
2021-11-21 00:43:06 +0100 <timCF_> Exactly what I wanted
2021-11-21 00:43:11 +0100 <timCF_> Thanks!
2021-11-21 00:43:44 +0100 <EvanR> interested to see how you end up with an unknown type at runtime xD
2021-11-21 00:44:35 +0100 <timCF_> hmmm
2021-11-21 00:44:50 +0100 <geekosaur> betting it's polymorphic, in which case as I said this won't work
2021-11-21 00:45:02 +0100 <timCF_> actually why I do even need a value of "a"?
2021-11-21 00:45:06 +0100 <geekosaur> you can't find out the actual type it was called at
2021-11-21 00:45:33 +0100 <timCF_> why just not `showType :: forall a. String`
2021-11-21 00:45:35 +0100 <awpr> you don't need a value; there's a Proxy version, or `undefined` will work
2021-11-21 00:45:59 +0100 <awpr> `base` tends to avoid using ambiguous types that need TypeApplications to work
2021-11-21 00:46:03 +0100 <timCF_> and then `showType @a` from some generic function
2021-11-21 00:46:11 +0100 <timCF_> aa
2021-11-21 00:46:14 +0100 <geekosaur> also Typeable predates Proxy and TypeApplications
2021-11-21 00:46:24 +0100 <EvanR> forall a . String is a constant
2021-11-21 00:46:41 +0100 <timCF_> it's kinda a function on types
2021-11-21 00:46:42 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 268 seconds)
2021-11-21 00:46:50 +0100 <awpr> you can write that API, though: `showType :: forall a. Typeable a => String` `showType = show (typeRep @a Proxy)`
2021-11-21 00:46:52 +0100 <timCF_> but on value level it's a constant
2021-11-21 00:46:54 +0100 <EvanR> your're mixing levels now
2021-11-21 00:47:01 +0100Jing(~hedgehog@2604:a840:3::1094) (Remote host closed the connection)
2021-11-21 00:47:34 +0100Jing(~hedgehog@2604:a840:3::1094)
2021-11-21 00:47:43 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 00:47:56 +0100 <awpr> type parameters don't exist at runtime (at least until `foreach` from distant-future dependent haskell becomes a thing), so there needs to be something passed in to identify the type at runtime if it's going to be something other than a constant (in this case, a `Typeable` instance)
2021-11-21 00:49:17 +0100kayvank(~soostone@52-119-115-185.PUBLIC.monkeybrains.net) (Remote host closed the connection)
2021-11-21 00:56:13 +0100 <timCF_> Yeah, typeRep works perfectly with Proxy type. Cool stuff!
2021-11-21 01:00:38 +0100whatsupdoc(uid509081@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 01:01:04 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net) (Remote host closed the connection)
2021-11-21 01:01:12 +0100ian`(~user@ool-45779fe5.dyn.optonline.net)
2021-11-21 01:01:14 +0100alzgh(~alzgh@user/alzgh) (Ping timeout: 256 seconds)
2021-11-21 01:03:41 +0100timCF_(~timCF@m91-129-99-212.cust.tele2.ee) (Quit: leaving)
2021-11-21 01:06:22 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 260 seconds)
2021-11-21 01:08:19 +0100ProfSimm(~ProfSimm@87.227.196.109)
2021-11-21 01:09:23 +0100zaquest(~notzaques@5.130.79.72) (Read error: Connection reset by peer)
2021-11-21 01:09:34 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2021-11-21 01:10:01 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2021-11-21 01:13:32 +0100zaquest(~notzaques@5.130.79.72)
2021-11-21 01:17:09 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a)
2021-11-21 01:18:17 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3) (Remote host closed the connection)
2021-11-21 01:18:23 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 01:22:28 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-11-21 01:24:02 +0100vysn(~vysn@user/vysn) (Ping timeout: 240 seconds)
2021-11-21 01:26:11 +0100Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
2021-11-21 01:32:54 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-11-21 01:33:34 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds)
2021-11-21 01:34:11 +0100Lord_of_Life_Lord_of_Life
2021-11-21 01:38:22 +0100desantra(~skykanin@user/skykanin) (Quit: WeeChat 3.3)
2021-11-21 01:43:54 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net)
2021-11-21 01:47:25 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702)
2021-11-21 01:51:03 +0100mimmy(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com)
2021-11-21 01:52:24 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 01:55:02 +0100mimmy(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds)
2021-11-21 01:56:02 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net) (Ping timeout: 240 seconds)
2021-11-21 01:56:32 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2021-11-21 02:04:47 +0100machinedgod(~machinedg@24.105.81.50)
2021-11-21 02:06:12 +0100 <arahael> maerwald: just had a look for the missing libraries... libtinfo.so.6 does not exist in alpine. it's a transitional package, too.
2021-11-21 02:06:40 +0100 <arahael> maerwald: so it's looking very unlikely that there is an easy way for me to get haskell going in this environmenr.
2021-11-21 02:07:01 +0100 <geekosaur> symlink to libncurses.so.6
2021-11-21 02:08:06 +0100 <geekosaur> ideally configure would detect lack of libtinfo and use libncurses instead
2021-11-21 02:09:43 +0100 <arahael> hmm. what about libnuma?
2021-11-21 02:09:54 +0100 <geekosaur> that one I don't know
2021-11-21 02:11:13 +0100 <geekosaur> on my ubuntu it's from libnuma1, but that probably doesn't help
2021-11-21 02:11:23 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-11-21 02:12:25 +0100alx741(~alx741@186.178.109.242) (Ping timeout: 268 seconds)
2021-11-21 02:14:11 +0100 <arahael> i think i have it in the numacl package so lets try that...
2021-11-21 02:14:13 +0100 <geekosaur> https://pkgs.alpinelinux.org/contents?branch=edge&name=numactl-dev&arch=x86&repo=main
2021-11-21 02:14:19 +0100 <arahael> that! :)
2021-11-21 02:14:51 +0100 <geekosaur> lso I just noticed you pointed to a .so but you won't find those on alpine iirc, it's all static
2021-11-21 02:15:00 +0100 <geekosaur> so you still have a problem
2021-11-21 02:15:52 +0100 <geekosaur> I thought we had a static/alpine build of ghc somewhere though
2021-11-21 02:15:59 +0100geekosaurdigs
2021-11-21 02:16:29 +0100whatsupdoc(uid509081@hampstead.irccloud.com)
2021-11-21 02:17:11 +0100 <arahael> No, there's .so files too.
2021-11-21 02:17:18 +0100 <geekosaur> https://downloads.haskell.org/~ghc/8.10.7/ghc-8.10.7-x86_64-alpine3.10-linux-integer-simple.tar.xz ?
2021-11-21 02:17:29 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2021-11-21 02:17:30 +0100 <arahael> Yeah, but I'm on aarch64
2021-11-21 02:17:30 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-21 02:17:34 +0100 <geekosaur> oh
2021-11-21 02:17:43 +0100 <geekosaur> dunno about that one
2021-11-21 02:18:00 +0100 <arahael> It's been confirmed you guys don't have it.
2021-11-21 02:18:26 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-21 02:18:26 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-21 02:18:26 +0100wroathe(~wroathe@user/wroathe)
2021-11-21 02:18:40 +0100 <geekosaur> and if you need a libnuma.so then numactl won't have iot, it's only got a static library
2021-11-21 02:18:53 +0100 <arahael> No, I've got it now, had to install that.
2021-11-21 02:19:27 +0100 <arahael> Hmm... What's teh difference between libncursesw and libncurses, I have the former...
2021-11-21 02:19:58 +0100 <geekosaur> there isn't one in api level 6
2021-11-21 02:20:02 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472)
2021-11-21 02:20:13 +0100 <geekosaur> used to be that ncursesw was wide character (unicode) support
2021-11-21 02:20:16 +0100 <arahael> Ah.
2021-11-21 02:20:26 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 02:20:44 +0100 <arahael> Hmm, ok, so I think it just don't work - I have now satisfied all libraries but still three missing symbols.
2021-11-21 02:21:00 +0100 <arahael> Missing symbols: gnu_dev_makedev, gnu_dev_major, gnu_dev_minor
2021-11-21 02:21:20 +0100 <geekosaur> uh. that's a libc issue
2021-11-21 02:21:44 +0100 <arahael> Seems like ghcup's binary isn't compiled for my system at all then.
2021-11-21 02:22:05 +0100 <geekosaur> sounds like somehow they got a few glibc headers mixed in with musl?
2021-11-21 02:22:22 +0100 <geekosaur> because I'd expect those to be macros
2021-11-21 02:23:05 +0100 <arahael> maerwald: Has pointed out there's no bindist for this system, though I assumed he was referring to the static bindists.
2021-11-21 02:23:13 +0100 <arahael> But I guess there isn't one at all.
2021-11-21 02:23:38 +0100 <arahael> s/:/, :)
2021-11-21 02:23:44 +0100jushur(~human@user/jushur)
2021-11-21 02:24:22 +0100 <arahael> I think I may be best investigating rust instead if I want to support this system.
2021-11-21 02:26:20 +0100alx741(~alx741@186.178.108.219)
2021-11-21 02:26:47 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472) (Ping timeout: 264 seconds)
2021-11-21 02:27:10 +0100 <arahael> (Especially since I haven't actually written this yet, though, I do really like the idea of using haskell's network-simple-tls.)
2021-11-21 02:33:35 +0100 <arahael> I could consider compiling haskell, but I've no other compiler to bootstrap it, so it's still back to cross compiling, and I'm not really keen to get into that with haskell.
2021-11-21 02:59:25 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 03:01:33 +0100wroathe(~wroathe@user/wroathe) (Quit: leaving)
2021-11-21 03:03:39 +0100ProfSimm(~ProfSimm@87.227.196.109) (Ping timeout: 256 seconds)
2021-11-21 03:04:02 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 260 seconds)
2021-11-21 03:08:50 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (Quit: leaving)
2021-11-21 03:13:49 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com)
2021-11-21 03:14:41 +0100zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2021-11-21 03:15:43 +0100 <danso> is (->) mathematically a bifunctor, but isn't in haskell for practical computery reasons?
2021-11-21 03:18:03 +0100 <awpr> the Bifunctor class is a very specific form of bifunctor that (->) isn't
2021-11-21 03:18:11 +0100zaquest(~notzaques@5.130.79.72)
2021-11-21 03:18:23 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 03:18:53 +0100 <awpr> Bifunctor is Hask x Hask -> Hask bifunctors, but (->) is Hask_op x Hask -> Hask. for that, there's Profunctor
2021-11-21 03:20:57 +0100 <danso> hm ok thanks
2021-11-21 03:26:25 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 268 seconds)
2021-11-21 03:31:23 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 03:35:46 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 260 seconds)
2021-11-21 03:38:51 +0100alx741(~alx741@186.178.108.219) (Quit: alx741)
2021-11-21 03:39:23 +0100machinedgod(~machinedg@24.105.81.50)
2021-11-21 03:40:12 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 03:42:03 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a)
2021-11-21 03:43:32 +0100xff0x(~xff0x@2001:1a81:5231:4c00:adf9:5009:dcd2:4bf0) (Ping timeout: 240 seconds)
2021-11-21 03:43:44 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472)
2021-11-21 03:44:27 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2021-11-21 03:45:42 +0100xff0x(~xff0x@2001:1a81:526f:1d00:143a:8455:ad4e:6c5e)
2021-11-21 03:46:12 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a) (Client Quit)
2021-11-21 03:46:26 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-21 03:48:37 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472) (Ping timeout: 268 seconds)
2021-11-21 03:50:42 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 260 seconds)
2021-11-21 03:52:56 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-11-21 03:53:49 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 03:55:35 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 03:58:14 +0100justsomeguy(~justsomeg@user/justsomeguy)
2021-11-21 03:58:37 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-21 04:00:30 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-11-21 04:02:33 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472)
2021-11-21 04:06:06 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2021-11-21 04:07:08 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:1f:67de:401b:c472) (Ping timeout: 268 seconds)
2021-11-21 04:07:44 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-21 04:12:32 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3)
2021-11-21 04:14:35 +0100lagashGuest7361
2021-11-21 04:14:35 +0100Guest7361(lagash@lagash.freeirc.org) (Killed (calcium.libera.chat (Nickname regained by services)))
2021-11-21 04:14:48 +0100lagash_(lagash@lagash.freeirc.org)
2021-11-21 04:15:22 +0100jbox(~jbox@user/jbox) (Ping timeout: 260 seconds)
2021-11-21 04:17:31 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 04:17:44 +0100pfurla(~pfurla@201.17.118.230)
2021-11-21 04:22:26 +0100zebrag(~chris@user/zebrag)
2021-11-21 04:26:09 +0100fernand(~fernand@179.156.35.4) (Quit: Connection closed)
2021-11-21 04:38:15 +0100Cajun(~Cajun@user/cajun) (Ping timeout: 256 seconds)
2021-11-21 04:46:37 +0100lagash_(lagash@lagash.freeirc.org) (Quit: ZNC - https://znc.in)
2021-11-21 04:50:38 +0100whatsupdoc(uid509081@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 04:50:47 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 04:51:19 +0100td_(~td@muedsl-82-207-238-028.citykom.de) (Ping timeout: 256 seconds)
2021-11-21 04:53:14 +0100td_(~td@muedsl-82-207-238-154.citykom.de)
2021-11-21 04:53:22 +0100xff0x(~xff0x@2001:1a81:526f:1d00:143a:8455:ad4e:6c5e) (Ping timeout: 268 seconds)
2021-11-21 04:53:54 +0100xff0x(~xff0x@2001:1a81:526f:1d00:936b:4a50:cc7a:54ee)
2021-11-21 04:53:59 +0100renzhi(~xp@2607:fa49:6500:b100::6e7f) (Ping timeout: 268 seconds)
2021-11-21 04:54:22 +0100lagash(lagash@lagash.shelltalk.net)
2021-11-21 04:55:34 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-11-21 04:55:46 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection)
2021-11-21 05:01:05 +0100dsamperi(~dsamperi@2603-7000-3b42-5400-696c-e6d5-a38c-bff7.res6.spectrum.com)
2021-11-21 05:01:35 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
2021-11-21 05:03:53 +0100 <dsamperi> Have recent revisions of GHC provided a work-around for the fact that field names have file/module scope? SPJ says something about this in his lecture on Lenses.
2021-11-21 05:05:06 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:c9bb:e46c:7fac:4568)
2021-11-21 05:07:01 +0100wei2912(~wei2912@138.75.71.147)
2021-11-21 05:07:37 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-11-21 05:08:31 +0100 <dsal> There's nothing special about field names in that regard. You can choose to or choose not to export those symbols.
2021-11-21 05:08:45 +0100 <dsal> There are new features that allow you to have records without generating the accessor functions.
2021-11-21 05:08:52 +0100 <dsal> And a few other weird record hacks.
2021-11-21 05:09:59 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:c9bb:e46c:7fac:4568) (Ping timeout: 264 seconds)
2021-11-21 05:10:42 +0100jbox(~jbox@user/jbox)
2021-11-21 05:11:41 +0100 <sm> a growing number of weird record hacks
2021-11-21 05:14:57 +0100 <dsamperi> Simon suggested a future release might include a work-around for field name conflicts in the same module using Lens library.
2021-11-21 05:15:17 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de) (Quit: Ping timeout (120 seconds))
2021-11-21 05:20:17 +0100helby(helby@alpine/moderator/helby)
2021-11-21 05:22:42 +0100 <helby> Hey, I am not familiar with cabal/ghc, trying to build HsOpenSSL on OpenBSD and had some errors ;/ https://envs.sh/E2h.log
2021-11-21 05:23:45 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de)
2021-11-21 05:29:51 +0100 <dsal> dsamperi: It's unclear what you mean. lens can do this with "classy" lenses, but you can't just make a function mean different things.
2021-11-21 05:30:50 +0100 <dsal> You can always qualify symbols to the module that's exporting them.
2021-11-21 05:31:47 +0100 <helby> it would help if at least I know what these errors means ;/
2021-11-21 05:32:52 +0100 <awpr> this kinda looks like an incompatibility between some low-level Haskell/C interface code and the C headers your system provides
2021-11-21 05:33:24 +0100 <awpr> the error is coming from C land, where something is trying to find the offset of a struct field, in a type that's not been defined yet, only forward-declared
2021-11-21 05:33:27 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se) (Ping timeout: 268 seconds)
2021-11-21 05:33:46 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se)
2021-11-21 05:34:56 +0100 <helby> well openbsd uses libressl, not openssl, don't know if it can be related, but I assume
2021-11-21 05:35:14 +0100 <awpr> that sounds like it's probably the issue
2021-11-21 05:38:15 +0100 <awpr> from skimming the issue tracker, it looks like it intends to support libressl, maybe on a best-effort basis. it might be worth filing a bug report https://github.com/vshabanov/HsOpenSSL/issues
2021-11-21 05:38:23 +0100dsrt^(~dsrt@68.101.63.101) (Ping timeout: 268 seconds)
2021-11-21 05:40:46 +0100dsrt^(~dsrt@68.101.63.101)
2021-11-21 05:41:07 +0100dsamperi(~dsamperi@2603-7000-3b42-5400-696c-e6d5-a38c-bff7.res6.spectrum.com) (Quit: Konversation terminated!)
2021-11-21 05:48:28 +0100Midjak(~Midjak@82-65-111-221.subs.proxad.net) (Quit: This computer has gone to sleep)
2021-11-21 05:57:16 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 06:01:45 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 06:01:54 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 06:06:07 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-21 06:07:25 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:cc87:cc85:f027:20a)
2021-11-21 06:12:33 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:cc87:cc85:f027:20a) (Ping timeout: 265 seconds)
2021-11-21 06:13:31 +0100hololeap(~hololeap@user/hololeap)
2021-11-21 06:17:21 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 06:24:49 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 256 seconds)
2021-11-21 06:26:28 +0100vysn(~vysn@user/vysn)
2021-11-21 06:30:48 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-11-21 06:32:49 +0100waleee(~waleee@h-82-196-111-63.NA.cust.bahnhof.se) (Quit: WeeChat 3.3)
2021-11-21 06:35:25 +0100phma(~phma@host-67-44-208-215.hnremote.net) (Read error: Connection reset by peer)
2021-11-21 06:36:13 +0100phma(~phma@host-67-44-208-36.hnremote.net)
2021-11-21 06:56:42 +0100edrx(~Eduardo@2804:56c:d2d0:b400:6e3c:c666:9c9c:53ff)
2021-11-21 07:04:15 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 07:06:40 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:cc87:cc85:f027:20a)
2021-11-21 07:07:34 +0100slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-11-21 07:11:11 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:cc87:cc85:f027:20a) (Ping timeout: 264 seconds)
2021-11-21 07:12:07 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702) (Ping timeout: 268 seconds)
2021-11-21 07:17:04 +0100mbuf(~Shakthi@223.178.74.138)
2021-11-21 07:18:59 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-21 07:27:09 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 256 seconds)
2021-11-21 07:30:40 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-11-21 07:32:05 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 07:34:02 +0100jmorris(uid433911@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 07:36:01 +0100ProfSimm(~ProfSimm@87.227.196.109)
2021-11-21 07:37:40 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:391b:6915:6f86:ad4d)
2021-11-21 07:44:39 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2021-11-21 07:46:18 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:391b:6915:6f86:ad4d) (Ping timeout: 260 seconds)
2021-11-21 07:55:57 +0100abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-11-21 07:58:33 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 08:01:09 +0100mei(~mei@user/mei)
2021-11-21 08:03:43 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 265 seconds)
2021-11-21 08:09:59 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 264 seconds)
2021-11-21 08:10:36 +0100Solid(~slot@xmonad/slotThe)
2021-11-21 08:12:02 +0100cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2021-11-21 08:12:07 +0100cheater1__(~Username@user/cheater)
2021-11-21 08:12:11 +0100cheater1__cheater
2021-11-21 08:13:15 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 08:16:49 +0100Solid(~slot@xmonad/slotThe) (WeeChat 3.3)
2021-11-21 08:22:35 +0100pfurla(~pfurla@201.17.118.230) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 08:27:02 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-21 08:27:03 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 08:27:58 +0100nitrix(~nitrix@user/nitrix) (Quit: Libera upgrade.)
2021-11-21 08:28:28 +0100nitrix(~nitrix@user/nitrix)
2021-11-21 08:34:33 +0100Axman6(~Axman6@user/axman6)
2021-11-21 08:43:26 +0100Skyfire(~pyon@user/pyon) (Quit: brb)
2021-11-21 08:43:39 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2021-11-21 08:52:39 +0100Skyfire(~pyon@user/pyon)
2021-11-21 08:55:15 +0100Skyfire(~pyon@user/pyon) (Client Quit)
2021-11-21 08:57:16 +0100Skyfire(~pyon@user/pyon)
2021-11-21 08:57:56 +0100phma(~phma@host-67-44-208-36.hnremote.net) (Read error: Connection reset by peer)
2021-11-21 08:59:05 +0100phma(phma@2001:5b0:2144:7d68:1cc9:af1c:e136:41c7)
2021-11-21 09:00:02 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 268 seconds)
2021-11-21 09:00:29 +0100max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr)
2021-11-21 09:01:35 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-11-21 09:02:12 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 09:07:30 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 09:09:51 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-11-21 09:10:04 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 09:15:29 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 250 seconds)
2021-11-21 09:16:02 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2021-11-21 09:16:27 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 09:21:37 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
2021-11-21 09:30:34 +0100chomwitt(~chomwitt@2a02:587:dc2d:ec00:12c3:7bff:fe6d:d374)
2021-11-21 09:36:55 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 256 seconds)
2021-11-21 09:46:41 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Remote host closed the connection)
2021-11-21 09:51:01 +0100gustik(~gustik@2a01:c844:240a:de20:3606:7339:bc88:b5f5) (Quit: Leaving)
2021-11-21 09:54:12 +0100 <albet70> what's the relationship between json and yaml?
2021-11-21 09:58:09 +0100 <sm> four letter names, plain text, popular, overused, hard to displace
2021-11-21 09:58:19 +0100 <pavonia> JSON is a subset of YAML
2021-11-21 10:01:00 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 10:01:27 +0100 <[exa]> also, parsing json is afaik decidable
2021-11-21 10:01:37 +0100 <[exa]> albet70: you meant the packages right? :D
2021-11-21 10:02:16 +0100 <albet70> "🟢 [exa] :albet70: you meant the packages right? :D", just the name
2021-11-21 10:03:02 +0100 <albet70> "pavonia :JSON is a subset of YAML", aha
2021-11-21 10:05:15 +0100MoC(~moc@user/moc)
2021-11-21 10:07:21 +0100 <albet70> is that simple to use parsec to parse yaml? I tried json at once
2021-11-21 10:07:56 +0100 <albet70> or megaparsec?
2021-11-21 10:10:45 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2021-11-21 10:14:36 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 10:17:33 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-11-21 10:17:33 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2021-11-21 10:17:36 +0100allbery_bgeekosaur
2021-11-21 10:18:06 +0100Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-11-21 10:21:48 +0100 <[exa]> albet70: there's the specialized parser in `yaml` package that can be recommended, but if you are okay with parsing a decent safe subset of yaml, megaparsec should just work
2021-11-21 10:22:37 +0100 <[exa]> there's even some support for autoparsing the indentation blocks, which well, you know, helps a lot.
2021-11-21 10:22:47 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 10:25:58 +0100jbox(~jbox@user/jbox) (Read error: Connection reset by peer)
2021-11-21 10:27:45 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 265 seconds)
2021-11-21 10:30:57 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 10:43:30 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-11-21 10:44:47 +0100_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-11-21 10:47:03 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 10:51:39 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Ping timeout: 268 seconds)
2021-11-21 10:55:39 +0100mc47(~mc47@xmonad/TheMC47)
2021-11-21 10:57:13 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 268 seconds)
2021-11-21 10:57:40 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 11:00:05 +0100justache(~justache@user/justache) (Read error: Connection reset by peer)
2021-11-21 11:01:01 +0100justache(~justache@user/justache)
2021-11-21 11:01:53 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 11:06:32 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 240 seconds)
2021-11-21 11:07:25 +0100phma_(~phma@2001:5b0:211f:e738:5c4d:dbc4:3f14:dae2)
2021-11-21 11:08:41 +0100phma(phma@2001:5b0:2144:7d68:1cc9:af1c:e136:41c7) (Read error: Connection reset by peer)
2021-11-21 11:12:16 +0100phma_phma
2021-11-21 11:12:18 +0100zer0bitz(~zer0bitz@2001:2003:f6bc:f00:5be:28c2:b3af:e641)
2021-11-21 11:15:06 +0100bollu(~bollu@139.59.46.74) (Quit: The Lounge - https://thelounge.chat)
2021-11-21 11:24:03 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net)
2021-11-21 11:25:14 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:25:32 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 11:25:39 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:25:53 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 11:26:01 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:26:16 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 11:26:23 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:26:39 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 11:26:44 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:27:02 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 11:27:09 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 11:28:58 +0100Successus(~Successus@gateway/tor-sasl/successus)
2021-11-21 11:31:45 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-11-21 11:31:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-21 11:37:28 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2021-11-21 11:41:35 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-11-21 11:42:32 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a)
2021-11-21 11:45:53 +0100DNH(~DNH@2a02:8108:1100:16d8:7892:4ebf:89a7:d96)
2021-11-21 11:46:00 +0100m4lvin_(~m4lvin@w4eg.de) (Quit: m4lvin_)
2021-11-21 11:46:12 +0100m4lvin(~m4lvin@w4eg.de)
2021-11-21 11:48:08 +0100linkedlistist(uid528169@lymington.irccloud.com)
2021-11-21 11:48:12 +0100 <smunix> modified
2021-11-21 11:48:38 +0100[exa]welcomes the change
2021-11-21 11:48:50 +0100chisui(~chisui@2001:16b8:666f:100:7a17:7081:22e6:bcd)
2021-11-21 11:49:37 +0100 <linkedlistist> Hey, folks, does anyone have any experience of calling Haskell from Rust?
2021-11-21 11:50:08 +0100yushyin(XNontZhIIh@karif.server-speed.net) (Quit: WeeChat 3.3)
2021-11-21 11:50:18 +0100yushyin(3RNeQpThcJ@karif.server-speed.net)
2021-11-21 11:53:57 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net) (Ping timeout: 268 seconds)
2021-11-21 11:57:51 +0100kupi(uid212005@hampstead.irccloud.com)
2021-11-21 11:58:23 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 12:00:51 +0100alx741(~alx741@186.178.108.219)
2021-11-21 12:01:15 +0100__monty__(~toonn@user/toonn)
2021-11-21 12:02:58 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 260 seconds)
2021-11-21 12:06:04 +0100MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-11-21 12:07:14 +0100drownbes(~drownbes@200-149-20-81.sta.estpak.ee) (Ping timeout: 260 seconds)
2021-11-21 12:08:46 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 12:13:28 +0100 <[exa]> linkedlistist: it should be possible using the "reverse FFI" as from C, given Rust can call C symbols with ccall.
2021-11-21 12:14:01 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 12:15:06 +0100 <[exa]> i.e., just simulate what's happening in here https://wiki.haskell.org/Calling_Haskell_from_C
2021-11-21 12:15:29 +0100 <[exa]> you'll just need to take the `test.rs` and compile it yourself to `.o`
2021-11-21 12:15:52 +0100 <albet70> haha, calling haskell from rust
2021-11-21 12:16:18 +0100 <[exa]> like, honestly I'd expect the other way around.
2021-11-21 12:16:19 +0100 <[exa]> :D
2021-11-21 12:16:27 +0100 <albet70> nowadays, people always compare those two
2021-11-21 12:16:46 +0100 <albet70> which one is better or harder to learn
2021-11-21 12:17:40 +0100 <[exa]> yeah comparing the incomparable is a popular fun. :D
2021-11-21 12:18:29 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 12:18:33 +0100 <[exa]> nyway rust is pretty good, at least for beginners who require the tooling, esp. compared to the other languages in that niche
2021-11-21 12:18:39 +0100 <[exa]> seriously looking forward to how that develops
2021-11-21 12:18:55 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 265 seconds)
2021-11-21 12:19:01 +0100 <albet70> I saw there was a rust book in the library, and it's so big I mean there're too many pages, so I didn't learn rust from there
2021-11-21 12:20:27 +0100 <albet70> and then I saw learn yourself a haskell for good, it doesn't have so many pages, so I buy it and learn haskell
2021-11-21 12:21:31 +0100 <sshine> albet70, I started solving the Rustlings tutorial. it's a nice alternative to reading a book.
2021-11-21 12:21:33 +0100 <albet70> it's a good book for beginners, but it lacks lots of concepts
2021-11-21 12:21:55 +0100 <albet70> sshine, does it have so many pages?
2021-11-21 12:22:04 +0100 <sshine> it's not a book.
2021-11-21 12:22:32 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 12:23:07 +0100 <sshine> it's a git repository. you download it, set up a development environment, enable "file watch" (turn the compiler to recompile the tutorial project every time a file is changed), and start fixing intentional bugs left in each tutorial file. when you're done with one file, the next file complains.
2021-11-21 12:23:11 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-21 12:23:25 +0100 <albet70> also there's another language that comes to compare with haskell, scala
2021-11-21 12:23:31 +0100 <sshine> eventually, when you get to the stuff about borrowed pointers, I do feel the need to read up. but I can still use just online resources.
2021-11-21 12:23:52 +0100chisui(~chisui@2001:16b8:666f:100:7a17:7081:22e6:bcd) (Quit: Client closed)
2021-11-21 12:24:25 +0100 <albet70> haskell, rust, scala those three are very argued
2021-11-21 12:24:59 +0100 <sshine> they're argued?
2021-11-21 12:25:03 +0100 <albet70> the pointers, is like C or C++?
2021-11-21 12:25:15 +0100 <sshine> yes, but stronger typed pointers.
2021-11-21 12:26:29 +0100 <albet70> C's pointers are not typed?
2021-11-21 12:26:50 +0100 <sshine> they're loosely typed. you almost always have to cast things eventually.
2021-11-21 12:26:54 +0100 <albet70> I totally forget how to write C
2021-11-21 12:26:55 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-21 12:27:36 +0100 <yushyin> good old voidpointers ;)
2021-11-21 12:27:38 +0100 <sshine> and function pointers in C are somewhat of a hack.
2021-11-21 12:27:40 +0100 <albet70> I most use python or kotlin at work
2021-11-21 12:27:42 +0100 <sshine> yeah :)
2021-11-21 12:28:17 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-11-21 12:28:49 +0100 <sshine> rust differentiates between references, pointers, whether they're mutable/immutable, and several kinds of smart pointers: https://doc.rust-lang.org/book/ch15-00-smart-pointers.html -- depending on the use-case.
2021-11-21 12:29:11 +0100chomwitt(~chomwitt@2a02:587:dc2d:ec00:12c3:7bff:fe6d:d374) (Ping timeout: 250 seconds)
2021-11-21 12:35:53 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850)
2021-11-21 12:39:32 +0100 <albet70> could >> implement in other languages?
2021-11-21 12:39:40 +0100 <albet70> be implemented
2021-11-21 12:40:49 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:e15c:d2bc:9fea:d850) (Ping timeout: 268 seconds)
2021-11-21 12:45:45 +0100ubert(~Thunderbi@p548c9fcb.dip0.t-ipconnect.de) (Quit: ubert)
2021-11-21 12:46:06 +0100ubert(~Thunderbi@p200300ecdf0ba2db387348ed975200f7.dip0.t-ipconnect.de)
2021-11-21 12:49:00 +0100Midjak(~Midjak@82-65-111-221.subs.proxad.net)
2021-11-21 12:53:36 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b)
2021-11-21 12:58:30 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b) (Ping timeout: 260 seconds)
2021-11-21 13:00:00 +0100wei2912(~wei2912@138.75.71.147) (Quit: Lost terminal)
2021-11-21 13:00:08 +0100 <geekosaur> it has been implemented, although it has shortcomings because very few languages are polymorphic in the way Haskell is
2021-11-21 13:00:19 +0100 <geekosaur> usually it's called "andthen"
2021-11-21 13:00:58 +0100zer0bitz(~zer0bitz@2001:2003:f6bc:f00:5be:28c2:b3af:e641) (Ping timeout: 265 seconds)
2021-11-21 13:01:22 +0100zer0bitz(~zer0bitz@dsl-hkibng31-54fabc-15.dhcp.inet.fi)
2021-11-21 13:06:17 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 13:07:14 +0100nf(~n@monade.li) (Quit: Fairfarren.)
2021-11-21 13:07:19 +0100 <albet70> geekosaur, has it been implemented in python?
2021-11-21 13:07:29 +0100AlexNoo_AlexNoo
2021-11-21 13:07:35 +0100 <albet70> and what it looks like?
2021-11-21 13:07:48 +0100 <geekosaur> I don't do python so I don't know
2021-11-21 13:07:55 +0100 <geekosaur> probably someone has
2021-11-21 13:09:01 +0100nf(~n@monade.li)
2021-11-21 13:09:05 +0100Pickchea(~private@user/pickchea)
2021-11-21 13:09:42 +0100 <albet70> ok
2021-11-21 13:10:14 +0100notzmv(~zmv@user/notzmv)
2021-11-21 13:11:26 +0100Feuermagier_(~Feuermagi@154.28.188.151)
2021-11-21 13:11:34 +0100vgtw(~vgtw@c-6a60205c.07-348-756d651.bbcust.telenor.se) (Quit: ZNC - https://znc.in)
2021-11-21 13:11:59 +0100vgtw(~vgtw@c-6a60205c.07-348-756d651.bbcust.telenor.se)
2021-11-21 13:12:02 +0100 <albet70> geekosaur, I googled python andThen, and it gives me "compose"...
2021-11-21 13:12:07 +0100Feuermagier_(~Feuermagi@154.28.188.151) (Client Quit)
2021-11-21 13:12:13 +0100 <albet70> composing functions
2021-11-21 13:12:53 +0100 <geekosaur> mm, that may mean it's as close as it gets then
2021-11-21 13:12:53 +0100Feuermagier_(~Feuermagi@154.28.188.151)
2021-11-21 13:13:18 +0100 <geekosaur> like I said, most languages aren't as polymorphic as Haskell is, the whole concept of "monad" is difficult for them
2021-11-21 13:13:19 +0100 <albet70> I saw some python code using >>, I was very curious it, because I know what it's doing in haskell, then I wonder why someone in python would use it
2021-11-21 13:13:39 +0100Feuermagier_(~Feuermagi@154.28.188.151) (Remote host closed the connection)
2021-11-21 13:13:40 +0100Feuermagier(~Feuermagi@user/feuermagier) (Remote host closed the connection)
2021-11-21 13:13:52 +0100Feuermagier(~Feuermagi@user/feuermagier)
2021-11-21 13:14:22 +0100 <albet70> and then I read the code in python, it makes no sense
2021-11-21 13:14:54 +0100 <yushyin> maybe something similar in the future/promises api of python
2021-11-21 13:15:22 +0100 <albet70> so I wonder the author write that, it seems he/she knowing >> like haskell, but they implement it wrong
2021-11-21 13:15:42 +0100 <yushyin> https://docs.python.org/3/library/asyncio-future.html?#asyncio.Future.add_done_callback
2021-11-21 13:21:47 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 13:22:12 +0100alzgh(~alzgh@user/alzgh)
2021-11-21 13:25:08 +0100fef(~thedawn@user/thedawn)
2021-11-21 13:28:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 13:30:43 +0100Midjak(~Midjak@82-65-111-221.subs.proxad.net) (Read error: Connection reset by peer)
2021-11-21 13:31:31 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 256 seconds)
2021-11-21 13:31:37 +0100Midjak(~Midjak@82-65-111-221.subs.proxad.net)
2021-11-21 13:32:47 +0100ProfSimm(~ProfSimm@87.227.196.109) (Ping timeout: 264 seconds)
2021-11-21 13:38:09 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se) (Ping timeout: 268 seconds)
2021-11-21 13:38:51 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se)
2021-11-21 13:42:26 +0100_ht(~quassel@82-169-194-8.biz.kpn.net) (Ping timeout: 260 seconds)
2021-11-21 13:42:37 +0100_ht(~quassel@37.120.218.140)
2021-11-21 13:47:25 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:8ce9:9a4:40aa:9fe2)
2021-11-21 13:48:38 +0100benin(~benin@183.82.178.244) (Ping timeout: 268 seconds)
2021-11-21 13:49:11 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad)
2021-11-21 13:52:41 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:8ce9:9a4:40aa:9fe2) (Ping timeout: 265 seconds)
2021-11-21 13:54:08 +0100MidAutumnMoon(~MidAutumn@user/midautumnmoon) (Quit: Leaving for a break - theLounge)
2021-11-21 13:54:40 +0100MidAutumnMoon6(~MidAutumn@user/midautumnmoon)
2021-11-21 13:54:45 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-11-21 13:54:53 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
2021-11-21 13:55:09 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b)
2021-11-21 13:55:12 +0100benin(~benin@183.82.178.244)
2021-11-21 13:55:35 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-11-21 13:58:44 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 14:00:58 +0100Feuermagier(~Feuermagi@user/feuermagier) (Quit: Leaving)
2021-11-21 14:01:32 +0100max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2021-11-21 14:02:32 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-11-21 14:03:44 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2021-11-21 14:04:12 +0100 <albet70> is >> related to . ?
2021-11-21 14:04:23 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-11-21 14:05:09 +0100 <albet70> when m~ r->, <$> equal to .
2021-11-21 14:05:34 +0100 <albet70> what about >> ?
2021-11-21 14:05:35 +0100 <geekosaur> you could say >>= is . on a higher level. Arrowes were intended to capture that abstraction but it never quite worked in practice
2021-11-21 14:05:54 +0100 <geekosaur> >> is just >>= discarding the input but keeping any effects
2021-11-21 14:06:02 +0100 <geekosaur> *Arrows
2021-11-21 14:06:31 +0100mikoto-chan(~mikoto-ch@esm-84-240-99-143.netplaza.fi) (Ping timeout: 268 seconds)
2021-11-21 14:07:27 +0100 <albet70> :t (>>)
2021-11-21 14:07:28 +0100 <lambdabot> Monad m => m a -> m b -> m b
2021-11-21 14:07:40 +0100 <albet70> :t (>>=)
2021-11-21 14:07:41 +0100 <lambdabot> Monad m => m a -> (a -> m b) -> m b
2021-11-21 14:08:13 +0100 <albet70> :t (.)
2021-11-21 14:08:14 +0100 <lambdabot> (b -> c) -> (a -> b) -> a -> c
2021-11-21 14:09:41 +0100 <geekosaur> % :t (>>) @((->) _) -- let's see if this works
2021-11-21 14:09:41 +0100 <yahb> geekosaur: (w -> a) -> (w -> b) -> w -> b
2021-11-21 14:10:13 +0100 <geekosaur> not quite the same, but you can see the similarity
2021-11-21 14:10:35 +0100xff0x(~xff0x@2001:1a81:526f:1d00:936b:4a50:cc7a:54ee) (Ping timeout: 264 seconds)
2021-11-21 14:10:43 +0100 <albet70> "geekosaur :% :t (>>) @((->) _) -- let's see if this works", what this mean?
2021-11-21 14:10:55 +0100 <albet70> that @
2021-11-21 14:11:05 +0100xff0x(~xff0x@2001:1a81:526f:1d00:2bb4:8855:a1a6:d69e)
2021-11-21 14:11:17 +0100 <geekosaur> it's a type application. I had to direct it to yahb because lambdabot doesn't understand type applications
2021-11-21 14:11:48 +0100 <geekosaur> so I in effect told it to expand the type of (>>) using ((->) r) (function application) as the monad
2021-11-21 14:12:32 +0100 <albet70> alright, when m~ (w->)
2021-11-21 14:13:25 +0100 <albet70> but >> is similarity to >>=, not (.)
2021-11-21 14:13:48 +0100 <albet70> (.) would be like (b -> c) -> m b -> m c
2021-11-21 14:14:08 +0100 <albet70> >> like m a -> m b -> m b
2021-11-21 14:14:44 +0100 <geekosaur> % :t (>>=) @((->) _)
2021-11-21 14:14:44 +0100 <yahb> geekosaur: (w -> a) -> (a -> w -> b) -> w -> b
2021-11-21 14:15:10 +0100 <geekosaur> this is closer to (.) but has that extra parameter in the middle
2021-11-21 14:15:25 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:8ce9:9a4:40aa:9fe2)
2021-11-21 14:15:46 +0100 <geekosaur> this is part of why Arrows never quite worked; there is a strong abstract similarity to (.) but not even Haskell can quite capture it
2021-11-21 14:16:35 +0100 <geekosaur> actually we have a sort-of way now via Control.Category, but I think that requires you understand some category theory to work with it
2021-11-21 14:16:52 +0100 <geekosaur> since it's modeling categories to capture the abstraction
2021-11-21 14:17:46 +0100 <albet70> "yahb :geekosaur: (w -> a) -> (a -> w -> b) -> w -> b", (b -> c) -> (a -> b) -> a -> c I don't see how this similarity
2021-11-21 14:18:13 +0100 <albet70> not just the extra parameter in the middle
2021-11-21 14:19:45 +0100 <albet70> when b~w, c~a, it would like (w->a) -> (x ->w) -> (x -> a)
2021-11-21 14:20:42 +0100 <geekosaur> right, it's thrown off because the ((->) r) monad always injects that extra "r" (we call it "r" by convention but yahb called it "w")
2021-11-21 14:21:12 +0100 <geekosaur> I used it because it comes closest to looking like (.) but the extra "w" complicates things
2021-11-21 14:23:40 +0100 <geekosaur> Arrows make things fit together more directly by wrapping Monad in Kleisli, but at the cost that you have to use `arr` which strongly limits its usefulness
2021-11-21 14:24:12 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
2021-11-21 14:26:28 +0100ProfSimm(~ProfSimm@87.227.196.109)
2021-11-21 14:26:46 +0100 <geekosaur> and the problem with showing this is (.) has only one type fitting its "type schema" which is not *quite* the same as ((->) r), but Monad has many that fit; and it's not easy to see how the two relate without using some category theory
2021-11-21 14:26:52 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:8ce9:9a4:40aa:9fe2) (Ping timeout: 268 seconds)
2021-11-21 14:26:58 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 14:27:15 +0100 <geekosaur> Control.Category defines its own version of (.) which makes it a bit clearer
2021-11-21 14:27:18 +0100 <geekosaur> hm
2021-11-21 14:27:31 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:45d3:5172:e85f:c128)
2021-11-21 14:27:45 +0100 <geekosaur> % :t (Control.Category..)
2021-11-21 14:27:45 +0100 <yahb> geekosaur: forall {k} {cat :: k -> k -> *} {b :: k} {c :: k} {a :: k}. Category cat => cat b c -> cat a b -> cat a c
2021-11-21 14:28:04 +0100 <geekosaur> clear as mud :(
2021-11-21 14:28:14 +0100 <hpc> just ignore everything before "."
2021-11-21 14:32:07 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-11-21 14:35:34 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b) (Ping timeout: 260 seconds)
2021-11-21 14:40:52 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 14:43:50 +0100machinedgod(~machinedg@24.105.81.50)
2021-11-21 14:45:20 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b)
2021-11-21 14:46:43 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2021-11-21 14:47:25 +0100xff0x(~xff0x@2001:1a81:526f:1d00:2bb4:8855:a1a6:d69e) (Ping timeout: 250 seconds)
2021-11-21 14:48:16 +0100xff0x(~xff0x@2001:1a81:526f:1d00:d375:c485:c62f:a6f6)
2021-11-21 14:52:14 +0100DNH(~DNH@2a02:8108:1100:16d8:7892:4ebf:89a7:d96) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-21 14:58:25 +0100mikoto-chan(~mikoto-ch@esm-84-240-99-143.netplaza.fi)
2021-11-21 15:00:27 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 15:06:59 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds)
2021-11-21 15:08:19 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681)
2021-11-21 15:08:39 +0100waleee(~waleee@h-82-196-111-63.NA.cust.bahnhof.se)
2021-11-21 15:11:17 +0100mimmy(~mimmy@2607:fea8:6e0:7f90:45d3:5172:e85f:c128) (Ping timeout: 268 seconds)
2021-11-21 15:16:47 +0100dawdler(~dawdler@user/dawdler)
2021-11-21 15:18:59 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681) (Ping timeout: 264 seconds)
2021-11-21 15:21:27 +0100Pickchea(~private@user/pickchea) (Quit: Leaving)
2021-11-21 15:23:25 +0100 <hololeap> what would be an example of a profunctor in haskell that is not strong?
2021-11-21 15:24:15 +0100mmhat(~mmh@55d438c0.access.ecotel.net)
2021-11-21 15:26:33 +0100jassob1(~jassob@h-98-128-167-112.NA.cust.bahnhof.se) (Ping timeout: 256 seconds)
2021-11-21 15:30:25 +0100 <xdej> /9
2021-11-21 15:30:29 +0100 <xdej> sorry
2021-11-21 15:30:37 +0100alzgh(~alzgh@user/alzgh) (Remote host closed the connection)
2021-11-21 15:30:58 +0100alzgh(~alzgh@user/alzgh)
2021-11-21 15:31:20 +0100NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-11-21 15:32:00 +0100 <hololeap> from the looks of it, Op is a Category, but not an Arrow, so it would be a profunctor that is not strong, right?
2021-11-21 15:32:09 +0100NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-11-21 15:33:00 +0100 <hololeap> although it's probably costrong
2021-11-21 15:36:20 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681)
2021-11-21 15:36:48 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a)
2021-11-21 15:38:10 +0100 <hololeap> % unfirst (Op (f :: forall d. (b,d) -> (a,d))) = Op $ \b -> fst $ f (b,undefined)
2021-11-21 15:38:10 +0100 <yahb> hololeap: ; <interactive>:12:14: error:; * Couldn't match expected type: b -> a; with actual type: forall d. (b1, d) -> (a1, d); * When checking that the pattern signature: forall d. (b1, d) -> (a1, d); fits the type of its context: b -> a; In the pattern: f :: forall d. (b, d) -> (a, d); In the pattern: Op (f :: forall d. (b, d) -> (a, d)); * Relevant bindings incl
2021-11-21 15:39:20 +0100jassob1(~jassob@h-98-128-166-172.NA.cust.bahnhof.se)
2021-11-21 15:41:09 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681) (Ping timeout: 250 seconds)
2021-11-21 15:42:45 +0100son0p(~ff@181.136.122.143) (Remote host closed the connection)
2021-11-21 15:43:57 +0100 <hololeap> % unfirst (Op (f :: (b,d) -> (a,d))) = Op $ \b -> fst $ f (b, undefined)
2021-11-21 15:43:57 +0100 <yahb> hololeap:
2021-11-21 15:44:02 +0100 <hololeap> % :t unfirst
2021-11-21 15:44:02 +0100 <yahb> hololeap: Op (a, d) (b, d) -> Op a b
2021-11-21 15:44:07 +0100 <hololeap> so yeah, it's costrong
2021-11-21 15:47:10 +0100 <ProfSimm> Hey anyone here know physics theoreticians who wanna brainstorm about things with me?
2021-11-21 15:50:28 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 15:51:22 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 268 seconds)
2021-11-21 15:51:41 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2021-11-21 15:51:44 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 15:56:02 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Ping timeout: 240 seconds)
2021-11-21 15:56:02 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2021-11-21 15:56:34 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad) (Quit: Konversation terminated!)
2021-11-21 15:57:47 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3)
2021-11-21 15:58:01 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-21 16:04:18 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-11-21 16:05:49 +0100unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291)
2021-11-21 16:07:53 +0100_ht_(~quassel@82-169-194-8.biz.kpn.net)
2021-11-21 16:08:00 +0100_ht(~quassel@37.120.218.140) (Ping timeout: 268 seconds)
2021-11-21 16:12:39 +0100max22-(~maxime@2a01cb0883359800ebf1dbb598d360cc.ipv6.abo.wanadoo.fr)
2021-11-21 16:16:33 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-21 16:25:16 +0100 <Hecate> :27
2021-11-21 16:25:18 +0100 <Hecate> eh
2021-11-21 16:27:30 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 16:27:56 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 16:28:57 +0100renzhi(~xp@2607:fa49:6500:b100::6e7f)
2021-11-21 16:29:02 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:78e5:1df2:55f8:981b) (Ping timeout: 240 seconds)
2021-11-21 16:29:48 +0100hololeap(~hololeap@user/hololeap) (Remote host closed the connection)
2021-11-21 16:32:17 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-11-21 16:33:36 +0100 <jiribenes> hololeap: Tagged :: Type -> Type -> Type from `tagged` has a Profunctor instance but not a Strong instance in `profunctors`
2021-11-21 16:34:00 +0100 <jiribenes> (as far as I can tell)
2021-11-21 16:36:48 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-21 16:37:12 +0100Vajb(~Vajb@nalkaylds2h97nzof-2.v6.elisa-mobile.fi)
2021-11-21 16:38:23 +0100hololeap(~hololeap@user/hololeap)
2021-11-21 16:46:13 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net)
2021-11-21 16:47:04 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 16:47:48 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681)
2021-11-21 16:48:43 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 268 seconds)
2021-11-21 16:49:25 +0100whatsupdoc(uid509081@hampstead.irccloud.com)
2021-11-21 16:51:32 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 240 seconds)
2021-11-21 16:53:32 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2c71:f3a7:2628:f681) (Ping timeout: 240 seconds)
2021-11-21 16:54:42 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 16:56:31 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 16:57:24 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-11-21 16:57:38 +0100kupi(uid212005@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 16:58:43 +0100Codaraxis_(~Codaraxis@user/codaraxis)
2021-11-21 17:00:07 +0100dexmad[m](~dexmadmat@2001:470:69fc:105::e056) (Quit: You have been kicked for being idle)
2021-11-21 17:00:19 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2021-11-21 17:00:45 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net)
2021-11-21 17:00:59 +0100Codaraxis(~Codaraxis@user/codaraxis) (Ping timeout: 264 seconds)
2021-11-21 17:01:37 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net) (Remote host closed the connection)
2021-11-21 17:03:31 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-21 17:04:19 +0100Lycurgus(~juan@98.4.112.204)
2021-11-21 17:06:37 +0100hololeap(~hololeap@user/hololeap) (Remote host closed the connection)
2021-11-21 17:07:53 +0100hololeap(~hololeap@user/hololeap)
2021-11-21 17:08:23 +0100Cajun(~Cajun@user/cajun)
2021-11-21 17:13:45 +0100xff0x(~xff0x@2001:1a81:526f:1d00:d375:c485:c62f:a6f6) (Ping timeout: 265 seconds)
2021-11-21 17:16:46 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2021-11-21 17:22:25 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-11-21 17:24:23 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 265 seconds)
2021-11-21 17:27:48 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 17:28:11 +0100zer0bitz(~zer0bitz@dsl-hkibng31-54fabc-15.dhcp.inet.fi) (Ping timeout: 250 seconds)
2021-11-21 17:28:32 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-21 17:31:28 +0100 <EvanR> would you say that in foldr the f happens first, and in foldl the recursion happens first
2021-11-21 17:31:42 +0100 <EvanR> and is this typical of right fold and left fold in general
2021-11-21 17:33:23 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 264 seconds)
2021-11-21 17:35:52 +0100xff0x(~xff0x@2001:1a81:526f:1d00:d375:c485:c62f:a6f6)
2021-11-21 17:40:22 +0100ubert(~Thunderbi@p200300ecdf0ba2db387348ed975200f7.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-11-21 17:40:40 +0100ubert(~Thunderbi@p548c9fcb.dip0.t-ipconnect.de)
2021-11-21 17:40:44 +0100 <Lycurgus> how is "recursion" different from "f"?
2021-11-21 17:42:46 +0100mbuf(~Shakthi@223.178.74.138) (Quit: Leaving)
2021-11-21 17:45:27 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 17:49:16 +0100pfurla(~pfurla@2804:14d:5c81:4104:d09a:3c35:dab9:95ad)
2021-11-21 17:50:11 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 17:53:17 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 17:58:10 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-11-21 18:00:09 +0100kristjansson_(sid126207@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:09 +0100hongminhee(sid295@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:09 +0100taktoa[c](sid282096@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:09 +0100glowcoil(sid3405@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100sa(sid1055@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100agander_m(sid407952@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100jackdk(sid373013@cssa/jackdk) (Remote host closed the connection)
2021-11-21 18:00:10 +0100bbhoss(sid18216@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100typetetris(sid275937@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100jmct_(sid160793@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:10 +0100hubvu(sid495858@user/hubvu) (Remote host closed the connection)
2021-11-21 18:00:10 +0100_0x47(sid508683@tinside.irccloud.com) (Remote host closed the connection)
2021-11-21 18:00:38 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 18:00:45 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 18:04:17 +0100Lycurgus(~juan@98.4.112.204) (Quit: Exeunt)
2021-11-21 18:06:02 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 260 seconds)
2021-11-21 18:07:24 +0100S11001001(sid42510@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100ysh(sid6017@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100mrianbloom(sid350277@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100tapas(sid467876@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100edwardk(sid47016@haskell/developer/edwardk) (Remote host closed the connection)
2021-11-21 18:07:25 +0100ProofTechnique(sid79547@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100bw(sid2730@user/betawaffle) (Remote host closed the connection)
2021-11-21 18:07:25 +0100gmc(sid58314@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100jonrh(sid5185@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100cln(sid336875@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100supersven(sid501114@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100pepeiborra(sid443799@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100hook54321(sid149355@user/hook54321) (Remote host closed the connection)
2021-11-21 18:07:25 +0100SethTisue__(sid14912@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100angerman(sid209936@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100rune(sid21167@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100caasih(sid13241@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100rtpg(sid443069@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:07:25 +0100sa1_(sid7690@ilkley.irccloud.com) (Remote host closed the connection)
2021-11-21 18:08:09 +0100cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3)
2021-11-21 18:11:51 +0100SrPx(sid108780@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100AndreasK__(sid320732@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100alanz(sid110616@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100aristid(sid1599@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100systemfault(sid267009@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100vito(sid1962@user/vito) (Remote host closed the connection)
2021-11-21 18:11:51 +0100aarchi(sid486183@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100davetapley(sid666@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100obviyus(sid415299@user/obviyus) (Remote host closed the connection)
2021-11-21 18:11:51 +0100b20n(sid115913@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100bradparker(sid262931@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100T_S_(sid501726@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:11:51 +0100eruditass(uid248673@uxbridge.irccloud.com) (Remote host closed the connection)
2021-11-21 18:12:04 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-11-21 18:12:45 +0100 <dsal> dante stopped working for me a while ago and I just finally got around to looking into the issue. It's trying to run some kind of pure nix shell to run a cabal repl or something that was just not going to happen. I told it to run `nix-shell -p stack --run 'stack ghci'` and suddenly everything works again.
2021-11-21 18:13:11 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds)
2021-11-21 18:13:24 +0100Lord_of_Life_Lord_of_Life
2021-11-21 18:15:59 +0100dyeplexer(~dyeplexer@user/dyeplexer)
2021-11-21 18:18:23 +0100gregberns__(sid315709@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:18:23 +0100kaizen(sid501599@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:18:39 +0100elvishjerricco(sid237756@helmsley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:18:40 +0100truckasaurus(sid457088@helmsley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:18:40 +0100NiKaN(sid385034@helmsley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:18:44 +0100carter(sid14827@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:18:52 +0100edmundnoble(sid229620@helmsley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:18:52 +0100bjs(sid190364@user/bjs) (Ping timeout: 260 seconds)
2021-11-21 18:18:52 +0100grfn(sid449115@helmsley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:19:02 +0100lightandlight(sid135476@helmsley.irccloud.com) (Ping timeout: 240 seconds)
2021-11-21 18:19:02 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Remote host closed the connection)
2021-11-21 18:19:14 +0100DNH(~DNH@2a02:8108:1100:16d8:14a5:84da:2caa:2854)
2021-11-21 18:19:19 +0100gaze___(sid387101@helmsley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:19:20 +0100dpratt__(sid193493@helmsley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:19:26 +0100cbarrett(sid192934@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:19:26 +0100scav(sid309693@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:19:26 +0100parseval(sid239098@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:19:26 +0100mcfilib(sid302703@user/mcfilib) (Ping timeout: 246 seconds)
2021-11-21 18:19:32 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2021-11-21 18:19:57 +0100conjunctive(sid433686@helmsley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:19:57 +0100alinab(sid468903@helmsley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:20:08 +0100tnks(sid412124@helmsley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:32 +0100Firedancer(sid336191@hampstead.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:32 +0100acertain(sid470584@hampstead.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:32 +0100joel135(sid136450@hampstead.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:41 +0100dmj`(sid72307@hampstead.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:21:53 +0100SanchayanMaity(sid478177@hampstead.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:53 +0100rubin55(sid175221@hampstead.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:21:58 +0100jakesyl_(sid56879@hampstead.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:22:04 +0100edrx(~Eduardo@2804:56c:d2d0:b400:6e3c:c666:9c9c:53ff) (Killed buffer)
2021-11-21 18:22:07 +0100ehamberg(sid18208@hampstead.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:22:07 +0100tritlo(sid58727@user/tritlo) (Ping timeout: 250 seconds)
2021-11-21 18:22:07 +0100amir(sid22336@user/amir) (Ping timeout: 250 seconds)
2021-11-21 18:22:33 +0100iphy(sid67735@lymington.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:22:33 +0100Boarders_(sid425905@lymington.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:22:33 +0100mustafa(sid502723@rockylinux/releng/mustafa) (Ping timeout: 250 seconds)
2021-11-21 18:22:47 +0100whatsupdoc(uid509081@hampstead.irccloud.com) (Ping timeout: 256 seconds)
2021-11-21 18:22:59 +0100integral(sid296274@user/integral) (Ping timeout: 250 seconds)
2021-11-21 18:22:59 +0100pjlsergeant(sid143467@hampstead.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:23:04 +0100aria(sid380617@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:04 +0100teehemkay(sid14792@lymington.irccloud.com) (Ping timeout: 268 seconds)
2021-11-21 18:23:11 +0100linkedlistist(uid528169@lymington.irccloud.com) (Ping timeout: 264 seconds)
2021-11-21 18:23:17 +0100philpax_(sid516926@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:22 +0100saolsen(sid26430@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:25 +0100JSharp(sid4580@lymington.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:23:31 +0100awpr(uid446117@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:32 +0100enemeth79(sid309041@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:32 +0100sclv(sid39734@haskell/developer/sclv) (Ping timeout: 260 seconds)
2021-11-21 18:23:32 +0100teehemkay_(sid14792@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:38 +0100nrr__(sid20938@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:38 +0100NemesisD(sid24071@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:38 +0100Adeon(sid418992@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:38 +0100christiaanb(sid84827@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:38 +0100dsal(sid13060@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:23:50 +0100astra`(sid289983@user/amish) (Ping timeout: 260 seconds)
2021-11-21 18:23:50 +0100degraafk(sid71464@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:50 +0100hamishmack(sid389057@hampstead.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:23:59 +0100ephemient(uid407513@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:24:17 +0100PotatoGim(sid99505@lymington.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 18:24:20 +0100whez(sid470288@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:24:20 +0100Pent(sid313808@lymington.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 18:24:27 +0100gonz____(sid304396@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:24:46 +0100idnar(sid12240@debian/mithrandi) (Ping timeout: 260 seconds)
2021-11-21 18:24:46 +0100hendi(sid489601@lymington.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 18:25:53 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667) (Quit: Bye)
2021-11-21 18:29:27 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 18:30:46 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667)
2021-11-21 18:32:01 +0100 <Sqaure> I wonder if theres commonly used i18n library for haskell. Id be fine with a key-value with some sort of replacement mechanism for parameterized strings (that allows a replacement mechanism)?
2021-11-21 18:33:34 +0100hiruji(~hiruji@user/hiruji) (Ping timeout: 260 seconds)
2021-11-21 18:34:15 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 250 seconds)
2021-11-21 18:34:41 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-21 18:35:09 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-11-21 18:36:15 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-11-21 18:37:01 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-11-21 18:41:49 +0100pfurla(~pfurla@2804:14d:5c81:4104:d09a:3c35:dab9:95ad) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 18:41:54 +0100fjmorazan(~quassel@user/fjmorazan) (Quit: fjmorazan)
2021-11-21 18:42:31 +0100fjmorazan(~quassel@user/fjmorazan)
2021-11-21 18:44:03 +0100 <sm> there's something in the shakespeare family of packages
2021-11-21 18:44:11 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 264 seconds)
2021-11-21 18:44:12 +0100 <sm> and an i18n section on hackage I believe
2021-11-21 18:44:37 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net)
2021-11-21 18:45:04 +0100 <sshine> The i18n packages was unfortunately last released in 2016.
2021-11-21 18:47:43 +0100 <sshine> Sqaure, there's a section on i18n in the Yesod book. https://www.yesodweb.com/book/internationalization -- but it seems like they didn't pick language-agnostic standards like gettext.
2021-11-21 18:48:23 +0100 <sm> oh wow, people are really not using the https://hackage.haskell.org/packages/#cat:I18n category
2021-11-21 18:48:49 +0100jakalx(~jakalx@base.jakalx.net)
2021-11-21 18:48:50 +0100 <Sqaure> I checked out shakespear and i18. I felt the former had too many dependencies. The latter seemed a bit too specialized
2021-11-21 18:49:21 +0100 <Sqaure> ...and had no built in replacement.
2021-11-21 18:49:33 +0100malc(~malc@2a00:1370:8117:7bb5:31d2:4ba8:5ed4:b0d0)
2021-11-21 18:49:51 +0100malc(~malc@2a00:1370:8117:7bb5:31d2:4ba8:5ed4:b0d0) (ERC (IRC client for Emacs 28.0.50))
2021-11-21 18:49:52 +0100 <sm> hgettext ?
2021-11-21 18:49:53 +0100 <sshine> I guess the i18n package is a standard wrapper around gettext .po files. that's pretty neat, no?
2021-11-21 18:50:26 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 18:50:41 +0100 <Sqaure> i guess i can work around it
2021-11-21 18:51:58 +0100 <hololeap> it looks like pandoc rolled their own as well: https://github.com/jgm/pandoc/blob/master/src/Text/Pandoc/Translations.hs
2021-11-21 18:53:26 +0100 <maerwald> pretty basic
2021-11-21 18:53:48 +0100hiruji(~hiruji@user/hiruji)
2021-11-21 18:56:19 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 19:01:20 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 260 seconds)
2021-11-21 19:08:34 +0100xsperry(~xs@cpe-188-129-101-182.dynamic.amis.hr) (Ping timeout: 260 seconds)
2021-11-21 19:19:31 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 19:19:35 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 264 seconds)
2021-11-21 19:21:38 +0100renzhi(~xp@2607:fa49:6500:b100::6e7f) (Ping timeout: 268 seconds)
2021-11-21 19:23:50 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Ping timeout: 246 seconds)
2021-11-21 19:26:26 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 19:29:38 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 19:30:30 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2021-11-21 19:31:01 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 250 seconds)
2021-11-21 19:31:17 +0100unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving)
2021-11-21 19:32:34 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2021-11-21 19:33:57 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 19:34:09 +0100dyeplexer(~dyeplexer@user/dyeplexer) (Remote host closed the connection)
2021-11-21 19:34:18 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-11-21 19:40:03 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-11-21 19:41:03 +0100 <EvanR> is there a name for this pattern: your monad code is polymorphic in the monad but includes a subclass monad constraint to provide "API calls"
2021-11-21 19:42:01 +0100 <EvanR> or this one: your code is in some custom monad, but is parameterized by an known monad m and there is a record of m actions in the context
2021-11-21 19:42:12 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-11-21 19:42:37 +0100 <EvanR> (I see these accomplish very similar things)
2021-11-21 19:42:41 +0100Successus(~Successus@gateway/tor-sasl/successus) ()
2021-11-21 19:43:10 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2021-11-21 19:43:31 +0100 <EvanR> I've only ever seen it referred to by these long winded explanations xD
2021-11-21 19:44:05 +0100jonrh(sid5185@id-5185.ilkley.irccloud.com)
2021-11-21 19:44:07 +0100bw(sid2730@user/betawaffle)
2021-11-21 19:44:13 +0100ysh(sid6017@id-6017.ilkley.irccloud.com)
2021-11-21 19:44:29 +0100sa1_(sid7690@id-7690.ilkley.irccloud.com)
2021-11-21 19:44:42 +0100caasih(sid13241@id-13241.ilkley.irccloud.com)
2021-11-21 19:44:44 +0100y04nn(~y04nn@92.223.89.196)
2021-11-21 19:44:46 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com)
2021-11-21 19:44:54 +0100rune(sid21167@id-21167.ilkley.irccloud.com)
2021-11-21 19:45:00 +0100Lord_of_Life_Lord_of_Life
2021-11-21 19:45:30 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Client closed)
2021-11-21 19:48:40 +0100bw__(sid2730@user/betawaffle)
2021-11-21 19:48:40 +0100jonrh_(sid5185@id-5185.ilkley.irccloud.com)
2021-11-21 19:48:47 +0100jonrh(sid5185@id-5185.ilkley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 19:49:02 +0100caasih(sid13241@id-13241.ilkley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 19:49:02 +0100sa1_(sid7690@id-7690.ilkley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 19:49:02 +0100bw(sid2730@user/betawaffle) (Ping timeout: 246 seconds)
2021-11-21 19:49:13 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com) (Ping timeout: 250 seconds)
2021-11-21 19:49:23 +0100rune(sid21167@id-21167.ilkley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 19:49:24 +0100ysh(sid6017@id-6017.ilkley.irccloud.com) (Ping timeout: 260 seconds)
2021-11-21 19:50:13 +0100davetapley(sid666@id-666.uxbridge.irccloud.com)
2021-11-21 19:50:31 +0100aristid(sid1599@id-1599.uxbridge.irccloud.com)
2021-11-21 19:50:34 +0100vito(sid1962@user/vito)
2021-11-21 19:51:05 +0100alanz(sid110616@id-110616.uxbridge.irccloud.com)
2021-11-21 19:51:12 +0100SrPx(sid108780@id-108780.uxbridge.irccloud.com)
2021-11-21 19:51:15 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com)
2021-11-21 19:52:53 +0100jonrh_(sid5185@id-5185.ilkley.irccloud.com) (Ping timeout: 246 seconds)
2021-11-21 19:53:03 +0100bradparker(sid262931@id-262931.uxbridge.irccloud.com)
2021-11-21 19:53:06 +0100systemfault(sid267009@id-267009.uxbridge.irccloud.com)
2021-11-21 19:53:07 +0100bw__(sid2730@user/betawaffle) (Ping timeout: 250 seconds)
2021-11-21 19:53:08 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 260 seconds)
2021-11-21 19:53:37 +0100jonrh_(sid5185@id-5185.ilkley.irccloud.com)
2021-11-21 19:53:47 +0100bw__(sid2730@id-2730.ilkley.irccloud.com)
2021-11-21 19:53:47 +0100ysh(sid6017@id-6017.ilkley.irccloud.com)
2021-11-21 19:54:01 +0100sa1_(sid7690@id-7690.ilkley.irccloud.com)
2021-11-21 19:54:14 +0100caasih(sid13241@id-13241.ilkley.irccloud.com)
2021-11-21 19:54:18 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com)
2021-11-21 19:54:20 +0100obviyus(sid415299@user/obviyus)
2021-11-21 19:54:22 +0100alx741(~alx741@186.178.108.219) (Ping timeout: 260 seconds)
2021-11-21 19:54:24 +0100rune(sid21167@id-21167.ilkley.irccloud.com)
2021-11-21 19:54:54 +0100aarchi(sid486183@id-486183.uxbridge.irccloud.com)
2021-11-21 19:55:01 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com)
2021-11-21 19:55:10 +0100edwardk(sid47016@haskell/developer/edwardk)
2021-11-21 19:55:11 +0100T_S_(sid501726@id-501726.uxbridge.irccloud.com)
2021-11-21 19:55:23 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net)
2021-11-21 19:55:27 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2021-11-21 19:55:27 +0100gmc_(sid58314@id-58314.ilkley.irccloud.com)
2021-11-21 19:55:47 +0100ProofTechnique(sid79547@id-79547.ilkley.irccloud.com)
2021-11-21 19:56:18 +0100 <sshine> EvanR, if I understand correctly, what you're describing are similar to what Matt Parsons calls "capabilities" here: https://www.parsonsmatt.org/2018/03/22/three_layer_haskell_cake.html -- or?
2021-11-21 19:56:47 +0100angerman(sid209936@id-209936.ilkley.irccloud.com)
2021-11-21 19:56:47 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2021-11-21 19:56:49 +0100alx741(~alx741@186.178.108.219)
2021-11-21 19:57:27 +0100AndreasK__(sid320732@id-320732.uxbridge.irccloud.com)
2021-11-21 19:57:32 +0100hook54321(sid149355@user/hook54321)
2021-11-21 19:57:34 +0100carter(sid14827@id-14827.helmsley.irccloud.com)
2021-11-21 19:57:39 +0100xkuru(~xkuru@user/xkuru)
2021-11-21 19:57:45 +0100eruditass(uid248673@id-248673.uxbridge.irccloud.com)
2021-11-21 19:57:49 +0100cln(sid336875@id-336875.ilkley.irccloud.com)
2021-11-21 19:58:00 +0100mrianbloom(sid350277@id-350277.ilkley.irccloud.com)
2021-11-21 19:58:02 +0100lightandlight(sid135476@id-135476.helmsley.irccloud.com)
2021-11-21 19:58:24 +0100bjs(sid190364@user/bjs)
2021-11-21 19:58:25 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com)
2021-11-21 19:58:30 +0100dpratt__(sid193493@id-193493.helmsley.irccloud.com)
2021-11-21 19:58:34 +0100rtpg(sid443069@id-443069.ilkley.irccloud.com)
2021-11-21 19:58:34 +0100pepeiborra(sid443799@id-443799.ilkley.irccloud.com)
2021-11-21 19:58:46 +0100tapas(sid467876@id-467876.ilkley.irccloud.com)
2021-11-21 19:58:54 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com)
2021-11-21 19:59:11 +0100elvishjerricco(sid237756@id-237756.helmsley.irccloud.com)
2021-11-21 19:59:12 +0100parseval(sid239098@id-239098.helmsley.irccloud.com)
2021-11-21 19:59:18 +0100 <sshine> EvanR, or rather, that's one way to parameterise your monad over certain things... https://github.com/parsonsmatt/cardano-sl/blob/10e55bde9a5c0d9d28bca25950a8811407c5fc8c/docs/monad… -- but I've seen other, simpler approaches related to free effect systems where you have simpler Has* classes.
2021-11-21 19:59:42 +0100 <sshine> EvanR, I was gonna call that "has-style" type classes. but I can't find a reference to anyone calling them that. I'm sure I didn't come up with it, though.
2021-11-21 20:00:38 +0100mcfilib(sid302703@user/mcfilib)
2021-11-21 20:00:48 +0100lavaman(~lavaman@98.38.249.169)
2021-11-21 20:01:02 +0100gregberns__(sid315709@id-315709.helmsley.irccloud.com)
2021-11-21 20:01:45 +0100gaze___(sid387101@id-387101.helmsley.irccloud.com)
2021-11-21 20:02:11 +0100tnks(sid412124@id-412124.helmsley.irccloud.com)
2021-11-21 20:02:12 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com)
2021-11-21 20:02:23 +0100conjunctive(sid433686@id-433686.helmsley.irccloud.com)
2021-11-21 20:02:35 +0100grfn(sid449115@id-449115.helmsley.irccloud.com)
2021-11-21 20:02:38 +0100truckasaurus(sid457088@id-457088.helmsley.irccloud.com)
2021-11-21 20:02:42 +0100alinab(sid468903@id-468903.helmsley.irccloud.com)
2021-11-21 20:03:10 +0100kaizen(sid501599@id-501599.helmsley.irccloud.com)
2021-11-21 20:04:08 +0100supersven(sid501114@id-501114.ilkley.irccloud.com)
2021-11-21 20:04:10 +0100ehamberg(sid18208@id-18208.hampstead.irccloud.com)
2021-11-21 20:04:23 +0100JSharp(sid4580@id-4580.lymington.irccloud.com)
2021-11-21 20:04:23 +0100amir(sid22336@user/amir)
2021-11-21 20:04:35 +0100idnar(sid12240@debian/mithrandi)
2021-11-21 20:04:38 +0100dsal(sid13060@id-13060.lymington.irccloud.com)
2021-11-21 20:04:39 +0100tritlo(sid58727@user/tritlo)
2021-11-21 20:04:44 +0100teehemkay(sid14792@id-14792.lymington.irccloud.com)
2021-11-21 20:04:45 +0100teehemkay_(sid14792@id-14792.lymington.irccloud.com)
2021-11-21 20:04:54 +0100dmj`(sid72307@id-72307.hampstead.irccloud.com)
2021-11-21 20:04:59 +0100jakesyl_(sid56879@id-56879.hampstead.irccloud.com)
2021-11-21 20:05:03 +0100NemesisD(sid24071@id-24071.lymington.irccloud.com)
2021-11-21 20:05:08 +0100saolsen(sid26430@id-26430.lymington.irccloud.com)
2021-11-21 20:05:08 +0100nrr__(sid20938@id-20938.lymington.irccloud.com)
2021-11-21 20:05:25 +0100 <EvanR> heh.... nice post. I'm not sure what capability refers to there. At the end they give up and call the three layers imperative, object oriented, and functional xD
2021-11-21 20:05:30 +0100joel135(sid136450@id-136450.hampstead.irccloud.com)
2021-11-21 20:05:36 +0100sclv(sid39734@haskell/developer/sclv)
2021-11-21 20:05:39 +0100pjlsergeant(sid143467@id-143467.hampstead.irccloud.com)
2021-11-21 20:05:44 +0100 <EvanR> but they are covering what I'm talking about basically
2021-11-21 20:05:56 +0100iphy(sid67735@id-67735.lymington.irccloud.com)
2021-11-21 20:06:00 +0100degraafk(sid71464@id-71464.lymington.irccloud.com)
2021-11-21 20:06:18 +0100christiaanb(sid84827@id-84827.lymington.irccloud.com)
2021-11-21 20:06:19 +0100hongminhee(sid295@id-295.tinside.irccloud.com)
2021-11-21 20:06:21 +0100bbooth(~bbooth@bam.lbl.gov)
2021-11-21 20:06:31 +0100rubin55(sid175221@id-175221.hampstead.irccloud.com)
2021-11-21 20:06:32 +0100glowcoil(sid3405@id-3405.tinside.irccloud.com)
2021-11-21 20:06:33 +0100sa(sid1055@id-1055.tinside.irccloud.com)
2021-11-21 20:06:42 +0100PotatoGim(sid99505@id-99505.lymington.irccloud.com)
2021-11-21 20:06:48 +0100bbhoss(sid18216@id-18216.tinside.irccloud.com)
2021-11-21 20:06:59 +0100scav(sid309693@id-309693.helmsley.irccloud.com)
2021-11-21 20:07:06 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2021-11-21 20:07:21 +0100bbooth(~bbooth@bam.lbl.gov) (Client Quit)
2021-11-21 20:07:52 +0100astra`(sid289983@user/amish)
2021-11-21 20:07:54 +0100integral(sid296274@user/integral)
2021-11-21 20:08:11 +0100gonz____(sid304396@id-304396.lymington.irccloud.com)
2021-11-21 20:08:20 +0100Firedancer(sid336191@id-336191.hampstead.irccloud.com)
2021-11-21 20:08:30 +0100kristjansson_(sid126207@id-126207.tinside.irccloud.com)
2021-11-21 20:08:51 +0100hamishmack(sid389057@id-389057.hampstead.irccloud.com)
2021-11-21 20:08:58 +0100jmct_(sid160793@id-160793.tinside.irccloud.com)
2021-11-21 20:08:59 +0100aria(sid380617@id-380617.lymington.irccloud.com)
2021-11-21 20:09:19 +0100 <[exa]> EvanR: re first one if you say "mtl-like HasMonads" everyone will know :] the second is much closer to actual effect systems and interpreters, perhaps some naming from the effect packages would fit
2021-11-21 20:09:24 +0100Adeon_(sid418992@id-418992.lymington.irccloud.com)
2021-11-21 20:09:28 +0100acertain(sid470584@id-470584.hampstead.irccloud.com)
2021-11-21 20:09:31 +0100SanchayanMaity(sid478177@id-478177.hampstead.irccloud.com)
2021-11-21 20:09:40 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 20:09:54 +0100Boarders_(sid425905@id-425905.lymington.irccloud.com)
2021-11-21 20:09:55 +0100mustafa(sid502723@rockylinux/releng/mustafa)
2021-11-21 20:09:56 +0100taktoa[c](sid282096@id-282096.tinside.irccloud.com)
2021-11-21 20:09:59 +0100Adeon_Adeon
2021-11-21 20:10:19 +0100hendi(sid489601@id-489601.lymington.irccloud.com)
2021-11-21 20:10:38 +0100philpax_(sid516926@id-516926.lymington.irccloud.com)
2021-11-21 20:10:43 +0100 <EvanR> mtl-like is like class Monad m => MonadCoolThing m where ?
2021-11-21 20:10:55 +0100shdw(~shdw@23-233-101-24.cpe.pppoe.ca)
2021-11-21 20:11:07 +0100burnside_(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 20:11:13 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 20:13:18 +0100 <[exa]> yes, MonadState MonadReader MonadWhatever
2021-11-21 20:13:37 +0100typetetris(sid275937@id-275937.tinside.irccloud.com)
2021-11-21 20:13:39 +0100enemeth79(sid309041@id-309041.lymington.irccloud.com)
2021-11-21 20:13:53 +0100Pent(sid313808@id-313808.lymington.irccloud.com)
2021-11-21 20:14:10 +0100 <EvanR> is that naming scheme really common or is there something less Monady xD
2021-11-21 20:14:27 +0100jackdk(sid373013@cssa/jackdk)
2021-11-21 20:14:37 +0100agander_m(sid407952@id-407952.tinside.irccloud.com)
2021-11-21 20:14:54 +0100ephemient(uid407513@id-407513.lymington.irccloud.com)
2021-11-21 20:15:11 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2021-11-21 20:15:20 +0100 <[exa]> not sure, AFAIK everyone who goes with typeclasses just goes with that
2021-11-21 20:15:20 +0100hubvu(sid495858@user/hubvu)
2021-11-21 20:15:43 +0100awpr(uid446117@id-446117.lymington.irccloud.com)
2021-11-21 20:15:44 +0100_0x47(sid508683@id-508683.tinside.irccloud.com)
2021-11-21 20:16:07 +0100arahael(~arahael@14-203-84-159.static.tpgi.com.au) (Ping timeout: 256 seconds)
2021-11-21 20:16:15 +0100whez(sid470288@id-470288.lymington.irccloud.com)
2021-11-21 20:19:04 +0100nattiestnate(~nate@2001:448a:20a0:4134:25e:715f:d637:5263)
2021-11-21 20:19:26 +0100linkedlistist(uid528169@id-528169.lymington.irccloud.com)
2021-11-21 20:23:27 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 260 seconds)
2021-11-21 20:26:02 +0100euouae(~euouae@user/euouae)
2021-11-21 20:26:11 +0100 <sshine> EvanR, yeah so I think you can discuss granularity here. "has-style" could also be finer, e.g. HasLog, HasDatabase. and the particular example from cardano-sl was one degree more parameterised, e.g. Has LoggingParams. but here's a similar approach with GADTs: https://github.com/hasura/eff#eff-in-action
2021-11-21 20:28:41 +0100 <EvanR> oh, here Effect is a datakind?
2021-11-21 20:29:20 +0100 <EvanR> hmm no
2021-11-21 20:29:55 +0100 <EvanR> the m out of nowhere in Filesystem is weird
2021-11-21 20:31:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 20:32:12 +0100 <sshine> hmm, yeah.
2021-11-21 20:32:42 +0100 <sshine> I'm not sure about that, either.
2021-11-21 20:33:29 +0100 <[exa]> freer? (there the "logging" of actions is the default though)
2021-11-21 20:34:38 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9)
2021-11-21 20:35:42 +0100shailangsa(~shailangs@host86-185-98-19.range86-185.btcentralplus.com) (Remote host closed the connection)
2021-11-21 20:37:06 +0100jjhoo(~jahakala@user/jjhoo) (Remote host closed the connection)
2021-11-21 20:37:07 +0100pfurla(~pfurla@2804:14d:5c81:4104:d09a:3c35:dab9:95ad)
2021-11-21 20:39:34 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:100e:941d:330:91e9) (Ping timeout: 260 seconds)
2021-11-21 20:46:43 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 256 seconds)
2021-11-21 20:50:49 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net)
2021-11-21 20:54:05 +0100shdw(~shdw@23-233-101-24.cpe.pppoe.ca) (Ping timeout: 256 seconds)
2021-11-21 20:54:21 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 20:55:26 +0100yauhsien(~yauhsien@118-167-40-224.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-11-21 20:57:24 +0100jjhoo(jahakala@user/jjhoo)
2021-11-21 20:57:57 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3)
2021-11-21 21:00:56 +0100Vajb(~Vajb@nalkaylds2h97nzof-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer)
2021-11-21 21:02:09 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-21 21:04:17 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-21 21:05:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-21 21:05:25 +0100juhp(~juhp@128.106.188.82) (Ping timeout: 256 seconds)
2021-11-21 21:06:47 +0100juhp(~juhp@128.106.188.82)
2021-11-21 21:09:44 +0100machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-11-21 21:14:16 +0100 <nf> guess i'll cross-post from #haskell-lens: is there some way to combine the indices of two indexed folds? for example, i'd want something like ["ab","cd"] ^@.. ifolded . ifolded to return [((0, 0), 'a'), ((0, 1), 'b'), ((1, 0), 'c'), ((1, 1), 'd')]
2021-11-21 21:16:24 +0100unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291)
2021-11-21 21:17:43 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-11-21 21:23:38 +0100fendor(~fendor@178.165.196.64.wireless.dyn.drei.com)
2021-11-21 21:26:03 +0100kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net)
2021-11-21 21:30:19 +0100kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net) (Remote host closed the connection)
2021-11-21 21:31:31 +0100pfurla(~pfurla@2804:14d:5c81:4104:d09a:3c35:dab9:95ad) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 21:31:48 +0100 <[exa]> nf: icompose (,) ?
2021-11-21 21:32:23 +0100 <[exa]> (wild guess)
2021-11-21 21:33:58 +0100 <nf> ah, that looks like what i want
2021-11-21 21:34:10 +0100 <nf> or <.>
2021-11-21 21:34:46 +0100kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net)
2021-11-21 21:34:50 +0100 <nf> yep, ifolded <.> ifolded
2021-11-21 21:34:55 +0100 <nf> thanks [exa] !
2021-11-21 21:35:39 +0100 <[exa]> oh wow, wild guess worked
2021-11-21 21:35:42 +0100 <[exa]> \o/
2021-11-21 21:38:10 +0100burnside_(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-21 21:38:12 +0100 <nf> weirdly enough, folded <.> folded seems to work too
2021-11-21 21:38:41 +0100cjb(~cjb@user/cjb)
2021-11-21 21:39:59 +0100[exa]stumped
2021-11-21 21:40:00 +0100 <nf> seems like folded indexes any foldable generically, whereas ifolded has a separate typeclass
2021-11-21 21:41:49 +0100 <[exa]> yeah possibly with better index types
2021-11-21 21:42:39 +0100 <[exa]> ooh yeah, `FoldableWithIndex k (Map k)`
2021-11-21 21:43:25 +0100y04n45402(~y04nn@nayon.fr)
2021-11-21 21:43:33 +0100 <[exa]> wuw, some useful stuff there, `FoldableWithIndex [Int] Tree`
2021-11-21 21:44:17 +0100mimmy_(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com)
2021-11-21 21:44:24 +0100 <nf> nice
2021-11-21 21:45:41 +0100 <nf> it gets weirder: TraversableWithIndex i f => TraversableWithIndex [i] (Free f)
2021-11-21 21:45:54 +0100y04nn(~y04nn@92.223.89.196) (Ping timeout: 260 seconds)
2021-11-21 21:45:57 +0100quintasan(~quassel@quintasan.pl) (Remote host closed the connection)
2021-11-21 21:47:05 +0100quintasan(~quassel@quintasan.pl)
2021-11-21 21:47:22 +0100 <[exa]> Free monads are basically trees with some piping around, so yeah, good :]
2021-11-21 21:47:56 +0100 <[exa]> the one for Compose is nice too
2021-11-21 21:48:23 +0100 <[exa]> I need some indexed bikeshedding project to play with all this stuff
2021-11-21 21:49:10 +0100mimmy_(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com) (Ping timeout: 260 seconds)
2021-11-21 21:49:13 +0100kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net) (Remote host closed the connection)
2021-11-21 21:51:17 +0100Sgeo(~Sgeo@user/sgeo)
2021-11-21 21:51:58 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 260 seconds)
2021-11-21 21:53:47 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
2021-11-21 21:53:47 +0100jinsun(~quassel@user/jinsun) (Ping timeout: 264 seconds)
2021-11-21 21:54:24 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-11-21 21:55:51 +0100_ht_(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-11-21 21:56:26 +0100cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) (Remote host closed the connection)
2021-11-21 21:56:42 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2021-11-21 21:56:47 +0100kayvank(~user@52-119-115-185.PUBLIC.monkeybrains.net)
2021-11-21 21:56:50 +0100cosimone(~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3)
2021-11-21 21:59:32 +0100kayvank15(~kayvank@52-119-115-185.PUBLIC.monkeybrains.net)
2021-11-21 21:59:54 +0100kayvank15(~kayvank@52-119-115-185.PUBLIC.monkeybrains.net) (Client Quit)
2021-11-21 22:01:52 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2505:c76:f78:c1d6)
2021-11-21 22:06:53 +0100eruditass(uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 22:07:18 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:2505:c76:f78:c1d6) (Ping timeout: 260 seconds)
2021-11-21 22:08:11 +0100Successus(~Successus@gateway/tor-sasl/successus)
2021-11-21 22:11:18 +0100jjhoo(jahakala@user/jjhoo) (Remote host closed the connection)
2021-11-21 22:11:20 +0100xsperry(~xs@user/xsperry)
2021-11-21 22:13:30 +0100jjhoo(~jahakala@user/jjhoo)
2021-11-21 22:15:07 +0100y04n45402(~y04nn@nayon.fr) (Remote host closed the connection)
2021-11-21 22:15:37 +0100Successus(~Successus@gateway/tor-sasl/successus) ()
2021-11-21 22:16:26 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:9487:a7c7:e639:ebc4)
2021-11-21 22:16:28 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-11-21 22:18:22 +0100fendor(~fendor@178.165.196.64.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-11-21 22:19:17 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3) (Remote host closed the connection)
2021-11-21 22:19:31 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3)
2021-11-21 22:20:24 +0100renzhi(~xp@2607:fa49:6500:b100::6e7f)
2021-11-21 22:21:07 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:9487:a7c7:e639:ebc4) (Ping timeout: 250 seconds)
2021-11-21 22:21:08 +0100 <euouae> I'm looking into the Alloy analyzer, https://alloytools.org/ does Haskell have any tools like this?
2021-11-21 22:22:03 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2021-11-21 22:22:13 +0100jinsun(~quassel@user/jinsun)
2021-11-21 22:22:41 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3) (Remote host closed the connection)
2021-11-21 22:22:41 +0100 <dsal> euouae: That's kind of a different class of thing, but I guess you could write such a thing in Haskell. I use TLA+ some which is written in Java, so if it can be done there, it can be done anywhere.
2021-11-21 22:23:59 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net)
2021-11-21 22:24:36 +0100 <euouae> what do you use TLA+ for?
2021-11-21 22:25:02 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-21 22:25:11 +0100 <dsal> Describing whether a concept is even possible given known primitives.
2021-11-21 22:25:43 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-21 22:27:15 +0100 <dsal> Place I'm working has this thing written in some hacky node stuff with MongoDB. I modeled it in TLA+ to prove that it's completely impossible to guarantee it can any of the things they'd expect it to do (except for special cases where everything goes perfect).
2021-11-21 22:27:35 +0100 <euouae> got'em
2021-11-21 22:28:21 +0100 <euouae> I am starting with Alloy to test a design of a backend thing I want to write
2021-11-21 22:28:32 +0100 <euouae> I don't know if this will be a waste of time or not but I'm giving it a shot
2021-11-21 22:28:37 +0100 <dsal> I started by modeling my idea, which was really boring because my idea was fairly simple and just kind of worked. Makes that type of tool pretty confusing because like, yeah, the thing I thought works the way I think it might.
2021-11-21 22:30:34 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a)
2021-11-21 22:32:08 +0100abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-11-21 22:33:00 +0100 <trcc> I am trying to write a simple CLI using optparse-applicative. The first argument has to be a string, without any option. I.e. ./program hello -arg1 -arg2 -arg3 where hello is the first argument and a string
2021-11-21 22:33:48 +0100 <dsal> trcc: you can build named subcommand parsers like that.
2021-11-21 22:34:19 +0100 <trcc> dsal: subcommand. That was the keyword I was after. Thank you, I will try and find it.
2021-11-21 22:34:20 +0100zincy_(~zincy@2a00:23c8:970c:4801:78f3:43f3:fd48:5ac3)
2021-11-21 22:34:38 +0100 <dsal> Yeah. optparse-applicative does a lot of stuff.
2021-11-21 22:34:40 +0100deadmarshal(~deadmarsh@95.38.116.117)
2021-11-21 22:35:10 +0100 <dsal> trcc, e.g.: https://www.irccloud.com/pastebin/5MOYg4gI/sink.txt
2021-11-21 22:36:36 +0100 <trcc> dsal: ye makes sense. In this case I want to create a file. I.e. ./program hello creates a file called hello. ./program hello_world creates a file called hello_world etc
2021-11-21 22:36:54 +0100 <trcc> so it is not really fixed like in that exampe
2021-11-21 22:37:06 +0100 <dsal> Ah, then you probably don't want to do that. heh
2021-11-21 22:37:49 +0100 <dsal> I do have a command to interact with s3 that works a bit like cp:
2021-11-21 22:37:52 +0100 <euouae> trcc you can leave the argumetns unparsed, pop one out and then parse them
2021-11-21 22:37:53 +0100 <dsal> dsmac:tesla dustin$ s3up create *.md blah
2021-11-21 22:37:53 +0100 <dsal> E: Invalid paths for create: final parameter must be an object ending in /
2021-11-21 22:38:27 +0100 <dsal> (i.e., if there are two arguments, the second can be anything, but if there are more than two, the last has to end in /)
2021-11-21 22:38:47 +0100 <trcc> euouae: can you elaborte?
2021-11-21 22:39:06 +0100deadmarshal(~deadmarsh@95.38.116.117) (Ping timeout: 260 seconds)
2021-11-21 22:39:16 +0100 <trcc> dsal: something like that. I need the first argument to be a string and then whatever optional arguments are next
2021-11-21 22:40:41 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net)
2021-11-21 22:44:03 +0100mimmy_(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com)
2021-11-21 22:45:24 +0100 <euouae> trcc https://blog.ocharles.org.uk/posts/2012-12-17-24-days-of-hackage-optparse-applicative.html
2021-11-21 22:45:36 +0100 <trcc> thanks
2021-11-21 22:45:59 +0100 <[itchyjunk]> Hi, i wanted to mod some number with %. i wrote a function and from what haskell told me realized that my signature should be (Integral a) => a -> String
2021-11-21 22:46:22 +0100 <trcc> ye exactly euouae. thanks
2021-11-21 22:46:39 +0100 <[itchyjunk]> Now i wanted to `iterate` this function on numbers 1 through 10. but `iterate f [1 .. 10]` doesn't work because i think these are Num and not Integrals
2021-11-21 22:46:42 +0100 <trcc> actually just found the argument parser here hehe https://hackage.haskell.org/package/optparse-applicative-0.16.1.0#builders
2021-11-21 22:47:02 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 260 seconds)
2021-11-21 22:48:25 +0100 <euouae> [itchyjunk], what do you mean by "iterate"?
2021-11-21 22:48:38 +0100Feuermagier(~Feuermagi@user/feuermagier)
2021-11-21 22:48:45 +0100pavonia(~user@user/siracusa)
2021-11-21 22:48:48 +0100 <euouae> Because the iterate function will apply f multiple times, and the signature doesn't match
2021-11-21 22:48:53 +0100 <[itchyjunk]> i wanted to repeatedly apply function f to natural numbers between 1 and n. google recommended iterate :s maybe i misread
2021-11-21 22:48:54 +0100mimmy_(~mimmy@cpef81d0f857c83-cmf81d0f857c80.cpe.net.cable.rogers.com) (Ping timeout: 260 seconds)
2021-11-21 22:48:57 +0100 <[itchyjunk]> oh
2021-11-21 22:48:59 +0100 <geekosaur> this whole thing sounds confused. in particular % is not mod
2021-11-21 22:49:31 +0100 <[itchyjunk]> oops, right % is not mod, `mod` is mod. i've fixed that part already, sorry
2021-11-21 22:49:40 +0100 <[itchyjunk]> let me post the code as well
2021-11-21 22:49:47 +0100 <euouae> > take 10 $ iterate (*2) 1
2021-11-21 22:49:48 +0100 <lambdabot> [1,2,4,8,16,32,64,128,256,512]
2021-11-21 22:50:09 +0100 <geekosaur> > take 10 $ iterate (*2) 1.0
2021-11-21 22:50:11 +0100 <lambdabot> [1.0,2.0,4.0,8.0,16.0,32.0,64.0,128.0,256.0,512.0]
2021-11-21 22:50:12 +0100 <[itchyjunk]> https://bpa.st/QQSQ
2021-11-21 22:50:22 +0100 <[itchyjunk]> this is my helper function that i wanted to apply to a list of natural numbers
2021-11-21 22:51:04 +0100 <geekosaur> hm. is there a point to making it any Integral instead of just specializing to Int or Integer?
2021-11-21 22:51:27 +0100 <[itchyjunk]> i loaded the function without a signature and checked with :t
2021-11-21 22:51:37 +0100 <[itchyjunk]> i originally had (Num a) which gave me errors
2021-11-21 22:51:50 +0100 <[itchyjunk]> :t was using Integral so i used that
2021-11-21 22:51:50 +0100 <lambdabot> error:
2021-11-21 22:51:50 +0100 <lambdabot> • Variable not in scope:
2021-11-21 22:51:50 +0100 <lambdabot> was :: t0 -> (a0 -> Integer) -> t1 -> Expr -> t2 -> t3 -> t
2021-11-21 22:51:59 +0100 <[itchyjunk]> oops sorry
2021-11-21 22:52:00 +0100 <geekosaur> usually you don't need or want the fully generalized type, to be honest
2021-11-21 22:52:09 +0100 <geekosaur> it just complicates things later
2021-11-21 22:53:02 +0100 <geekosaur> but, in any case, you misunderstand the problem. specifically, this is valid:
2021-11-21 22:53:11 +0100 <[itchyjunk]> changing it to Int and Integer both generate error
2021-11-21 22:53:32 +0100shdw(~shdw@23-233-101-24.cpe.pppoe.ca)
2021-11-21 22:53:51 +0100 <geekosaur> :t [1 .. 10] :: Integral a => [a]
2021-11-21 22:53:52 +0100 <lambdabot> Integral a => [a]
2021-11-21 22:54:06 +0100 <geekosaur> maybe you should show the actual code and actual error
2021-11-21 22:54:09 +0100 <geekosaur> @where paste
2021-11-21 22:54:09 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2021-11-21 22:54:18 +0100 <[itchyjunk]> the code i posted is the actual error
2021-11-21 22:54:22 +0100 <[itchyjunk]> code*
2021-11-21 22:55:02 +0100 <[itchyjunk]> https://paste.tomsmeding.com/7hmCUEA6
2021-11-21 22:55:16 +0100 <[itchyjunk]> Int, Integer and Integral in signature respectively
2021-11-21 22:55:31 +0100 <geekosaur> ok, that one is because you misunderstand the difference between a type and a constraint
2021-11-21 22:55:47 +0100 <geekosaur> Int and Integer are types. Integral and Num are constraints
2021-11-21 22:56:08 +0100 <[itchyjunk]> oh i thought you contained it to a type
2021-11-21 22:56:27 +0100 <geekosaur> (Integral a => a) means "any type a which has an Integral instance"
2021-11-21 22:56:56 +0100 <geekosaur> if you wanted to use Int you'd just say Int instead of (Integral a) => … a …
2021-11-21 22:57:47 +0100 <euouae> Integral can be thought of as an interface. It's the things that you can demand of a type
2021-11-21 22:58:30 +0100 <geekosaur> ^
2021-11-21 22:59:44 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Remote host closed the connection)
2021-11-21 22:59:49 +0100 <EvanR> the implementation for that type is sitting in some pile somewhere, and putting the constraint lets you grab the right one without explicitly find it and passing it around
2021-11-21 23:00:03 +0100 <[itchyjunk]> hmmm
2021-11-21 23:00:16 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net)
2021-11-21 23:00:31 +0100 <[itchyjunk]> So what does the Integral interface give me that Num interface doesn't? Because seems to not work with Num interface, right?
2021-11-21 23:00:36 +0100 <EvanR> division
2021-11-21 23:00:40 +0100 <[itchyjunk]> ahhh
2021-11-21 23:00:43 +0100 <geekosaur> :t mod
2021-11-21 23:00:44 +0100 <lambdabot> Integral a => a -> a -> a
2021-11-21 23:00:53 +0100 <geekosaur> :t divMod
2021-11-21 23:00:54 +0100 <lambdabot> Integral a => a -> a -> (a, a)
2021-11-21 23:01:30 +0100 <EvanR> > :t 0 `div` 0
2021-11-21 23:01:32 +0100 <lambdabot> <hint>:1:1: error: parse error on input ‘:’
2021-11-21 23:01:36 +0100 <EvanR> :t 0 `div` 0
2021-11-21 23:01:37 +0100 <lambdabot> Integral a => a
2021-11-21 23:01:38 +0100 <geekosaur> divMod is actually the more fundamental one on most CPUs including x86; you get division and remainder at the same time from a single machine opcode
2021-11-21 23:01:55 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-21 23:02:03 +0100 <EvanR> is divMod actually implemented that way? sounds too good to be true xD
2021-11-21 23:02:06 +0100 <geekosaur> so div and mod do divMod at machien level and throw halfd of it away
2021-11-21 23:02:11 +0100 <geekosaur> yes
2021-11-21 23:02:27 +0100 <geekosaur> there is no specific "div" or "mod" machine op iirc
2021-11-21 23:02:32 +0100 <geekosaur> just a div+mod op
2021-11-21 23:02:48 +0100 <geekosaur> which puts the div part in one register and the mod in another
2021-11-21 23:02:48 +0100 <[itchyjunk]> oh interesting
2021-11-21 23:02:53 +0100 <EvanR> how about multiply with the excess
2021-11-21 23:03:15 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds)
2021-11-21 23:03:44 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2021-11-21 23:04:31 +0100 <EvanR> that gets throw away too I think
2021-11-21 23:04:39 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Ping timeout: 250 seconds)
2021-11-21 23:04:44 +0100 <dsal> Yay, I finally used Finite for the first time in a real program.
2021-11-21 23:04:52 +0100 <geekosaur> anyway the machine op requires types that are Integral, so div, mod, and divMod have that constraint
2021-11-21 23:05:08 +0100 <EvanR> congratz, you're now a finitist
2021-11-21 23:05:12 +0100 <geekosaur> the Num constraint gives you (+), (-), and (*) but no division
2021-11-21 23:05:28 +0100 <geekosaur> Integral gives you divMod and friends; Fractional gives you (/) which is real division
2021-11-21 23:06:50 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:818b:d7ec:141a:89c5)
2021-11-21 23:07:14 +0100 <geekosaur> ("real" in the sense of (a simulation of) mathematical "real numbers" as distinct from mathematical integers)
2021-11-21 23:08:00 +0100 <EvanR> > (5 :+ 0) / (0 :+ 1)
2021-11-21 23:08:02 +0100 <lambdabot> 0.0 :+ (-5.0)
2021-11-21 23:08:26 +0100 <EvanR> unreal division
2021-11-21 23:08:37 +0100 <geekosaur> I was going to leave the complex plane out of it, this is already confusing enough :)
2021-11-21 23:09:23 +0100jmorris(uid433911@id-433911.hampstead.irccloud.com)
2021-11-21 23:09:46 +0100 <geekosaur> anyway haskell tends to get somewhat precise about these kinds of things (although not precise enough for some; revisions of the Num hierarchy are requested somewhat regularly and there are some implementations on Hackage)
2021-11-21 23:10:59 +0100 <geekosaur> … so enough with that diversion. you said even with the Integral constraint you were getting an error?
2021-11-21 23:11:26 +0100 <geekosaur> the only thing I see in your paste is a tabs warning
2021-11-21 23:11:35 +0100mimmy_(~mimmy@2607:fea8:6e0:7f90:818b:d7ec:141a:89c5) (Ping timeout: 250 seconds)
2021-11-21 23:11:59 +0100 <euouae> You also mentioned 'iterate' and I think you mean 'map'
2021-11-21 23:12:00 +0100 <geekosaur> much like python, haskell is indentation sensitive and editors don't always agree with each other or the compiler about what a tab means, so it's best to avoid them
2021-11-21 23:12:04 +0100 <geekosaur> yeh
2021-11-21 23:12:20 +0100pfurla(~pfurla@2804:14d:5c81:4104:d41b:9326:c4d8:9f2a) (Quit: gone to sleep. ZZZzzz…)
2021-11-21 23:12:36 +0100 <[itchyjunk]> so Num is like natural numbers
2021-11-21 23:12:46 +0100 <[itchyjunk]> with no division
2021-11-21 23:12:57 +0100 <geekosaur> it's the set of operations that are meaningful on any kind of number
2021-11-21 23:13:01 +0100 <[itchyjunk]> so Integral must be like.. something else. Z ring?
2021-11-21 23:13:20 +0100 <geekosaur> remember, these are essentially interfaces
2021-11-21 23:13:47 +0100 <[itchyjunk]> right
2021-11-21 23:13:56 +0100 <geekosaur> so Num is the set of operations you can define on any kind of number (integers, reals, complex, quaternion, you name it)
2021-11-21 23:14:28 +0100 <geekosaur> Integral is the operations you can define on specifically integer-like numbers, namely integer division / modulus
2021-11-21 23:14:55 +0100 <geekosaur> Fractional is (floating point) division and related operations
2021-11-21 23:15:10 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:69ab:ea7f:c2d0:49e0)
2021-11-21 23:15:25 +0100 <geekosaur> Floating is trigonometric operations and other things that can result in transcendental numbers
2021-11-21 23:15:49 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0) (Remote host closed the connection)
2021-11-21 23:16:17 +0100 <[itchyjunk]> hmm i've never come across Floating type data structure i think
2021-11-21 23:16:25 +0100 <geekosaur> :t sin
2021-11-21 23:16:26 +0100 <lambdabot> Floating a => a -> a
2021-11-21 23:16:26 +0100Adeon(sid418992@id-418992.lymington.irccloud.com) ()
2021-11-21 23:16:38 +0100 <geekosaur> :t sqrt
2021-11-21 23:16:39 +0100 <lambdabot> Floating a => a -> a
2021-11-21 23:17:18 +0100Adeon(sid418992@id-418992.lymington.irccloud.com)
2021-11-21 23:17:20 +0100 <geekosaur> usually this distinction doesn't mean much because you're almost always using Double or occasionally Complex Double, which is both Fractional and Floating
2021-11-21 23:17:35 +0100shdw(~shdw@23-233-101-24.cpe.pppoe.ca) (Quit: Leaving)
2021-11-21 23:19:10 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2021-11-21 23:19:11 +0100 <[itchyjunk]> Ah, things can implement multiple interfaces
2021-11-21 23:19:18 +0100 <geekosaur> yep
2021-11-21 23:19:27 +0100 <geekosaur> % :info Int
2021-11-21 23:19:28 +0100 <yahb> geekosaur: type Int :: *; data Int = I# Int#; -- Defined in `GHC.Types'; instance Eq Int -- Defined in `GHC.Classes'; instance Ord Int -- Defined in `GHC.Classes'; instance Enum Int -- Defined in `GHC.Enum'; instance Num Int -- Defined in `GHC.Num'; instance Real Int -- Defined in `GHC.Real'; instance Show Int -- Defined in `GHC.Show'; instance [safe] PrintfArg Int -- Defined in `Text.Printf'; instance Data Int --
2021-11-21 23:19:48 +0100 <geekosaur> you can ask ghci for the full set
2021-11-21 23:20:32 +0100acidjnk(~acidjnk@2001:16b8:6774:9a00:69ab:ea7f:c2d0:49e0) (Ping timeout: 240 seconds)
2021-11-21 23:20:54 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se) (Ping timeout: 268 seconds)
2021-11-21 23:21:03 +0100 <geekosaur> so as to your earlier comment about the Z ring, the standard Haskell numeric typeclasses don't really capture the notion of rings. there are alternative typeclasses that do
2021-11-21 23:21:27 +0100 <EvanR> Num isn't the same as a ring just because haskell likes to take laws seriously, which would make Double for instance not Nummable
2021-11-21 23:21:32 +0100 <geekosaur> although those have their own problems because Int, for example, doesn't fit them well because it's secretly a quotient type
2021-11-21 23:21:32 +0100rtsn(~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se)
2021-11-21 23:22:00 +0100 <geekosaur> which you can't truly capture within Haskell
2021-11-21 23:22:24 +0100 <EvanR> Int is a cromulent ring though isn't it
2021-11-21 23:22:34 +0100zebrag(~chris@user/zebrag)
2021-11-21 23:22:55 +0100 <geekosaur> Int is Z/2^64, which is a perfecly fine ring but not one you can describe in Haskell
2021-11-21 23:23:15 +0100 <EvanR> that's Word
2021-11-21 23:23:19 +0100 <[itchyjunk]> hmm
2021-11-21 23:23:39 +0100 <geekosaur> mm, yes, sorry
2021-11-21 23:24:07 +0100 <EvanR> if it obeys laws... to hell with describing it in haskell XD
2021-11-21 23:25:47 +0100 <[itchyjunk]> I thought math people liked haskell because of math axioms being carried over :D
2021-11-21 23:25:49 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net)
2021-11-21 23:26:00 +0100 <EvanR> you can use other types that obey your laws if you want
2021-11-21 23:26:01 +0100 <[itchyjunk]> at least, proof assistance seems to be popularly written in FP
2021-11-21 23:26:17 +0100 <[itchyjunk]> ah true, i guess the laws don't generally matter
2021-11-21 23:26:19 +0100hololeap_(~hololeap@user/hololeap)
2021-11-21 23:26:35 +0100 <EvanR> haskell doesn't check your laws, unfortunately
2021-11-21 23:26:39 +0100hololeap(~hololeap@user/hololeap) (Ping timeout: 276 seconds)
2021-11-21 23:27:03 +0100 <EvanR> though it may rely on them sometimes
2021-11-21 23:27:15 +0100 <EvanR> Functor laws, Monad laws
2021-11-21 23:27:22 +0100dolio(~dolio@130.44.130.54) (Quit: ZNC 1.8.2 - https://znc.in)
2021-11-21 23:30:10 +0100 <euouae> I like Haskell because I can very quickly dish out programs that do what I want :P
2021-11-21 23:30:14 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net) ()
2021-11-21 23:31:37 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2021-11-21 23:32:31 +0100dolio(~dolio@130.44.130.54)
2021-11-21 23:32:40 +0100 <[itchyjunk]> People using Py say the same :D
2021-11-21 23:32:47 +0100 <[itchyjunk]> I wonder if people who use asm say the same also
2021-11-21 23:33:53 +0100 <EvanR> yeah, menuetOS (OS by/for asm programmers)
2021-11-21 23:36:02 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-11-21 23:38:30 +0100Codaraxis__(~Codaraxis@user/codaraxis)
2021-11-21 23:42:07 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:b4a8:9431:5c1:c0e0)
2021-11-21 23:42:23 +0100Codaraxis_(~Codaraxis@user/codaraxis) (Ping timeout: 256 seconds)
2021-11-21 23:46:16 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-11-21 23:49:49 +0100ees(~user@pool-108-18-30-46.washdc.fios.verizon.net)
2021-11-21 23:58:27 +0100myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net)
2021-11-21 23:59:06 +0100econo(uid147250@user/econo)