2021/06/11

2021-06-11 00:00:50 +0000adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-06-11 00:01:04 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-11 00:01:32 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 00:01:35 +0000adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) ()
2021-06-11 00:04:10 +0000renzhi(~xp@2607:fa49:6500:bc00::e7b)
2021-06-11 00:04:41 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-11 00:06:01 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 00:07:35 +0000 <Axman6> do they support applying function to dotted record paths?
2021-06-11 00:07:54 +0000 <Axman6> also, don't we have RecordDotSyntax?
2021-06-11 00:08:46 +0000Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-06-11 00:14:53 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 00:17:24 +0000pdxleif(~leif@c-24-20-85-226.hsd1.or.comcast.net) (Ping timeout: 252 seconds)
2021-06-11 00:19:14 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 00:19:36 +0000myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-06-11 00:20:40 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-11 00:21:20 +0000awth13(~user@user/awth13) (Read error: Connection reset by peer)
2021-06-11 00:22:09 +0000awth13(~user@user/awth13)
2021-06-11 00:23:05 +0000thyriaen__(~thyriaen@45.178.73.238) (Quit: Leaving)
2021-06-11 00:24:01 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 00:24:12 +0000thyriaen(~thyriaen@45.178.73.238)
2021-06-11 00:26:12 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
2021-06-11 00:26:13 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 00:26:34 +0000waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds)
2021-06-11 00:27:59 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-11 00:29:08 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 00:29:09 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds)
2021-06-11 00:29:30 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 00:29:37 +0000 <monochrom> No, I prefer RecordHashTagSyntax like in SML.
2021-06-11 00:29:46 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-11 00:30:06 +0000 <monochrom> Record#Syntax
2021-06-11 00:31:05 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 00:32:04 +0000 <qrpnxz> is christopher allen here?
2021-06-11 00:32:05 +0000teaSlurper(~chris@81.96.113.213) (Read error: Connection reset by peer)
2021-06-11 00:32:30 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 00:36:35 +0000wwalker(~wwalker@platinum.solid-constructs.com)
2021-06-11 00:37:55 +0000thyriaen(~thyriaen@45.178.73.238) (Quit: Leaving)
2021-06-11 00:40:00 +0000myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-11 00:40:03 +0000jolly(~jolly@208.180.97.158) (Quit: Connection closed)
2021-06-11 00:40:31 +0000myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Read error: Connection reset by peer)
2021-06-11 00:40:45 +0000 <wwalker> I'm trying to build matterhorn, I know essentially nothiung about haskell, except cool tools like matterhorn and ShellCheck are written in it. Anyway... The build fails to build cabal-dependency-licenses
2021-06-11 00:41:02 +0000 <wwalker> https://gist.github.com/wwalker/a38c3fee2f868c158ab7f55c43d9a56e has the build log showing the errors.
2021-06-11 00:41:24 +0000 <wwalker> any pointers (links to troubleshooting build failures?)
2021-06-11 00:41:28 +0000vicfred_(~vicfred@fixed-187-191-38-173.totalplay.net)
2021-06-11 00:42:15 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 00:43:48 +0000vicfred(~vicfred@user/vicfred) (Ping timeout: 252 seconds)
2021-06-11 00:44:15 +0000 <wwalker> https://paste.tomsmeding.com/Bvpp1X0e More complete than the gist, and in the website specified in the topic.
2021-06-11 00:44:24 +0000Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-06-11 00:45:20 +0000zebrag(~chris@user/zebrag) (Ping timeout: 264 seconds)
2021-06-11 00:46:44 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 00:46:53 +0000sayola(~vekto@dslc-082-082-145-205.pools.arcor-ip.net)
2021-06-11 00:49:19 +0000vicfred_(~vicfred@fixed-187-191-38-173.totalplay.net) (Quit: Leaving)
2021-06-11 00:50:16 +0000 <hololeap> Axman6: they support stuff like `.myField` which would be a function from any type that has a "myField" field to whatever myField is... if that makes sense
2021-06-11 00:50:53 +0000 <Axman6> hmm, doesn't RecordDotSyntax do that? whatever we use in DAML lets us do that
2021-06-11 00:51:09 +0000 <Axman6> so you can do map (.someField)
2021-06-11 00:51:13 +0000 <hololeap> I thought that RecordDotSyntax wasn't implemented yet
2021-06-11 00:51:22 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 00:51:40 +0000 <yushyin> it is since ghc9.2
2021-06-11 00:51:48 +0000 <yushyin> check out the 9.2 prerelease
2021-06-11 00:51:51 +0000 <hololeap> Oh, I'm still on 8.10
2021-06-11 00:51:58 +0000 <Axman6> ah I thought it was out in 9.0
2021-06-11 00:52:14 +0000 <hololeap> that will be a game changer for sure
2021-06-11 00:53:15 +0000 <yushyin> NoFieldSelectors will already be a big game changer
2021-06-11 00:54:17 +0000 <Axman6> the other nice thing we have in DAML is record "with" syntax - you can say create Foo with fooId; bar = BarA; baz = None. it's a nice alternative to record wildcards which requires less syntax
2021-06-11 00:55:39 +0000 <Axman6> (it looks better over multiple lines, I'll see if I can find a gfood example)
2021-06-11 00:55:40 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-11 00:55:50 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 00:58:19 +0000 <Axman6> https://github.com/digital-asset/ex-models/blob/b6b95f3797e8a0a563dbf450d091d215a4aba306/chess/dam…
2021-06-11 00:58:36 +0000 <Axman6> line 44 shows how it's usually used
2021-06-11 01:01:28 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-11 01:01:38 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-11 01:02:59 +0000MidAutumnMoon(~MidAutumn@user/midautumnmoon) (Read error: Connection reset by peer)
2021-06-11 01:03:14 +0000MidAutumnMoon(~MidAutumn@user/midautumnmoon)
2021-06-11 01:05:14 +0000 <lyxia> wwalker: maybe try asking on Matterhorn's community server linked in their readme
2021-06-11 01:05:51 +0000pdxleif(~leif@75.164.44.108)
2021-06-11 01:05:54 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-11 01:08:14 +0000 <lyxia> wwalker: I think you'll have to install an older distribution of Haskell (one with Cabal <= 2.5) but the developers of matterhorn themselves might have more comprehensive pointers to get a working setup.
2021-06-11 01:09:36 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 01:09:46 +0000gorignak(~gorignak@047-037-033-079.res.spectrum.com)
2021-06-11 01:10:39 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-06-11 01:11:46 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-11 01:13:49 +0000xff0x_(~xff0x@2001:1a81:5309:4200:43f:9f66:b597:77c7) (Ping timeout: 245 seconds)
2021-06-11 01:14:08 +0000pdxleif(~leif@75.164.44.108) (Ping timeout: 264 seconds)
2021-06-11 01:14:42 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 01:15:45 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:2779:734e:bb13:8382)
2021-06-11 01:18:44 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 01:22:00 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Quit: Leaving)
2021-06-11 01:22:56 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
2021-06-11 01:23:06 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-11 01:23:13 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 01:24:22 +0000jaevanko(~jaevanko@2600:1700:1330:2bef:2af8:ee9a:b15a:6b86) (Quit: Leaving)
2021-06-11 01:24:25 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-11 01:27:51 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 01:32:31 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 01:32:54 +0000yd502(~yd502@180.168.212.6)
2021-06-11 01:33:38 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 01:35:30 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 252 seconds)
2021-06-11 01:35:45 +0000yd502__(~yd502@180.168.212.6)
2021-06-11 01:36:58 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 01:37:09 +0000yd502(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 01:38:15 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 01:41:44 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 01:43:27 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-11 01:46:49 +0000 <qrpnxz> am i reading this right that an Alternative Monad is automatically a MonadPlus?
2021-06-11 01:50:25 +0000Igfoo(~ian@matrix.chaos.earth.li) (Ping timeout: 272 seconds)
2021-06-11 01:55:12 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 01:55:23 +0000eight(~eight@user/eight) (Remote host closed the connection)
2021-06-11 01:57:01 +0000Igfoo(~ian@matrix.chaos.earth.li)
2021-06-11 01:57:45 +0000 <glguy> doesn't sound right
2021-06-11 01:58:10 +0000 <glguy> class (Alternative m, Monad m) => MonadPlus m where
2021-06-11 01:58:29 +0000 <glguy> In order to be a MonadPlus you must already be a Monad and an Alternative
2021-06-11 01:58:54 +0000 <glguy> then you can make a MonadPlus instance for free that will default to using Alternative
2021-06-11 01:58:59 +0000 <glguy> instance MonadPlus YourTypeHere
2021-06-11 02:00:18 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 02:00:47 +0000eight(~eight@user/eight)
2021-06-11 02:01:20 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 02:01:26 +0000funsafe(~funsafe@2601:1c1:4200:938f:389d:16a4:ae2d:65aa) (Ping timeout: 252 seconds)
2021-06-11 02:01:35 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-11 02:02:58 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-11 02:03:13 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-11 02:03:23 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-11 02:03:28 +0000 <qrpnxz> right but i just have to say "instance...". I'm playing around with alternative. functions `some` and `many` hang, not to sure how ppl use this
2021-06-11 02:04:19 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 02:08:49 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 02:08:55 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 02:09:39 +0000td_(~td@94.134.91.190) (Ping timeout: 245 seconds)
2021-06-11 02:10:48 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 02:10:56 +0000 <qrpnxz> some and many don't appear to do different things actually i'm confused
2021-06-11 02:11:29 +0000td_(~td@94.134.91.189)
2021-06-11 02:11:39 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
2021-06-11 02:12:21 +0000awth13(~user@user/awth13) (Ping timeout: 252 seconds)
2021-06-11 02:12:58 +0000yd502__(~yd502@180.168.212.6) (Ping timeout: 272 seconds)
2021-06-11 02:13:29 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 02:13:46 +0000justsomeguy(~justsomeg@user/justsomeguy)
2021-06-11 02:15:04 +0000lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-06-11 02:15:30 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:2779:734e:bb13:8382) (Ping timeout: 272 seconds)
2021-06-11 02:15:41 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-11 02:15:57 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:6e52:b23e:6fc2:e844)
2021-06-11 02:16:50 +0000 <lyxia> try getting an empty list out of some
2021-06-11 02:16:53 +0000catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407)
2021-06-11 02:17:15 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 02:17:18 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 02:18:20 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 02:19:19 +0000 <catern> is there a good non-theory explanation of practical uses of programs-as-proofs? for things other than theorem proving
2021-06-11 02:20:32 +0000awth13(~user@user/awth13)
2021-06-11 02:22:54 +0000 <qrpnxz> lyxia, idk what that means. Even trying something like `take 3` on it doesn't seem to help with the hanging issue
2021-06-11 02:23:16 +0000 <qrpnxz> to me it looks like it's doing an infinite list of a value, but i can't access it
2021-06-11 02:23:34 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 02:25:45 +0000 <justsomeguy> catern: Do any of the examples here qualify? https://ucsd-progsys.github.io/liquidhaskell-blog/
2021-06-11 02:27:48 +0000 <catern> justsomeguy: I guess that qualifies for what I said, but I should give an additional constraint (which replaces my theorem proving constraint): "in the absence of fancy types (such as dependent types)"
2021-06-11 02:28:34 +0000justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
2021-06-11 02:30:03 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 02:31:13 +0000 <catern> (although I'm not sure even that qualifies... a dependent type lets you place constraints on what the inhabitants of a type are... but then using the resulting terms of that type isn't exactly a manifestation of programs-as-proofs, since knowing that the type is inhabited doesn't actually *tell* you anything, besides that the type is inhabited, which for the type of a pure function like in that example, isn't typically useful)
2021-06-11 02:31:42 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 02:32:47 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 02:33:20 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 264 seconds)
2021-06-11 02:34:01 +0000yd502(~yd502@180.168.212.6)
2021-06-11 02:34:05 +0000FinnElijaGuest9778
2021-06-11 02:34:05 +0000finn_elija(~finn_elij@user/finn-elija/x-0085643)
2021-06-11 02:34:05 +0000Guest9778(~finn_elij@user/finn-elija/x-0085643) (Killed (tin.libera.chat (Nickname regained by services)))
2021-06-11 02:34:05 +0000finn_elijaFinnElija
2021-06-11 02:34:32 +0000yahb(xsbot@user/mniip/bot/yahb) (Ping timeout: 264 seconds)
2021-06-11 02:34:38 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 265 seconds)
2021-06-11 02:35:27 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-11 02:36:33 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 252 seconds)
2021-06-11 02:38:12 +0000machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds)
2021-06-11 02:38:46 +0000yahb(xsbot@user/mniip/bot/yahb)
2021-06-11 02:40:50 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 02:41:19 +0000ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds)
2021-06-11 02:41:30 +0000shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
2021-06-11 02:44:58 +0000hammock(~Hammock@2600:1700:19a1:3330::625) (Quit: WeeChat 3.0.1)
2021-06-11 02:45:56 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 02:54:50 +0000 <bontaq`> idk, all the proof assistants have dependent types or stronger
2021-06-11 02:57:37 +0000 <Axman6> I've gelkt for a while that just having sum types and not allowing partial functions gets you a very long way in proving that you have handled everything that's possible in your program. writing functions which can operate over that domain proves that you have handled all cases, which for most practical work is better than you get in most languages
2021-06-11 02:57:43 +0000 <Axman6> felt*
2021-06-11 02:59:06 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:00:06 +0000 <keltono> bontaq`: well, not _all_ of them (https://en.wikipedia.org/wiki/Isabelle_(proof_assistant), for one)
2021-06-11 03:02:08 +0000 <bontaq`> :P
2021-06-11 03:02:41 +0000yd502(~yd502@180.168.212.6) (Ping timeout: 268 seconds)
2021-06-11 03:03:44 +0000yd502(~yd502@180.168.212.6)
2021-06-11 03:04:19 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 03:08:13 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:09:36 +0000 <qrpnxz> how do get declarations in an import to replace declarations from prelude?
2021-06-11 03:09:39 +0000cpnuj(~cpnuj@217.163.30.217)
2021-06-11 03:12:18 +0000cpnuj(~cpnuj@217.163.30.217) (Client Quit)
2021-06-11 03:12:20 +0000awth13(~user@user/awth13) (Ping timeout: 265 seconds)
2021-06-11 03:12:25 +0000 <Axman6> qrpnxz: here's a few ways, which is the correct one will depend on the specific import though, there's some idioms that are used for some modules and not others
2021-06-11 03:12:57 +0000 <qrpnxz> In my case i wanted Text.IO to subplant the prelude defaults
2021-06-11 03:13:08 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 03:13:09 +0000 <hololeap> qrpnxz: in regards to some and many, look into parsing libraries like parsec. that should give you an intuition for how those functions are used
2021-06-11 03:13:37 +0000 <hololeap> it doesn't work very well for most Alternatives found in base
2021-06-11 03:14:05 +0000 <Axman6> well one option is to do import Prelude hiding (functionsThat, youUseIn, your, code)
2021-06-11 03:14:08 +0000 <qrpnxz> yeah that makes sense but idk why i'm unable to say `take 3` from a `some (Just 1)` idk what's going on there
2021-06-11 03:14:28 +0000 <qrpnxz> Axman6, wow that's a lot of work, i'll just qualify it
2021-06-11 03:14:46 +0000 <Axman6> yeah, usually people will just do import Data.Text.IO as T
2021-06-11 03:15:02 +0000 <Axman6> qualified as T*
2021-06-11 03:15:35 +0000 <Axman6> a fairly common thing to do is: import Data.Text.IO qualified as T; import Data.Text.IO (nonClashing,names)
2021-06-11 03:15:56 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 264 seconds)
2021-06-11 03:17:22 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:21:45 +0000cdsmith(~cdsmithma@2001:470:69fc:105::284) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000Drezil(~drezilkif@2001:470:69fc:105::7f8) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000Artem[m](~artemtype@2001:470:69fc:105::75b) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000wallymathieu[m](~wallymath@2001:470:69fc:105::16ae) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000amesgen[m](~amesgenam@2001:470:69fc:105::82b) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000eddiemundo(~eddiemund@2001:470:69fc:105::a9c) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000Soft(~soft-matr@2001:470:69fc:105::c75) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000autrim64[m](~autrim64m@2001:470:69fc:105::16a1) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000RohitGoswami[m](~rgoswamim@2001:470:69fc:105::16cc) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000Las[m](~lasmatrix@2001:470:69fc:105::74e) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000ServerStatsDisco(~serversta@2001:470:69fc:105::1a) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000the-coot[m](~the-cootm@2001:470:69fc:105::95f) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000psydroid(~psydroidm@user/psydroid) (Ping timeout: 244 seconds)
2021-06-11 03:21:45 +0000ac(~aloiscoch@2001:470:69fc:105::65) (Ping timeout: 244 seconds)
2021-06-11 03:21:55 +0000jophish(~jophish@2001:470:69fc:105::670) (Ping timeout: 264 seconds)
2021-06-11 03:21:55 +0000kadoban(~kadoban@user/kadoban) (Ping timeout: 264 seconds)
2021-06-11 03:21:55 +0000MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22) (Ping timeout: 264 seconds)
2021-06-11 03:22:03 +0000bitonic(~bitonicma@2001:470:69fc:105::1812) (Ping timeout: 244 seconds)
2021-06-11 03:22:25 +0000marinelli[m](~marinelli@2001:470:69fc:105::2d8) (Ping timeout: 268 seconds)
2021-06-11 03:22:31 +0000jaror[m](~jaror@2001:470:69fc:105::265) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000oak-(~oakuniver@2001:470:69fc:105::fcd) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000tomferon[m](~tomferon@2001:470:69fc:105::268) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000bb010g(~bb010gmat@2001:470:69fc:105::9a5) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000srid[m](~sridmatri@2001:470:69fc:105::1c2) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000adziahel[m](~adziahelm@2001:470:69fc:105::b4d) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000dualinverter[m](~dualinver@2001:470:69fc:105::16a7) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000Morrow[m](~morrowmma@2001:470:69fc:105::1d0) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000kosmikus[m](~andresloe@2001:470:69fc:105::95d) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000bryan[m](~bchreekat@2001:470:69fc:105::16b5) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000hjulle[m](~hjullemat@2001:470:69fc:105::1dd) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000maerwald[m](~maerwaldm@2001:470:69fc:105::1ee) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000fabfianda[m](~fabfianda@2001:470:69fc:105::6db) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000maralorn(~maralorn@2001:470:69fc:105::251) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000sm[m](~sm@plaintextaccounting/sm) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000peddie(~peddie@2001:470:69fc:105::25d) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000fgaz(~fgaz@2001:470:69fc:105::842) (Ping timeout: 264 seconds)
2021-06-11 03:22:31 +0000thedward[m](~thedwardm@2001:470:69fc:105::f79) (Ping timeout: 264 seconds)
2021-06-11 03:22:38 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 03:22:38 +0000yin[m](~zwromatri@2001:470:69fc:105::1d4) (Ping timeout: 272 seconds)
2021-06-11 03:22:41 +0000siraben(~siraben@user/siraben) (Ping timeout: 272 seconds)
2021-06-11 03:22:53 +0000cjb(~cjb@user/cjb)
2021-06-11 03:23:38 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 03:24:07 +0000azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-11 03:24:09 +0000 <hololeap> I don't know where you find the source for the Maybe instance of Alternative
2021-06-11 03:24:28 +0000 <qrpnxz> wow awesome, i see text is monoid so i can just use generic function <> to concat, works as expected. empty text being mempty. Haskell is nice
2021-06-11 03:24:44 +0000 <qrpnxz> hololeap, it's in Base i believe
2021-06-11 03:25:26 +0000 <boxscape> I would link it but I'm getting a 502 on hackage :(
2021-06-11 03:26:03 +0000yd502(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 03:26:21 +0000 <boxscape> hololeap since hackage is down here's a link to the ghc repo https://gitlab.haskell.org/ghc/ghc/-/blob/master/libraries/base/GHC/Base.hs#L1095-1099
2021-06-11 03:26:29 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:26:40 +0000 <boxscape> wait
2021-06-11 03:26:40 +0000 <boxscape> not hackage
2021-06-11 03:26:42 +0000 <boxscape> hoogle is down
2021-06-11 03:26:50 +0000 <boxscape> I just always use hoogle to find my way through hackage
2021-06-11 03:27:48 +0000 <hololeap> boxscape: ok, but where is some and maybe?
2021-06-11 03:27:53 +0000 <hololeap> I mean many?
2021-06-11 03:28:35 +0000 <boxscape> hololeap many has a default implementation, you don't need to provide an implementation in the instance
2021-06-11 03:28:37 +0000 <hololeap> I suppose they're defined in the class definition for Alternative, but I can't find that...
2021-06-11 03:28:39 +0000 <boxscape> as does some
2021-06-11 03:28:48 +0000 <boxscape> see directly above the linked section
2021-06-11 03:29:10 +0000 <boxscape> hololeap https://gitlab.haskell.org/ghc/ghc/-/blob/master/libraries/base/GHC/Base.hs#L1074-1092
2021-06-11 03:29:21 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 03:29:39 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 03:29:41 +0000 <hololeap> oh, I was just searching wrong :p
2021-06-11 03:30:24 +0000 <bontaq`> is hoogle down? :ded:
2021-06-11 03:30:33 +0000 <boxscape> bontaq` yep
2021-06-11 03:30:50 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 03:30:51 +0000 <bontaq`> :summoning ritual: come back to us
2021-06-11 03:30:56 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
2021-06-11 03:31:00 +0000 <boxscape> @hoogle Alternative
2021-06-11 03:31:00 +0000 <lambdabot> Control.Applicative class Applicative f => Alternative f
2021-06-11 03:31:00 +0000 <lambdabot> GHC.Base class Applicative f => Alternative f
2021-06-11 03:31:00 +0000 <lambdabot> Distribution.Compat.Prelude.Internal class Applicative f => Alternative (f :: Type -> Type)
2021-06-11 03:31:05 +0000 <boxscape> at least lambdabot's works
2021-06-11 03:31:17 +0000abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-06-11 03:31:29 +0000 <bontaq`> @hoogle Sequence
2021-06-11 03:31:29 +0000 <lambdabot> module Data.Sequence
2021-06-11 03:31:29 +0000 <lambdabot> Data.Yaml.Parser Sequence :: [YamlValue] -> Anchor -> YamlValue
2021-06-11 03:31:29 +0000 <lambdabot> module Text.Regex.Posix.Sequence
2021-06-11 03:31:41 +0000 <hololeap> ok, so it looks like the default implementation of some/many will just loop forever unless the Alternative can contain an empty later on
2021-06-11 03:32:47 +0000 <boxscape> those default definitions are so weird actually, why is the whole where block duplicated when only half of it is used
2021-06-11 03:32:59 +0000 <hololeap> and nothing from base can do that if I understand correctly
2021-06-11 03:33:06 +0000 <boxscape> oh wait
2021-06-11 03:33:08 +0000 <boxscape> it is used :)
2021-06-11 03:33:19 +0000 <boxscape> (s/it/the other half)
2021-06-11 03:33:57 +0000 <hololeap> so some/maybe on an Alternative from base will just loop forever
2021-06-11 03:34:22 +0000 <hololeap> *some/many
2021-06-11 03:34:33 +0000 <hololeap> (I don't know why I keep doing that...)
2021-06-11 03:35:00 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2021-06-11 03:35:05 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-11 03:35:36 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:35:44 +0000 <qrpnxz> so Go has some nice Reader and Writer interfaces that let you simply connect and wrap streams of bytes rather easily. Does haskell have something like that?
2021-06-11 03:36:10 +0000Crypt9a2e(~Crypt9a2e@2409:4072:301:9da3:dd1a:701:893d:eef1)
2021-06-11 03:36:50 +0000 <hololeap> what do you mean by "connect and wrap"? append?
2021-06-11 03:37:22 +0000pavonia(~user@user/siracusa) (Quit: Bye!)
2021-06-11 03:38:05 +0000 <qrpnxz> like you can easily copy a reader to a writer, or wrap a reader or a writer with gzip so that the stream is automatically compressed and decompressed
2021-06-11 03:38:57 +0000doublex_(~doublex@2601:542:c480:6ee0:184b:7083:f026:c689)
2021-06-11 03:39:23 +0000 <qrpnxz> or wrap stdin in a buffered reader, or slurp a reader into a buffer with ReadFrom and then wrap that in something else and read from it, or then copy it to another writer and so on
2021-06-11 03:39:29 +0000 <hololeap> hm, the use of Reader/Writer here sounds very different from the haskell versions of those terms. you might be looking for something like conduit
2021-06-11 03:39:40 +0000koishi_(~koishi_@67.209.186.120.16clouds.com)
2021-06-11 03:39:49 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 03:40:35 +0000 <qrpnxz> yeah i was thinking i might have to use conduit/pipes or smth like that because what i'm describing i do not see in the stdlib of haskell
2021-06-11 03:40:56 +0000 <qrpnxz> and it's like one of my favourite things in Go
2021-06-11 03:41:10 +0000renzhi(~xp@2607:fa49:6500:bc00::e7b) (Ping timeout: 244 seconds)
2021-06-11 03:41:18 +0000 <hololeap> there's also streamly, which I haven't used as of yet, but I've heard very good things
2021-06-11 03:41:30 +0000 <qrpnxz> alright thanks
2021-06-11 03:41:58 +0000 <hololeap> those things are almost certainly going to exist in external packages
2021-06-11 03:43:08 +0000 <hololeap> in conduit terms, it would be Source/Sink vs. Reader/Writer
2021-06-11 03:43:20 +0000 <qrpnxz> System.IO actually looks rather limited. Are external libraries also able to implement these kind of system stuff?
2021-06-11 03:44:21 +0000 <hololeap> oh, definitely. most of the stuff in base is pretty low-level
2021-06-11 03:44:43 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 03:44:53 +0000 <hololeap> a big part of becoming competent in haskell is learning which external libraries to use
2021-06-11 03:45:16 +0000 <qrpnxz> no kidding, i mean, i don't see any networking stuff here either oh boy i'm gonna have to do a lot of searching
2021-06-11 03:45:55 +0000 <hololeap> it depends on what kind of networking you're trying to do. are you trying to set up something based on HTTP or a custom protocol?
2021-06-11 03:46:43 +0000 <hololeap> (or something else)
2021-06-11 03:46:49 +0000 <qrpnxz> Well, like let's say i wanted to just listen for TCP connections and then do a TLS handshake on em and dispatch that and so on
2021-06-11 03:47:15 +0000 <qrpnxz> i'm sure haskell has some kind of http lib as well
2021-06-11 03:47:35 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 03:48:55 +0000 <hololeap> the network and tls packages can do what you want, but they're pretty low-level
2021-06-11 03:49:07 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 03:50:35 +0000 <hololeap> one good way to search is to enter a keyword in https://hackage.haskell.org/packages/search and then sort by total downloads
2021-06-11 03:50:41 +0000 <qrpnxz> https://termbin.com/073q don't look so bad
2021-06-11 03:50:49 +0000 <qrpnxz> alright thanks
2021-06-11 03:51:03 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 03:51:07 +0000 <hololeap> typing "tls" in there brought up https://hackage.haskell.org/package/tcp-streams
2021-06-11 03:51:21 +0000jespada(~jespada@90.254.242.55) (Ping timeout: 252 seconds)
2021-06-11 03:51:31 +0000cjb(~cjb@user/cjb) ()
2021-06-11 03:51:53 +0000 <qrpnxz> this one will do tcp as well
2021-06-11 03:51:54 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2021-06-11 03:53:00 +0000 <hololeap> sometimes there are two or more competing packages for the same goal, in which case you can look for something about them on reddit or stack exchange
2021-06-11 03:53:06 +0000 <qrpnxz> guess it's hard to live up to the go stdlib, that's got so much. IPv{4,6}, TCP, UDP, TLS, HTTP, HTTPS, DNS, RSA, EDDSA, and so on
2021-06-11 03:53:37 +0000 <qrpnxz> roger that
2021-06-11 03:53:46 +0000jespada(~jespada@90.254.242.55)
2021-06-11 03:54:33 +0000 <juhp> What are "yellow" package versions on Hackage?
2021-06-11 03:55:02 +0000 <boxscape> qrpnxz I think part may also be that the haskell "leadership" would rather the community finds what the best way to do things is by having an open playing field, rather than mandating one standard from the top down. Though there are pros and cons to both approaches.
2021-06-11 03:55:14 +0000 <hololeap> something that I read once said that Haskell is the opposite of Ruby on Rails, in that RoR has one "blessed" way of doing anything, whereas Haskell has 100 ways
2021-06-11 03:55:32 +0000 <hololeap> so it's just something you have to get used to about the ecosystem
2021-06-11 03:55:48 +0000 <juhp> eg https://hackage.haskell.org/package/crypto-enigma
2021-06-11 03:55:49 +0000 <qrpnxz> boxscape, i mean, nothing prevents you from making your own go http library (indeed, there are many)
2021-06-11 03:56:14 +0000 <qrpnxz> there is a Data.Text alternative even so applies to haskell as well
2021-06-11 03:56:35 +0000 <boxscape> qrpnxz sure, but I think probably fewer people will use it when similar functionality exists in the stdlib
2021-06-11 03:57:01 +0000 <hololeap> although fpcomplete (and by extension the rio package) has been trying to make a "blessed" way for everything, so that would be a good place to check if you get overwhelmed
2021-06-11 03:57:03 +0000 <boxscape> (and it means you have to maintain the standard way of doing things even if the community switches over to a third-party package)
2021-06-11 03:57:18 +0000awth13(~user@user/awth13)
2021-06-11 03:57:55 +0000 <qrpnxz> Cause the stdlib one is really good. Sometimes the other libs are used if you need to go fast and loose or smth like that. Actually many stdlib pkgs have been even deprecated when external libraries became way better
2021-06-11 03:58:24 +0000 <boxscape> juhp the css class that makes it yellow is called "unpreferred"
2021-06-11 03:58:39 +0000 <juhp> boxscape: ah thanks!
2021-06-11 03:59:36 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 04:00:04 +0000 <boxscape> qrpnxz ah, yeah, I suppose allowing yourself to deprecate parts of the stdlib means you don't have some of the downsides
2021-06-11 04:00:32 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-11 04:01:32 +0000koishi_(~koishi_@67.209.186.120.16clouds.com) (Remote host closed the connection)
2021-06-11 04:02:57 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 04:06:25 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 04:07:34 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 04:08:08 +0000MQ-17J(~MQ-17J@8.21.10.116) (Ping timeout: 264 seconds)
2021-06-11 04:09:56 +0000Erutuon(~Erutuon@user/erutuon) (Ping timeout: 264 seconds)
2021-06-11 04:12:05 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 04:13:13 +0000lbseale_(~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
2021-06-11 04:15:21 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 04:15:24 +0000wei2912(~wei2912@112.199.250.21)
2021-06-11 04:21:40 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 04:22:55 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 04:25:04 +0000oxide(~lambda@user/oxide) (Ping timeout: 245 seconds)
2021-06-11 04:26:25 +0000cjb(~cjb@user/cjb)
2021-06-11 04:27:34 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 245 seconds)
2021-06-11 04:31:59 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 04:33:06 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 04:37:50 +0000reumeth(~reumeth@user/reumeth)
2021-06-11 04:39:09 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 04:40:18 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 04:41:26 +0000zephyr_(~zephyr@59.88.25.191)
2021-06-11 04:43:22 +0000reumeth(~reumeth@user/reumeth) (Ping timeout: 244 seconds)
2021-06-11 04:48:52 +0000v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-11 04:49:45 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 04:51:18 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2021-06-11 04:51:18 +0000pe200012(~pe200012@183.63.73.36)
2021-06-11 04:54:53 +0000hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-11 04:57:53 +0000phma(phma@2001:5b0:211f:5688:8179:a979:62a:8bf6) (Quit: Konversation terminated!)
2021-06-11 05:00:07 +0000thyriaen(~thyriaen@45.178.75.13)
2021-06-11 05:02:48 +0000derelict(~derelict@user/derelict) (Ping timeout: 244 seconds)
2021-06-11 05:02:55 +0000thyriaen(~thyriaen@45.178.75.13) (Remote host closed the connection)
2021-06-11 05:04:52 +0000thyriaen(~thyriaen@45.178.75.13)
2021-06-11 05:05:11 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 05:05:54 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-11 05:07:08 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-11 05:07:41 +0000qbt(~edun@user/edun)
2021-06-11 05:11:05 +0000alx741(~alx741@186.178.108.59) (Quit: alx741)
2021-06-11 05:11:47 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-11 05:12:18 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 244 seconds)
2021-06-11 05:15:43 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 05:19:48 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 05:21:28 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 05:21:44 +0000Crypt9a2e(~Crypt9a2e@2409:4072:301:9da3:dd1a:701:893d:eef1) (Ping timeout: 245 seconds)
2021-06-11 05:25:44 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 05:27:52 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 05:29:20 +0000_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-06-11 05:30:22 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 05:30:35 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 05:30:41 +0000phma(phma@2001:5b0:211f:5688:1a5c:72d9:f31b:5496)
2021-06-11 05:31:04 +0000chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-11 05:35:00 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-11 05:35:38 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 05:36:10 +0000_xor(~xor@74.215.46.133) (Quit: WeeChat 3.1)
2021-06-11 05:36:30 +0000psingh(~xor@74.215.46.133)
2021-06-11 05:37:12 +0000psingh(~xor@74.215.46.133) (Client Quit)
2021-06-11 05:37:32 +0000psingh(~xor@74.215.46.133)
2021-06-11 05:39:43 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 05:40:19 +0000sekun(~sekun@180.190.159.117)
2021-06-11 05:40:55 +0000psingh(~xor@74.215.46.133) (Client Quit)
2021-06-11 05:43:07 +0000_xor(~xor@74.215.46.133)
2021-06-11 05:44:03 +0000agumonke`(~user@88.160.31.174)
2021-06-11 05:44:27 +0000_xor(~xor@74.215.46.133) (Client Quit)
2021-06-11 05:44:30 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 05:45:15 +0000_xor(~xor@74.215.46.133)
2021-06-11 05:47:20 +0000_xor(~xor@74.215.46.133) (Client Quit)
2021-06-11 05:47:34 +0000_xor(~xor@74.215.46.133)
2021-06-11 05:48:50 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 05:49:01 +0000Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-06-11 05:50:09 +0000bontaq`(~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 252 seconds)
2021-06-11 05:53:26 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 05:54:12 +0000mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-11 05:56:00 +0000 <agumonke`> has anyone seen integer encoding of adjacency matrices ?
2021-06-11 05:56:05 +0000pdxleif(~leif@75.164.44.108)
2021-06-11 05:56:33 +0000 <agumonke`> [[1 1 1] [1 1 1] [1 1 1]] -> 777
2021-06-11 05:56:56 +0000Bartosz(~textual@24.35.90.211)
2021-06-11 05:57:39 +0000Crypt9a2e(~Crypt9a2e@2409:4072:301:9da3:dd1a:701:893d:eef1)
2021-06-11 05:57:58 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 05:59:56 +0000 <int-e> loopy
2021-06-11 06:00:09 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 244 seconds)
2021-06-11 06:01:35 +0000 <c_wraith> It's a bit weird to do the decimal conversion in there.
2021-06-11 06:02:09 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-11 06:02:24 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 06:02:48 +0000 <int-e> Oh I thought 777 was octal.
2021-06-11 06:02:51 +0000 <agumonke`> my bad
2021-06-11 06:02:52 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 06:02:53 +0000 <agumonke`> 7 7 7
2021-06-11 06:03:09 +0000 <agumonke`> I was overly packing data :)
2021-06-11 06:04:14 +0000 <agumonke`> the idea being that for a set of N objects you can just use integers to represent a binary attribute for that set
2021-06-11 06:04:49 +0000 <c_wraith> take it to the extreme and you get chess engine bitboards
2021-06-11 06:04:58 +0000 <agumonke`> either it's a bad idea or it's used already but I've never seen that and if that exists maybe there's a name for it
2021-06-11 06:05:09 +0000 <boxscape> arguably a bitmask is the same as an integer encoding?
2021-06-11 06:05:10 +0000 <agumonke`> c_wraith: gonna investigate
2021-06-11 06:06:19 +0000Guest74(~Guest74@109-252-184-94.dynamic.spd-mgts.ru)
2021-06-11 06:07:05 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:09:24 +0000aerona(~aerona@2600:6c54:4600:f300:f3ed:d9b8:4e4c:a83a) (Quit: Leaving)
2021-06-11 06:11:19 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 06:13:56 +0000jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-06-11 06:14:29 +0000jakalx(~jakalx@base.jakalx.net)
2021-06-11 06:15:57 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-11 06:16:12 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:20:30 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 06:20:30 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-11 06:20:36 +0000pdxleif(~leif@75.164.44.108) (Ping timeout: 272 seconds)
2021-06-11 06:22:07 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:56f8:8796:29c6:7f5b)
2021-06-11 06:25:19 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:26:55 +0000mauricio(~mauricio@host-181-39-120-169.netlife.ec)
2021-06-11 06:28:00 +0000mauriciodebclair
2021-06-11 06:29:39 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 06:31:25 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 06:31:34 +0000Erutuon(~Erutuon@user/erutuon)
2021-06-11 06:32:10 +0000slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-06-11 06:33:40 +0000Guest74(~Guest74@109-252-184-94.dynamic.spd-mgts.ru) (Quit: Client closed)
2021-06-11 06:34:26 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:36:19 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 245 seconds)
2021-06-11 06:39:06 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 06:40:32 +0000Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-11 06:43:34 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:44:31 +0000cfricke(~cfricke@user/cfricke)
2021-06-11 06:45:09 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 06:46:34 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 06:47:09 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:6e52:b23e:6fc2:e844) (Ping timeout: 245 seconds)
2021-06-11 06:47:59 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 06:50:54 +0000oxide(~lambda@user/oxide)
2021-06-11 06:51:38 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 272 seconds)
2021-06-11 06:52:41 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 06:56:10 +0000Crypt9a2e(~Crypt9a2e@2409:4072:301:9da3:dd1a:701:893d:eef1) (Remote host closed the connection)
2021-06-11 06:56:28 +0000Crypt9a2e(~Crypt9a2e@157.51.3.28)
2021-06-11 06:57:10 +0000dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2021-06-11 06:57:58 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 07:01:48 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:02:34 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 07:04:14 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 07:06:17 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 07:07:55 +0000debclair(~mauricio@host-181-39-120-169.netlife.ec) (Quit: Leaving)
2021-06-11 07:09:04 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 244 seconds)
2021-06-11 07:10:55 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:11:14 +0000danso(~danso@modemcable156.91-20-96.mc.videotron.ca) (Quit: WeeChat 3.1)
2021-06-11 07:13:15 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 07:15:29 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 245 seconds)
2021-06-11 07:17:54 +0000cjb(~cjb@user/cjb) ()
2021-06-11 07:19:07 +0000sndr(~sander@user/sander) (Ping timeout: 272 seconds)
2021-06-11 07:19:24 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 244 seconds)
2021-06-11 07:20:02 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:22:14 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 07:23:16 +0000thedward[m](~thedwardm@2001:470:69fc:105::f79)
2021-06-11 07:24:02 +0000ac(~aloiscoch@2001:470:69fc:105::65)
2021-06-11 07:24:03 +0000sm[m](~sm@plaintextaccounting/sm)
2021-06-11 07:24:03 +0000siraben(~siraben@user/siraben)
2021-06-11 07:24:03 +0000psydroid(~psydroidm@2001:470:69fc:105::165)
2021-06-11 07:24:03 +0000peddie(~peddie@2001:470:69fc:105::25d)
2021-06-11 07:24:03 +0000fgaz(~fgaz@2001:470:69fc:105::842)
2021-06-11 07:24:03 +0000MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22)
2021-06-11 07:24:03 +0000maralorn(~maralorn@2001:470:69fc:105::251)
2021-06-11 07:24:03 +0000fabfianda[m](~fabfianda@2001:470:69fc:105::6db)
2021-06-11 07:24:03 +0000Las[m](~lasmatrix@2001:470:69fc:105::74e)
2021-06-11 07:24:03 +0000ServerStatsDisco(~serversta@2001:470:69fc:105::1a)
2021-06-11 07:24:03 +0000the-coot[m](~the-cootm@2001:470:69fc:105::95f)
2021-06-11 07:24:03 +0000vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe)
2021-06-11 07:24:03 +0000jophish(~jophish@2001:470:69fc:105::670)
2021-06-11 07:24:03 +0000kadoban(~kadoban@user/kadoban)
2021-06-11 07:24:14 +0000maerwald[m](~maerwaldm@2001:470:69fc:105::1ee)
2021-06-11 07:24:15 +0000hjulle[m](~hjullemat@2001:470:69fc:105::1dd)
2021-06-11 07:24:15 +0000amesgen[m](~amesgenam@2001:470:69fc:105::82b)
2021-06-11 07:24:15 +0000Drezil(~drezilkif@2001:470:69fc:105::7f8)
2021-06-11 07:24:15 +0000srid[m](~sridmatri@2001:470:69fc:105::1c2)
2021-06-11 07:24:15 +0000kosmikus[m](~andresloe@2001:470:69fc:105::95d)
2021-06-11 07:24:15 +0000adziahel[m](~adziahelm@2001:470:69fc:105::b4d)
2021-06-11 07:24:15 +0000eddiemundo(~eddiemund@2001:470:69fc:105::a9c)
2021-06-11 07:24:15 +0000bb010g(~bb010gmat@2001:470:69fc:105::9a5)
2021-06-11 07:24:15 +0000tomferon[m](~tomferon@2001:470:69fc:105::268)
2021-06-11 07:24:15 +0000wallymathieu[m](~wallymath@2001:470:69fc:105::16ae)
2021-06-11 07:24:15 +0000cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3)
2021-06-11 07:24:15 +0000Artem[m](~artemtype@2001:470:69fc:105::75b)
2021-06-11 07:24:15 +0000dualinverter[m](~dualinver@2001:470:69fc:105::16a7)
2021-06-11 07:24:15 +0000bryan[m](~bchreekat@2001:470:69fc:105::16b5)
2021-06-11 07:24:15 +0000Morrow[m](~morrowmma@2001:470:69fc:105::1d0)
2021-06-11 07:24:15 +0000Soft(~soft-matr@2001:470:69fc:105::c75)
2021-06-11 07:24:15 +0000marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2021-06-11 07:24:15 +0000RohitGoswami[m](~rgoswamim@2001:470:69fc:105::16cc)
2021-06-11 07:24:16 +0000autrim64[m](~autrim64m@2001:470:69fc:105::16a1)
2021-06-11 07:24:16 +0000yin[m](~zwromatri@2001:470:69fc:105::1d4)
2021-06-11 07:24:17 +0000cdsmith(~cdsmithma@2001:470:69fc:105::284)
2021-06-11 07:24:17 +0000jaror[m](~jaror@2001:470:69fc:105::265)
2021-06-11 07:24:17 +0000ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-06-11 07:24:17 +0000oak-(~oakuniver@2001:470:69fc:105::fcd)
2021-06-11 07:24:17 +0000bitonic(~bitonic@2001:470:69fc:105::1812)
2021-06-11 07:24:46 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 268 seconds)
2021-06-11 07:27:05 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 07:27:51 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-11 07:28:41 +0000tput(~tim@S0106a84e3fe54613.ed.shawcable.net) (Ping timeout: 252 seconds)
2021-06-11 07:28:50 +0000tput(~tim@S0106a84e3fe54613.ed.shawcable.net)
2021-06-11 07:29:01 +0000agumonke`(~user@88.160.31.174) (Ping timeout: 244 seconds)
2021-06-11 07:29:09 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:31:37 +0000xff0x_(~xff0x@217.110.198.158)
2021-06-11 07:33:40 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 07:33:40 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-11 07:34:30 +0000sekun(~sekun@180.190.159.117) (Remote host closed the connection)
2021-06-11 07:34:52 +0000sekun(~sekun@180.190.159.117)
2021-06-11 07:35:55 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 07:36:41 +0000dragestil(~quassel@user/dragestil) (Quit: No Ping reply in 180 seconds.)
2021-06-11 07:38:06 +0000lechner(~lechner@letbox-vps.us-core.com) (Ping timeout: 264 seconds)
2021-06-11 07:38:08 +0000chele(~chele@user/chele)
2021-06-11 07:38:16 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:38:30 +0000tput(~tim@S0106a84e3fe54613.ed.shawcable.net) (Ping timeout: 272 seconds)
2021-06-11 07:38:30 +0000vk3wtf(~doc@124.168.198.139) (Ping timeout: 272 seconds)
2021-06-11 07:39:06 +0000dragestil(~quassel@user/dragestil)
2021-06-11 07:39:33 +0000 <gentauro> anybody know why `stack` tells me that there is a newer version without me "asking" for it? Does it mean that everytime I run `stack` it "sends info" to FP Complete?
2021-06-11 07:40:14 +0000tput(~tim@S0106a84e3fe54613.ed.shawcable.net)
2021-06-11 07:40:30 +0000arahael(~arahael@203-206-83-196.tpgi.com.au) (Ping timeout: 264 seconds)
2021-06-11 07:40:55 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-11 07:42:23 +0000riv(~river@tilde.team/user/river) (Killed (ozone (No Spam)))
2021-06-11 07:43:34 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 272 seconds)
2021-06-11 07:43:38 +0000 <lortabac> gentauro: I don't know whether it sends any info, but it seems more likely that in this case it **fetches** info about the latest version and compares it with the one that you have
2021-06-11 07:44:15 +0000 <gentauro> lortabac: could be
2021-06-11 07:44:38 +0000river(~river@tilde.team/user/river)
2021-06-11 07:45:53 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 07:46:08 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 07:46:13 +0000 <gentauro> lortabac: https://github.com/commercialhaskell/stack/blob/master/src/main/Main.hs#L134-L142
2021-06-11 07:46:15 +0000lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-11 07:46:23 +0000 <gentauro> I will investigage -> `globalOptsFromMonoid`
2021-06-11 07:47:45 +0000vk3wtf(~doc@124.168.198.139)
2021-06-11 07:47:47 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:48:37 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 07:52:30 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 07:52:32 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:56f8:8796:29c6:7f5b) (Quit: WeeChat 2.8)
2021-06-11 07:53:48 +0000arahael(~arahael@203-206-83-196.tpgi.com.au)
2021-06-11 07:56:31 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 07:56:53 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 08:01:03 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 08:01:18 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 272 seconds)
2021-06-11 08:03:12 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 272 seconds)
2021-06-11 08:04:48 +0000 <maerwald> gentauro: stack downloads some .yaml from an obscure location, which contains available GHC versions and stack versions I believe
2021-06-11 08:04:53 +0000 <maerwald> I had a link once, but I lost it
2021-06-11 08:05:40 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 08:06:13 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 08:06:17 +0000gehmehgeh(~user@user/gehmehgeh)
2021-06-11 08:06:56 +0000hiptobecubic(~john@c-73-55-99-95.hsd1.fl.comcast.net) (Ping timeout: 264 seconds)
2021-06-11 08:07:27 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-11 08:07:36 +0000hendursa1(~weechat@user/hendursaga)
2021-06-11 08:08:33 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 08:09:40 +0000hendursaga(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-11 08:10:29 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 252 seconds)
2021-06-11 08:14:46 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 08:17:16 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 08:18:44 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 08:19:30 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 08:21:10 +0000yd502(~yd502@180.168.212.6)
2021-06-11 08:23:54 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 08:25:12 +0000lechner(~lechner@letbox-vps.us-core.com)
2021-06-11 08:28:26 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 244 seconds)
2021-06-11 08:29:35 +0000sander(~sander@user/sander)
2021-06-11 08:29:51 +0000zephyr_(~zephyr@59.88.25.191) (Quit: leaving)
2021-06-11 08:33:02 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 08:34:02 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 08:34:29 +0000michalz(~michalz@185.246.204.121)
2021-06-11 08:35:24 +0000tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-06-11 08:36:30 +0000jippiedoe(~david@2a02-a44c-e14e-1-7fb2-6685-aa0b-ccaa.fixed6.kpn.net)
2021-06-11 08:38:06 +0000Shaeto(~Shaeto@94.25.234.158) (Ping timeout: 264 seconds)
2021-06-11 08:38:42 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 264 seconds)
2021-06-11 08:40:00 +0000 <gentauro> 10:04 < maerwald> gentauro: stack downloads some .yaml from an obscure location
2021-06-11 08:40:00 +0000 <gentauro> :o
2021-06-11 08:46:12 +0000killsushi(~killsushi@user/killsushi) (Quit: Leaving)
2021-06-11 08:48:59 +0000ubert(~Thunderbi@p200300ecdf259d9f54bb2464a6e8d03a.dip0.t-ipconnect.de)
2021-06-11 08:51:08 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 08:52:34 +0000 <maerwald> "obscure" bc it's mirrored and whatnot and it took me 20 minutes to find it
2021-06-11 08:54:20 +0000zeenk(~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41)
2021-06-11 08:56:02 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 268 seconds)
2021-06-11 08:56:03 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 252 seconds)
2021-06-11 08:57:05 +0000nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 08:57:34 +0000Erutuon(~Erutuon@user/erutuon) (Ping timeout: 245 seconds)
2021-06-11 08:59:47 +0000 <gentauro> maerwald: shouldn't it "just" be stated somewhere in the GitHub `readme.md` file?
2021-06-11 08:59:56 +0000 <gentauro> just for "clarity" / "transparency"?
2021-06-11 09:00:32 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds)
2021-06-11 09:00:32 +0000 <merijn> I mean, that's, like, 90% of the functionality of stack?
2021-06-11 09:02:59 +0000 <merijn> That's like saying GHC should advertise the fact that it compiles Haskell for clarity/transparency
2021-06-11 09:04:16 +0000 <gentauro> merijn: good point
2021-06-11 09:05:24 +0000 <maerwald> I think gentauro was worried stack would be a windows service style backend that logs into your machine to update GHC
2021-06-11 09:05:30 +0000 <maerwald> which wouldn't surprise me :p
2021-06-11 09:05:50 +0000 <merijn> It would surprise me :p
2021-06-11 09:06:07 +0000 <merijn> because that'd mean someone was crazy enough to go through the hassle of engineering something like that
2021-06-11 09:06:13 +0000 <maerwald> gentauro: https://github.com/commercialhaskell/stackage-content/blob/master/stack/stack-setup-2.yaml
2021-06-11 09:06:49 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 09:06:58 +0000 <maerwald> "AS OF STACK 1.3.0, THIS INFORMATION IS NO LONGER USED, AND NEWER VERSIONS OF STACK WILL NOT BE ADDED."
2021-06-11 09:07:00 +0000 <maerwald> aha
2021-06-11 09:07:06 +0000 <maerwald> and no description what's done instead
2021-06-11 09:07:10 +0000yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-11 09:07:56 +0000anandprabhu(~anandprab@87.201.97.214)
2021-06-11 09:09:15 +0000yd502(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 09:10:13 +0000 <maerwald> so maybe it IS a phone-home service after all :p
2021-06-11 09:11:14 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 09:16:05 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 272 seconds)
2021-06-11 09:17:03 +0000yd502(~yd502@180.168.212.6)
2021-06-11 09:17:37 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 09:18:36 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 09:19:57 +0000zaquest(~notzaques@5.128.210.178) (Quit: Leaving)
2021-06-11 09:20:47 +0000nsilv(~nsilv@212.103.198.210)
2021-06-11 09:21:01 +0000trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-11 09:21:08 +0000zaquest(~notzaques@5.128.210.178)
2021-06-11 09:24:01 +0000 <siers> Is iterateMaybeM just an explicit iterateM + WriterT (MaybeT m a) [a] or similar? https://hackage.haskell.org/package/monad-extras-0.6.0/docs/Control-Monad-Extra.html#v:iterateMaybeM
2021-06-11 09:27:19 +0000vpan(~vpan@212.117.1.172)
2021-06-11 09:35:49 +0000ubert(~Thunderbi@p200300ecdf259d9f54bb2464a6e8d03a.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-06-11 09:37:29 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 09:38:49 +0000 <siers> I wonder if that stack will work even
2021-06-11 09:41:01 +0000brian_da_mage(~Neuromanc@user/briandamag)
2021-06-11 09:42:18 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 264 seconds)
2021-06-11 09:43:37 +0000dhil(~dhil@195.213.192.47)
2021-06-11 09:46:55 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 09:47:03 +0000 <siers> I remember reading that WriterT is "slow". Was that the case? Does it only apply when you want to squeeze out more performance?
2021-06-11 09:47:14 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:56f8:8796:29c6:7f5b)
2021-06-11 09:48:09 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 09:49:25 +0000 <boxscape> siers I'm not really well informed on that topic but this talks about (even the strict) WriterT having a space leak, which might be what you're referring to https://mail.haskell.org/pipermail/libraries/2012-October/018599.html
2021-06-11 09:49:35 +0000 <boxscape> I believe this version doesn't have that particular problem https://hackage.haskell.org/package/transformers-0.5.6.2/docs/Control-Monad-Trans-Writer-CPS.html
2021-06-11 09:50:01 +0000turion(~turion@2a02:810d:8abf:c4a8:e8a3:1701:9e78:7013)
2021-06-11 09:50:17 +0000yd502(~yd502@180.168.212.6) (Ping timeout: 272 seconds)
2021-06-11 09:56:17 +0000 <gentauro> 11:05 < maerwald> I think gentauro was worried stack would be a windows service style backend that logs into your machine to update GHC
2021-06-11 09:56:20 +0000 <gentauro> xD
2021-06-11 09:58:18 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 09:58:20 +0000notzmv(~zmv@user/notzmv) (Ping timeout: 244 seconds)
2021-06-11 09:58:25 +0000xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-06-11 09:58:33 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 09:58:56 +0000Shaeto(~Shaeto@94.25.234.158)
2021-06-11 10:02:08 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 10:03:22 +0000econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-06-11 10:03:57 +0000pe200012_(~pe200012@120.236.161.38)
2021-06-11 10:04:10 +0000pe200012(~pe200012@183.63.73.36) (Ping timeout: 272 seconds)
2021-06-11 10:04:48 +0000chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 272 seconds)
2021-06-11 10:06:57 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 268 seconds)
2021-06-11 10:14:25 +0000turion(~turion@2a02:810d:8abf:c4a8:e8a3:1701:9e78:7013) (Quit: Leaving.)
2021-06-11 10:15:08 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 10:18:03 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 10:18:10 +0000ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
2021-06-11 10:21:22 +0000pe200012_pe200012
2021-06-11 10:22:18 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 10:22:24 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-11 10:22:29 +0000mc47(~mc47@xmonad/TheMC47)
2021-06-11 10:25:42 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-11 10:26:47 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 10:27:18 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 264 seconds)
2021-06-11 10:30:22 +0000nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 244 seconds)
2021-06-11 10:31:55 +0000nsilv(~nsilv@212.103.198.210) (Ping timeout: 244 seconds)
2021-06-11 10:33:59 +0000hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-11 10:35:44 +0000jakzale(uid499518@id-499518.charlton.irccloud.com)
2021-06-11 10:36:47 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-11 10:38:25 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 10:41:15 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 10:42:41 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 10:43:48 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-11 10:44:02 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 10:44:06 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 10:47:39 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 268 seconds)
2021-06-11 10:49:10 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-06-11 10:49:21 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-11 10:49:56 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 10:50:14 +0000notzmv(~zmv@user/notzmv)
2021-06-11 10:51:00 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-11 10:52:55 +0000yd502_(~yd502@180.168.212.6)
2021-06-11 10:53:59 +0000M_o_C(~moc@dslb-092-075-202-200.092.075.pools.vodafone-ip.de)
2021-06-11 10:54:04 +0000M_o_CMoC
2021-06-11 10:54:08 +0000bsima(~bsima@simatime.com) (Quit: ZNC 1.8.1 - https://znc.in)
2021-06-11 10:54:26 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-11 10:55:02 +0000bsima(~bsima@simatime.com)
2021-06-11 10:55:05 +0000xkuru(~xkuru@user/xkuru)
2021-06-11 10:55:57 +0000blankhart(~blankhart@pool-72-88-174-206.nwrknj.fios.verizon.net) (Ping timeout: 252 seconds)
2021-06-11 10:59:27 +0000MoCMoC_
2021-06-11 10:59:45 +0000MoC_MoC__
2021-06-11 10:59:51 +0000MoC__MoC
2021-06-11 11:00:30 +0000pavonia(~user@user/siracusa)
2021-06-11 11:00:54 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-11 11:01:25 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 11:01:34 +0000oxide(~lambda@user/oxide) (Ping timeout: 244 seconds)
2021-06-11 11:02:24 +0000MoC(~moc@dslb-092-075-202-200.092.075.pools.vodafone-ip.de) (Quit: Konversation terminated!)
2021-06-11 11:02:33 +0000pe200012(~pe200012@120.236.161.38) (Ping timeout: 252 seconds)
2021-06-11 11:02:37 +0000pe200012_(~pe200012@120.236.161.38)
2021-06-11 11:02:38 +0000MoC(~moc@dslb-092-075-202-200.092.075.pools.vodafone-ip.de)
2021-06-11 11:06:52 +0000fendor(~fendor@77.119.128.240.wireless.dyn.drei.com) (Ping timeout: 272 seconds)
2021-06-11 11:06:58 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-06-11 11:07:07 +0000fendor_(~fendor@77.119.128.240.wireless.dyn.drei.com) (Ping timeout: 272 seconds)
2021-06-11 11:07:14 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 11:07:47 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 11:08:30 +0000 <bwe> optics: how can I make over with mapM work? https://paste.tomsmeding.com/UeAr0jmw
2021-06-11 11:08:46 +0000fendor(~fendor@91.141.3.58.wireless.dyn.drei.com)
2021-06-11 11:08:53 +0000fendor_(~fendor@91.141.3.58.wireless.dyn.drei.com)
2021-06-11 11:12:37 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 272 seconds)
2021-06-11 11:13:01 +0000MoC(~moc@dslb-092-075-202-200.092.075.pools.vodafone-ip.de) (Changing host)
2021-06-11 11:13:01 +0000MoC(~moc@user/moc)
2021-06-11 11:14:18 +0000oxide(~lambda@user/oxide)
2021-06-11 11:14:50 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Excess Flood)
2021-06-11 11:15:44 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2021-06-11 11:17:01 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 11:17:07 +0000yd502_(~yd502@180.168.212.6) (Ping timeout: 265 seconds)
2021-06-11 11:18:27 +0000chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-11 11:22:09 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 11:24:49 +0000 <dibblego> well mapM is an optic i.e. a Traversal, but it's hard to tell without types
2021-06-11 11:26:10 +0000sekun(~sekun@180.190.159.117) (Ping timeout: 244 seconds)
2021-06-11 11:27:02 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 11:28:05 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 11:28:08 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-11 11:28:49 +0000koishi_(~koishi_@67.209.186.120.16clouds.com)
2021-06-11 11:29:19 +0000waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-11 11:30:39 +0000koishi_(~koishi_@67.209.186.120.16clouds.com) (Remote host closed the connection)
2021-06-11 11:30:41 +0000MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-06-11 11:30:56 +0000MoC(~moc@user/moc)
2021-06-11 11:31:03 +0000 <xerox> tomsmeding: in firefox the raw link for this last paste shows the wrong encoding, maybe that's the server saying something wrong about it?
2021-06-11 11:31:25 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 11:31:45 +0000koishi_(~koishi_@185.209.85.134)
2021-06-11 11:32:04 +0000MoC(~moc@user/moc) (Client Quit)
2021-06-11 11:32:20 +0000MoC(~moc@user/moc)
2021-06-11 11:32:22 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 244 seconds)
2021-06-11 11:32:26 +0000 <boxscape> do servers say anything about the encoding? I thought it just sends a text file when you click on raw
2021-06-11 11:32:36 +0000xkuru(~xkuru@user/xkuru) (Remote host closed the connection)
2021-06-11 11:32:57 +0000 <tomsmeding> xerox: the server isn't saying anything about it at all :p
2021-06-11 11:33:13 +0000 <tomsmeding> the reason it works on the normal paste page is that the html inclues a <meta charset="utf-8"> directive
2021-06-11 11:33:17 +0000 <merijn> tomsmeding: Servers do say something
2021-06-11 11:33:19 +0000wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com)
2021-06-11 11:33:27 +0000 <merijn> Well, properly configured servers do, anyway :p
2021-06-11 11:33:31 +0000 <tomsmeding> I could send content-type: text/plain; charset=utf-8
2021-06-11 11:33:50 +0000 <tomsmeding> question is, that assumes that the input that people paste is, in fact, utf-8
2021-06-11 11:33:56 +0000oxide(~lambda@user/oxide) (Ping timeout: 264 seconds)
2021-06-11 11:34:02 +0000 <tomsmeding> though I guess I could check that upon pasting
2021-06-11 11:34:11 +0000MoC(~moc@user/moc) (Client Quit)
2021-06-11 11:34:18 +0000 <boxscape> you can?
2021-06-11 11:34:18 +0000 <merijn> tomsmeding: You can try and detect the encoding on input and then convert to utf-8 before storing
2021-06-11 11:34:26 +0000MoC(~moc@user/moc)
2021-06-11 11:34:34 +0000 <tomsmeding> merijn: I'm fearful of trying to detect the encoding
2021-06-11 11:34:35 +0000 <merijn> I wonder if you can tell the browser what encoding to use for text fields
2021-06-11 11:35:03 +0000 <tomsmeding> maybe if the page itself is utf-8, "proper" browsers will also use that encoding for submitted text?
2021-06-11 11:35:05 +0000 <tomsmeding> maybe?
2021-06-11 11:35:18 +0000 <merijn> tomsmeding: You can set an Accept-Encoding header, apparently
2021-06-11 11:35:41 +0000 <boxscape> do clipboards have an encoding?
2021-06-11 11:35:47 +0000 <tomsmeding> boxscape: yes
2021-06-11 11:35:49 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 11:35:58 +0000 <boxscape> and can that differ?
2021-06-11 11:36:01 +0000 <merijn> boxscape: Yes, no, maybe
2021-06-11 11:36:05 +0000 <merijn> tomsmeding: Oh, duh
2021-06-11 11:36:15 +0000 <boxscape> okay
2021-06-11 11:36:18 +0000 <merijn> tomsmeding: The browser should be specifying the encoding in the GET/PUT request
2021-06-11 11:36:20 +0000 <tomsmeding> right, on the page in JS I have a JS String
2021-06-11 11:36:29 +0000 <tomsmeding> which is encoding-independent
2021-06-11 11:36:39 +0000 <tomsmeding> ... assuming people have JS enabled
2021-06-11 11:36:40 +0000 <merijn> hah
2021-06-11 11:36:44 +0000 <merijn> That's cute
2021-06-11 11:36:57 +0000 <merijn> You expect JS to have a sane "encoding-independent" semantics for strings
2021-06-11 11:37:18 +0000 <tomsmeding> or is that that WTF-16 thing?
2021-06-11 11:37:20 +0000 <merijn> Personally I'd expect "insane madness that only works through sheer luck" is more accurate :p
2021-06-11 11:37:51 +0000 <tomsmeding> https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-accept-charset
2021-06-11 11:37:58 +0000 <tomsmeding> "The default value means the same encoding as the page."
2021-06-11 11:38:03 +0000trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 244 seconds)
2021-06-11 11:38:11 +0000 <tomsmeding> looks like I'm in the clear if the html itself is utf-8
2021-06-11 11:39:53 +0000 <bwe> dibblego: thanks, I solved it with `traverseOf`.
2021-06-11 11:39:54 +0000 <tomsmeding> so mayve the right fix is to set a charset=UTF-8 content-type on everything, and check for utf-8-correctness upon submission
2021-06-11 11:39:57 +0000machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-06-11 11:40:15 +0000 <merijn> tomsmeding: That sounds like the most sane way
2021-06-11 11:40:26 +0000 <merijn> tomsmeding: For extra paranoia set Accept-Encoding on the HTTP server too
2021-06-11 11:40:48 +0000 <tomsmeding> for clients/browsers that do wacky stuff?
2021-06-11 11:40:51 +0000 <tomsmeding> I guess
2021-06-11 11:40:55 +0000 <tomsmeding> can't hurt
2021-06-11 11:40:57 +0000 <dibblego> bwe: ok FYI traverseOf = id
2021-06-11 11:40:58 +0000 <merijn> tomsmeding: Just to be extra bullet-proof :p
2021-06-11 11:41:08 +0000 <merijn> tomsmeding: It's strictly more correct to set it than not
2021-06-11 11:41:55 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-11 11:42:43 +0000 <tomsmeding> wait Accept-Encoding is a client header
2021-06-11 11:44:30 +0000 <merijn> both, no?
2021-06-11 11:45:28 +0000 <tomsmeding> merijn: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding
2021-06-11 11:46:26 +0000zebrag(~chris@user/zebrag)
2021-06-11 11:48:15 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 11:48:21 +0000tomjagua1pawtomjaguarpaw
2021-06-11 11:50:02 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 11:50:42 +0000xprlgjf(~gavin@60.27.93.209.dyn.plus.net) (Remote host closed the connection)
2021-06-11 11:51:16 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 11:51:26 +0000trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-11 11:52:34 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 245 seconds)
2021-06-11 11:52:57 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 11:53:33 +0000vpan(~vpan@212.117.1.172) (Quit: Client closed)
2021-06-11 11:55:29 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 245 seconds)
2021-06-11 11:58:08 +0000MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-06-11 11:58:49 +0000sm2n(~sm2n@user/sm2n) (Ping timeout: 245 seconds)
2021-06-11 12:03:56 +0000nsilv(~nsilv@212.103.198.210)
2021-06-11 12:04:30 +0000pe200012_(~pe200012@120.236.161.38) (Ping timeout: 264 seconds)
2021-06-11 12:05:08 +0000pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-11 12:05:17 +0000pe200012(~pe200012@183.63.73.36)
2021-06-11 12:08:28 +0000 <tomsmeding> xerox: fixed
2021-06-11 12:08:28 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 12:08:58 +0000 <xerox> tomsmeding: grand
2021-06-11 12:09:28 +0000 <tomsmeding> if someone now tries to submit a non-utf-8 paste the server gives you a red-hot 400 Invalid Request :p
2021-06-11 12:09:41 +0000tomsmedingwonders if there's invalid utf8 in the existing pastes
2021-06-11 12:10:27 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 12:10:30 +0000dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 264 seconds)
2021-06-11 12:13:22 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 268 seconds)
2021-06-11 12:15:06 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 12:18:17 +0000sheepduck(~sheepduck@2607:fea8:2a61:4800::3ae6) (Remote host closed the connection)
2021-06-11 12:18:36 +0000sheepduck(~sheepduck@2607:fea8:2a61:4800::6b7b)
2021-06-11 12:18:49 +0000cfricke(~cfricke@user/cfricke) (Ping timeout: 245 seconds)
2021-06-11 12:20:14 +0000spoonm(spoonm@inaba.spoonm.org) (Quit: ZNC - https://znc.in)
2021-06-11 12:21:01 +0000spoonm(spoonm@inaba.spoonm.org)
2021-06-11 12:22:16 +0000v01d4lph4(~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-11 12:23:05 +0000chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Quit: Leaving)
2021-06-11 12:23:05 +0000 <tomsmeding> there was one, submitted by me, and it's now gone :)
2021-06-11 12:25:27 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 12:25:29 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 12:26:31 +0000 <Clint> which encoding was it?
2021-06-11 12:28:32 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 12:30:05 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-11 12:31:41 +0000themc47(~mc47@xmonad/TheMC47)
2021-06-11 12:32:24 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 12:32:59 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 245 seconds)
2021-06-11 12:33:54 +0000mc47(~mc47@xmonad/TheMC47) (Ping timeout: 264 seconds)
2021-06-11 12:37:16 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 12:42:06 +0000dunkeln(~dunkeln@94.129.65.28)
2021-06-11 12:42:11 +0000teaSlurper(~chris@81.96.113.213) (Ping timeout: 265 seconds)
2021-06-11 12:43:37 +0000pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-11 12:44:41 +0000bontaq`(~user@ool-18e47f8d.dyn.optonline.net)
2021-06-11 12:45:07 +0000bontaq`bontaq
2021-06-11 12:45:11 +0000 <Maxdamantus> My preference would be to just accept the binary data and relay it back, saying it's UTF-8.
2021-06-11 12:45:36 +0000 <Maxdamantus> There's a reason that the charset is part of the "Content-type".
2021-06-11 12:46:34 +0000 <Maxdamantus> It's just informative. Something that's dealing with the content as files or streams shouldn't have to interpret it according to the content-type.
2021-06-11 12:47:15 +0000 <Maxdamantus> When your browser downloads a file, it doesn't mess with the bytes based on the content-type. It just copies the bytes to the filesystem.
2021-06-11 12:47:57 +0000oxide(~lambda@user/oxide)
2021-06-11 12:48:42 +0000 <Maxdamantus> (and the reason for saying it's UTF-8 is just that UTF-8 should be the default nowadays, but obviously some things have to assume different defaults for historical reasons)
2021-06-11 12:49:00 +0000 <merijn> Maxdamantus: eh...when you open a file *in* the browser it definitely has to do something depending on content-type
2021-06-11 12:49:20 +0000 <Maxdamantus> merijn: sure, when it's rendering it.
2021-06-11 12:49:22 +0000 <merijn> Maxdamantus: I'm not really sure why you're talking about downloading, tbh.
2021-06-11 12:49:34 +0000 <Maxdamantus> merijn: beacuse it's analogous to uploading.
2021-06-11 12:49:42 +0000 <merijn> It was about the raw view on a paste site
2021-06-11 12:49:59 +0000 <merijn> Clearly the browser is expected to *render* the text presented
2021-06-11 12:50:07 +0000curiousgay(~quassel@178.217.208.8) (Read error: Connection reset by peer)
2021-06-11 12:50:19 +0000themc47(~mc47@xmonad/TheMC47) (Quit: Leaving)
2021-06-11 12:50:30 +0000curiousgay(~quassel@178.217.208.8)
2021-06-11 12:50:46 +0000 <Maxdamantus> Sure, and that will all work out fine if the original data was valid UTF-8.
2021-06-11 12:51:31 +0000 <Maxdamantus> If it wasn't valid UTF-8, the main thing should be that the browser should not crash, which it probably doesn't.
2021-06-11 12:51:50 +0000 <Maxdamantus> But there isn't really any reason to reject the upload if it's invalid.
2021-06-11 12:52:03 +0000 <merijn> I see no reason why it shouldn't correctly render utf-16 or whatever if the webserver properly tracks it
2021-06-11 12:52:08 +0000 <Maxdamantus> and if possible, it should preserve the data instead of corrupting it with replacement characters.
2021-06-11 12:53:46 +0000 <Maxdamantus> You mean relaying back the original charset provided in the upload?
2021-06-11 12:54:16 +0000 <Maxdamantus> That seems a bit dodgy to me.
2021-06-11 12:54:57 +0000 <Maxdamantus> If you want to do something with the uploaded charset, it would probably be better to just convert it to UTF-8 on upload IFF a different charset is explicitly provided.
2021-06-11 12:56:02 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 12:56:11 +0000 <Maxdamantus> If you're sometimes sending charset=utf-8 and sometimes sending charset=utf-16 and sometimes sending charset=8859-1, that's probably just going to lead to more difficulties when diagnosing behaviour of users' clients.
2021-06-11 12:56:21 +0000jolly(~jolly@208.180.97.158)
2021-06-11 12:56:37 +0000Kaipi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
2021-06-11 12:56:51 +0000 <Maxdamantus> If you're always sending charset=utf-8, at least clients should mostly handle the pastes the same way.
2021-06-11 12:57:50 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 12:58:32 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 264 seconds)
2021-06-11 12:58:58 +0000 <octeep> Is there a library for getting the machine's network interfaces and their corresponding addresses in Haskell?
2021-06-11 12:59:31 +0000 <octeep> Can't seem to find anything in the network library
2021-06-11 12:59:34 +0000 <Maxdamantus> If I look at a paste in my browser and the server relays back `charset=utf-16`, my browser might show it okay, but if I curl the raw URL, I'm going to get some gibberish in my terminal.
2021-06-11 13:00:09 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 13:00:18 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 13:01:15 +0000alx741(~alx741@186.178.108.59)
2021-06-11 13:05:17 +0000haltux(~haltux@a89-154-181-47.cpe.netcabo.pt) (Ping timeout: 252 seconds)
2021-06-11 13:05:36 +0000 <merijn> octeep: Doubt it
2021-06-11 13:05:48 +0000 <merijn> octeep: But wrapping the relevant C calls should be easy enough
2021-06-11 13:06:24 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 244 seconds)
2021-06-11 13:06:48 +0000 <merijn> (well, easy enough of you know C already, moderately difficult if you don't)
2021-06-11 13:13:59 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 13:16:02 +0000betelgeuse(~john2gb@94-225-47-8.access.telenet.be)
2021-06-11 13:25:10 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer)
2021-06-11 13:26:58 +0000 <jjhoo> https://hackage.haskell.org/package/network-info ?
2021-06-11 13:27:40 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-11 13:28:14 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 13:28:41 +0000reumeth(~reumeth@user/reumeth)
2021-06-11 13:29:18 +0000 <maerwald> cross platform even
2021-06-11 13:29:23 +0000 <maerwald> that must have been annoying
2021-06-11 13:29:51 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 13:30:15 +0000 <merijn> Some people just like pain
2021-06-11 13:31:56 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 13:34:14 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 245 seconds)
2021-06-11 13:35:13 +0000 <tomsmeding> Clint: it was random bytes :p
2021-06-11 13:35:21 +0000benin03(~benin@183.82.205.218)
2021-06-11 13:35:30 +0000benin03(~benin@183.82.205.218) (Client Quit)
2021-06-11 13:36:58 +0000feetwind(~mike@user/feetwind) (Ping timeout: 272 seconds)
2021-06-11 13:37:01 +0000teaSlurper(~chris@81.96.113.213) (Ping timeout: 272 seconds)
2021-06-11 13:37:22 +0000feetwind(~mike@user/feetwind)
2021-06-11 13:37:24 +0000 <tomsmeding> Maxdamantus: if you're using the HTML page for submitting a paste, it's going to be utf8 because (according to MDN) the default encoding for a form submission is the encoding of the page -- which is utf8 here
2021-06-11 13:37:55 +0000 <tomsmeding> so in principle, you can only see that encoding error from the server if you're submitting non-utf8 data in a manual curl request
2021-06-11 13:38:06 +0000bontaq(~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 264 seconds)
2021-06-11 13:39:03 +0000 <Maxdamantus> I imagine that depends how the browser handles "UTF-8".
2021-06-11 13:39:32 +0000 <Maxdamantus> A sensible handling of "UTF-8" in my opinion would involve preserving error bytes if you've copied it from some other source.
2021-06-11 13:39:56 +0000 <Maxdamantus> I'm not sure if browsers do that, but I suspect if they don't it probably just has to do with alternative representations.
2021-06-11 13:40:20 +0000 <Maxdamantus> (since browsers are still at least to some extent based around 16-bit strings)
2021-06-11 13:40:35 +0000Maxdamantustries.
2021-06-11 13:41:44 +0000nsilv(~nsilv@212.103.198.210) (Ping timeout: 264 seconds)
2021-06-11 13:46:06 +0000argento(~argent0@168-227-96-53.ptr.westnet.com.ar)
2021-06-11 13:47:38 +0000 <Maxdamantus> Hmm .. Firefox seems to do some funny mojibake when I try to paste UTF-8 data with some bad bytes in the middle.
2021-06-11 13:48:16 +0000 <Maxdamantus> It reinterprets my text as Chinese characters when inserting them into a text input.
2021-06-11 13:49:54 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 13:49:57 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 13:50:05 +0000 <Maxdamantus> Chrome at least doesn't assume a different encoding, but it does replace the errors with replacement characters.
2021-06-11 13:51:06 +0000ikex(~ash@user/ikex)
2021-06-11 13:51:20 +0000 <Maxdamantus> but again, I suspect one of the reasons for that is that those elements are based around 16-bit characters, so they will naturally just insert replacement characters when trying to do a UTF-8 to UTF-16 conversion.
2021-06-11 13:51:30 +0000 <Maxdamantus> 16-bit strings*
2021-06-11 13:51:59 +0000 <Maxdamantus> Might be different for a web browser that's not based on JavaScript.
2021-06-11 13:52:54 +0000geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-11 13:53:41 +0000trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 252 seconds)
2021-06-11 13:53:48 +0000nsilv(~nsilv@212.103.198.210)
2021-06-11 13:54:04 +0000xff0x_(~xff0x@217.110.198.158) (Ping timeout: 272 seconds)
2021-06-11 13:54:14 +0000lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-06-11 13:54:27 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 244 seconds)
2021-06-11 13:54:58 +0000jespada(~jespada@90.254.242.55) (Ping timeout: 244 seconds)
2021-06-11 13:55:35 +0000haskl(~haskeller@2601:643:897f:561d::af3)
2021-06-11 13:55:49 +0000kluk(~kluk@2603-7000-9b3f-6934-8981-4e0b-0555-b388.res6.spectrum.com)
2021-06-11 13:56:28 +0000jespada(~jespada@90.254.242.55)
2021-06-11 14:00:25 +0000fryguybob(~fryguybob@cpe-74-65-31-113.rochester.res.rr.com) (Quit: leaving)
2021-06-11 14:03:23 +0000kluk(~kluk@2603-7000-9b3f-6934-8981-4e0b-0555-b388.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-11 14:04:45 +0000 <Maxdamantus> Heh. It works as I described using edbrowse.
2021-06-11 14:04:51 +0000kluk(~kluk@2603-7000-9b3f-6934-8981-4e0b-0555-b388.res6.spectrum.com)
2021-06-11 14:05:29 +0000orion(~orion@user/orion) (Ping timeout: 245 seconds)
2021-06-11 14:06:38 +0000 <Maxdamantus> and Dillo.
2021-06-11 14:08:08 +0000 <Maxdamantus> Both browsers have handling for UTF-8, but there isn't any real reason for them to corrupt the error bytes, since they're presumably just handling the UTF-8 bytes internally.
2021-06-11 14:08:23 +0000 <tomsmeding> s/bytes/as bytes/ ?
2021-06-11 14:08:31 +0000 <tomsmeding> that's what I would expect, and that's also what pastebin-haskell does
2021-06-11 14:08:51 +0000 <tomsmeding> either you don't care about encoding and just process bytes, or you ensure an encoding and work with that
2021-06-11 14:09:38 +0000dhil(~dhil@195.213.192.47) (Ping timeout: 252 seconds)
2021-06-11 14:09:39 +0000 <tomsmeding> while there is some merit with trying to use an encoding but retaining error bytes in case they exist, I guess, it sounds like an approach that is guaranteed to give bugs for eternity
2021-06-11 14:09:41 +0000 <Maxdamantus> Well, Dillo cares about the encoding, because the valid UTF-8 subsequences are rendered as the expected Unicode characters.
2021-06-11 14:09:56 +0000Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-11 14:09:56 +0000kluk(~kluk@2603-7000-9b3f-6934-8981-4e0b-0555-b388.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-11 14:10:01 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 14:10:10 +0000 <tomsmeding> or just very slow code if you have to re-check every part again every time you use the data because you can't actually assume any of your strings are valid in your encoding of choice
2021-06-11 14:10:54 +0000 <tomsmeding> I wonder what Dillo would do if the page is in utf-16
2021-06-11 14:11:18 +0000 <tomsmeding> would it actually go convert to utf-16 or does it just do bytes internally up until it has to draw something on-screen
2021-06-11 14:11:25 +0000 <Maxdamantus> I'm actually sceptical about what you said about the page encoding.
2021-06-11 14:11:36 +0000 <Maxdamantus> I'll have to try that too.
2021-06-11 14:13:53 +0000dunkeln(~dunkeln@94.129.65.28) (Quit: leaving)
2021-06-11 14:14:51 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 268 seconds)
2021-06-11 14:15:32 +0000 <Maxdamantus> Hm, okay, it does seem to be true.
2021-06-11 14:15:43 +0000 <Maxdamantus> but it's confusing, because I don't see anything in the request denoting the character set.
2021-06-11 14:16:08 +0000 <Maxdamantus> Just has "Content-Type: application/x-www-form-urlencoded".
2021-06-11 14:16:55 +0000curiousgay(~quassel@178.217.208.8) (Read error: Connection reset by peer)
2021-06-11 14:17:21 +0000MoC(~moc@user/moc)
2021-06-11 14:17:31 +0000anandprabhu(~anandprab@87.201.97.214) (Quit: Leaving)
2021-06-11 14:17:50 +0000curiousgay(~quassel@178.217.208.8)
2021-06-11 14:19:33 +0000jess(~jess@libera/staff/jess)
2021-06-11 14:19:58 +0000 <Maxdamantus> Dillo doesn't seemo to support other encodings.
2021-06-11 14:20:18 +0000 <Maxdamantus> Which is fair enough, since "utf-8" is the only valid encoding in HTML5.
2021-06-11 14:20:48 +0000Crypt9a2e(~Crypt9a2e@157.51.3.28) (Ping timeout: 244 seconds)
2021-06-11 14:22:22 +0000dhil(~dhil@80.208.56.181)
2021-06-11 14:24:22 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net)
2021-06-11 14:26:44 +0000azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 245 seconds)
2021-06-11 14:26:57 +0000azeem(~azeem@176.200.240.211)
2021-06-11 14:28:19 +0000psydroid(~psydroidm@2001:470:69fc:105::165) (Changing host)
2021-06-11 14:28:19 +0000psydroid(~psydroidm@user/psydroid)
2021-06-11 14:30:20 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 14:30:43 +0000Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-11 14:33:13 +0000hgolden(~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Quit: Konversation terminated!)
2021-06-11 14:34:46 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-11 14:34:56 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 252 seconds)
2021-06-11 14:35:37 +0000 <wwalker> lyxia: Thank you
2021-06-11 14:36:50 +0000qbt(~edun@user/edun) (Quit: WeeChat 3.1)
2021-06-11 14:37:10 +0000qbt(~edun@user/edun)
2021-06-11 14:37:20 +0000Sgeo(~Sgeo@user/sgeo)
2021-06-11 14:38:03 +0000hgolden(~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
2021-06-11 14:39:33 +0000hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-06-11 14:40:20 +0000hendursaga(~weechat@user/hendursaga)
2021-06-11 14:41:32 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 14:45:54 +0000teaSlurper(~chris@81.96.113.213) (Ping timeout: 245 seconds)
2021-06-11 14:50:06 +0000dhil(~dhil@80.208.56.181) (Ping timeout: 264 seconds)
2021-06-11 14:50:35 +0000bontaq`(~user@ool-18e47f8d.dyn.optonline.net)
2021-06-11 14:50:39 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 14:51:49 +0000azeem(~azeem@176.200.240.211) (Read error: Connection reset by peer)
2021-06-11 14:51:59 +0000altern(~Sergii@altern.corbina.com.ua)
2021-06-11 14:52:27 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-11 14:53:11 +0000altern(~Sergii@altern.corbina.com.ua) (Client Quit)
2021-06-11 14:53:26 +0000Scotty_Trees2(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net)
2021-06-11 14:54:54 +0000berberman(~berberman@user/berberman) (Ping timeout: 244 seconds)
2021-06-11 14:54:56 +0000Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Ping timeout: 264 seconds)
2021-06-11 14:55:02 +0000Scotty_Trees2Scotty_Trees
2021-06-11 14:55:21 +0000berberman(~berberman@user/berberman)
2021-06-11 14:55:33 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Ping timeout: 272 seconds)
2021-06-11 14:56:36 +0000bitmapper(uid464869@id-464869.tooting.irccloud.com)
2021-06-11 14:59:59 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-11 15:00:38 +0000Ariakenom(~Ariakenom@2001:9b1:efb:fc00:9432:38ed:ae4e:1cf1)
2021-06-11 15:02:12 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net) (Remote host closed the connection)
2021-06-11 15:02:41 +0000AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-11 15:03:38 +0000dhil(~dhil@195.213.192.47)
2021-06-11 15:04:48 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-11 15:05:25 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net)
2021-06-11 15:05:34 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
2021-06-11 15:07:28 +0000slowButPresent(~slowButPr@user/slowbutpresent)
2021-06-11 15:07:47 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net) (Read error: Connection reset by peer)
2021-06-11 15:08:14 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net)
2021-06-11 15:09:18 +0000xenon-(~bc817c21@217.29.117.252)
2021-06-11 15:09:48 +0000a6a45081-2b83(~aditya@106.214.237.94)
2021-06-11 15:10:11 +0000aerona(~aerona@2600:6c54:4600:f300:4447:2579:c2f7:363d)
2021-06-11 15:12:08 +0000curiousgay(~quassel@178.217.208.8) (Read error: Connection reset by peer)
2021-06-11 15:13:04 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-11 15:13:11 +0000curiousgay(~quassel@178.217.208.8)
2021-06-11 15:15:42 +0000MoC(~moc@user/moc) (Read error: Connection reset by peer)
2021-06-11 15:15:48 +0000MoC_(~moc@user/moc)
2021-06-11 15:15:55 +0000pja(~pja@2a02:8010:6098:0:f2de:f1ff:fe2c:3d9) (Quit: WeeChat 2.8)
2021-06-11 15:16:57 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:1313:feb6:d304:287)
2021-06-11 15:18:15 +0000MoC_MoC
2021-06-11 15:18:22 +0000curiousgay(~quassel@178.217.208.8) (Ping timeout: 268 seconds)
2021-06-11 15:18:42 +0000Deide(~Deide@wire.desu.ga)
2021-06-11 15:18:42 +0000Deide(~Deide@wire.desu.ga) (Changing host)
2021-06-11 15:18:42 +0000Deide(~Deide@user/deide)
2021-06-11 15:19:17 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 15:23:07 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-11 15:25:37 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-11 15:30:22 +0000Bartosz(~textual@24.35.90.211)
2021-06-11 15:32:49 +0000curiousgay(~quassel@178.217.208.8)
2021-06-11 15:34:27 +0000Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-06-11 15:34:35 +0000a6a45081-2b83(~aditya@106.214.237.94) (Remote host closed the connection)
2021-06-11 15:35:24 +0000AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Read error: Connection reset by peer)
2021-06-11 15:35:46 +0000dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1)
2021-06-11 15:36:50 +0000jakalx(~jakalx@base.jakalx.net) ()
2021-06-11 15:37:26 +0000 <siraben> How can I debug `ld' failed in phase `Merge objects'. (Exit code: 1) on macOS?
2021-06-11 15:38:13 +0000lbseale(~lbseale@user/ep1ctetus)
2021-06-11 15:38:20 +0000Kaipi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2021-06-11 15:40:26 +0000chele(~chele@user/chele) (Remote host closed the connection)
2021-06-11 15:42:18 +0000NieDzejkob(~quassel@195.149.98.3) (Ping timeout: 264 seconds)
2021-06-11 15:43:20 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171) (Remote host closed the connection)
2021-06-11 15:43:22 +0000chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-11 15:46:32 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:56f8:8796:29c6:7f5b) (Quit: WeeChat 2.8)
2021-06-11 15:48:10 +0000julian1jmjl
2021-06-11 15:48:15 +0000eggplantade(~Eggplanta@2600:1700:bef1:5e10:1d2f:92ad:f3ce:a171)
2021-06-11 15:48:42 +0000mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 272 seconds)
2021-06-11 15:52:29 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 15:54:39 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 245 seconds)
2021-06-11 15:56:24 +0000jakalx(~jakalx@base.jakalx.net)
2021-06-11 15:57:19 +0000Ariakenom(~Ariakenom@2001:9b1:efb:fc00:9432:38ed:ae4e:1cf1) (Quit: Leaving)
2021-06-11 15:57:25 +0000argento(~argent0@168-227-96-53.ptr.westnet.com.ar) (Ping timeout: 244 seconds)
2021-06-11 15:57:37 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-11 15:58:23 +0000ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
2021-06-11 16:00:13 +0000nsilv(~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
2021-06-11 16:00:41 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 16:02:41 +0000jakalx(~jakalx@base.jakalx.net) ()
2021-06-11 16:03:18 +0000jakalx(~jakalx@base.jakalx.net)
2021-06-11 16:04:14 +0000Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-11 16:05:50 +0000jippiedoe(~david@2a02-a44c-e14e-1-7fb2-6685-aa0b-ccaa.fixed6.kpn.net) (Quit: Leaving)
2021-06-11 16:07:38 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-11 16:10:03 +0000argento(~argent0@168-227-96-53.ptr.westnet.com.ar)
2021-06-11 16:13:49 +0000thyriaen(~thyriaen@45.178.75.13) (Remote host closed the connection)
2021-06-11 16:15:30 +0000boxscape(~boxscape@user/boxscape) (Ping timeout: 252 seconds)
2021-06-11 16:15:34 +0000 <siers> which one is the Just lens?
2021-06-11 16:16:35 +0000 <Taneb> siers: that's not a question that makes sense to me.
2021-06-11 16:16:55 +0000 <maerwald> siers: _Just prism?
2021-06-11 16:19:02 +0000fluffyballoon(~fluffybal@2620:72:0:6480::10f7) (Quit: Client closed)
2021-06-11 16:20:09 +0000 <maerwald> % preview _Just (Just 1)
2021-06-11 16:20:10 +0000 <yahb> maerwald: Just 1
2021-06-11 16:20:18 +0000 <maerwald> exciting
2021-06-11 16:20:56 +0000 <siers> somehow I threw keywords into google and couldn't find it
2021-06-11 16:20:58 +0000 <siers> maerwald, thanks
2021-06-11 16:21:10 +0000 <[exa]> siraben: what did you attempt? killing `ld` is not really easy
2021-06-11 16:21:11 +0000statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2021-06-11 16:21:24 +0000ordinate(~ordinate@c-68-38-144-3.hsd1.in.comcast.net)
2021-06-11 16:21:34 +0000 <ordinate> good afternoon everyone
2021-06-11 16:21:41 +0000derelict(~derelict@user/derelict)
2021-06-11 16:23:20 +0000yaroot4(~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-06-11 16:24:21 +0000mjs2600_(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-06-11 16:24:21 +0000tlax_(tlax@kapsi.fi)
2021-06-11 16:24:41 +0000forell_(~forell@host-178-216-90-220.sta.tvknaszapraca.pl)
2021-06-11 16:24:52 +0000eldritch__(~eldritch@134.209.221.71)
2021-06-11 16:24:56 +0000machined1od(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-06-11 16:24:58 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2021-06-11 16:25:27 +0000Unode_(~Unode@194.94.44.220)
2021-06-11 16:26:14 +0000zebragg(~chris@user/zebrag)
2021-06-11 16:26:16 +0000ptrcmd_(~ptrcmd@user/ptrcmd)
2021-06-11 16:26:30 +0000Vq_(~vq@90-227-195-41-no77.tbcn.telia.com)
2021-06-11 16:26:39 +0000argento_(~argent0@168-227-96-53.ptr.westnet.com.ar)
2021-06-11 16:26:42 +0000raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-11 16:26:45 +0000shane(~shane@ana.rch.ist)
2021-06-11 16:26:51 +0000kumo(~kumo@139.180.144.166)
2021-06-11 16:26:55 +0000mjrosenb_(~mrosenbe@104.225.243.2)
2021-06-11 16:27:06 +0000pretty_d1(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-11 16:27:48 +0000tremon(~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl)
2021-06-11 16:28:39 +0000safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru)
2021-06-11 16:28:55 +0000Bartosz(~textual@24.35.90.211)
2021-06-11 16:28:57 +0000Bartosz(~textual@24.35.90.211) (Client Quit)
2021-06-11 16:30:34 +0000mniip_(mniip@libera/staff/mniip)
2021-06-11 16:30:47 +0000koishi_(~koishi_@185.209.85.134) (Quit: /ragequit)
2021-06-11 16:31:00 +0000argento(~argent0@168-227-96-53.ptr.westnet.com.ar) (*.net *.split)
2021-06-11 16:31:00 +0000jakalx(~jakalx@base.jakalx.net) (*.net *.split)
2021-06-11 16:31:00 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (*.net *.split)
2021-06-11 16:31:00 +0000jess(~jess@libera/staff/jess) (*.net *.split)
2021-06-11 16:31:00 +0000feetwind(~mike@user/feetwind) (*.net *.split)
2021-06-11 16:31:00 +0000zebrag(~chris@user/zebrag) (*.net *.split)
2021-06-11 16:31:00 +0000machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (*.net *.split)
2021-06-11 16:31:00 +0000jaror[m](~jaror@2001:470:69fc:105::265) (*.net *.split)
2021-06-11 16:31:00 +0000ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (*.net *.split)
2021-06-11 16:31:00 +0000oak-(~oakuniver@2001:470:69fc:105::fcd) (*.net *.split)
2021-06-11 16:31:00 +0000bitonic(~bitonic@2001:470:69fc:105::1812) (*.net *.split)
2021-06-11 16:31:00 +0000autrim64[m](~autrim64m@2001:470:69fc:105::16a1) (*.net *.split)
2021-06-11 16:31:00 +0000bb010g(~bb010gmat@2001:470:69fc:105::9a5) (*.net *.split)
2021-06-11 16:31:00 +0000tomferon[m](~tomferon@2001:470:69fc:105::268) (*.net *.split)
2021-06-11 16:31:00 +0000wallymathieu[m](~wallymath@2001:470:69fc:105::16ae) (*.net *.split)
2021-06-11 16:31:00 +0000vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe) (*.net *.split)
2021-06-11 16:31:00 +0000fabfianda[m](~fabfianda@2001:470:69fc:105::6db) (*.net *.split)
2021-06-11 16:31:00 +0000ServerStatsDisco(~serversta@2001:470:69fc:105::1a) (*.net *.split)
2021-06-11 16:31:00 +0000the-coot[m](~the-cootm@2001:470:69fc:105::95f) (*.net *.split)
2021-06-11 16:31:00 +0000psydroid(~psydroidm@user/psydroid) (*.net *.split)
2021-06-11 16:31:00 +0000maralorn(~maralorn@2001:470:69fc:105::251) (*.net *.split)
2021-06-11 16:31:00 +0000fgaz(~fgaz@2001:470:69fc:105::842) (*.net *.split)
2021-06-11 16:31:00 +0000kadoban(~kadoban@user/kadoban) (*.net *.split)
2021-06-11 16:31:00 +0000siraben(~siraben@user/siraben) (*.net *.split)
2021-06-11 16:31:00 +0000doublex_(~doublex@2601:542:c480:6ee0:184b:7083:f026:c689) (*.net *.split)
2021-06-11 16:31:00 +0000haskl(~haskeller@2601:643:897f:561d::af3) (*.net *.split)
2021-06-11 16:31:00 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split)
2021-06-11 16:31:00 +0000codedmart(codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split)
2021-06-11 16:31:00 +0000Deewiant(~deewiant@de1.ut.deewiant.iki.fi) (*.net *.split)
2021-06-11 16:31:00 +0000fvr(uid503686@id-503686.highgate.irccloud.com) (*.net *.split)
2021-06-11 16:31:00 +0000yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp) (*.net *.split)
2021-06-11 16:31:00 +0000mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (*.net *.split)
2021-06-11 16:31:00 +0000qoelet(~kumo@139.180.144.166) (*.net *.split)
2021-06-11 16:31:00 +0000ptrcmd(~ptrcmd@user/ptrcmd) (*.net *.split)
2021-06-11 16:31:00 +0000Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split)
2021-06-11 16:31:00 +0000statusbot1(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (*.net *.split)
2021-06-11 16:31:00 +0000relrod(~relrod@redhat/ansible.staff.relrod) (*.net *.split)
2021-06-11 16:31:00 +0000jamestmartin(james@jtmar.me) (*.net *.split)
2021-06-11 16:31:00 +0000zzz(~yin@user/yin) (*.net *.split)
2021-06-11 16:31:00 +0000robertm(robertm@rojoma.com) (*.net *.split)
2021-06-11 16:31:00 +0000welterde(welterde@thinkbase.srv.welterde.de) (*.net *.split)
2021-06-11 16:31:00 +0000nurupo(~nurupo.ga@user/nurupo) (*.net *.split)
2021-06-11 16:31:00 +0000systemfault(sid267009@id-267009.highgate.irccloud.com) (*.net *.split)
2021-06-11 16:31:00 +0000mniip(mniip@libera/staff/mniip) (*.net *.split)
2021-06-11 16:31:00 +0000Vq(~vq@90-227-195-41-no77.tbcn.telia.com) (*.net *.split)
2021-06-11 16:31:00 +0000idnar(sid12240@id-12240.tooting.irccloud.com) (*.net *.split)
2021-06-11 16:31:00 +0000edmundnoble_(sid229620@id-229620.brockwell.irccloud.com) (*.net *.split)
2021-06-11 16:31:00 +0000cohn(~noone@user/cohn) (*.net *.split)
2021-06-11 16:31:00 +0000tlax(~ArgusTang@kapsi.fi) (*.net *.split)
2021-06-11 16:31:00 +0000totbwf_(sid402332@id-402332.highgate.irccloud.com) (*.net *.split)
2021-06-11 16:31:00 +0000shane_(~shane@ana.rch.ist) (*.net *.split)
2021-06-11 16:31:00 +0000mjrosenb(~mrosenbe@nyc.schrodinger.com) (*.net *.split)
2021-06-11 16:31:00 +0000glguy(x@libera/staff/glguy) (*.net *.split)
2021-06-11 16:31:00 +0000amk(~amk@176.61.106.150) (*.net *.split)
2021-06-11 16:31:00 +0000forell(~forell@host-178-216-90-220.sta.tvknaszapraca.pl) (*.net *.split)
2021-06-11 16:31:01 +0000eldritch_(~eldritch@134.209.221.71) (*.net *.split)
2021-06-11 16:31:01 +0000img(~img@user/img) (*.net *.split)
2021-06-11 16:31:02 +0000yaroot4yaroot
2021-06-11 16:31:03 +0000Unode_Unode
2021-06-11 16:31:13 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 16:31:23 +0000amk(~amk@176.61.106.150)
2021-06-11 16:32:40 +0000ptrcmd_ptrcmd
2021-06-11 16:32:41 +0000river(~river@tilde.team/user/river) (Quit: Leaving)
2021-06-11 16:35:51 +0000dcoutts_(~duncan@94.186.125.91.dyn.plus.net) (Ping timeout: 252 seconds)
2021-06-11 16:36:36 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-06-11 16:37:23 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 16:38:30 +0000Deewiant(~deewiant@de1.ut.deewiant.iki.fi)
2021-06-11 16:40:23 +0000jolly(~jolly@208.180.97.158) (Ping timeout: 268 seconds)
2021-06-11 16:40:52 +0000cohn(~noone@user/cohn)
2021-06-11 16:41:37 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Ping timeout: 268 seconds)
2021-06-11 16:41:48 +0000tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-06-11 16:41:49 +0000pdxleif(~leif@75.164.44.108)
2021-06-11 16:42:24 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:1313:feb6:d304:287) (Ping timeout: 265 seconds)
2021-06-11 16:43:02 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 16:44:10 +0000jess(~jess@libera/staff/jess)
2021-06-11 16:44:10 +0000azeem(~azeem@176.200.240.211)
2021-06-11 16:44:13 +0000xff0x_(~xff0x@185.65.135.235)
2021-06-11 16:45:13 +0000michalz(~michalz@185.246.204.121) (Remote host closed the connection)
2021-06-11 16:45:54 +0000jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-11 16:48:55 +0000argento_(~argent0@168-227-96-53.ptr.westnet.com.ar) (Ping timeout: 272 seconds)
2021-06-11 16:50:12 +0000 <dminuoso> 23:45:41 monochrom | I think that the motivation for sysfs was shelll scripts. "echo 1 > /sys/foo/bar/power-saving-mode" is very shell-friendly. It would suck to have to write C code for that, even if it's just an ioctl call.
2021-06-11 16:50:41 +0000 <dminuoso> That last bit is weird. Why "even if it's just...". ioctl is a poor and unergonomic API.
2021-06-11 16:50:42 +0000totbwf_(sid402332@id-402332.highgate.irccloud.com)
2021-06-11 16:50:43 +0000jamestmartin(james@jtmar.me)
2021-06-11 16:50:47 +0000relrod(~relrod@redhat/ansible.staff.relrod)
2021-06-11 16:50:47 +0000idnar(sid12240@id-12240.tooting.irccloud.com)
2021-06-11 16:50:50 +0000codedmart(~codedmart@li335-49.members.linode.com)
2021-06-11 16:50:50 +0000haskl(~haskeller@2601:643:897f:561d::af3)
2021-06-11 16:50:51 +0000systemfault(sid267009@id-267009.highgate.irccloud.com)
2021-06-11 16:50:52 +0000fvr(uid503686@id-503686.highgate.irccloud.com)
2021-06-11 16:50:54 +0000nurupo(~nurupo.ga@user/nurupo)
2021-06-11 16:50:56 +0000zzz(~yin@user/yin)
2021-06-11 16:50:56 +0000Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2021-06-11 16:50:57 +0000robertm(robertm@rojoma.com)
2021-06-11 16:50:57 +0000edmundnoble_(sid229620@id-229620.brockwell.irccloud.com)
2021-06-11 16:51:01 +0000feetwind(~mike@user/feetwind)
2021-06-11 16:51:05 +0000doublex_(~doublex@2601:542:c480:6ee0:184b:7083:f026:c689)
2021-06-11 16:51:12 +0000welterde(welterde@thinkbase.srv.welterde.de)
2021-06-11 16:51:14 +0000glguy_(x@libera/staff/glguy)
2021-06-11 16:51:17 +0000glguy_glguy
2021-06-11 16:51:22 +0000ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-06-11 16:51:47 +0000albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-11 16:51:55 +0000oak-(~oakuniver@2001:470:69fc:105::fcd)
2021-06-11 16:52:25 +0000pretty_d1(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1)
2021-06-11 16:53:23 +0000jessj
2021-06-11 16:54:09 +0000mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-11 16:54:57 +0000 <safinaskar> Please, SAVE THE WORLD from yet another (zillionth) parsing lib! I want monadic (or arrow based) parsing lib with unbiased choice. I didn't find one, so I am plan to write it and publish to hackage (this seems relatively easy for me, i already published libs to hackage in the past). So, please help me found lib I want, overwise I will have to write
2021-06-11 16:54:58 +0000 <safinaskar> my own and publish it. This was THREAT! So, what I want? I want monadic (or arrow) parsing lib with unbiased choice. The lib should not merely output AST, instead it should allow post-processing the data interleaved with parsing. Also I want ability to generate errors and warnings with location info. See more here: https://paste.debian.net/1200885/
2021-06-11 16:55:49 +0000 <int-e> dminuoso: https://twitter.com/d_feldman/status/1399951777051598849
2021-06-11 16:56:27 +0000 <dminuoso> int-e: Haha!
2021-06-11 16:57:02 +0000xff0x_(~xff0x@185.65.135.235) (Ping timeout: 268 seconds)
2021-06-11 16:57:32 +0000 <exarkun> Does Wai middleware have to do something special to handle error cases?
2021-06-11 16:57:43 +0000boxscape(~boxscape@user/boxscape)
2021-06-11 16:57:53 +0000 <exarkun> I tried to use Network.Wai.Middleware.Cors w/ Servant but it only does anything for success-case responses
2021-06-11 16:58:05 +0000Andros(~Andros@176.116.80.1)
2021-06-11 16:58:31 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:ada3:bdcd:e60c:3e25)
2021-06-11 17:00:58 +0000 <dminuoso> exarkun: No, there's no special treatemnt of error cases. If that's the case, then that's how the middleware is written.
2021-06-11 17:00:58 +0000kadoban(~kadoban@user/kadoban)
2021-06-11 17:01:17 +0000 <dminuoso> Just out of curiosity, is this perhaps what you're looking for? https://hackage.haskell.org/package/wai-cors-0.2.7/docs/Network-Wai-Middleware-Cors.html#v:corsIgn…
2021-06-11 17:01:25 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
2021-06-11 17:01:32 +0000 <dminuoso> Im not familiar with the library, it just looks like it's what you want perhaps.
2021-06-11 17:02:15 +0000 <dminuoso> Ah no, that's something else.
2021-06-11 17:02:17 +0000NieDzejkob(~quassel@195.149.98.3)
2021-06-11 17:02:48 +0000werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-06-11 17:02:55 +0000jjess
2021-06-11 17:03:00 +0000 <exarkun> now my test suite is giving me apparently conflicting information so I'm going to stare at it for a while and see if I can invent a consistent interpretation..
2021-06-11 17:04:15 +0000 <dminuoso> exarkun: Looking at the source code, it does not intercept responses.
2021-06-11 17:04:26 +0000lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-06-11 17:04:33 +0000siraben(~siraben@user/siraben)
2021-06-11 17:04:34 +0000 <dminuoso> All the cors logic seems to happen before the request is handed off.
2021-06-11 17:04:57 +0000 <dminuoso> See https://hackage.haskell.org/package/wai-cors-0.2.7/docs/src/Network.Wai.Middleware.Cors.html#cors
2021-06-11 17:04:57 +0000img(~img@user/img)
2021-06-11 17:06:39 +0000river(~river@tilde.team/user/river)
2021-06-11 17:07:36 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-11 17:08:21 +0000 <safinaskar> so? is there such parsing lib? (see my question above)
2021-06-11 17:09:51 +0000Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-11 17:10:14 +0000curiousgay(~quassel@178.217.208.8) (Read error: Connection reset by peer)
2021-06-11 17:10:26 +0000jiribenes(~jiribenes@rosa.jiribenes.com) (Ping timeout: 265 seconds)
2021-06-11 17:10:26 +0000NieDzejkob(~quassel@195.149.98.3) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2021-06-11 17:10:46 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 17:11:38 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 17:11:50 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 268 seconds)
2021-06-11 17:12:44 +0000 <exarkun> meh seems like the middleware isn't doing _anything_ in the tests
2021-06-11 17:13:03 +0000fgaz(~fgaz@2001:470:69fc:105::842)
2021-06-11 17:13:46 +0000 <dolio> Is ReadP unbiased?
2021-06-11 17:14:35 +0000 <monochrom> Yes. Its whole point. It also offers a biased <+++
2021-06-11 17:14:40 +0000 <dolio> Anything with `commit` instead of `try` is probably unbiased by default, too.
2021-06-11 17:15:29 +0000 <safinaskar> for example?
2021-06-11 17:15:43 +0000derelict(~derelict@user/derelict) (Ping timeout: 272 seconds)
2021-06-11 17:16:09 +0000econo(uid147250@user/econo)
2021-06-11 17:16:29 +0000Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-11 17:18:23 +0000river(~river@tilde.team/user/river) (Quit: Leaving)
2021-06-11 17:18:35 +0000 <ski> @hackage parsek -- also this
2021-06-11 17:18:35 +0000 <lambdabot> https://hackage.haskell.org/package/parsek -- also this
2021-06-11 17:19:26 +0000 <dolio> uu-parsinglib
2021-06-11 17:19:31 +0000reumeth(~reumeth@user/reumeth) (Ping timeout: 272 seconds)
2021-06-11 17:20:57 +0000haltux(~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-11 17:21:19 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 17:21:37 +0000hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-06-11 17:23:56 +0000 <dolio> The latter doesn't seem to have an explicit commit, just extra biased operators like ReadP.
2021-06-11 17:24:45 +0000 <safinaskar> ski: function "parse" from Text-ParserCombinators-Parsek returns (Either (Err s) r)
2021-06-11 17:24:52 +0000 <safinaskar> ski: you can see (r) here, not ([r])
2021-06-11 17:25:00 +0000 <safinaskar> ski: so, there is not unbiased choice
2021-06-11 17:25:30 +0000 <safinaskar> ski: oops, i missed "allResults"
2021-06-11 17:25:33 +0000 <dolio> That seems like a non sequitur.
2021-06-11 17:25:39 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 272 seconds)
2021-06-11 17:25:49 +0000lbseale_(~lbseale@user/ep1ctetus)
2021-06-11 17:26:14 +0000maralorn(~maralorn@2001:470:69fc:105::251)
2021-06-11 17:26:32 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 17:27:13 +0000 <safinaskar> ski: but i don't see any way in "parsek" to report semantic error (i. e. "mismatched type") or embed some another monad into parsek
2021-06-11 17:27:58 +0000psydroid(~psydroidm@2001:470:69fc:105::165)
2021-06-11 17:28:33 +0000 <dolio> Type checking during parsing is a bad idea.
2021-06-11 17:28:58 +0000 <safinaskar> dolio: i still want this
2021-06-11 17:29:08 +0000lbseale(~lbseale@user/ep1ctetus) (Ping timeout: 264 seconds)
2021-06-11 17:29:17 +0000 <safinaskar> dolio: i want to write some simple prover
2021-06-11 17:29:34 +0000 <safinaskar> dolio: and i want to check various non-parsing errors during parsing
2021-06-11 17:29:50 +0000 <safinaskar> parsec allows this
2021-06-11 17:29:54 +0000hexfive(~eric@50.35.83.177)
2021-06-11 17:29:54 +0000hexfive(~eric@50.35.83.177) (Client Quit)
2021-06-11 17:31:24 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 17:32:12 +0000MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-06-11 17:32:46 +0000psydroid(~psydroidm@2001:470:69fc:105::165) (Changing host)
2021-06-11 17:32:46 +0000psydroid(~psydroidm@user/psydroid)
2021-06-11 17:32:53 +0000 <ski> hm, i guess you want to interleave some checking effects with the parsing (since otherwise i think you could just have the parse result be a function or an action)
2021-06-11 17:33:58 +0000averell-(~averell@user/averell) (Remote host closed the connection)
2021-06-11 17:34:09 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-11 17:35:02 +0000gethuen(uid502979@id-502979.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-11 17:35:06 +0000 <safinaskar> dolio: function "parse" from uu-parsinglib has very strange type: (P t a -> t -> a). so, this function cannot report errors at all?!
2021-06-11 17:35:24 +0000 <dolio> Not sure, I'm not very familiar with it.
2021-06-11 17:35:35 +0000teaSlurper(~chris@81.96.113.213) (Ping timeout: 244 seconds)
2021-06-11 17:36:29 +0000 <tomsmeding> safinaskar: see the source of that function, it's partial
2021-06-11 17:36:43 +0000 <tomsmeding> so I expect there to be a different function that exposes the error in a value
2021-06-11 17:37:39 +0000 <tomsmeding> or... there is pErrors
2021-06-11 17:37:41 +0000 <tomsmeding> this API is wacky
2021-06-11 17:38:05 +0000 <tomsmeding> safinaskar: try using pEnd
2021-06-11 17:40:09 +0000ec_(~ec@gateway/tor-sasl/ec)
2021-06-11 17:41:08 +0000agumonke`(~user@88.163.231.79)
2021-06-11 17:41:33 +0000xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf)
2021-06-11 17:41:35 +0000 <xal> join #coq
2021-06-11 17:41:49 +0000 <xal> woops, that was supposed to have a /
2021-06-11 17:42:16 +0000 <safinaskar> ski: "i guess you want to interleave some checking effects with the parsing" - just having function or some monad as parsing result is completely OK. But this will mean that all manipulations with this complicated monadic value will be explicit during parsing. i don't want this! i want some parsing lib, which will somehow implicitly deal with
2021-06-11 17:42:17 +0000 <safinaskar> accumulated warning messages, for example by embeding monad (parsec can this!) or some other way. Well, in fact i can do this by writting simple wrapper around some lib (for example, parsek), which will allow embeding of monad. but this will mean that I write my own parsing library! This is last resort. I want to write my own library ONLY if I am
2021-06-11 17:42:17 +0000 <safinaskar> sure that no existing solution exists
2021-06-11 17:42:18 +0000ikex(~ash@user/ikex) (Ping timeout: 244 seconds)
2021-06-11 17:44:27 +0000averell(~averell@user/averell)
2021-06-11 17:45:10 +0000agumonke`(~user@88.163.231.79) (Remote host closed the connection)
2021-06-11 17:45:45 +0000pdxleif(~leif@75.164.44.108) (Ping timeout: 268 seconds)
2021-06-11 17:47:14 +0000 <safinaskar> dolio: tomsmeding: "parse" from uu-parsinglib still returns (a), not ([a]), so, it seems there is no unbiased choice
2021-06-11 17:47:42 +0000 <tomsmeding> safinaskar: see 'amb'
2021-06-11 17:48:22 +0000 <dolio> As I mentioned earlier, returning one result from the final parsing function doesn't mean the choice operation isn't unbiased.
2021-06-11 17:48:31 +0000nijopa(~nijopa@pool-98-118-125-240.bstnma.fios.verizon.net) (Quit: Leaving...)
2021-06-11 17:49:22 +0000 <safinaskar> well, "uu-parsinglib" still seems non-ideomatic and foreign. i've better write my own library then will use it
2021-06-11 17:50:00 +0000 <tomsmeding> "idiomatic" depends on the language you're in; and I don't mean programming language, but dialects of programming languages
2021-06-11 17:50:11 +0000 <tomsmeding> in the dialect of the writers of the library, it is probably idiomatic :)
2021-06-11 17:50:20 +0000jolly(~jolly@208.180.97.158)
2021-06-11 17:50:38 +0000 <tomsmeding> it certainly looks quite different from parsec-like parser libraries
2021-06-11 17:51:40 +0000 <dolio> There are more than 3 or 4 parsing libraries, too.
2021-06-11 17:51:58 +0000 <ski> safinaskar : well, the effects i was thinking about was the "post-parsing processing" that you mentioned
2021-06-11 17:53:27 +0000the-coot[m](~the-cootm@2001:470:69fc:105::95f)
2021-06-11 17:54:21 +0000ServerStatsDisco(~serversta@2001:470:69fc:105::1a)
2021-06-11 17:54:56 +0000fendor(~fendor@91.141.3.58.wireless.dyn.drei.com) (Remote host closed the connection)
2021-06-11 17:55:07 +0000fendor_fendor
2021-06-11 17:57:59 +0000Erutuon(~Erutuon@user/erutuon)
2021-06-11 18:00:33 +0000azeem(~azeem@176.200.240.211) (Ping timeout: 268 seconds)
2021-06-11 18:01:03 +0000azeem(~azeem@176.200.240.211)
2021-06-11 18:02:22 +0000wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-06-11 18:05:38 +0000fabfianda[m](~fabfianda@2001:470:69fc:105::6db)
2021-06-11 18:07:57 +0000azeem(~azeem@176.200.240.211) (Ping timeout: 265 seconds)
2021-06-11 18:09:08 +0000vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe)
2021-06-11 18:09:59 +0000azeem(~azeem@176.200.240.211)
2021-06-11 18:12:30 +0000tomferon[m](~tomferon@2001:470:69fc:105::268)
2021-06-11 18:12:52 +0000bb010g(~bb010gmat@2001:470:69fc:105::9a5)
2021-06-11 18:13:25 +0000autrim64[m](~autrim64m@2001:470:69fc:105::16a1)
2021-06-11 18:14:32 +0000wallymathieu[m](~wallymath@2001:470:69fc:105::16ae)
2021-06-11 18:14:40 +0000ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds)
2021-06-11 18:16:03 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 18:17:09 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2021-06-11 18:18:27 +0000jaror[m](~jaror@2001:470:69fc:105::265)
2021-06-11 18:19:36 +0000bitonic(~bitonic@2001:470:69fc:105::1812)
2021-06-11 18:21:27 +0000 <exarkun> Alright all my Network.Wai.Tests fail my CORS assertions saying there are no CORS headers at all, https://github.com/PrivateStorageio/PaymentServer/blob/3414de673f249be9f0c507632ce6bce9f3618503/te… (even the success case)
2021-06-11 18:21:27 +0000 <safinaskar> i seems i have to write my own lib
2021-06-11 18:21:31 +0000 <exarkun> I don't get it :(
2021-06-11 18:22:07 +0000 <exarkun> https://github.com/PrivateStorageio/PaymentServer/blob/3414de673f249be9f0c507632ce6bce9f3618503/sr… definitely applies CORS middleware
2021-06-11 18:22:09 +0000derelict(~derelict@user/derelict)
2021-06-11 18:22:17 +0000 <exarkun> Also ... it works (at least for success case) in real usage
2021-06-11 18:22:34 +0000Vq_Vq
2021-06-11 18:25:29 +0000ec_(~ec@gateway/tor-sasl/ec)
2021-06-11 18:26:12 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 18:30:52 +0000azeem(~azeem@176.200.240.211) (Ping timeout: 244 seconds)
2021-06-11 18:32:08 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 18:33:00 +0000azeem(~azeem@176.200.240.211)
2021-06-11 18:34:49 +0000azeem(~azeem@176.200.240.211) (Read error: Connection reset by peer)
2021-06-11 18:35:41 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-11 18:37:03 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 18:48:02 +0000k000(~k00000000@36.255.96.246)
2021-06-11 18:50:28 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
2021-06-11 18:50:49 +0000fryguybob(~fryguybob@cpe-74-65-31-113.rochester.res.rr.com)
2021-06-11 18:51:04 +0000nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9)
2021-06-11 18:51:35 +0000natechan(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-06-11 18:53:47 +0000k000(~k00000000@36.255.96.246) (Quit: Leaving)
2021-06-11 18:57:13 +0000xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf) (Ping timeout: 244 seconds)
2021-06-11 19:03:30 +0000xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf)
2021-06-11 19:03:48 +0000xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf) (Client Quit)
2021-06-11 19:04:06 +0000 <exarkun> ... because it doesn't add cors headers to the response if they're not in the request
2021-06-11 19:05:28 +0000jakzale(uid499518@id-499518.charlton.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-11 19:06:33 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-11 19:06:58 +0000__monty__(~toonn@user/toonn)
2021-06-11 19:08:09 +0000jiribenes(~jiribenes@rosa.jiribenes.com)
2021-06-11 19:12:16 +0000safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru) ()
2021-06-11 19:15:01 +0000rbocquet(~weechat@2001:bc8:47a8:44e::1)
2021-06-11 19:15:49 +0000peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 244 seconds)
2021-06-11 19:16:58 +0000bor0(~boro@user/bor0)
2021-06-11 19:20:36 +0000nrr(sid20938@id-20938.tooting.irccloud.com)
2021-06-11 19:22:52 +0000qbt(~edun@user/edun) (Quit: Leaving)
2021-06-11 19:23:09 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 19:24:18 +0000matijja(~matijja@193.77.181.208) (Quit: bye)
2021-06-11 19:26:02 +0000matijja(~matijja@193.77.181.201)
2021-06-11 19:26:16 +0000xsperry(~as@user/xsperry) (Ping timeout: 268 seconds)
2021-06-11 19:26:18 +0000xenon-(~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/ (Ping timeout))
2021-06-11 19:26:46 +0000psygo(~philippe@201-95-112-120.dsl.telesp.net.br)
2021-06-11 19:27:49 +0000 <psygo> Hello all. Does anyone know of a data structure book for Haskell?
2021-06-11 19:29:39 +0000Heffalump(~ganesh@urchin.earth.li)
2021-06-11 19:29:46 +0000 <Taneb> psygo: Purely Functional Data Structures by Chris Okasaki
2021-06-11 19:29:51 +0000Heffalump(~ganesh@urchin.earth.li) ()
2021-06-11 19:30:18 +0000 <psygo> Thanks, Taneb. But is that all there is for this topic?
2021-06-11 19:31:05 +0000argento(~argent0@168-227-96-53.ptr.westnet.com.ar)
2021-06-11 19:31:18 +0000 <DigitalKiwi> well there are two papers/books
2021-06-11 19:31:57 +0000 <DigitalKiwi> and a few libraries implement some of them too
2021-06-11 19:32:40 +0000matijja(~matijja@193.77.181.201) (Quit: ZNC 1.8.1 - https://znc.in)
2021-06-11 19:32:53 +0000 <DigitalKiwi> https://cstheory.stackexchange.com/questions/1539/whats-new-in-purely-functional-data-structures-s…
2021-06-11 19:33:51 +0000 <DigitalKiwi> does the new bird book i haven't read have anything?
2021-06-11 19:34:28 +0000fresheyeball(~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net)
2021-06-11 19:35:01 +0000matijja(~matijja@193.77.181.201)
2021-06-11 19:35:11 +0000 <psygo> bird book?
2021-06-11 19:37:38 +0000matijja(~matijja@193.77.181.201) (Client Quit)
2021-06-11 19:38:10 +0000 <xerox> thinking functionally in haskell?
2021-06-11 19:38:29 +0000matijja(~matijja@193.77.181.201)
2021-06-11 19:39:18 +0000matijja(~matijja@193.77.181.201) (Client Quit)
2021-06-11 19:40:27 +0000haltux(~haltux@a89-154-181-47.cpe.netcabo.pt) (Ping timeout: 268 seconds)
2021-06-11 19:41:07 +0000fluffyballoon(~fluffybal@2620:72:0:6480::10f7)
2021-06-11 19:44:08 +0000matijja(~matijja@193.77.181.201)
2021-06-11 19:44:12 +0000 <DigitalKiwi> https://vallandingham.me/images/vis/birds_book_front.jpg
2021-06-11 19:44:58 +0000 <sm[m]> https://twitter.com/kmett/status/1403428202173796353
2021-06-11 19:45:06 +0000Guest10(~Guest10@201.219.236.40)
2021-06-11 19:45:25 +0000 <DigitalKiwi> no, wait, what xerox said is closer but i meant https://smile.amazon.com/Algorithm-Design-Haskell-Richard-Bird-ebook/dp/B08BKXJ1N3
2021-06-11 19:45:36 +0000 <edwardk> heya sm[m]. on the plus side i don't need to split my attention any more
2021-06-11 19:45:42 +0000xsperry(~as@user/xsperry)
2021-06-11 19:45:52 +0000 <DigitalKiwi> what did you do to get k-line lol
2021-06-11 19:46:05 +0000 <edwardk> DigitalKiwi: fucked if i know
2021-06-11 19:46:11 +0000 <sm[m]> hooray edwardk , what a relief.
2021-06-11 19:46:48 +0000 <edwardk> sm[m]: i've been playing with it. it seems like they k-lined my username? but i can still connect with a wrong username and auth as me? wat?
2021-06-11 19:47:05 +0000Guest50(~Guest50@70.39.165.194)
2021-06-11 19:48:10 +0000MoC(~moc@user/moc)
2021-06-11 19:48:28 +0000Guest10(~Guest10@201.219.236.40) (Quit: Connection closed)
2021-06-11 19:48:42 +0000 <Guest50> What'd I miss?
2021-06-11 19:49:18 +0000 <psygo> DigitalKiwi, nice recommendation, thanks, but I guess that book is dealing more with the algorithmic side of things, right?
2021-06-11 19:50:21 +0000MoC_(~moc@user/moc)
2021-06-11 19:51:29 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 19:51:55 +0000NieDzejkob(~quassel@195.149.98.3)
2021-06-11 19:51:57 +0000Unode(~Unode@194.94.44.220) (Quit: Not that cable)
2021-06-11 19:52:58 +0000Unode(~Unode@194.94.44.220)
2021-06-11 19:53:01 +0000MoC(~moc@user/moc) (Ping timeout: 244 seconds)
2021-06-11 19:53:06 +0000Guest50danm
2021-06-11 19:54:20 +0000MoC_MoC
2021-06-11 19:54:59 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 19:55:58 +0000Guest10(~Guest10@201.219.236.40)
2021-06-11 19:56:37 +0000 <DigitalKiwi> psygo: i haven't read it :D
2021-06-11 19:58:14 +0000Andros(~Andros@176.116.80.1) (Quit: Leaving)
2021-06-11 19:58:15 +0000 <psygo> Me neither. I just inferred that from the TOC.
2021-06-11 19:58:31 +0000ordinate(~ordinate@c-68-38-144-3.hsd1.in.comcast.net) (Read error: Connection reset by peer)
2021-06-11 19:58:42 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2021-06-11 19:58:45 +0000 <edwardk> i can't tell if its worse that i got banned, or that i got incompetently banned.
2021-06-11 19:59:02 +0000peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-11 19:59:16 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
2021-06-11 19:59:33 +0000ozataman(~ozataman@71.190.112.58)
2021-06-11 20:00:10 +0000wonko(~wjc@62.115.229.50)
2021-06-11 20:00:18 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-11 20:00:28 +0000danm(~Guest50@70.39.165.194) (Ping timeout: 250 seconds)
2021-06-11 20:03:22 +0000safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru)
2021-06-11 20:04:18 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 252 seconds)
2021-06-11 20:04:36 +0000ozataman(~ozataman@71.190.112.58) (Quit: Textual IRC Client: www.textualapp.com)
2021-06-11 20:04:55 +0000ozataman(~ozataman@71.190.112.58)
2021-06-11 20:05:08 +0000juhp(~juhp@128.106.188.66) (Ping timeout: 264 seconds)
2021-06-11 20:05:18 +0000 <safinaskar> hi! as you probably remember i need parsing lib (preferably monadic) with unbiased choice and ability to do semantic error checking (i. e. "division by zero" or "undefined id") interleaved with parsing. i just now understand that such a lib will necessary be arrow-based, not monadic!
2021-06-11 20:05:25 +0000tapastopos
2021-06-11 20:06:20 +0000 <safinaskar> so, now my question is: is there some lib for arrow parsing (CFG) with non-biased choice and ability to do semantic checking while parsing?
2021-06-11 20:07:12 +0000juhp(~juhp@128.106.188.66)
2021-06-11 20:09:04 +0000wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-11 20:12:11 +0000Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
2021-06-11 20:12:18 +0000dhil(~dhil@195.213.192.47) (Ping timeout: 264 seconds)
2021-06-11 20:15:23 +0000chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 252 seconds)
2021-06-11 20:22:23 +0000neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 268 seconds)
2021-06-11 20:23:27 +0000teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-11 20:24:31 +0000econo(uid147250@user/econo) ()
2021-06-11 20:25:30 +0000 <dminuoso> safinaskar: As it has been pointed out earlier, it's probably a bad idea to do semantic checking during parsing. What's wrong with just doing a separate pass?
2021-06-11 20:25:44 +0000dhil(~dhil@80.208.56.181)
2021-06-11 20:26:18 +0000 <safinaskar> dminuoso: this would mean i need to construct full ast
2021-06-11 20:26:25 +0000 <safinaskar> i don't want this
2021-06-11 20:26:51 +0000peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-06-11 20:27:08 +0000psygo(~philippe@201-95-112-120.dsl.telesp.net.br) (Quit: leaving)
2021-06-11 20:27:09 +0000 <safinaskar> well, i want to write proof checker. its whole purpose is to *check* input. so, if there is no (semantic) errors, it will output nothing
2021-06-11 20:27:35 +0000econo(uid147250@user/econo)
2021-06-11 20:28:13 +0000 <dminuoso> I could come up with a number of reasons why separating parsing from operations on the parsed data is a good idea, but you seem to have made up your mind. *shrugs*
2021-06-11 20:28:19 +0000teaSlurper(~chris@81.96.113.213)
2021-06-11 20:29:01 +0000 <safinaskar> also i still want some parser lib for throw-away cases, where i simply want to write some one-off haskell program
2021-06-11 20:29:17 +0000 <safinaskar> parsec will not go for such cases, because it has no non-biased choice
2021-06-11 20:30:07 +0000 <dminuoso> Out of curiosity, why do you insist on having non-biased choice?
2021-06-11 20:31:12 +0000wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-11 20:31:13 +0000dminuosoidly wonders, couldn't you use megaparsec's ParsecT over Logic?
2021-06-11 20:31:29 +0000Guest10(~Guest10@201.219.236.40) (Quit: Connection closed)
2021-06-11 20:32:32 +0000 <safinaskar> dminuoso: biased choice means that we have PEG semantics. unbiased choice means CFG semantics. i love CFG, no PEG. why? well, first, because of duck principle: i learned CFG first. second, most programming languages specified using CFG, not PEG
2021-06-11 20:32:57 +0000teaSlurper(~chris@81.96.113.213) (Ping timeout: 265 seconds)
2021-06-11 20:33:12 +0000 <safinaskar> also, i used bison a lot (with c++), it is based on CFG
2021-06-11 20:33:24 +0000 <safinaskar> i simply love CFG, it seems more natural for me
2021-06-11 20:33:50 +0000 <safinaskar> you don't have to think in which order to give productions
2021-06-11 20:34:08 +0000 <safinaskar> finally, there was one serious indecent
2021-06-11 20:34:54 +0000 <dminuoso> So yeah, why not use ParsecT+LogicT?
2021-06-11 20:36:20 +0000 <safinaskar> dminuoso: as well as i understand megaparsec uses biased choice
2021-06-11 20:36:22 +0000_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-06-11 20:36:57 +0000 <safinaskar> s/indecent/incident/
2021-06-11 20:37:29 +0000 <dminuoso> And LogicT gives you fair conjunction/disjunction.
2021-06-11 20:39:22 +0000 <safinaskar> so, incident. i wanted to parse text using this CFG: https://paste.debian.net/1200908/ . i simply translated this CFG to parsec code (despite parsec is based on PEG, not CFG) and happily wrote a lot of text and parsed it using this parsec-based parser. Then i suddenly discovered that this CFG is ambiguous! So, all this text was unreliable! Starting
2021-06-11 20:39:22 +0000 <safinaskar> from that moment i don't trust parsec anymore
2021-06-11 20:39:39 +0000 <safinaskar> dminuoso: well, your solution sounds interesting
2021-06-11 20:39:40 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-11 20:39:57 +0000 <safinaskar> dminuoso: you mean parsect over logict or vice versa?
2021-06-11 20:40:06 +0000azeem(~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it)
2021-06-11 20:40:56 +0000 <dminuoso> Mmm, not sure which way. `LogicT (ParsecT ...)` might have horrific performance. But hey, you wanted to have your cake and eat it too. Can't also demand it tastes very well.
2021-06-11 20:41:28 +0000 <dminuoso> But I think it should be `LogicT (ParsecT ...)`
2021-06-11 20:42:58 +0000 <safinaskar> dminuoso: but i just understand that unbiased choice with semantic checking is not possible with monads. it is possible with arrows only. i proved this. :) so that logict+parsect solution should not work
2021-06-11 20:43:07 +0000 <dminuoso> safinaskar: Oh also, you could just use happy/alex I guess. It's at least something you haven't listed yet it seems.
2021-06-11 20:43:19 +0000 <dminuoso> if you're happy with bison, it might suit you well
2021-06-11 20:44:27 +0000 <dminuoso> safinaskar: You proved this? We have LogicT as a monad transformer!
2021-06-11 20:44:38 +0000haltux(~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-11 20:45:08 +0000 <dminuoso> Perhaps Oleg et al are wrong then *shrugs* http://okmij.org/ftp/papers/LogicT.pdf
2021-06-11 20:48:27 +0000hendursa1(~weechat@user/hendursaga)
2021-06-11 20:48:48 +0000 <safinaskar> i want to implicitly have location info with every terminal and nonterminal (but on top level only! i. e. location info should not be stored deeply inside ast). as well as i understand, happy don't allow this. In happy i need to explicitly pass around location info. At least ghc's happy parser passes locations around explicitly
2021-06-11 20:50:52 +0000hendursaga(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-11 20:52:01 +0000 <safinaskar> dminuoso: this paper doesn't mention parsing (ctrl-f "pars" shows nothing)
2021-06-11 20:52:42 +0000machined1od(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds)
2021-06-11 20:52:56 +0000 <safinaskar> well, i can write my proof for you if you want
2021-06-11 20:53:41 +0000 <qrpnxz> i keep hearing name Oleg but idk which Oleg ppl are talking about
2021-06-11 20:54:33 +0000 <nshepperd> i don't think LogicT (Parsec..) will do what you want
2021-06-11 20:55:01 +0000 <dminuoso> safinaskar: It's a monad transformer. ParsecT is also a monad transformer. You can layer them ontop of each other to get both backtracking, fair disjunction/conjunction and parsing. If you add say ChronicleT ontop, you get fine error control too.
2021-06-11 20:55:06 +0000 <nshepperd> as in, the <|> will not backtrack the parsing state
2021-06-11 20:55:15 +0000 <dminuoso> nshepperd: interleave will.
2021-06-11 20:56:21 +0000 <nshepperd> it will not
2021-06-11 20:56:23 +0000 <dminuoso> Why not?
2021-06-11 20:56:45 +0000 <safinaskar> qrpnxz: look at authors list of mentioned paper. there is one Oleg in it: Oleg Kiselyov
2021-06-11 20:56:53 +0000 <nshepperd> the LogicT interface cannot do anything that cannot be done with LogicT IO
2021-06-11 20:57:11 +0000mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 272 seconds)
2021-06-11 20:57:35 +0000 <safinaskar> nshepperd: i am sure logict will not do what i need. because i just proved it is not possible using monads
2021-06-11 20:57:36 +0000 <nshepperd> including unlaunching missiles
2021-06-11 20:57:43 +0000bilegeek(~bilegeek@2600:1008:b06d:65ed:93d7:e6a:a06d:9e4)
2021-06-11 21:00:46 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-11 21:01:07 +0000lavaman(~lavaman@98.38.249.169)
2021-06-11 21:01:49 +0000Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-11 21:02:08 +0000 <dminuoso> nshepperd: Is my thinking flipped? I pointed out earlier I wasnt sure about the order in which they need to go.
2021-06-11 21:02:12 +0000zebraggzebrag
2021-06-11 21:02:40 +0000 <dminuoso> But your argument makes sense
2021-06-11 21:02:58 +0000hendursa1(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-11 21:03:15 +0000forell_forell
2021-06-11 21:04:09 +0000 <nshepperd> it doesn't work either way around afaict
2021-06-11 21:05:21 +0000lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-06-11 21:06:05 +0000 <dminuoso> That cant be right
2021-06-11 21:06:32 +0000 <dminuoso> Let's think of LogicT as just ListT but done correctly
2021-06-11 21:06:40 +0000 <dminuoso> Just for the sake of argument, so we can unmtl this
2021-06-11 21:07:11 +0000 <nshepperd> if you use LogicT Parsec you get an unbiased <|> that doesn't backtrack the parser state and therefore acts like nonsense
2021-06-11 21:07:33 +0000 <monochrom> LogicT is CPS/Church-encoding form of correct ListT. No semantic difference.
2021-06-11 21:07:41 +0000 <nshepperd> if you use ParsecT Logic you get parsec's <|> which is biased and backtracks
2021-06-11 21:07:59 +0000 <safinaskar> let me state my theorem about impossibility of monad i want: https://paste.debian.net/1200914/
2021-06-11 21:09:00 +0000 <safinaskar> this means that any logicT solutions will not go, at least for my task
2021-06-11 21:09:15 +0000 <safinaskar> if you are still not convinced i can write down proof. do you want this? (this will take another 10 mins)
2021-06-11 21:11:57 +0000 <dminuoso> nshepperd: What you say makes sense.
2021-06-11 21:12:40 +0000zeenk(~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41) (Quit: Konversation terminated!)
2021-06-11 21:13:37 +0000Shaeto(~Shaeto@94.25.234.158) (Quit: WeeChat 3.1)
2021-06-11 21:14:38 +0000 <monochrom> Actually why are we still talking about LogicT when the asker has already rejected all monads :)
2021-06-11 21:15:37 +0000ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds)
2021-06-11 21:15:54 +0000hendursaga(~weechat@user/hendursaga)
2021-06-11 21:16:53 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1)
2021-06-11 21:18:05 +0000 <nshepperd> reject all monads! return to the trees!
2021-06-11 21:20:43 +0000 <safinaskar> i wrote proof! https://paste.debian.net/1200915/
2021-06-11 21:33:30 +0000bor0(~boro@user/bor0) (Quit: Leaving)
2021-06-11 21:35:07 +0000 <nshepperd> when thinking about monad transformers, imagining them layered over IO is a powerful intuition pump. i recommend it
2021-06-11 21:35:35 +0000 <dminuoso> nshepperd: Yeah.
2021-06-11 21:36:09 +0000 <Hecate> heya cabal wizards, it looks like my /tmp is not a good place for cabal to download the Hackage index https://paste.tomsmeding.com/a3Y9DxwE
2021-06-11 21:36:25 +0000 <Hecate> what is the flag to tell it to put the index file elsewhere?
2021-06-11 21:38:15 +0000 <safinaskar> Hecate: mount file system you need to /tmp
2021-06-11 21:38:20 +0000 <safinaskar> :)
2021-06-11 21:38:46 +0000 <dminuoso> Hecate: Set $CABAL_DIR ?
2021-06-11 21:39:37 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 21:40:13 +0000 <Hecate> dminuoso: I'm pretty sure $CABAL_DIR is a secondary destination, after /tmp
2021-06-11 21:40:32 +0000 <monochrom> I layered ParsecT over ContT r IO and get very powerful unintuition. >:)
2021-06-11 21:40:55 +0000 <monochrom> http://www.vex.net/~trebla/haskell/parsec-generally.xhtml#ContT
2021-06-11 21:40:57 +0000 <nshepperd> haha
2021-06-11 21:41:21 +0000MQ-17J(~MQ-17J@8.21.10.116)
2021-06-11 21:42:29 +0000 <monochrom> I add ContT like people add hot sauce
2021-06-11 21:42:36 +0000peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-11 21:43:40 +0000 <nshepperd> delicious
2021-06-11 21:44:06 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 244 seconds)
2021-06-11 21:47:27 +0000phma(phma@2001:5b0:211f:5688:1a5c:72d9:f31b:5496) (Read error: Connection reset by peer)
2021-06-11 21:47:40 +0000 <maerwald> ContT is just awful
2021-06-11 21:47:50 +0000 <maerwald> but good if you want to confuse yourself
2021-06-11 21:51:29 +0000phma(~phma@host-67-44-208-20.hnremote.net)
2021-06-11 21:51:41 +0000 <monochrom> awful compared to what alternative?
2021-06-11 21:52:01 +0000 <dminuoso> Hecate: https://hackage.haskell.org/package/directory-1.3.6.2/docs/System-Directory.html#v:getTemporaryDir…
2021-06-11 21:52:10 +0000 <dminuoso> Hecate: I could trace at least one code path back to using this.
2021-06-11 21:52:28 +0000 <dminuoso> Try setting one of those environment variables
2021-06-11 21:53:01 +0000 <dminuoso> TMPDIR in particualr
2021-06-11 21:53:38 +0000ozataman(~ozataman@71.190.112.58) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-11 21:53:58 +0000 <maerwald> monochrom: the documentation in mtl already outlines it
2021-06-11 21:54:10 +0000 <maerwald> "Before using the Continuation monad, be sure that you have a firm understanding of continuation-passing style and that continuations represent the best solution to your particular design problem. Many algorithms which require continuations in other languages do not require them in Haskell, due to Haskell's lazy semantics. Abuse of the Continuation monad can produce code that is impossible to
2021-06-11 21:54:12 +0000 <maerwald> understand and maintain."
2021-06-11 21:54:14 +0000 <maerwald> and it's true
2021-06-11 21:54:26 +0000 <Hecate> dminuoso: fantastic, thanks :)
2021-06-11 21:54:46 +0000 <maerwald> I've never seen real world haskell code that can't do without it
2021-06-11 21:54:57 +0000ozataman(~ozataman@71.190.112.58)
2021-06-11 21:55:26 +0000 <dminuoso> maerwald: I use continuations in a custom parser situation to avoid relying on deforestation for adequate performance.
2021-06-11 21:55:43 +0000 <dminuoso> But, this is a bit of a special case. :)
2021-06-11 21:55:51 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-11 21:56:55 +0000gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-06-11 21:56:58 +0000 <maerwald> streamly needs it, but is uses its own representation
2021-06-11 21:57:23 +0000 <dminuoso> megaparsec and attoparsec both use continuations internally too
2021-06-11 21:57:36 +0000 <monochrom> A good use case is converting with-style programming "withFoo (\h -> ...)" to monadic programming "do { h <- ContT withFoo; ... }"
2021-06-11 21:58:09 +0000 <monochrom> Because, quite frankly, with-style programming is already continuation-passing-style programming.
2021-06-11 21:59:33 +0000 <maerwald> unlike many others... I agree with the python zen: explicit is better than implicit
2021-06-11 22:00:01 +0000 <monochrom> Huh, Python is the posterboy for explicitness? Don't kid me.
2021-06-11 22:00:08 +0000Rembane_hands out swords
2021-06-11 22:00:29 +0000 <maerwald> monochrom: I'm talking about the zen, not python
2021-06-11 22:00:40 +0000 <maerwald> there's a reason the zen exists :>
2021-06-11 22:01:00 +0000 <monochrom> I guess then Haskell zen is dynamic typing.
2021-06-11 22:01:02 +0000 <maerwald> if python was the zen, there would be no zen
2021-06-11 22:02:16 +0000 <monochrom> But I'm not sure why implicitness is brought up.
2021-06-11 22:02:41 +0000 <monochrom> Both "withFoo (\h -> ...)" and "ContT withFoo" are very explicit.
2021-06-11 22:03:08 +0000Ariakenom(~Ariakenom@2001:9b1:efb:fc00:5cec:59a9:cebf:aa78)
2021-06-11 22:03:44 +0000sheepduck(~sheepduck@2607:fea8:2a61:4800::6b7b) (Remote host closed the connection)
2021-06-11 22:03:52 +0000 <maerwald> Transformer stacks in general are rather implicit... you're hiding (potentially non-trivial logic) in the bind operator, including the interaction of all the layers. It's implicit and non-declarative
2021-06-11 22:04:14 +0000 <maerwald> you have to understand the operational semantics
2021-06-11 22:04:50 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-11 22:05:16 +0000 <maerwald> ContT + ExceptT + StateT + IO -> gg
2021-06-11 22:05:24 +0000 <monochrom> No.
2021-06-11 22:06:13 +0000 <monochrom> Either you're mistaking transformer stacks for monadic class-constrained polymorphism, or you're mistaking implicitness for complexity.
2021-06-11 22:07:14 +0000 <monochrom> If I have "yikes :: (MonadA m, MonadB m) => m ()", it's >>= is unclear, yes.
2021-06-11 22:07:19 +0000 <dminuoso> Rembane_: You cant hand out swords but not hand out popcorn.
2021-06-11 22:07:36 +0000 <sshine> vim > emacs
2021-06-11 22:07:44 +0000 <Rembane_> dminuoso: Sorry, I was too busy eating them myselves, I'm gonna pop some more soon though.
2021-06-11 22:08:01 +0000 <dminuoso> monochrom: And welcome to the effect system game.
2021-06-11 22:08:18 +0000 <monochrom> But if I have "yo :: AT (BT IO) ()", it's >>= is very well understood, especially since for example we know it is not BT (AT IO).
2021-06-11 22:08:51 +0000 <dminuoso> Is that very well understood? If I put in three transformer layers, is it always instantly clear to all relevant users?
2021-06-11 22:09:03 +0000 <monochrom> What you can complain is that by the time I have AT (BT (CT (DT IO))) it is a lot to follow. But it's very explicit.
2021-06-11 22:09:10 +0000 <dminuoso> Note, Im not talking about you who may have pondered about it so often that it becomes second nature to you
2021-06-11 22:09:38 +0000 <sshine> dminuoso, maybe "well understood" means your lifts need to go in a specific order that enforces some clarity?
2021-06-11 22:09:50 +0000 <sshine> sorry, that was probably a question directed to monochrom.
2021-06-11 22:10:11 +0000 <monochrom> Yes.
2021-06-11 22:10:40 +0000 <maerwald> monochrom: no. "Implicit" doesn't mean "class-constrained"
2021-06-11 22:10:46 +0000jaevanko(~jaevanko@2600:1700:1330:2bef:5548:773a:cf10:a3a1)
2021-06-11 22:11:19 +0000HarveyPwca(~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06)
2021-06-11 22:12:13 +0000 <maerwald> But yes, mtl has a special kind of implicitness... or rather... it defers the order of effects to the call-site
2021-06-11 22:12:20 +0000 <maerwald> I don't consider that the implicitness problem
2021-06-11 22:12:28 +0000 <maerwald> it's just undefined if you look at the type sig
2021-06-11 22:12:52 +0000 <maerwald> implicit is how the transformers interact
2021-06-11 22:12:59 +0000 <dminuoso> monochrom: And to be fair, as long as AT/BT are just opaque type names, the effects and thus their ordering are not obvious/mentioned.
2021-06-11 22:13:27 +0000 <maerwald> you have to understand exactly what's happening to understand that some orders of stacks don't make sense, leak space or whatnot
2021-06-11 22:13:28 +0000 <dminuoso> It all relies on you knowing what AT/BT/... are, how they are defined, and how their layering order affects effects.
2021-06-11 22:13:35 +0000 <dminuoso> It's not very explicit I think.
2021-06-11 22:13:36 +0000 <maerwald> yep
2021-06-11 22:14:37 +0000 <dminuoso> If it was explicit, I wouldnt have to @unmtl every time I wonder "jeesh, should StateT go inside or outside". Or maybe I'm just dumb *shrugs*
2021-06-11 22:14:39 +0000 <monochrom> Have you ever complained the same of opague function names too?
2021-06-11 22:14:57 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Quit: FinnElija)
2021-06-11 22:14:59 +0000 <monochrom> For example "filter" is an opague function name.
2021-06-11 22:15:06 +0000 <dminuoso> Yes, and I hate it every time.
2021-06-11 22:15:14 +0000 <maerwald> dminuoso: yeah... I've used StateT exactly once :> (and just as a performance optimization over IORef)
2021-06-11 22:15:18 +0000 <dminuoso> I cant for my life remember whether the predicate selects items to be dropped or preserved.
2021-06-11 22:15:23 +0000 <dminuoso> Every time I use it.
2021-06-11 22:15:27 +0000jakalx(~jakalx@base.jakalx.net)
2021-06-11 22:15:30 +0000 <monochrom> And empirically 50% of the people really believe that it means filter odd [1,2,3] = [2].
2021-06-11 22:15:42 +0000 <maerwald> yes
2021-06-11 22:15:49 +0000 <maerwald> I've hit this for 5 years
2021-06-11 22:15:56 +0000 <dminuoso> some/many are right in that department too.
2021-06-11 22:15:56 +0000 <maerwald> then I started to get it
2021-06-11 22:16:02 +0000__monty__(~toonn@user/toonn) (Quit: leaving)
2021-06-11 22:16:17 +0000 <dminuoso> or `guard` with STM!
2021-06-11 22:16:45 +0000 <monochrom> If no one has done a good job explaining filter or AT, that's a documentation problem. That is not a criticism against AT (BT IO) or filter . map f
2021-06-11 22:16:57 +0000 <maerwald> right... and back to ContT... I know what it does if I read the implementation... and 2 days later I don't know anymore, because it's really void of intuition
2021-06-11 22:17:14 +0000tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-11 22:17:18 +0000 <dminuoso> maerwald: I guess the usage of ContT to get rid of just with is outside that confusion.
2021-06-11 22:17:33 +0000 <dminuoso> The crux of ContT is that it can be (ab)used to create all kinds of bizarre control flows
2021-06-11 22:17:39 +0000 <maerwald> yep
2021-06-11 22:17:58 +0000 <monochrom> The most you can complain is my imprecise wording.
2021-06-11 22:18:19 +0000 <dminuoso> monochrom: Im not sure this is a documentation problem.
2021-06-11 22:18:32 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-06-11 22:18:37 +0000 <monochrom> I should have lawyerly worded: AT (BT IO) is no less explicit than AT, BT, IO. filter . map f is no less explicit than filter, map, f.
2021-06-11 22:19:04 +0000 <safinaskar> i just sent my proof to haskell-cafe
2021-06-11 22:19:23 +0000 <maerwald> I'm gonna mess up my release arguing here... I already forgot what I uploaded
2021-06-11 22:19:24 +0000MoC(~moc@user/moc) (Quit: Konversation terminated!)
2021-06-11 22:21:17 +0000benin03(~benin@183.82.205.218)
2021-06-11 22:21:48 +0000yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 252 seconds)
2021-06-11 22:22:57 +0000yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-11 22:24:12 +0000yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Client Quit)
2021-06-11 22:24:59 +0000reumeth(~reumeth@user/reumeth)
2021-06-11 22:25:16 +0000 <monochrom> You should have focused on critiquing ContT alone rather than broadenly to all transformer stacks.
2021-06-11 22:25:23 +0000 <xerox> if only you had captured the continuation before
2021-06-11 22:25:44 +0000 <monochrom> :) I resisted making that joke.
2021-06-11 22:25:51 +0000 <xerox> sorry xD
2021-06-11 22:27:11 +0000 <maerwald> monochrom: ContT is just the worst... although I like this post https://www.schoolofhaskell.com/school/to-infinity-and-beyond/pick-of-the-week/the-mother-of-all-m…
2021-06-11 22:27:24 +0000 <maerwald> "Suppose someone stole all the monads but one, which monad would you want it to be?"
2021-06-11 22:27:27 +0000 <maerwald> :>
2021-06-11 22:28:08 +0000 <davean> I'd want it to be IO that I got to keep
2021-06-11 22:29:29 +0000 <monochrom> I might abuse the wording "one". ContT r IO is still one monad, especially if you don't let me decompose and use ContT or IO separately.
2021-06-11 22:29:52 +0000 <maerwald> In that case I'd pick `ExceptT e IO a`
2021-06-11 22:29:58 +0000 <maerwald> that's the only stack I ever use
2021-06-11 22:30:08 +0000 <Rembane_> Can you stack as many as you want to and still have one monad?
2021-06-11 22:30:17 +0000merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-11 22:31:19 +0000 <monochrom> And ContT r IO would be close enough to Scheme's pervasive IO-plus-shift-reset environment such that everything said in the paper that inspired that blog post can be done.
2021-06-11 22:31:51 +0000 <monochrom> Rembane_: Yeah! But I pretend to be not so greedy.
2021-06-11 22:32:06 +0000reumeth(~reumeth@user/reumeth) (Ping timeout: 264 seconds)
2021-06-11 22:32:08 +0000alex3(~alex3@BSN-77-82-41.static.siol.net) (Ping timeout: 272 seconds)
2021-06-11 22:32:27 +0000 <Rembane_> monochrom: That's very good.
2021-06-11 22:34:25 +0000 <xerox> I was thinking what was the thing that paired with reset and I could only think of something like push, shift it was
2021-06-11 22:36:12 +0000 <monochrom> I know of restaurants that have a menu item "salad bar". It means that, although the restaurant is not normally an all-you-can-eat-buffet kind, you do get to choose the "salad bar" thing as one of your items, and the price entitles you to go to the salad bar and fill one plate.
2021-06-11 22:36:34 +0000 <monochrom> Naturally, people would stack veggies on that plate as much as possible.
2021-06-11 22:37:08 +0000 <monochrom> If you are at a monad salad bar, what would you stack on your plate? >:)
2021-06-11 22:37:43 +0000 <Rembane_> An infinite stack of ExceptT! :D
2021-06-11 22:37:48 +0000 <DigitalKiwi> only one plate?
2021-06-11 22:37:53 +0000 <DigitalKiwi> oh no
2021-06-11 22:37:54 +0000 <monochrom> Only one plate.
2021-06-11 22:38:08 +0000 <jaevanko> Is the plate Identity or IO?
2021-06-11 22:38:08 +0000 <maerwald> Although, I switched to `Excepts`... ExceptT is boring
2021-06-11 22:38:27 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-11 22:38:34 +0000 <monochrom> Would you like a game of monad stack Jenga?
2021-06-11 22:39:24 +0000dhil(~dhil@80.208.56.181) (Ping timeout: 252 seconds)
2021-06-11 22:39:33 +0000 <geekosaur> Chronicle?
2021-06-11 22:39:48 +0000alex3(~alex3@BSN-77-82-41.static.siol.net)
2021-06-11 22:40:30 +0000 <DigitalKiwi> no wonder they don't like me at spaghetti works ;_;
2021-06-11 22:41:14 +0000 <Rembane_> "Hi, I brought my infinite monad transformer plate, I hope that's cool with you."
2021-06-11 22:42:56 +0000fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
2021-06-11 22:44:09 +0000 <maerwald> reminds me of the first weird scene of the facebook movie... could go likes this: "what's you favorite transformer?" ... and when your date answers with ContT, you know you have a great match
2021-06-11 22:44:43 +0000 <monochrom> :)
2021-06-11 22:48:12 +0000wonko(~wjc@62.115.229.50) (Ping timeout: 252 seconds)
2021-06-11 22:52:29 +0000safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru) ()
2021-06-11 22:53:09 +0000dhil(~dhil@195.213.192.47)
2021-06-11 22:57:02 +0000sm2n(~sm2n@user/sm2n)
2021-06-11 23:03:37 +0000 <DigitalKiwi> ideal transformer
2021-06-11 23:04:55 +0000iblis(~Adium@p200300e9770baa0100d945c5feb5025a.dip0.t-ipconnect.de)
2021-06-11 23:08:14 +0000shapr(~user@pool-108-28-144-11.washdc.fios.verizon.net)
2021-06-11 23:09:33 +0000UpstreamSalmon(uid12077@id-12077.stonehaven.irccloud.com)
2021-06-11 23:17:21 +0000wagle(~wagle@quassel.wagle.io) (Ping timeout: 252 seconds)
2021-06-11 23:20:05 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:ada3:bdcd:e60c:3e25) (Remote host closed the connection)
2021-06-11 23:20:22 +0000xff0x_(~xff0x@2001:1a81:5346:bf00:b798:b33b:5653:d347)
2021-06-11 23:20:55 +0000wagle(~wagle@quassel.wagle.io)
2021-06-11 23:21:19 +0000jaevanko(~jaevanko@2600:1700:1330:2bef:5548:773a:cf10:a3a1) (Quit: Leaving)
2021-06-11 23:21:50 +0000dhil(~dhil@195.213.192.47) (Ping timeout: 268 seconds)
2021-06-11 23:24:51 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 244 seconds)
2021-06-11 23:24:59 +0000ikex(~ash@user/ikex)
2021-06-11 23:31:14 +0000BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-11 23:33:02 +0000wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2021-06-11 23:33:33 +0000wagle(~wagle@quassel.wagle.io)
2021-06-11 23:35:18 +0000jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-11 23:36:28 +0000iblis(~Adium@p200300e9770baa0100d945c5feb5025a.dip0.t-ipconnect.de) (Quit: Leaving.)
2021-06-11 23:36:42 +0000iblis(~Adium@p200300e9770baa0100d945c5feb5025a.dip0.t-ipconnect.de)
2021-06-11 23:38:18 +0000Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-06-11 23:38:48 +0000wagle(~wagle@quassel.wagle.io) (Ping timeout: 244 seconds)
2021-06-11 23:40:04 +0000fluffyballoon(~fluffybal@2620:72:0:6480::10f7) (Quit: Client closed)
2021-06-11 23:40:21 +0000wagle(~wagle@quassel.wagle.io)
2021-06-11 23:44:15 +0000sheepduck(~sheepduck@2607:fea8:2a61:4800::5d7c)
2021-06-11 23:44:51 +0000carmysilna(~brightly-@2001:470:69fc:105::2190)
2021-06-11 23:48:57 +0000sheepduck(~sheepduck@2607:fea8:2a61:4800::5d7c) (Remote host closed the connection)
2021-06-11 23:54:25 +0000wennefer0(~wennefer0@c-73-69-143-60.hsd1.ma.comcast.net)
2021-06-11 23:56:44 +0000wennefer0(~wennefer0@c-73-69-143-60.hsd1.ma.comcast.net) (Client Quit)
2021-06-11 23:59:01 +0000awth13(~user@user/awth13) (Quit: ERC (IRC client for Emacs 27.2))