Home liberachat/#haskell: Logs Calendar

Logs on 2021-06-11 (liberachat/#haskell)

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

All times are in UTC on 2021-06-11.