Home freenode/#haskell: Logs Calendar

Logs on 2020-10-29 (freenode/#haskell)

00:00:01 × mdrjr1 quits (~mdrjr@217.146.82.202) ()
00:01:13 <tput> at a glance it looks like generate will copy data to a new vector, which isn't ideal. but it might be good enough. I'll give it a try, thank you koz_
00:01:21 <koz_> tput: It might fuse.
00:01:22 polyrain joins (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c)
00:01:31 <koz_> No way to know without looking at what gets emitted.
00:01:46 <koz_> Again, if you want _certainty_, delayed arrays from massiv.
00:02:25 × ransom quits (~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Ping timeout: 240 seconds)
00:02:25 <tput> lol, indeed. rewrite rules are a blessing and a curse. I have used massiv before, but was hoping to avoid the dependency at the moment. Thanks again!
00:02:43 <koz_> No worries. I think your use case is _exactly_ where delayed arrays shine.
00:02:59 <koz_> Massiv also has a bunch of cool things that might be useful for FFTs (stencilling, for example).
00:03:24 <Axman6> is massiv basically Repa 2.0?
00:03:37 <koz_> Axman6: I guess?
00:03:39 <tput> p.s. am I speaking to Domen? I'm definitly on the sidelines of the haskell community, but I'm trying to be a little more involved.
00:03:43 <MarcelineVQ> it's like repa but bigger
00:03:49 <koz_> tput: I am not Domen Kozar.
00:03:57 <koz_> (much as I sometimes wish I was)
00:04:01 <tput> ah, took a guess on the user name, sorry.
00:04:14 <Axman6> koz_: don't let your dreams by dreams
00:04:15 <koz_> Not a bad guess. I'm some variant of 'Koz' everywhere.
00:04:27 <Axman6> be*
00:04:29 <koz_> Axman6: Don't let your grammar by grammar either.
00:04:31 <MarcelineVQ> don't let your memes be beans
00:05:17 <tput> well now it feels like a small puzzle
00:05:37 Axman6 insists on pronouncing koz_ "cuz" in his mind
00:05:41 <koz_> Basically massiv takes some adjusting to, but it's _really_ good if you genuinely care about speedy arrays.
00:05:45 <koz_> Axman6: LOL
00:05:53 <koz_> I have a cousin with axes for hands.
00:06:01 <koz_> Apparently.
00:06:06 <Axman6> I guess that makes us family
00:06:16 <koz_> LOL
00:06:33 × keep_learning quits (~keep_lear@43.231.26.152) (Quit: Leaving)
00:07:13 avoandmayo joins (~textual@122-58-158-238-adsl.sparkbb.co.nz)
00:07:24 × ph88 quits (~ph88@2a02:8109:9e40:2704:f4dc:2c7e:f773:7bca) (Quit: Leaving)
00:08:10 <Axman6> probably a better relative than Axman13, the dumbass blacksheep of the family: https://newgrounds.fandom.com/wiki/Dot_Dot_Dot_-_Animated
00:08:51 <MarcelineVQ> the cutscenes were pretty good
00:08:59 <koz_> Well, new family is always nice to discover.
00:09:14 <koz_> Good work for someone with axes for hands for sure.
00:09:25 <MarcelineVQ> I think mick would be sad to know he's still best known for dot dot dot :>
00:09:33 <Axman6> You only press One ButtEN!
00:10:16 <koz_> Yeah, so you can do it with the flat of the axe.
00:10:21 <koz_> So you don't ruin your keyboard.
00:10:42 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
00:11:25 <hololeap> i imagined them using a giant keyboard with stumps for keys
00:11:27 <koz_> I think our branch of the family made different strategic choices, as I'm (actually) related to someone who goes by 'daggerman13' online.
00:13:08 Varis joins (~Tadas@unaffiliated/varis)
00:13:44 <wretchswollen> Axman6, sorry what's the trick to get fizzbuzz to work in ghci . I'm getting "Illegal view pattern" for the lambda part
00:16:21 <tput> :set -XViewPatterns
00:16:28 × solonarv quits (~solonarv@astrasbourg-653-1-117-122.w90-33.abo.wanadoo.fr) (Ping timeout: 265 seconds)
00:17:09 <wretchswollen> oh thanks tput
00:17:16 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
00:22:31 damianfral4 joins (~damianfra@173.red-37-12-232.dynamicip.rima-tde.net)
00:25:21 × ClaudiusMaximus quits (~claude@unaffiliated/claudiusmaximus) (Quit: ...zzzZZZ)
00:31:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
00:32:09 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
00:32:20 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 256 seconds)
00:35:04 × wretchswollen quits (~john@128.32.176.159) (Ping timeout: 240 seconds)
00:35:55 × ulidtko|k quits (~ulidtko@193.111.48.79) (Remote host closed the connection)
00:36:08 pthariensflame joins (~pthariens@2600:6c52:7280:100:402a:573f:3489:c595)
00:36:09 × dansho quits (~dansho@ip68-108-167-185.lv.lv.cox.net) (Remote host closed the connection)
00:36:26 × pthariensflame quits (~pthariens@2600:6c52:7280:100:402a:573f:3489:c595) (Client Quit)
00:36:43 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
00:36:57 hackage sbv 8.9 - SMT Based Verification: Symbolic Haskell theorem prover using SMT solving. https://hackage.haskell.org/package/sbv-8.9 (LeventErkok)
00:38:20 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
00:39:08 × m0rphism quits (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 260 seconds)
00:41:01 jud joins (~jud@cpe-70-113-106-222.austin.res.rr.com)
00:41:01 × jud quits (~jud@cpe-70-113-106-222.austin.res.rr.com) (Changing host)
00:41:01 jud joins (~jud@unaffiliated/jud)
00:41:04 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds)
00:42:45 × damianfral4 quits (~damianfra@173.red-37-12-232.dynamicip.rima-tde.net) (Ping timeout: 240 seconds)
00:44:52 × nyaomi quits (~naomi@2604:6000:1509:c86e:c878:29ff:fedf:ce89) (Quit: meow)
00:48:56 christo joins (~chris@81.96.113.213)
00:49:04 × taurux quits (~taurux@net-188-216-115-134.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
00:49:57 × djellemah quits (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) (Ping timeout: 260 seconds)
00:50:24 djellemah joins (~djellemah@c-73-12-31-179.hsd1.va.comcast.net)
00:51:01 taurux joins (~taurux@net-188-216-115-134.cust.vodafonedsl.it)
00:51:26 poorlyknitmonad joins (2edfa393@HSI-KBW-46-223-163-147.hsi.kabel-badenwuerttemberg.de)
00:53:41 nbloomf joins (~nbloomf@2600:1700:ad14:3020:1c75:523e:ddcb:cd98)
00:53:56 tflgen2 joins (~tflgen2@178.162.212.214)
00:56:17 damianfral4 joins (~damianfra@173.red-37-12-232.dynamicip.rima-tde.net)
01:01:53 olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber)
01:05:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
01:07:44 alp_ joins (~alp@2a01:e0a:58b:4920:589a:775e:5f4f:1d0b)
01:08:19 vonfry joins (~user@178.128.212.63)
01:08:33 × alp quits (~alp@2a01:e0a:58b:4920:494c:d829:c480:230f) (Ping timeout: 272 seconds)
01:09:57 × nineonine quits (~textual@216.81.48.202) (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:09:57 hackage which 0.1.0.1 - Determine the full path to an executable. https://hackage.haskell.org/package/which-0.1.0.1 (abrar)
01:11:04 × Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 260 seconds)
01:14:32 × aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
01:14:47 aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net)
01:19:44 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds)
01:19:58 Lord_of_Life joins (~Lord@46.217.220.26)
01:20:30 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
01:22:54 nyaomi joins (~naomi@cpe-74-75-6-125.maine.res.rr.com)
01:23:51 × notnatebtw quits (~nate@125.161.130.165) (Quit: WeeChat 2.9)
01:24:10 × poorlyknitmonad quits (2edfa393@HSI-KBW-46-223-163-147.hsi.kabel-badenwuerttemberg.de) (Remote host closed the connection)
01:35:00 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
01:35:16 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 272 seconds)
01:35:43 magnuscake joins (~magnuscak@103.44.33.121)
01:36:44 × darjeeling_ quits (~darjeelin@115.215.42.47) (Ping timeout: 240 seconds)
01:36:50 <magnuscake> Hey guys. So I'm currently diving into understanding typeclass and instances and I came across this syntax
01:36:58 <magnuscake> data Trivial =
01:37:05 <magnuscake> Trivial'
01:37:13 <magnuscake> instance Eq Trivial where
01:37:25 <magnuscake> Trivial' == Trivial' = True
01:37:32 <magnuscake> My question is why are we using Trivial' instead of Trivial? Don't they technically mean the same thing?
01:37:47 <c_wraith> One is the name of the type, the other is the name of the constructor
01:37:58 <c_wraith> did you misread "data" as "type" in the declaration?
01:38:12 <c_wraith> I wish introductory materials never mentioned "type". It more or less shouldn't be used.
01:38:26 <magnuscake> Sorry so Trivial' is the type in this case?
01:38:36 × alp_ quits (~alp@2a01:e0a:58b:4920:589a:775e:5f4f:1d0b) (Ping timeout: 268 seconds)
01:38:43 <c_wraith> No, Trivial is the type. Trivial' is the data constructor
01:39:17 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
01:39:32 <magnuscake> Ah yeah that makes sense
01:40:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
01:40:33 <magnuscake> Yeah it does make it difficult to keep track of type and constructor in the beginning
01:41:37 × polyrain quits (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:41:56 <c_wraith> The funny thing is that I'm sure that example used that because they think it's too confusing when a type and its constructor have the same name
01:42:18 <c_wraith> Even though I'm sure no one has ever been confused by (,) having the same name as a type and as a constructor
01:46:13 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
01:46:57 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
01:51:40 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
01:52:15 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Ping timeout: 272 seconds)
01:54:55 xerox_ joins (~xerox@unaffiliated/xerox)
01:55:07 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:1c75:523e:ddcb:cd98) (Quit: My MacBook has gone to sleep. ZZZzzz…)
01:55:58 × Aquazi quits (uid312403@gateway/web/irccloud.com/x-roarfkilnkqrlcqj) (Quit: Connection closed for inactivity)
01:59:08 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
02:00:02 wei2912 joins (~wei2912@unaffiliated/wei2912)
02:00:03 × milessabin quits (sid86799@gateway/web/irccloud.com/x-tsnesmrcjrlroviv) (Read error: Connection reset by peer)
02:00:12 × Kamuela quits (sid111576@gateway/web/irccloud.com/x-sdeipatzzilccgnx) (Ping timeout: 260 seconds)
02:00:12 × rslima_____ quits (sid26145@gateway/web/irccloud.com/x-svaniiqnbyfvpeqv) (Ping timeout: 260 seconds)
02:00:19 × J_Arcane quits (sid119274@gateway/web/irccloud.com/x-bqxivhzktyeyfmzj) (Read error: Connection reset by peer)
02:00:32 × taktoa[c] quits (sid282096@gateway/web/irccloud.com/x-mhwfcebznpkovctx) (Ping timeout: 260 seconds)
02:00:38 × ocharles quits (sid30093@musicbrainz/user/ocharles) (Read error: Connection reset by peer)
02:00:44 × glowcoil quits (sid3405@gateway/web/irccloud.com/x-pkehsujwjkxhciwt) (Ping timeout: 256 seconds)
02:00:48 rslima_____ joins (sid26145@gateway/web/irccloud.com/x-fgvrtbnpeqwbcevi)
02:00:49 milessabin joins (sid86799@gateway/web/irccloud.com/x-sikstaduqanjrikp)
02:00:58 Kamuela joins (sid111576@gateway/web/irccloud.com/x-uvvegwfyydfudwfg)
02:01:01 ocharles joins (sid30093@musicbrainz/user/ocharles)
02:01:06 J_Arcane joins (sid119274@gateway/web/irccloud.com/x-ivyumcmbhtoteijd)
02:01:16 × agander_m quits (sid407952@gateway/web/irccloud.com/x-jwoqulslpyqlylbi) (Read error: Connection reset by peer)
02:01:23 × typetetris quits (sid275937@gateway/web/irccloud.com/x-arltcnyiruapbdou) (Ping timeout: 260 seconds)
02:01:25 × jackdk quits (sid373013@gateway/web/irccloud.com/x-xnbaqmiqnfknxnjx) (Ping timeout: 240 seconds)
02:01:27 × dani- quits (sid341953@gateway/web/irccloud.com/x-dmefyomzdfqtzrok) (Read error: Connection reset by peer)
02:01:35 nbloomf joins (~nbloomf@76.217.43.73)
02:01:36 agander_m joins (sid407952@gateway/web/irccloud.com/x-wvuflyjbjmlajpto)
02:01:44 dani- joins (sid341953@gateway/web/irccloud.com/x-btnxpfbxhslylctw)
02:01:45 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer)
02:01:56 × kristjansson quits (sid126207@gateway/web/irccloud.com/x-gnpvtzvuodufjtmg) (Ping timeout: 260 seconds)
02:02:08 jackdk joins (sid373013@gateway/web/irccloud.com/x-iryzpzzygtrtkbbz)
02:02:59 typetetris joins (sid275937@gateway/web/irccloud.com/x-sdhyqriahiqslcsk)
02:02:59 taktoa[c] joins (sid282096@gateway/web/irccloud.com/x-xetnenikiqaoibky)
02:03:01 glowcoil joins (sid3405@gateway/web/irccloud.com/x-dkdpshuvsuixqjqw)
02:03:44 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
02:04:02 kristjansson joins (sid126207@gateway/web/irccloud.com/x-wreqehnlduflmpbh)
02:05:04 × milessabin quits (sid86799@gateway/web/irccloud.com/x-sikstaduqanjrikp) (Ping timeout: 240 seconds)
02:05:10 × urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna)
02:08:12 × magnuscake quits (~magnuscak@103.44.33.121) (Quit: Leaving)
02:09:31 × nuxdie quits (uid343142@gateway/web/irccloud.com/x-eubxksbuxauhuttg) (Quit: Connection closed for inactivity)
02:11:34 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:11:45 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
02:14:08 × nbloomf quits (~nbloomf@76.217.43.73) (Read error: Connection reset by peer)
02:14:12 nbloomf_ joins (~nbloomf@2600:1700:ad14:3020:e5a9:395e:fb06:bd56)
02:15:03 tuple joins (~igloo@66.115.157.61)
02:15:24 × tuple quits (~igloo@66.115.157.61) (Client Quit)
02:16:36 milessabin joins (sid86799@gateway/web/irccloud.com/x-hmwhfzuctmzszqzh)
02:24:41 justan0theruser joins (~justanoth@unaffiliated/justanotheruser)
02:25:07 xsperry joins (~as@unaffiliated/xsperry)
02:26:26 × bennofs1 quits (~benno@dslb-178-000-065-150.178.000.pools.vodafone-ip.de) (Quit: WeeChat 2.9)
02:26:26 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 264 seconds)
02:32:28 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
02:36:44 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
02:37:11 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
02:37:49 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
02:38:10 toorevitimirp joins (~tooreviti@117.182.180.36)
02:39:52 × vonfry quits (~user@178.128.212.63) (Remote host closed the connection)
02:40:11 vonfry joins (~user@116.236.75.207)
02:42:02 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
02:43:14 vonfry` joins (~user@178.128.212.63)
02:43:44 Jonkimi727406120 joins (~Jonkimi@119.123.241.90)
02:44:04 × djellemah quits (~djellemah@c-73-12-31-179.hsd1.va.comcast.net) (Ping timeout: 240 seconds)
02:45:49 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
02:47:26 × vonfry quits (~user@116.236.75.207) (Ping timeout: 264 seconds)
02:49:14 × vonfry` quits (~user@178.128.212.63) (Remote host closed the connection)
02:49:46 vonfry` joins (~user@116.236.75.207)
02:50:55 mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1)
02:52:38 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
02:52:47 falafel joins (~falafel@71-34-132-121.clsp.qwest.net)
02:54:38 × vonfry` quits (~user@116.236.75.207) (Ping timeout: 264 seconds)
02:55:01 xff0x_ joins (~fox@2001:1a81:528e:cb00:6c8e:24a5:6afd:e566)
02:55:04 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
02:57:56 × xff0x quits (~fox@83.236.18.113) (Ping timeout: 260 seconds)
02:58:30 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
03:00:01 × tflgen2 quits (~tflgen2@178.162.212.214) ()
03:02:02 × acidjnk_new2 quits (~acidjnk@p200300d0c7226033a9f8e60d1c4e3d2a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
03:03:42 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 268 seconds)
03:05:24 × akad_ quits (~akad@109107030050.radomsko.vectranet.pl) (Ping timeout: 260 seconds)
03:07:08 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
03:10:02 × sveit quits (~sveit@2001:19f0:ac01:247:5400:ff:fe5c:689f) (Quit: Bye)
03:10:18 sveit joins (~sveit@45.77.0.246)
03:12:25 lagothrix is now known as Guest49151
03:12:25 × Guest49151 quits (~lagothrix@unaffiliated/lagothrix) (Killed (card.freenode.net (Nickname regained by services)))
03:12:32 lagothrix joins (~lagothrix@unaffiliated/lagothrix)
03:12:39 polyrain joins (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c)
03:13:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
03:14:17 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
03:15:37 × Chi1thangoo quits (~Chi1thang@87.112.60.168) (Ping timeout: 246 seconds)
03:15:51 drbean joins (~drbean@TC210-63-209-82.static.apol.com.tw)
03:16:28 hackage predicate-typed 0.7.4.0 - Predicates, Refinement types and Dsl https://hackage.haskell.org/package/predicate-typed-0.7.4.0 (gbwey)
03:18:19 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
03:18:30 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
03:19:12 christo joins (~chris@81.96.113.213)
03:19:14 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 264 seconds)
03:19:20 vicfred joins (~vicfred@unaffiliated/vicfred)
03:19:48 Gurkenglas_ is now known as Gurkenglas
03:21:14 mdrjr1 joins (~mdrjr@154.13.1.56)
03:22:13 Stanley00 joins (~stanley00@unaffiliated/stanley00)
03:22:37 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds)
03:24:58 Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4)
03:31:09 × howdoi quits (uid224@gateway/web/irccloud.com/x-npushggnkcvoclse) (Quit: Connection closed for inactivity)
03:31:24 × mimi1vx quits (~mimi@tulipan.habr.nat.praha12.net) (Ping timeout: 256 seconds)
03:31:50 × falafel quits (~falafel@71-34-132-121.clsp.qwest.net) (Ping timeout: 264 seconds)
03:32:56 × theDon quits (~td@muedsl-82-207-238-123.citykom.de) (Ping timeout: 260 seconds)
03:34:34 theDon joins (~td@muedsl-82-207-238-079.citykom.de)
03:34:48 × ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 260 seconds)
03:37:39 mbomba joins (~mbomba@142.114.9.241)
03:38:27 hackage esqueleto 3.4.0.0 - Type-safe EDSL for SQL queries on persistent backends. https://hackage.haskell.org/package/esqueleto-3.4.0.0 (parsonsmatt)
03:41:07 juliusdeane joins (~user@130.64.35.16)
03:41:16 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
03:42:05 <juliusdeane> what's the process for specifying a dependency from github with cabal2nix?
03:46:15 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
03:50:10 hongminh1e is now known as hongminhee
03:52:16 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
03:52:44 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds)
03:54:41 × nbloomf_ quits (~nbloomf@2600:1700:ad14:3020:e5a9:395e:fb06:bd56) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:57:35 mimi1vx joins (~mimi@2a01:490:16:1026:3ddc:b7b4:53e2:6f04)
03:58:08 × sveit quits (~sveit@45.77.0.246) (Quit: Bye)
03:59:41 jcowan parts (sid325434@gateway/web/irccloud.com/x-evadozowlzlhtjmy) ()
04:00:31 Rudd0 joins (~Rudd0@185.189.115.98)
04:02:13 sveit joins (~sveit@2001:19f0:ac01:247:5400:ff:fe5c:689f)
04:03:18 DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
04:06:13 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 264 seconds)
04:06:25 × Wuzzy quits (~Wuzzy@p5790ef06.dip0.t-ipconnect.de) (Remote host closed the connection)
04:12:22 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
04:14:37 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Ping timeout: 268 seconds)
04:15:44 × toorevitimirp quits (~tooreviti@117.182.180.36) (Ping timeout: 240 seconds)
04:16:02 toorevitimirp joins (~tooreviti@117.182.180.36)
04:16:42 × vacm quits (~vacwm@70.23.92.191) (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:17:10 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 265 seconds)
04:18:05 × drbean quits (~drbean@TC210-63-209-82.static.apol.com.tw) (Ping timeout: 240 seconds)
04:21:46 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
04:22:37 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
04:26:08 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
04:26:37 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
04:28:06 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
04:28:23 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
04:29:14 × jakob_ quits (~textual@p57b0eae0.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
04:30:40 christo joins (~chris@81.96.113.213)
04:32:16 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 246 seconds)
04:37:51 nineonine joins (~textual@216-19-190-182.dyn.novuscom.net)
04:38:29 jakob_ joins (~textual@p200300f49f1622005170e88643324e4f.dip0.t-ipconnect.de)
04:39:05 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 240 seconds)
04:41:50 × dolio quits (~dolio@haskell/developer/dolio) (Quit: ZNC 1.8.2 - https://znc.in)
04:41:59 × Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
04:44:00 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
04:46:03 dolio joins (~dolio@haskell/developer/dolio)
04:49:57 × dolio quits (~dolio@haskell/developer/dolio) (Read error: Connection reset by peer)
04:50:45 dolio joins (~dolio@haskell/developer/dolio)
04:51:14 × mbomba quits (~mbomba@142.114.9.241) (Quit: WeeChat 2.9)
04:53:38 Sanchayan joins (~Sanchayan@122.167.95.166)
04:53:45 mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1)
04:54:56 × dolio quits (~dolio@haskell/developer/dolio) (Read error: Connection reset by peer)
04:55:05 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:55:58 dolio joins (~dolio@haskell/developer/dolio)
05:00:04 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
05:03:13 _vaibhavingale_ joins (~Adium@203.188.228.9)
05:03:45 × juliusdeane quits (~user@130.64.35.16) (Ping timeout: 240 seconds)
05:05:39 nbloomf joins (~nbloomf@2600:1700:ad14:3020:e5a9:395e:fb06:bd56)
05:06:26 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
05:07:31 xerox_ joins (~xerox@unaffiliated/xerox)
05:07:52 day_ joins (~Unknown@unaffiliated/day)
05:08:34 cheater1 joins (~user@unaffiliated/cheater)
05:10:26 × cheater quits (~user@unaffiliated/cheater) (Ping timeout: 258 seconds)
05:10:29 cheater1 is now known as cheater
05:11:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 260 seconds)
05:11:37 × day quits (~Unknown@unaffiliated/day) (Ping timeout: 264 seconds)
05:11:37 day_ is now known as day
05:12:06 × Saukk quits (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection)
05:13:13 falafel_ joins (~falafel@71-34-132-121.clsp.qwest.net)
05:15:12 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
05:19:49 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
05:28:44 × tdhttt quits (~tdhttt@2600:8802:2203:2500:49a:4401:3967:ca62) (Ping timeout: 240 seconds)
05:31:03 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
05:32:09 tdhttt joins (~tdhttt@89.45.90.31)
05:33:57 hackage hurl 1.4.2.1 - Haskell URL resolver https://hackage.haskell.org/package/hurl-1.4.2.1 (alcinnz)
05:34:21 darjeeling_ joins (~darjeelin@112.16.171.8)
05:35:24 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
05:35:39 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
05:36:34 × jakob_ quits (~textual@p200300f49f1622005170e88643324e4f.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
05:37:09 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
05:38:13 dustypacer joins (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4)
05:38:43 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:e5a9:395e:fb06:bd56) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:39:57 christo joins (~chris@81.96.113.213)
05:40:43 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
05:50:19 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 246 seconds)
05:50:49 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Ping timeout: 268 seconds)
05:52:42 bartemius joins (~bartemius@109.252.20.20)
05:56:32 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
06:00:01 × mdrjr1 quits (~mdrjr@154.13.1.56) ()
06:00:31 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
06:02:31 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:04:30 × dustypacer quits (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4) (Quit: Leaving)
06:04:56 dustypacer joins (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4)
06:05:33 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 260 seconds)
06:11:10 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
06:13:05 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
06:16:43 mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1)
06:18:17 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
06:18:26 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
06:21:38 × xff0x_ quits (~fox@2001:1a81:528e:cb00:6c8e:24a5:6afd:e566) (Ping timeout: 264 seconds)
06:21:58 DpEpsilon1 joins (~DpEpsilon@s91904426.blix.com)
06:22:10 xff0x_ joins (~fox@port-92-193-232-58.dynamic.as20676.net)
06:22:28 hackage persistent-vector 0.2.0 - A persistent sequence based on array mapped tries https://hackage.haskell.org/package/persistent-vector-0.2.0 (TristanRavitch)
06:23:35 × wagle quits (~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
06:24:05 wagle joins (~wagle@quassel.wagle.io)
06:25:03 damianfral joins (~damianfra@166.red-2-142-239.dynamicip.rima-tde.net)
06:26:44 × damianfral4 quits (~damianfra@173.red-37-12-232.dynamicip.rima-tde.net) (Ping timeout: 240 seconds)
06:28:58 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
06:30:13 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
06:31:11 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
06:32:37 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
06:33:33 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
06:33:52 × Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
06:37:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
06:38:26 × falafel_ quits (~falafel@71-34-132-121.clsp.qwest.net) (Ping timeout: 264 seconds)
06:39:18 <eedgit> Writing a test for a rotation function, I'm using an auxiliary function (which I think is the best way to keep as much 'pure' ?). Should I be testing for both functions - or is only 1 needed? https://dpaste.org/4NYa
06:40:05 × toorevitimirp quits (~tooreviti@117.182.180.36) (Ping timeout: 260 seconds)
06:40:41 × nineonine quits (~textual@216-19-190-182.dyn.novuscom.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:42:18 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
06:42:37 × p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 268 seconds)
06:42:38 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
06:43:35 <dsal> The concept of a property is something that's meant to be true about your function. Neither `streamPop` nor `prop_stream` communicate a whole lot about what they're meant to do. If `rot` is what you're trying to write, then what interesting properties does it have?
06:45:26 christo joins (~chris@81.96.113.213)
06:46:25 × barrucadu quits (~barrucadu@fsf/member/barrucadu) (Remote host closed the connection)
06:50:10 × alx741 quits (~alx741@186.178.110.246) (Ping timeout: 246 seconds)
06:50:13 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
06:50:44 alx741 joins (~alx741@186.178.110.246)
06:53:25 × dustypacer quits (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4) (Quit: Leaving)
06:53:26 asheshambasta joins (~user@ptr-e1lysawl9rr13i61o92.18120a2.ip6.access.telenet.be)
06:54:06 dustypacer joins (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4)
06:55:17 <eedgit> dsal Thanks I'll have a think - is there a more appropriate name? streamPop made sense to me as take->drop->cycle felt like 'popping' the values out using a sliding-window over a 'stream' (the infinite/circular list)
06:55:40 <dsal> e.g., if you replace the implementation of `streamPop` with `flip const` your property holds. However, if you test `rot` there may be interesting properties such as `rot == transpose . rot`
06:56:12 <dsal> It's just a list of the rotations. You could call it `rotations` or something. Naming is hard.
06:57:12 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
06:57:30 × polyrain quits (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:57:58 <dsal> > iterate (\(x:xs) -> xs <> [x]) "abc"
06:58:00 <lambdabot> ["abc","bca","cab","abc","bca","cab","abc","bca","cab","abc","bca","cab","ab...
06:58:00 <eedgit> cool thanks :)
06:58:02 × damianfral quits (~damianfra@166.red-2-142-239.dynamicip.rima-tde.net) (Ping timeout: 268 seconds)
06:59:43 mananamenos joins (~mananamen@84.122.202.215.dyn.user.ono.com)
07:00:55 m0rphism joins (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
07:01:45 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
07:04:30 [rg] joins (63f22acf@cpe589630b81951-cm589630b8194f.cpe.net.cable.rogers.com)
07:05:24 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Ping timeout: 240 seconds)
07:06:28 × m0rphism quits (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 260 seconds)
07:08:25 × [rg] quits (63f22acf@cpe589630b81951-cm589630b8194f.cpe.net.cable.rogers.com) (Remote host closed the connection)
07:09:45 × justan0theruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 268 seconds)
07:13:19 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:16:53 nineonine joins (~textual@216-19-190-182.dyn.novuscom.net)
07:18:51 × nineonine quits (~textual@216-19-190-182.dyn.novuscom.net) (Client Quit)
07:19:28 toorevitimirp joins (~tooreviti@117.182.180.36)
07:27:47 dhouthoo joins (~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
07:28:16 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
07:29:59 proquint joins (67e75ebe@103.231.94.190)
07:30:12 alp_ joins (~alp@2a01:e0a:58b:4920:48bc:fb07:c437:122b)
07:30:13 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
07:31:46 <proquint> How do I break a bytestring into 4-bit and 2-bit integers? I'm trying to print the proquint of a 48-bit number (https://arxiv.org/html/0901.4016)
07:33:02 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
07:34:54 <proquint> I want to break a 16-bit word into 4-bit, 2-bit, 4-bit, 2-bit, 4-bit numbers and map those numbers to letters.
07:34:54 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
07:35:02 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 268 seconds)
07:36:05 × hiroaki quits (~hiroaki@ip4d176049.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
07:39:14 <int-e> > let rotations xs = cycle . map (zipWith (flip const) xs) . zipWith (flip const) xs . tails . cycle $ xs in rotations "abc" -- hmm, maybe a bit over-engineered
07:39:16 <lambdabot> ["abc","bca","cab","abc","bca","cab","abc","bca","cab","abc","bca","cab","ab...
07:40:06 × uwap quits (~uwap@genja.uwap.name) (Quit: ZNC 1.8.0 - https://znc.in)
07:42:02 britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch)
07:42:40 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
07:44:15 cfricke joins (~cfricke@unaffiliated/cfricke)
07:45:06 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
07:47:04 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
07:47:22 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
07:47:43 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
07:52:17 × otulp quits (~otulp@ti0187q162-5696.bb.online.no) (Ping timeout: 260 seconds)
07:53:25 × sakirious quits (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net) (Ping timeout: 240 seconds)
07:53:44 × tput quits (~user@S0106a84e3fe54613.ed.shawcable.net) (Ping timeout: 240 seconds)
07:54:09 uwap joins (~uwap@genja.uwap.name)
07:55:59 vicfred_ joins (~vicfred@unaffiliated/vicfred)
07:57:43 Zetagon joins (~leo@c151-177-52-233.bredband.comhem.se)
07:58:31 × xsperry quits (~as@unaffiliated/xsperry) (Remote host closed the connection)
07:58:37 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
07:58:37 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
07:58:37 GyroW_ joins (~GyroW@unaffiliated/gyrow)
07:59:05 × vicfred quits (~vicfred@unaffiliated/vicfred) (Ping timeout: 268 seconds)
07:59:31 kritzefitz joins (~kritzefit@fw-front.credativ.com)
07:59:44 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
08:00:21 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
08:02:18 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
08:02:18 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
08:02:18 GyroW joins (~GyroW@unaffiliated/gyrow)
08:03:04 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
08:03:47 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
08:04:54 polyrain joins (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c)
08:06:27 mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1)
08:06:46 Varis joins (~Tadas@unaffiliated/varis)
08:08:45 × jespada quits (~jespada@90.254.243.98) (Ping timeout: 260 seconds)
08:10:56 jespada joins (~jespada@90.254.243.98)
08:12:29 sakirious joins (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net)
08:14:20 × ndbopoi^ quits (ndbopoi@ip98-184-89-2.mc.at.cox.net) (Ping timeout: 256 seconds)
08:14:45 ndbopoi^ joins (~hph@ip98-184-89-2.mc.at.cox.net)
08:14:46 × ndbopoi^ quits (~hph@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:14:59 × Lord_of_Life quits (~Lord@46.217.220.26) (Changing host)
08:14:59 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
08:15:01 ndbopoi^ joins (nehsou@ip98-184-89-2.mc.at.cox.net)
08:15:02 × ndbopoi^ quits (nehsou@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:15:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
08:15:16 ndbopoi^ joins (aeoifvotdt@ip98-184-89-2.mc.at.cox.net)
08:15:17 × ndbopoi^ quits (aeoifvotdt@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:15:32 ndbopoi^ joins (nehsou@ip98-184-89-2.mc.at.cox.net)
08:15:33 × ndbopoi^ quits (nehsou@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:15:44 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 268 seconds)
08:15:48 ndbopoi^ joins (aeoifvotdt@ip98-184-89-2.mc.at.cox.net)
08:15:49 × ndbopoi^ quits (aeoifvotdt@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:16:03 ndbopoi^ joins (nehsou@ip98-184-89-2.mc.at.cox.net)
08:16:04 × ndbopoi^ quits (nehsou@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:16:19 ndbopoi^ joins (krt@ip98-184-89-2.mc.at.cox.net)
08:16:20 × ndbopoi^ quits (krt@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:16:35 ndbopoi^ joins (~hph@ip98-184-89-2.mc.at.cox.net)
08:16:36 × ndbopoi^ quits (~hph@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:16:45 × sakirious quits (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net) (Ping timeout: 240 seconds)
08:16:50 ndbopoi^ joins (ndbopoi@ip98-184-89-2.mc.at.cox.net)
08:16:51 × ndbopoi^ quits (ndbopoi@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:17:06 ndbopoi^ joins (ndbopoi@ip98-184-89-2.mc.at.cox.net)
08:17:07 × ndbopoi^ quits (ndbopoi@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:17:22 ndbopoi^ joins (ndbopoi@ip98-184-89-2.mc.at.cox.net)
08:17:23 × ndbopoi^ quits (ndbopoi@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:17:37 ndbopoi^ joins (ndbopoi@ip98-184-89-2.mc.at.cox.net)
08:17:38 × ndbopoi^ quits (ndbopoi@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:17:55 ndbopoi^ joins (krt@ip98-184-89-2.mc.at.cox.net)
08:17:56 × ndbopoi^ quits (krt@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:18:11 ndbopoi^ joins (~hph@ip98-184-89-2.mc.at.cox.net)
08:18:12 × ndbopoi^ quits (~hph@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
08:18:20 thc202 joins (~thc202@unaffiliated/thc202)
08:18:21 sakirious joins (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net)
08:27:58 hackage ngx-export-tools-extra 0.5.7.0 - More extra tools for Nginx haskell module https://hackage.haskell.org/package/ngx-export-tools-extra-0.5.7.0 (lyokha)
08:28:32 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
08:29:02 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
08:29:40 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
08:31:26 × cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
08:32:26 idhugo joins (~idhugo@users-1190.st.net.au.dk)
08:33:44 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
08:33:57 chele joins (~chele@ip5b416ea2.dynamic.kabel-deutschland.de)
08:34:03 mrc joins (~mrc@81.30.75.204)
08:34:16 mrc is now known as Guest84165
08:36:20 nschoe joins (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a)
08:36:43 × nlhowell quits (~nlhowell@don28-11.ln.rinet.ru) (Ping timeout: 265 seconds)
08:36:43 dyeplexer joins (~lol@unaffiliated/terpin)
08:39:15 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
08:39:37 × taurux quits (~taurux@net-188-216-115-134.cust.vodafonedsl.it) (Ping timeout: 265 seconds)
08:39:52 taurux joins (~taurux@net-130-25-114-244.cust.vodafonedsl.it)
08:41:20 × Tario quits (~Tario@201.192.165.173) (Remote host closed the connection)
08:42:07 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
08:42:48 × dorkside quits (~tdbgamer@208.190.197.222) (Ping timeout: 258 seconds)
08:43:06 <dminuoso> 09:41:53 juliusdeane | [03:42:05] what's the process for specifying a dependency from github with cabal2nix?
08:43:10 <dminuoso> Oh, they're gone
08:46:25 <dminuoso> proquint: Use Data.ByteString.unpack and then masking/shifting from Data.Bits
08:46:32 <tomsmeding> proquint: https://paste.tomsmeding.com/W9HxzL4y
08:46:37 <tomsmeding> lol
08:47:17 vonfry joins (~user@116.236.75.207)
08:47:26 <dminuoso> tomsmeding: I have a homework assignment, I need to write a fully functional RADIUS library. Do you have a paste ready for me?
08:47:30 <dminuoso> :>
08:47:37 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
08:47:39 <tomsmeding> :p
08:47:52 <proquint> tomsmending: lol awesome thank you... I stumbled upon the Data.Bits myself but you beat me to the implementation. Thanks!
08:48:04 tomsmeding tips hat
08:48:27 <tomsmeding> spec is unclear though
08:48:48 <dminuoso> tomsmeding: Do you think you can give me an answer in 5 minutes for that problem as well?
08:48:54 <tomsmeding> not prominent enough that this is strictly about data of an even number of bytes, and the 4-2 sequence does not cycle, only within a single nibble
08:48:58 <tomsmeding> correction, word
08:49:10 <tomsmeding> replace 'nibble' with 'word' in my code proquint
08:49:12 <dminuoso> The term "nibble" and "word" are so ill defined.
08:49:19 <tomsmeding> nibblewibble
08:49:22 <tomsmeding> dminuoso: no
08:49:38 <dminuoso> oh well. nibble is well defined
08:49:40 <dminuoso> word is not
08:49:47 <tomsmeding> ah that's true
08:49:54 × hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-dqhgzgfgsjzhioqy) (Quit: Connection closed for inactivity)
08:49:58 × polyrain quits (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:50:18 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
08:50:20 <tomsmeding> dminuoso: it would be nice if I could pull the same trick with writing an automatic differentiation engine, wouldn't it?
08:50:26 <tomsmeding> then my thesis would be simpler
08:50:33 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
08:50:36 <merijn> dminuoso: It's not :p
08:50:38 <dminuoso> Heh, the difference is my task is just of mechanical nature.
08:50:46 <dminuoso> merijn: It really is.
08:50:49 <merijn> dminuoso: Hell, byte isn't even well defined if you mix in C
08:50:59 <dminuoso> The term byte in general is often misunderstood
08:51:04 <dminuoso> Too many conflate it with octet
08:51:17 <dminuoso> But so many people dont work with DSPs or legacy hardware..
08:51:53 <dminuoso> Fun fact, I've seen an architecture where function pointers were 15 bits.
08:51:56 <tomsmeding> I already have trouble working with modern hardware
08:52:10 × GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection)
08:52:29 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
08:52:29 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
08:52:29 GyroW joins (~GyroW@unaffiliated/gyrow)
08:52:55 <tomsmeding> dminuoso: interesting, did one store function pointers in separate kinds of registers, or are all registers 15 bits, or are they 16 and one bit is just ignored?
08:53:10 <dminuoso> merijn: Anyway. Regarding word, there's two conflating notions. It either is the native size CPUs operate on (which doesnt even make sense on CPUs built in the past 30 years, they have many different word widths, depending on the instructions), or its 16 bits if you enter the world of assembers.
08:54:45 <dminuoso> Because historical reasons, and people writing bad assembly code.
08:55:09 christo joins (~chris@81.96.113.213)
08:55:49 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 268 seconds)
08:56:39 polyrain joins (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c)
08:56:54 × proquint quits (67e75ebe@103.231.94.190) (Remote host closed the connection)
08:57:09 <dminuoso> tomsmeding: I dont know the reasons really, it was directly from some something-not-quite-like-C language specification for a texas instruments DSP.
08:57:24 phr0m3indh0v3n joins (~Android@188.90.94.167)
08:57:46 <dminuoso> (Or maybe it was 31 bits, one of them anyhow)
08:58:05 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
08:58:15 <tomsmeding> funny things
08:59:01 × mmohammadi9812 quits (~mmohammad@2.178.160.31) (Ping timeout: 264 seconds)
08:59:19 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
08:59:52 × christo quits (~chris@81.96.113.213) (Ping timeout: 272 seconds)
09:00:01 kuribas joins (~user@ptr-25vy0i9qqlftcl4jjst.18120a2.ip6.access.telenet.be)
09:00:01 × DpEpsilon1 quits (~DpEpsilon@s91904426.blix.com) ()
09:00:05 × CaptainFox[m] quits (onianimatr@gateway/shell/matrix.org/x-szolbyecjnlczmzs) (Quit: Idle for 30+ days)
09:01:06 mmohammadi9812 joins (~mmohammad@5.116.92.37)
09:01:41 vonfry parts (~user@116.236.75.207) ("ERC (IRC client for Emacs 27.1)")
09:01:59 × darjeeling_ quits (~darjeelin@112.16.171.8) (Ping timeout: 268 seconds)
09:04:19 × mozzarella quits (~sam@unaffiliated/sam113101) (Read error: Connection reset by peer)
09:05:04 gnumonic_ joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
09:05:42 mozzarella joins (~sam@unaffiliated/sam113101)
09:06:08 × phr0m3indh0v3n quits (~Android@188.90.94.167) (Quit: -a- IRC for Android 2.1.59)
09:07:39 × gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
09:08:58 Franciman joins (~francesco@host-82-54-10-114.retail.telecomitalia.it)
09:11:19 mimi_vx joins (~mimi@tulipan.habr.nat.praha12.net)
09:11:54 × michalrus quits (m@michalrus.com) (Ping timeout: 272 seconds)
09:12:23 votefortrump joins (3dded63f@61-222-214-63.HINET-IP.hinet.net)
09:14:26 × mimi1vx quits (~mimi@2a01:490:16:1026:3ddc:b7b4:53e2:6f04) (Ping timeout: 264 seconds)
09:15:14 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
09:17:21 × GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection)
09:17:33 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
09:17:34 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
09:17:34 GyroW joins (~GyroW@unaffiliated/gyrow)
09:19:34 × jonathanx quits (~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
09:19:44 × idhugo quits (~idhugo@users-1190.st.net.au.dk) (Remote host closed the connection)
09:19:58 jonathanx joins (~jonathan@dyn-8-sc.cdg.chalmers.se)
09:20:16 Aquazi joins (uid312403@gateway/web/irccloud.com/x-hdjxwzczxilznuyg)
09:20:42 × taurux quits (~taurux@net-130-25-114-244.cust.vodafonedsl.it) (Ping timeout: 265 seconds)
09:20:44 × benjamin-l quits (~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60) (Ping timeout: 240 seconds)
09:21:12 idhugo joins (~idhugo@users-1190.st.net.au.dk)
09:21:28 wright joins (~wright@154.13.1.56)
09:22:32 taurux joins (~taurux@net-93-151-195-63.cust.vodafonedsl.it)
09:27:11 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
09:28:06 michalrus joins (m@michalrus.com)
09:28:34 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
09:29:10 × votefortrump quits (3dded63f@61-222-214-63.HINET-IP.hinet.net) (Remote host closed the connection)
09:29:51 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
09:29:58 hackage uusi 0.0.1.0 - Remove all version constraints of dependencies in .cabal file https://hackage.haskell.org/package/uusi-0.0.1.0 (berberman)
09:32:01 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
09:33:26 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
09:33:41 knupfer joins (~Thunderbi@200116b82cb50a00a447ccfffef86d6b.dip.versatel-1u1.de)
09:34:50 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
09:36:05 × knupfer quits (~Thunderbi@200116b82cb50a00a447ccfffef86d6b.dip.versatel-1u1.de) (Remote host closed the connection)
09:36:19 knupfer joins (~Thunderbi@200116b82cb50a006c81a39a2011bb8b.dip.versatel-1u1.de)
09:37:32 benjamin-l joins (~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60)
09:41:25 × avoandmayo quits (~textual@122-58-158-238-adsl.sparkbb.co.nz) (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:43:59 <merijn> that... doesn't sound like a good feature
09:52:44 × bliminse quits (~bliminse@host109-158-129-241.range109-158.btcentralplus.com) (Ping timeout: 240 seconds)
09:53:52 bliminse joins (~bliminse@host109-158-129-241.range109-158.btcentralplus.com)
10:00:46 <Uniaika> yep'
10:04:14 × carlomagno1 quits (~cararell@148.87.23.8) (Remote host closed the connection)
10:05:48 carlomagno joins (~cararell@148.87.23.8)
10:07:39 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
10:07:44 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
10:07:44 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
10:07:44 GyroW_ joins (~GyroW@unaffiliated/gyrow)
10:08:04 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 256 seconds)
10:10:25 × aarvar quits (~foewfoiew@50.35.43.33) (Ping timeout: 264 seconds)
10:13:25 darjeeling_ joins (~darjeelin@122.245.121.118)
10:13:27 thblt joins (~thblt@unaffiliated/thblt)
10:15:12 <thblt> Can I search for typeclasses on Hoogle? Eg, I was wondering if there's a class such as `toBool :: a -> Bool`, but idk how to look.
10:15:34 <thblt> (Hoogle or anything)
10:15:40 × fmeyer quits (~fmeyer@p4fc127b6.dip0.t-ipconnect.de) (Quit: Leaving)
10:15:52 christo joins (~chris@81.96.113.213)
10:16:14 × tomboy64 quits (~tomboy64@gateway/tor-sasl/tomboy64) (Remote host closed the connection)
10:17:41 <merijn> You can, but that class doesn't exist
10:17:53 <merijn> At least, not in a library that anyone actually uses
10:19:12 tomboy64 joins (~tomboy64@gateway/tor-sasl/tomboy64)
10:19:25 × elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
10:19:43 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
10:19:50 × mmohammadi9812 quits (~mmohammad@5.116.92.37) (Ping timeout: 264 seconds)
10:20:27 mmohammadi9812 joins (~mmohammad@2.178.160.31)
10:20:32 <thblt> merijn: thanks :) Is there a query syntax for that? I tried String -> a, and there's a lot of *coerce stuff before `Show a => show…`
10:20:36 dhil joins (~dhil@195.213.192.122)
10:23:01 × seanparsons quits (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net) (Quit: ZNC 1.7.5 - https://znc.in)
10:23:30 seanparsons joins (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net)
10:23:42 livvy joins (~livvy@gateway/tor-sasl/livvy)
10:26:33 p8m joins (p8m@gateway/vpn/protonvpn/p8m)
10:26:44 × rprije quits (~rprije@194-193-168-77.tpgi.com.au) (Ping timeout: 240 seconds)
10:26:54 × ghoulguy quits (x@freenode/staff/haskell.developer.glguy) (Read error: Connection reset by peer)
10:28:53 elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
10:30:58 hackage unliftio 0.2.13.1 - The MonadUnliftIO typeclass for unlifting monads to IO (batteries included) https://hackage.haskell.org/package/unliftio-0.2.13.1 (MichaelSnoyman)
10:31:03 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
10:31:17 cfricke joins (~cfricke@unaffiliated/cfricke)
10:31:17 nlhowell joins (~nlhowell@don28-11.ln.rinet.ru)
10:31:25 glguy joins (x@freenode/staff/haskell.developer.glguy)
10:32:48 × is_null quits (~jpic@pdpc/supporter/professional/is-null) (Remote host closed the connection)
10:33:07 × mmohammadi9812 quits (~mmohammad@2.178.160.31) (Ping timeout: 246 seconds)
10:33:28 mmohammadi9812 joins (~mmohammad@2.178.123.90)
10:34:36 Zaphod joins (51ae801c@mekats.plus.com)
10:35:00 Zaphod is now known as Guest43909
10:35:27 ubert joins (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
10:36:02 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
10:36:32 Guest43909 is now known as ZaphodB
10:40:16 dorkside joins (~tdbgamer@208.190.197.222)
10:40:35 × Sanchayan quits (~Sanchayan@122.167.95.166) (Quit: leaving)
10:47:24 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
10:47:33 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
10:48:07 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
10:48:40 ZaphodB is now known as ZaphodBrox
10:49:38 <thblt> Quick question: To represent a keyboard layout, I use a Map of Map of Map (Map State (Map Key (Map Level Effect))) Is there a built-in way to fold this sort of monster, or a better way to do this?
10:52:20 <dminuoso> thblt: lens/optics lets you fold this rather easily
10:53:37 <thblt> dminuoso: thanks, looking into this
10:56:48 <dminuoso> % let m :: IM.IntMap (IM.IntMap (IM.IntMap String)); m = [(1, [(11, [(111, "foo"), (112, "bar")])])]
10:56:48 <yahb> dminuoso: ; <interactive>:242:52: warning: [-Wname-shadowing] This binding for `m' shadows the existing binding defined at <interactive>:240:52
10:56:53 <dminuoso> m ^.. folded.folded.folded
10:56:57 <dminuoso> % m ^.. folded.folded.folded
10:56:58 <yahb> dminuoso: ["foo","bar"]
10:58:28 hackage wai-saml2 0.2.1.2 - SAML2 assertion validation as WAI middleware https://hackage.haskell.org/package/wai-saml2-0.2.1.2 (mbg)
11:00:15 Tario joins (~Tario@201.192.165.173)
11:00:29 <dminuoso> % let m3 :: IM.IntMap (IM.IntMap (IM.IntMap Int)); m3 = [(1, [(11, [(111, 10), (112, 20)]), (12,[(121, 30), (122, 40)])])]
11:00:29 <yahb> dminuoso:
11:00:38 <dminuoso> % foldMapOf (folded.folded.folded) Product m3
11:00:38 <yahb> dminuoso: Product {getProduct = 240000}
11:01:58 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
11:02:38 christo joins (~chris@81.96.113.213)
11:02:51 × carlomagno quits (~cararell@148.87.23.8) (Ping timeout: 268 seconds)
11:03:15 acidjnk_new2 joins (~acidjnk@p200300d0c7226033a9f8e60d1c4e3d2a.dip0.t-ipconnect.de)
11:04:37 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
11:04:52 christo joins (~chris@81.96.113.213)
11:06:04 × alp_ quits (~alp@2a01:e0a:58b:4920:48bc:fb07:c437:122b) (Ping timeout: 240 seconds)
11:06:47 <thblt> I just need to understand how to bifold :)
11:07:29 × seanparsons quits (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net) (Quit: ZNC 1.8.1 - https://znc.in)
11:07:31 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
11:08:24 <dminuoso> thblt: with lens you can just fuse different folds with summing
11:08:35 <thblt> wow
11:08:38 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
11:08:58 christo joins (~chris@81.96.113.213)
11:10:23 seanparsons joins (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net)
11:11:44 × alx741 quits (~alx741@186.178.110.246) (Ping timeout: 240 seconds)
11:11:47 carlomagno joins (~cararell@148.87.23.8)
11:12:38 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
11:12:38 × idhugo quits (~idhugo@users-1190.st.net.au.dk) (Ping timeout: 264 seconds)
11:13:14 <dminuoso> thblt: Oh heh in case of lens it's just (<>) in fact
11:14:08 × brisbin quits (~patrick@pool-173-49-158-4.phlapa.fios.verizon.net) (Ping timeout: 272 seconds)
11:15:07 <thblt> I don't have this in Data.Lens?
11:15:58 <dminuoso> % ([1,2,3], [4,5,6]) ^.. (_1.folded <> _2.folded) :: [Int] -- thblt
11:15:58 <yahb> dminuoso: [1,2,3,4,5,6]
11:16:31 <Uniaika> thblt: it's the traditional semigroup binary operator
11:16:33 Arahael is now known as amateurarahael
11:17:37 <thblt> That's what I got from ghci indeed.
11:18:05 <dminuoso> thblt: note this might not be the same as bifold though
11:18:29 × ft quits (~ft@shell.chaostreff-dortmund.de) (Ping timeout: 256 seconds)
11:18:42 <dminuoso> (because the order is completely different)
11:19:08 amateurarahael is now known as arahaelHour
11:19:11 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
11:19:58 <dminuoso> or it might be, so it could require some careful thought
11:20:05 <dminuoso> (you might have to shift the (<>) in a bit)
11:20:06 <dminuoso> say
11:21:44 × petersen quits (~petersen@redhat/juhp) (Ping timeout: 272 seconds)
11:22:38 m0rphism joins (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
11:22:38 <dminuoso> % [(1,2), (3,4)] ^.. (folded._1 <> folded._2) :: [Integer]
11:22:40 <dminuoso> % [(1,2), (3,4)] ^.. (folded._1 <> folded._2) :: [Integer]
11:22:40 <yahb> dminuoso: [1,3,2,4]
11:22:46 <dminuoso> % [(1,2), (3,4)] ^.. folded.(_1 <> _2) :: [Integer]
11:22:46 <yahb> dminuoso: [1,2,3,4]
11:22:58 ft joins (~ft@shell.chaostreff-dortmund.de)
11:23:12 × nschoe quits (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a) (Ping timeout: 268 seconds)
11:23:38 × kish quits (~oracle@unaffiliated/oracle) (Quit: Leaving)
11:24:59 alx741 joins (~alx741@181.196.68.193)
11:28:01 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
11:28:56 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
11:30:09 kish joins (~oracle@unaffiliated/oracle)
11:31:56 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
11:32:24 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
11:33:10 machinedgod joins (~machinedg@142.169.78.88)
11:33:33 fendor joins (~fendor@078132040188.public.t-mobile.at)
11:33:38 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
11:34:08 <dminuoso> % [(1,2)] ^.. folded._1 :: [Int]
11:34:08 <yahb> dminuoso: ; <interactive>:284:20: error:; * Couldn't match type `Int' with `Integer'; arising from a functional dependency between:; constraint `Field1 (Integer, Integer) (Integer, Integer) Int Int' arising from a use of `_1'; instance Field1 (a, b) (a', b) a a' at <no location info>; * In the second argument of `(.)', namely `_1'; In the second argument of `(^..)', namely
11:34:10 <dminuoso> What's going on here?
11:35:02 × vicfred_ quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
11:35:15 <dminuoso> If I give `1` a type ascription, it typechecks.
11:36:52 p-core joins (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515)
11:37:20 xsperry joins (~as@unaffiliated/xsperry)
11:37:44 × Jonkimi727406120 quits (~Jonkimi@119.123.241.90) (Ping timeout: 240 seconds)
11:38:04 thir joins (~thir@pd9e1bd8a.dip0.t-ipconnect.de)
11:39:05 × olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 240 seconds)
11:40:07 raichoo joins (~raichoo@213.240.178.58)
11:40:14 × fendor quits (~fendor@078132040188.public.t-mobile.at) (Ping timeout: 264 seconds)
11:40:30 christo joins (~chris@81.96.113.213)
11:41:38 cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
11:42:25 × thir quits (~thir@pd9e1bd8a.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
11:44:57 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
11:45:23 × p-core quits (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515) (Remote host closed the connection)
11:46:52 wallacer3 joins (~quassel@ns3134113.ip-37-187-4.eu)
11:48:02 akad_ joins (~akad@109107030050.radomsko.vectranet.pl)
11:48:45 × jespada quits (~jespada@90.254.243.98) (Ping timeout: 240 seconds)
11:51:23 jespada joins (~jespada@90.254.243.98)
11:53:23 × hekkaidekapus_ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
11:53:27 hackage mmsyn2 0.3.0.0 - The library that can be used for multiple (Ord a) => a -> b transformations https://hackage.haskell.org/package/mmsyn2-0.3.0.0 (OleksandrZhabenko)
11:53:49 × cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Quit: cosimone)
11:54:31 hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
11:54:33 Chi1thangoo joins (~Chi1thang@87.112.60.168)
11:55:59 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
11:57:02 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 264 seconds)
11:58:58 × acidjnk_new2 quits (~acidjnk@p200300d0c7226033a9f8e60d1c4e3d2a.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
11:59:05 nschoe joins (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a)
12:00:01 × wright quits (~wright@154.13.1.56) ()
12:02:40 × p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 268 seconds)
12:03:08 urodna joins (~urodna@unaffiliated/urodna)
12:03:24 × nschoe quits (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a) (Ping timeout: 240 seconds)
12:05:44 invaser joins (~Thunderbi@31.148.23.125)
12:08:57 hackage mmsyn4 0.5.0.0 - The "glue" between electronic tables and GraphViz https://hackage.haskell.org/package/mmsyn4-0.5.0.0 (OleksandrZhabenko)
12:09:50 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
12:09:57 hackage mmsyn5 0.5.0.0 - Various additional operations on lists (some with intermediate Monads) https://hackage.haskell.org/package/mmsyn5-0.5.0.0 (OleksandrZhabenko)
12:10:27 christo joins (~chris@81.96.113.213)
12:12:09 p8m joins (p8m@gateway/vpn/protonvpn/p8m)
12:12:46 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
12:12:56 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
12:13:05 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
12:13:06 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
12:13:06 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
12:13:06 GyroW joins (~GyroW@unaffiliated/gyrow)
12:13:18 christo joins (~chris@81.96.113.213)
12:13:55 × bitmapper quits (uid464869@gateway/web/irccloud.com/x-olrayksqtbhbbqvo) (Quit: Connection closed for inactivity)
12:15:17 <thblt> Is it abuse to use the state monad to design a sort of imperative dsl?
12:15:45 FreeBirdLjj joins (~freebirdl@101.228.42.108)
12:15:51 <opqdonut> that's what it's meant for
12:15:59 <thblt> thanks :)
12:16:45 × kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 240 seconds)
12:17:01 <dminuoso> Okay, this is starting to confuse me. How could `f :: _` alter type inference?
12:17:18 Sheilong joins (uid293653@gateway/web/irccloud.com/x-pbjplvzzdhgivsky)
12:17:41 <dminuoso> If I add a `f :: _`, GHC produces a type error on the call site to f (in addition to the typed hole error), if I remove it, all compiles.
12:17:42 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
12:18:15 kish joins (~oracle@unaffiliated/oracle)
12:18:43 <hpc> and the error says what type f has?
12:19:32 <dminuoso> hpc: https://gist.github.com/dminuoso/6318be2a36b5428c1ac62def6163aaf9
12:19:44 <dminuoso> Behind the scenes, that error is implemented as:
12:19:56 × p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 268 seconds)
12:20:17 <dminuoso> instance {-# OVERLAPPABLE #-} TypeError (...) => Is k l where implies _ = error "unreachable"
12:20:18 × FreeBirdLjj quits (~freebirdl@101.228.42.108) (Ping timeout: 260 seconds)
12:20:32 <hpc> so, valid programs have all their holes filled
12:21:13 <hpc> when you don't have f :: _, it infers the type that the error says and it's all fine
12:21:33 <hpc> when you put the hole there, you're communicating to ghc that you want to write a type signature but don't know what it should be
12:21:42 <hpc> so it produces an error with what it should be, for you to fill in
12:22:15 idhugo joins (~idhugo@users-1190.st.net.au.dk)
12:22:31 nbloomf joins (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa)
12:22:32 <dminuoso> hpc: except, the inferred type is less polymorphic
12:22:47 <dminuoso> Roughly, what I'd expect is:
12:23:04 <dminuoso> attrDefThru :: forall k is. (Is k A_Setter) => Optic' k is DictFile AttrMap -> Parser ()
12:23:29 nschoe joins (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a)
12:23:33 alp_ joins (~alp@2a01:e0a:58b:4920:a87d:80a:3e2c:6a69)
12:23:36 <dminuoso> But adding a typed hole gives me a *much* less polymorphic type:
12:23:50 <lortabac> it looks like a bug or at least an implementation wart
12:23:52 <dminuoso> attrDefThru :: Optic A_Lens js ... -> ...
12:23:55 Jonkimi727406120 joins (~Jonkimi@223.213.166.96)
12:24:02 <dminuoso> See how it monomorphized on the lens type k?
12:24:07 <hpc> ah
12:24:38 × dhil quits (~dhil@195.213.192.122) (Ping timeout: 264 seconds)
12:24:41 <hpc> does it still work if you add that type signature in place of the hole?
12:25:04 <dminuoso> Amusingly *no*
12:25:08 <dminuoso> It errors out with yet another type error
12:25:15 <dminuoso> Im completely baffled here
12:25:31 <dminuoso> no type signature, it compiles. adding the correct type signature, I get overlapping instance errors
12:25:39 fendor joins (~fendor@178.165.128.1.wireless.dyn.drei.com)
12:25:45 <dminuoso> adding a typed hole I get an incorrect instance selection triggering the diagnostic
12:26:34 <dminuoso> My first instinct was this was some weird interaction with MMR, but I disabled that too
12:26:39 <hpc> with no type signature, what does :t tell you?
12:26:50 × akad_ quits (~akad@109107030050.radomsko.vectranet.pl) (Ping timeout: 256 seconds)
12:27:29 brisbin joins (~patrick@pool-173-49-158-4.phlapa.fios.verizon.net)
12:27:57 × kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 268 seconds)
12:28:28 × Jonkimi727406120 quits (~Jonkimi@223.213.166.96) (Ping timeout: 260 seconds)
12:30:28 xerox_ joins (~xerox@unaffiliated/xerox)
12:30:45 <dminuoso> attrDefThru :: (Is (Join A_Lens l) A_Setter, Is l (Join A_Lens l), Is A_Lens (Join A_Lens l)) => Optic' l js DictF\ile AttrMap -> Parser ()
12:30:50 × Stanley00 quits (~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
12:30:56 <dminuoso> (I did some manual cleanup)
12:32:26 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Ping timeout: 264 seconds)
12:33:37 <hpc> there's something in the definition of attrDefThru that's making it too specific for the type you want, i suspect
12:34:10 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
12:34:19 <dminuoso> Yeah I suppose
12:34:21 <dminuoso> (%) :: (Is k m, Is l m, m ~ Join k l, ks ~ Append is js) => Optic k is s t u v -> Optic l js u v a b -> Optic m ks s t a b infixl 9
12:34:27 <dminuoso> It's time to start chasing tyfams now..
12:34:27 <hpc> that, or something else that's definitely beyond me :P
12:34:36 <dminuoso> Well Im dead sure it's that one
12:34:44 <dminuoso> (Based on how I triggered all of this)
12:35:07 <dminuoso> Im starting to think this could be an optics bug
12:35:27 <hpc> since you're certain on the type of attrDefThru, you can leave the type signature you want and use value-level holes
12:35:27 <dminuoso> The reason is
12:35:32 <dminuoso> mmm
12:37:05 <dminuoso> hpc: Ahhh!
12:37:10 <dminuoso> I understand what's going on.
12:37:22 dhil joins (~dhil@openvpn-125-1027.inf.ed.ac.uk)
12:37:46 × GyroW quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection)
12:37:51 <hpc> that makes one of us :D
12:38:06 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
12:38:06 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
12:38:06 GyroW joins (~GyroW@unaffiliated/gyrow)
12:38:22 <dminuoso> The above type signature is right.
12:38:25 p8m joins (p8m@gateway/vpn/protonvpn/p8m)
12:38:43 <dminuoso> (Which still leaves that GHC thwart of typed holes not doing the right thing)
12:40:31 geekosaur joins (ac3a3eac@172.58.62.172)
12:41:04 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Read error: Connection reset by peer)
12:41:40 motherfsck joins (~motherfsc@unaffiliated/motherfsck)
12:42:01 <dminuoso> hpc: Hah indeed! I expected the subtyping in optics to play well with type inference.
12:42:10 <dminuoso> Seems I was wrong and I need to manually cast them
12:42:45 × machinedgod quits (~machinedg@142.169.78.88) (Ping timeout: 268 seconds)
12:42:57 hackage mmsyn6ukr 0.8.3.0 - A musical instrument synthesizer or a tool for Ukrainian language listening https://hackage.haskell.org/package/mmsyn6ukr-0.8.3.0 (OleksandrZhabenko)
12:43:51 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
12:43:58 <hpc> nice
12:47:48 mirrorbird joins (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1)
12:48:38 × cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 264 seconds)
12:48:55 × alp_ quits (~alp@2a01:e0a:58b:4920:a87d:80a:3e2c:6a69) (Ping timeout: 268 seconds)
12:49:41 × knupfer quits (~Thunderbi@200116b82cb50a006c81a39a2011bb8b.dip.versatel-1u1.de) (Quit: knupfer)
12:49:48 knupfer1 joins (~Thunderbi@200116b82cb50a00e5f04466600f3069.dip.versatel-1u1.de)
12:50:17 × knupfer1 quits (~Thunderbi@200116b82cb50a00e5f04466600f3069.dip.versatel-1u1.de) (Client Quit)
12:50:30 knupfer joins (~Thunderbi@200116b82cb50a00541104041c5441c6.dip.versatel-1u1.de)
12:51:09 × knupfer quits (~Thunderbi@200116b82cb50a00541104041c5441c6.dip.versatel-1u1.de) (Client Quit)
12:51:31 knupfer joins (~Thunderbi@200116b82cb50a003d33e84bd828fffb.dip.versatel-1u1.de)
12:51:33 × knupfer quits (~Thunderbi@200116b82cb50a003d33e84bd828fffb.dip.versatel-1u1.de) (Client Quit)
12:52:08 knupfer joins (~Thunderbi@200116b82cb50a0005674dbf33383acf.dip.versatel-1u1.de)
12:53:54 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
12:54:58 cfricke joins (~cfricke@unaffiliated/cfricke)
12:55:13 GothAlice1 joins (~GothAlice@185.244.214.217)
12:58:43 Amras joins (~Amras@unaffiliated/amras0000)
12:59:30 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Quit: quit)
13:00:45 motherfsck joins (~motherfsc@unaffiliated/motherfsck)
13:00:47 <[exa]> is there anyone skilled in deconding cabal dependency errors? https://paste.tomsmeding.com/luHswXER
13:01:01 × shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection)
13:01:04 <[exa]> (this is from `cabal install megaparsec`)
13:01:38 shatriff joins (~vitaliish@176.52.219.10)
13:01:49 <dminuoso> [__0] rejecting: base-4.14.0.0 (constraint from user target requires==4.13.0.0)
13:02:06 <dminuoso> base and GHC versions are have a 1-to-1 correspondence
13:03:11 <dminuoso> [exa]: What likely happened is this:
13:03:19 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa) (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:03:24 <dminuoso> You have some package installed that depends on base-4.14.0.0 in your global thing
13:03:45 <dminuoso> Dont use `cabal install`?
13:05:23 <merijn> [exa]: The problem is "you're using too new a GHC", that's what all base dependencies mean (well, except for the ones meaning you have too old a GHC :p)
13:05:37 machinedgod joins (~machinedg@142.169.78.145)
13:06:25 <dminuoso> merijn: I dont think that's completely true.
13:06:46 djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54)
13:06:53 acidjnk_new2 joins (~acidjnk@p200300d0c7226033a9f8e60d1c4e3d2a.dip0.t-ipconnect.de)
13:07:07 <dminuoso> megaparsec has had a base (>=4.11 && <5.0) bound for nearly a year now
13:07:25 <merijn> base constraint can be limited by a transitive dependency
13:07:34 <dminuoso> mm
13:07:38 <merijn> Also, has update been run? :p
13:07:42 <dminuoso> (constraint from user target requires==4.13.0.0)
13:07:56 <dminuoso> Would be nice if cabal could tell where the constraint really comes from
13:09:01 nbloomf joins (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa)
13:09:05 <merijn> Patches welcome? ;) *ducks*
13:09:50 <dminuoso> Well Im not complaining
13:09:56 × obihann quits (~jhann@156.34.160.69) (Remote host closed the connection)
13:10:16 obihann joins (~jhann@156.34.160.69)
13:10:27 hackage polysemy-methodology 0.1.1.0 - Domain modelling algebra for polysemy https://hackage.haskell.org/package/polysemy-methodology-0.1.1.0 (locallycompact)
13:12:35 × shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection)
13:12:51 shatriff joins (~vitaliish@176.52.219.10)
13:19:21 phaul joins (~phaul@ruby/staff/phaul)
13:19:24 × obihann quits (~jhann@156.34.160.69) (Ping timeout: 240 seconds)
13:20:13 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
13:21:07 obihann joins (~jhann@156.34.160.69)
13:21:13 <[exa]> is there a way to list stuff that requires ==4.13.0.0 ?
13:21:27 <[exa]> I mean, a bit better error report would help
13:21:50 <[exa]> btw I'm on ghc 8.8.3 so it's hopefully not "too much new"
13:22:39 <merijn> [exa]: "too new" relative to whatever package(s) you're trying to use
13:23:07 <merijn> [exa]: Did you run "cabal update" recently?
13:23:18 <merijn> And which version of cabal-install do you have?
13:23:33 × lemmih quits (~lemmih@2406:3003:2072:44:c5c7:520:a681:5f3f) (Remote host closed the connection)
13:23:51 lemmih joins (~lemmih@2406:3003:2072:44:2d80:b13f:a816:7456)
13:24:10 Varis joins (~Tadas@unaffiliated/varis)
13:25:32 Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas)
13:25:58 <dminuoso> Also, why are you using `cabal install` for megaparsec?
13:28:56 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
13:29:19 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
13:30:51 × dhil quits (~dhil@openvpn-125-1027.inf.ed.ac.uk) (Ping timeout: 268 seconds)
13:31:45 FreeBirdLjj joins (~freebirdl@101.228.42.108)
13:32:58 hackage polysemy-methodology 0.1.2.0 - Domain modelling algebra for polysemy https://hackage.haskell.org/package/polysemy-methodology-0.1.2.0 (locallycompact)
13:33:38 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
13:33:41 <thblt> I asked recently if there was a tool to make all imports explicit, and remove unused ones: haskell-language-server does it.
13:33:56 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
13:34:01 <dminuoso> thblt: haskell-language-server itself?
13:34:43 <thblt> dminuoso: I guess so! In my Emacs, lsp-ui offers to do it, so I guess it delegates to the server. Let me check.
13:35:41 <thblt> I don't think I use any other tool. Apparently lsp-haskell calls into hlint too, but I don't think hlint can do that.
13:36:01 <dminuoso> thblt: Id expect lsp-ui to do this.
13:36:10 stef204 joins (~stef204@unaffiliated/stef-204/x-384198)
13:36:37 <dminuoso> Well it could use hls to detect unused ones, but the file modification would be an editor feature
13:37:19 <thblt> dminuoso: well the server should describe the possible modification somehow.
13:39:24 vacm joins (~vacwm@70.23.92.191)
13:39:25 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
13:39:57 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
13:40:08 son0p joins (~son0p@181.136.122.143)
13:43:41 dhil joins (~dhil@195.213.192.122)
13:43:44 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
13:48:26 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
13:48:55 × geekosaur quits (ac3a3eac@172.58.62.172) (Remote host closed the connection)
13:49:44 akad_ joins (~akad@109107030050.radomsko.vectranet.pl)
13:50:38 kish joins (~oracle@unaffiliated/oracle)
13:55:14 × carlomagno quits (~cararell@148.87.23.8) (Remote host closed the connection)
13:57:17 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection)
14:00:55 tvrsky joins (~tvrsky@177.20.187.150)
14:01:06 <tvrsky> hi
14:01:21 <tvrsky> how do i begin on haskell?
14:02:53 <dminuoso> tvrsky: Hi! You just did.
14:03:21 <dminuoso> What kind of learning material are you looking for?
14:03:40 <thblt> A nice free intro is LYAH http://learnyouahaskell.com/ (althouh you can buy too)
14:04:16 <tvrsky> well i'm just interested on functional programming, so i'm looking for beginner's guides
14:04:30 <dminuoso> tvrsky: Im quite fond of CIS194, it's modern and well thought of.
14:04:46 <dminuoso> It's also freely available, and comes with well structured excercises that build ontop of each other
14:06:06 tstat joins (~tstat@165.227.66.131)
14:06:37 × knupfer quits (~Thunderbi@200116b82cb50a0005674dbf33383acf.dip.versatel-1u1.de) (Ping timeout: 268 seconds)
14:07:34 <tvrsky> that's awesome
14:07:36 <tvrsky> thank you
14:08:50 u0_a298 joins (~user@47.206.148.226)
14:08:56 ioroque joins (~theo_____@177.20.187.150)
14:09:29 ioroque parts (~theo_____@177.20.187.150) ()
14:09:57 hackage winery 1.3.2 - A compact, well-typed seralisation format for Haskell values https://hackage.haskell.org/package/winery-1.3.2 (FumiakiKinoshita)
14:10:51 × ZaphodBrox quits (51ae801c@mekats.plus.com) (Remote host closed the connection)
14:12:10 × berberman_ quits (~berberman@unaffiliated/berberman) (Quit: ZNC 1.7.5 - https://znc.in)
14:12:34 berberman joins (~berberman@unaffiliated/berberman)
14:12:42 <tvrsky> what are your thoughts on haskell? is it too hard?
14:13:08 <dminuoso> It depends on your background.
14:13:27 <tvrsky> i mean, i'm already familiarized with javascript since i work with it, but i'm a complete newbie to functional programming
14:13:44 <thblt> It's different.
14:13:57 × berberman quits (~berberman@unaffiliated/berberman) (Max SendQ exceeded)
14:13:59 <dminuoso> tvrsky: Don't expect much of your programming experience to carry over then.
14:14:06 <dminuoso> So it'll feel more like programming all over again.
14:14:30 berberman joins (~berberman@unaffiliated/berberman)
14:14:51 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Quit: quit)
14:15:05 × invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 240 seconds)
14:15:21 <merijn> tvrsky: I don't think Haskell is *hard*, but I do think its *different*
14:15:23 <dminuoso> Accordingly, Haskell can give the impression of being "difficult to learn". But that's not because Haskell is inherently difficult, but unlikely "language close to your domain that you can pick up quickly", you're learning how to program from scratch again.
14:15:54 <dminuoso> People often call "unlearning your old mindset"
14:16:05 <merijn> tvrsky: FWIW, my girlfriend with 0 programming experience learned to program haskell just fine. It's just that many people who know 1 programming language expect that learning "any other language" is something easy you do in 2 days
14:16:14 × berberman quits (~berberman@unaffiliated/berberman) (Max SendQ exceeded)
14:16:41 × stef204 quits (~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 2.9)
14:16:42 berberman joins (~berberman@unaffiliated/berberman)
14:16:43 <merijn> tvrsky: So if you go in expecting "this will be about as tricky as learning to program the first time was", then you should be fine
14:17:00 <kuribas> tvrsky: haskell isn't hard, but it's big. It's more like you have a lot of new concepts, each of which isn't that hard to understand.
14:17:08 <dminuoso> I think the experience is well worth it, even if you keep writing JavaScript in your day job
14:17:19 <dminuoso> Haskell changed how I thought about programming a lot.
14:18:14 <kuribas> tvrsky: you have a lot of scary sounding abstractions, most if which are very simple in concept.
14:18:25 <tvrsky> i'm very excited about this ngl
14:19:04 <kuribas> for example in OO you have the "visitor pattern", but it still leaves a lot to the imagination. In haskell you have "Foldable", which is a concrete version of the visitor pattern.
14:19:07 <thblt> I agree with dminuoso, but let's not underestimate the intrinsic difficulty of Haskell. It's a very strict language, which may require more effort to grasp than your average python --- you'll write less bugs, but you'll spend more time getting your code to work.
14:19:40 <thblt> Also, it can be argued that while the base is very minimal, the set of language features + libraries that make something like "practical haskell" isn't small.
14:20:00 <thblt> But it's a very, very exciting langage, and it will make you a better programmer :)
14:20:08 <kuribas> part of that is because you try to write idiomatic code.
14:20:19 <kuribas> it's ok to write everything in IO in the beginning.
14:20:33 invaser joins (~Thunderbi@31.148.23.125)
14:21:19 <thblt> (It's also ok to write *nothing* in IO if it makes more sense to you this way.)
14:21:48 <kuribas> thblt: but that's harder
14:21:55 <kuribas> if you come from an imperative background
14:21:57 ransom joins (c4264035@gateway/vpn/protonvpn/c4264035)
14:22:03 <thblt> I think that's how Haskell from First Principles work, IIRC. It introduces IO relatively late.
14:22:25 <thblt> kuribas: I'm just saying there are multiple ways, not that my suggestion is better.
14:22:33 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
14:23:08 <thblt> I think I learned by avoiding IO.
14:23:32 <tvrsky> well gonna start now, so thanks for all the suggestions
14:23:33 carlomagno joins (~cararell@148.87.23.6)
14:23:33 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection)
14:23:46 <thblt> tvrsky: have fun :)
14:24:06 <kuribas> my point is, you shouldn't feel forced to use best practices when starting out
14:24:33 <kuribas> it's easier to learn the gradually along the way
14:26:46 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
14:26:56 GyroW joins (~GyroW@d54c03e98.access.telenet.be)
14:26:56 × GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host)
14:26:56 GyroW joins (~GyroW@unaffiliated/gyrow)
14:28:51 cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net)
14:31:05 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
14:31:31 u0_a298 joins (~user@47.206.148.226)
14:32:08 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
14:32:08 × p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 256 seconds)
14:37:19 knupfer joins (~Thunderbi@200116b82cb50a00cdf9d8b4bf5d6590.dip.versatel-1u1.de)
14:38:26 × kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 264 seconds)
14:38:42 kish joins (~oracle@unaffiliated/oracle)
14:39:23 × cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
14:39:23 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
14:41:35 cfricke joins (~cfricke@unaffiliated/cfricke)
14:41:46 × shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection)
14:44:08 Jonkimi727406120 joins (~Jonkimi@223.213.166.96)
14:46:35 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
14:46:51 u0_a298 joins (~user@47.206.148.226)
14:46:57 jakob_ joins (~textual@p200300f49f16220061022725fbc9d567.dip0.t-ipconnect.de)
14:49:14 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
14:49:45 u0_a298 joins (~user@47.206.148.226)
14:49:49 Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net)
14:50:24 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
14:50:54 <[exa]> merijn: anyway thanks for hints, cabal nuke solved it
14:51:09 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
14:51:09 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
14:51:09 GyroW_ joins (~GyroW@unaffiliated/gyrow)
14:51:46 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 246 seconds)
14:51:56 <[exa]> merijn: (there were weird versions of the package dependencies installed, for no apparent reason, didn't bother solving why :D )
14:53:22 <merijn> Installed packages shouldn't affect the build plan with v2-build anyway
14:54:06 × knupfer quits (~Thunderbi@200116b82cb50a00cdf9d8b4bf5d6590.dip.versatel-1u1.de) (Ping timeout: 268 seconds)
14:54:53 <[exa]> anyway, anyone parsing own token streams with Megaparsec 9? Problem: I have a token stream where tokens cannot be "reconstructed" back to the original form because they are simplified a bit (eg. both "0x12" and "0b00010010" share the representation `TInt 18`) so I was saving the "original string" together with the tokens in the stream. Now there is VisualStream class that forces me to visualize Tokens
14:54:59 <[exa]> (_not_ the annotated things in the stream). Is there any way to get the old behavior back?
14:55:00 × cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
14:55:13 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
14:55:24 × Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Ping timeout: 240 seconds)
14:57:23 <thblt> Re cabal-install, what's the actual meaning of "build"? Is it now v2-build?
14:57:27 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
14:57:28 hackage th-lego 0.2.0.1 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.2.0.1 (NikitaVolkov)
14:57:33 × AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Read error: Connection reset by peer)
14:57:57 u0_a298 joins (~user@47.206.148.226)
14:57:59 Kaivo joins (~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com)
14:59:16 AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl)
15:00:02 × GothAlice1 quits (~GothAlice@185.244.214.217) ()
15:00:38 justan0theruser joins (~justanoth@unaffiliated/justanotheruser)
15:01:01 hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-ehxybuxikisvwbkv)
15:01:42 <merijn> thblt: If you have 3.x then build == v2-build
15:02:04 <merijn> If you have <3.0 then build == v1-build (same for everything, of course)
15:02:30 lucasb joins (uid333435@gateway/web/irccloud.com/x-vdikopfssarieyds)
15:02:35 <thblt> merijn: thanks! (3.2)
15:02:53 × revprez_anzio quits (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 256 seconds)
15:03:04 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 240 seconds)
15:03:10 <merijn> v2 still works too, but that's mostly to simplify writing portable scripts
15:03:26 revprez_anzio joins (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
15:04:13 <alx741> hello all, I'm using scalpel to do web scraping and using a UTF8 decoder, but characters like "ñ" (n tilde) show up in Data.Text as "\241", does anyone have an idea what could be going wrong?
15:04:38 <merijn> alx741: You are using "show" :p
15:04:52 <merijn> > "ñ" -- this goes through Show
15:04:54 <lambdabot> "\241"
15:04:56 <merijn> > text $ "ñ"
15:04:57 <lambdabot> ñ
15:05:25 <merijn> alx741: For example, compare the result of 'Data.Text.IO.putStrLn "ñ"' vs 'print "ñ"'
15:07:36 <dsal> tvrsky: Haskell is the easiest language I work in, in general. Makes everything else frustrating.
15:07:36 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
15:08:01 u0_a298 joins (~user@47.206.148.226)
15:09:12 <alx741> argh! of course, I'm using 'print' and so it goes trough 'show', facepalm
15:09:17 <alx741> thank you merijn! :)
15:12:38 × machinedgod quits (~machinedg@142.169.78.145) (Ping timeout: 264 seconds)
15:15:02 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
15:15:05 <merijn> When did Type first become a synonym for *?
15:15:17 u0_a298 joins (~user@47.206.148.226)
15:15:59 <dminuoso> 8.6?
15:16:08 <dminuoso> https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/8.6
15:16:42 <merijn> ugh
15:16:43 × andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds)
15:16:53 <merijn> Actually turns out that even -Wcompat is fairly new >.>
15:18:59 × u0_a298 quits (~user@47.206.148.226) (Remote host closed the connection)
15:19:16 u0_a298 joins (~user@47.206.148.226)
15:19:57 hackage th-lego 0.2.1 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.2.1 (NikitaVolkov)
15:20:28 glguy is now known as ghoulguy
15:20:50 gioyik joins (~gioyik@186.118.247.118)
15:20:59 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
15:20:59 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
15:20:59 GyroW joins (~GyroW@unaffiliated/gyrow)
15:21:45 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 265 seconds)
15:23:07 × FreeBirdLjj quits (~freebirdl@101.228.42.108) (Remote host closed the connection)
15:28:14 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
15:28:31 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
15:28:49 u0_a298 joins (~user@47.206.148.226)
15:29:26 × kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 264 seconds)
15:29:45 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
15:29:49 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
15:31:06 × idhugo quits (~idhugo@users-1190.st.net.au.dk) (Ping timeout: 268 seconds)
15:32:03 knupfer joins (~Thunderbi@200116b82cb50a0018b222fffee862b6.dip.versatel-1u1.de)
15:34:25 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
15:34:27 × knupfer quits (~Thunderbi@200116b82cb50a0018b222fffee862b6.dip.versatel-1u1.de) (Remote host closed the connection)
15:34:28 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 256 seconds)
15:34:41 knupfer joins (~Thunderbi@200116b82cb50a0045df43da037af5d6.dip.versatel-1u1.de)
15:37:13 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 260 seconds)
15:39:01 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
15:39:07 × knupfer quits (~Thunderbi@200116b82cb50a0045df43da037af5d6.dip.versatel-1u1.de) (Ping timeout: 268 seconds)
15:42:45 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
15:43:01 u0_a298 joins (~user@47.206.148.226)
15:44:26 <monsterchrom> -Wcompat's Halloween costume is -Wombat :)
15:45:20 <monsterchrom> Hey let's dress up GHC cmdline options for Halloween! -XRankNType -> XFangNType
15:45:31 delYsid joins (~user@vra-171-40.tugraz.at)
15:47:09 <delYsid> Is there a way to convince GHC to look for packages in lowercase dirs?
15:47:52 <delYsid> I'd like to have the Haskell code of a project coexist with a bunch of assets. However, these assets are organized in lowercase dirs.
15:48:10 <dminuoso> delYsid: Do you mean for vendored packages?
15:48:30 <delYsid> wha? I probably dont mean that, since I have no idea what that would mean
15:48:32 <dminuoso> Hold on, it's not even remotely GHC's job
15:48:40 <dminuoso> Are you sure you're not conflating cabal and GHC here?
15:48:50 nineonine joins (~textual@216-19-190-182.dyn.novuscom.net)
15:50:02 × nineonine quits (~textual@216-19-190-182.dyn.novuscom.net) (Client Quit)
15:50:03 <dminuoso> delYsid: Phrased differently, these assets, are they proper cabal packages?
15:50:09 <thblt> But anyhow, no, Haskell modules Start With An Uppercase Letter
15:50:55 hekkaidekapus_ is now known as hekkaidekapus
15:51:34 <dminuoso> Or are you talking about GHC finding modules in --make mode?
15:52:13 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection)
15:52:38 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
15:53:09 <hekkaidekapus> thblt: Regarding your import question, see `-ddump-to-file -ddump-minimal-imports`.
15:53:56 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
15:54:16 <hekkaidekapus> @hackage smuggler -- and <https://github.com/jrp2014/smuggler2/> if you want tools that build on those flags.
15:54:16 <lambdabot> https://hackage.haskell.org/package/smuggler -- and <https://github.com/jrp2014/smuggler2/> if you want tools that build on those flags.
15:55:22 <dminuoso> Are there simpler tools than Cabal if I want to parse, modify and write a .cabal file back?
15:55:50 <merijn> dminuoso: Do you care about full compatibility?
15:55:51 true-asset joins (~true-asse@185.244.214.217)
15:55:54 × jonathanx quits (~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
15:55:57 <merijn> Or just, like, 80-90%
15:56:08 <dminuoso> 80-90% is fine
15:56:08 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
15:56:10 <merijn> https://hackage.haskell.org/package/cabal-install-parsers
15:56:25 <dminuoso> That dependency tree.
15:56:45 × _vaibhavingale_ quits (~Adium@203.188.228.9) (Quit: Leaving.)
15:56:45 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
15:56:52 <dminuoso> Ah well, with those ergonomics I might as well just use Cabal
15:57:01 <merijn> That's just the dependency tree of Cabal :p
15:57:01 <dminuoso> It's just a wrapper anyhow
15:57:24 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection)
15:59:32 FreeBirdLjj joins (~freebirdl@101.228.42.108)
15:59:58 hackage http-io-streams 0.1.6.0 - HTTP and WebSocket client based on io-streams https://hackage.haskell.org/package/http-io-streams-0.1.6.0 (HerbertValerioRiedel)
16:00:58 hackage keycloak-hs 2.1.0 - https://hackage.haskell.org/package/keycloak-hs-2.1.0 (CorentinDupont)
16:01:01 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
16:01:01 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
16:01:01 GyroW_ joins (~GyroW@unaffiliated/gyrow)
16:01:50 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 264 seconds)
16:03:40 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection)
16:03:44 × FreeBirdLjj quits (~freebirdl@101.228.42.108) (Ping timeout: 240 seconds)
16:07:06 × polyrain quits (~polyrain@2001:8003:e501:6901:e039:127e:3f21:3e4c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:07:36 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
16:11:25 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
16:13:02 × britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
16:14:01 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
16:14:01 _vaibhavingale_ joins (~Adium@203.188.228.9)
16:14:07 × poljar quits (~poljar@93-139-70-179.adsl.net.t-com.hr) (Quit: WeeChat 2.9)
16:15:51 poljar joins (~poljar@93-139-70-179.adsl.net.t-com.hr)
16:17:18 sfvm joins (~sfvm@37.228.215.148)
16:19:50 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
16:21:06 u0_a298 joins (~user@47.206.148.226)
16:22:04 × acidjnk_new2 quits (~acidjnk@p200300d0c7226033a9f8e60d1c4e3d2a.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
16:23:54 geekosaur joins (ac3a5745@172.58.87.69)
16:24:13 christo joins (~chris@81.96.113.213)
16:24:24 × benjamin-l quits (~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60) (Ping timeout: 240 seconds)
16:26:48 nineonine joins (~textual@216-19-190-182.dyn.novuscom.net)
16:27:36 bitmapper joins (uid464869@gateway/web/irccloud.com/x-fgstvrwzsmauzxyr)
16:28:39 howdoi joins (uid224@gateway/web/irccloud.com/x-vtjahgetnoyujbco)
16:28:45 × nineonine quits (~textual@216-19-190-182.dyn.novuscom.net) (Client Quit)
16:29:09 wretchswollen joins (~jvw@135-180-15-188.fiber.dynamic.sonic.net)
16:30:57 × Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
16:31:31 andreas303 joins (~andreas@gateway/tor-sasl/andreas303)
16:33:06 Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net)
16:33:44 × Kolkrabe quits (~user@unaffiliated/siracusa) (Quit: Bye!)
16:33:45 kritzefitz_ joins (~kritzefit@212.86.56.80)
16:34:00 × wretchswollen quits (~jvw@135-180-15-188.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
16:36:21 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-pbjplvzzdhgivsky) (Quit: Connection closed for inactivity)
16:36:45 fandi joins (~fandi@118.97.77.114)
16:37:17 × fandi quits (~fandi@118.97.77.114) (Max SendQ exceeded)
16:37:44 fandi joins (~fandi@118.97.77.114)
16:39:24 × cvlad- quits (sid203065@gateway/web/irccloud.com/x-dghqjpkfmvjbucbi) (Ping timeout: 240 seconds)
16:39:24 × ReinH__ quits (sid179972@gateway/web/irccloud.com/x-kynfnrknqktyblak) (Ping timeout: 240 seconds)
16:39:24 × bradparker quits (sid262931@gateway/web/irccloud.com/x-cpaqunedaxagfosc) (Ping timeout: 240 seconds)
16:39:33 × liquorice quits (sid267884@gateway/web/irccloud.com/x-volnulzrerkaifsx) (Ping timeout: 272 seconds)
16:39:37 × joshmeredith quits (sid387798@gateway/web/irccloud.com/x-fahcpupvewgkoceh) (Ping timeout: 260 seconds)
16:39:37 × totbwf quits (sid402332@gateway/web/irccloud.com/x-sxpcryhpiyewihxs) (Ping timeout: 260 seconds)
16:39:44 × natim87 quits (sid286962@gateway/web/irccloud.com/x-bwmegmbyiecjxmkz) (Ping timeout: 240 seconds)
16:39:44 × alanz quits (sid110616@gateway/web/irccloud.com/x-kaaptnygtinjlvts) (Ping timeout: 240 seconds)
16:39:59 joshmeredith joins (sid387798@gateway/web/irccloud.com/x-ewrwlxlkgcoxcbts)
16:40:12 × davetapley quits (sid666@gateway/web/irccloud.com/x-robbsvqvrfwhlocr) (Ping timeout: 260 seconds)
16:40:27 × wpcarro quits (sid397589@gateway/web/irccloud.com/x-ycncefjlbxwjrjeb) (Ping timeout: 260 seconds)
16:40:49 × systemfault quits (sid267009@gateway/web/irccloud.com/x-cuwcujscdtdsdgqf) (Ping timeout: 272 seconds)
16:40:58 alanz joins (sid110616@gateway/web/irccloud.com/x-eagdffxzloqjlfmd)
16:40:59 cvlad- joins (sid203065@gateway/web/irccloud.com/x-ldhrbgiqwkppzsfc)
16:40:59 liquorice joins (sid267884@gateway/web/irccloud.com/x-diraasfarzuiqldj)
16:41:02 bradparker joins (sid262931@gateway/web/irccloud.com/x-uqioclynkqqupcsu)
16:41:05 ReinH__ joins (sid179972@gateway/web/irccloud.com/x-ryyydyxrmnaxtodq)
16:41:06 natim87 joins (sid286962@gateway/web/irccloud.com/x-hyhuipwwdjkbudmv)
16:41:50 totbwf joins (sid402332@gateway/web/irccloud.com/x-amykbrbjjlsoojsk)
16:42:00 systemfault joins (sid267009@gateway/web/irccloud.com/x-csgxnmticedbceeh)
16:42:01 × Guest84165 quits (~mrc@81.30.75.204) (Ping timeout: 268 seconds)
16:42:16 davetapley joins (sid666@gateway/web/irccloud.com/x-yocwsgvbpxleffzc)
16:42:21 wpcarro joins (sid397589@gateway/web/irccloud.com/x-reptnryktqywamkq)
16:46:26 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
16:47:19 nineonine joins (~textual@216-19-190-182.dyn.novuscom.net)
16:48:22 × Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
16:48:25 × chele quits (~chele@ip5b416ea2.dynamic.kabel-deutschland.de) (Remote host closed the connection)
16:50:52 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Remote host closed the connection)
16:51:03 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
16:51:03 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
16:51:03 GyroW joins (~GyroW@unaffiliated/gyrow)
16:51:07 Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net)
16:55:11 × gregberns_ quits (sid315709@gateway/web/irccloud.com/x-fewxfbpuqadmolrk) (Read error: Connection reset by peer)
16:55:18 × kritzefitz quits (~kritzefit@fw-front.credativ.com) (Remote host closed the connection)
16:55:25 gregberns_ joins (sid315709@gateway/web/irccloud.com/x-lhzcnufyopscpuei)
16:55:26 × newhoggy quits (sid198874@gateway/web/irccloud.com/x-ajbxvvzkmwoozmcf) (Ping timeout: 256 seconds)
16:55:29 × cbarrett quits (sid192934@adium/cbarrett) (Read error: Connection reset by peer)
16:55:32 × nineonine quits (~textual@216-19-190-182.dyn.novuscom.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:55:34 × entel quits (uid256215@botters/entel) (Read error: Connection reset by peer)
16:55:34 × stylewarning quits (stylewarni@gateway/web/irccloud.com/x-ldvspppvftwdoorj) (Read error: Connection reset by peer)
16:55:47 newhoggy joins (sid198874@gateway/web/irccloud.com/x-zutcdabnuqtwgxkc)
16:55:47 cbarrett joins (sid192934@adium/cbarrett)
16:55:53 entel joins (uid256215@botters/entel)
16:55:57 stylewarning joins (stylewarni@gateway/web/irccloud.com/x-inexyucgqlgjsrum)
16:56:38 <delYsid> dminuoso: It is GHC that imposes the restriction that module names need to be uppercase, isnt it?
16:58:03 <geekosaur> I think it's also due to dotted name resolution?
16:58:33 <thblt> hekkaidekapus: thanks!
16:58:37 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
16:58:38 <geekosaur> (foo.bar) is resolved with the dot meaning (.) instead of a name component separator
16:59:54 × nschoe quits (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a) (Ping timeout: 268 seconds)
17:00:04 falafel_ joins (~falafel@71-34-132-121.clsp.qwest.net)
17:00:17 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
17:01:22 <tomsmeding> maerwald: apparently an alternative for ALE: https://dev.to/moniquelive/haskell-lsp-bonus-for-vim-4nlj
17:01:27 <tomsmeding> (as found on haskell weekly)
17:01:50 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
17:01:51 <maerwald> I tried vim-lsp already
17:03:00 <tomsmeding> ah
17:03:25 <maerwald> I'd say it's the worst. Less reliable than LanguageClient-neovim and less features that coc.nvim
17:03:37 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
17:03:41 <maerwald> but in the end, all LSP clients suck, really
17:03:45 <tomsmeding> less reliable than LC-neovim is pretty damning in my experience :p
17:03:53 <monsterchrom> Module names are capitalized in the Haskell Report.
17:03:56 <maerwald> LC-neovim is the best implementation so far
17:04:33 <monsterchrom> But the motivation is to reduce dot ambiguity, no doubt.
17:04:41 <maerwald> I'm starting to believe LSP (the idea) overall is trash
17:04:44 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
17:05:03 × andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds)
17:05:17 <tomsmeding> the protocol or the concept of having a unified language integration protocol?
17:05:29 <maerwald> writing an editor plugin for a custom language linter is some work, sure, but uh... all the disadvantages of LSP... really?
17:05:31 nineonine joins (~textual@216.81.48.202)
17:05:34 <maerwald> Don't outweigh it
17:05:52 <thblt> What are the disadvantages of lsp? I'm pretty happy with it.
17:06:02 <monsterchrom> Oh, LC ≠ lambda calculus. :(
17:06:17 <yushyin> works ok for vscode and other languages, but the haskell support is bad and vim lsp clients are also all bad
17:06:19 <tomsmeding> sorry monsterchrom
17:06:23 <monsterchrom> :)
17:06:23 <thblt> Not having to install each and every possible language support package in $EDITOR is a blessing.
17:06:25 <maerwald> it's broken most of the time, uses shitty json with bad error messages, you have all sorts of process handling issues etc etc
17:06:29 idhugo joins (~idhugo@eduroam06.au.dk)
17:06:51 <thblt> yushyin: I understand vim extension language is, er, not the best; is there a project to integrate lsp in the core?
17:06:56 <tomsmeding> maerwald: do you think a different protocol could fix the problems?
17:07:04 <maerwald> server-client architecture for something that's supposed to run blazingly fast inside my editor? What? Why.
17:07:14 × Franciman quits (~francesco@host-82-54-10-114.retail.telecomitalia.it) (Quit: Leaving)
17:07:20 <monsterchrom> because your computer is FTL
17:07:26 <tomsmeding> maerwald: see also: xi editor
17:07:37 avdb joins (~avdb@ip-62-235-189-214.dsl.scarlet.be)
17:07:44 <yushyin> thblt: I'm not aware of any projects
17:07:44 <tomsmeding> and also the local socket connection is really not what kills performance here :p
17:07:58 Sheilong joins (uid293653@gateway/web/irccloud.com/x-lzoeccbcuqfwnwby)
17:08:06 <maerwald> no, but all the error handling mess server-client architecture causes
17:08:25 kish joins (~oracle@unaffiliated/oracle)
17:08:28 andreas303 joins (~andreas@gateway/tor-sasl/andreas303)
17:08:46 <maerwald> also. I'm ranting. I don't have any better solution, lol
17:08:48 shatriff joins (~vitaliish@176.52.219.10)
17:08:54 <thblt> maerwald: I'm not sure how you can avoid a client-server model if you want to use the compiler as an editor helper?
17:09:10 <thblt> The good thing with LSP is that you only have one set of client bugs.
17:09:12 <monsterchrom> Perhaps the protocol should consist of continuations, not data.
17:09:15 <tomsmeding> thblt: write the editor in haskell and let it depend on ghc-lib
17:09:26 <tomsmeding> that remark is meant sarcastically
17:09:36 <thblt> tomsmeding: I was afraid for a moment :)
17:09:41 monsterchrom is going to teach continuations tomorrow. That's why. >:)
17:09:53 <thblt> But hey, that's what Emacs is, just with another language :)
17:10:22 <monsterchrom> http://hackage.haskell.org/package/manatee-editor
17:10:24 <tomsmeding> I guess Yi editor exists
17:10:34 <tomsmeding> or that apparently
17:10:48 <thblt> xi?
17:10:50 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 264 seconds)
17:10:57 <monsterchrom> it doesn't depend on ghc-lib. But at least it's an editor and written in Haskell.
17:10:58 <thblt> No, xi is in rust
17:11:10 <tomsmeding> xi is the thing by that google guy that has a client-server architecture for the editor itself
17:11:13 <tomsmeding> yi is https://github.com/yi-editor/yi
17:11:17 <thblt> Technically Emacs has native modules so you *could* plug ghc-lib directly.
17:11:24 motherfsck joins (~motherfsc@unaffiliated/motherfsck)
17:11:30 <tomsmeding> "This software is no longer maintained" :(
17:11:32 geekosaur is not sure manatee ever worked fully, it got blatted onto hackage and immediately abandoned apparently :(
17:11:45 <monsterchrom> Got a bank job. As usual.
17:11:47 <thblt> Which is probably a good example of "just because you can doesn't mean you should"
17:12:03 <maerwald> monsterchrom: they pay well
17:12:07 tomsmeding nods to thblt
17:12:11 <monsterchrom> The #1 brain drain from #haskell is bank jobs.
17:12:33 <monsterchrom> This is why when someone asks "are there Haskell jobs" I wish I could just say no.
17:12:40 ddellacosta joins (~dd@86.106.121.168)
17:12:43 <maerwald> hey... I wanna get paid for my back pain and RSI
17:12:47 × carlomagno quits (~cararell@148.87.23.6) (Remote host closed the connection)
17:12:51 × ransom quits (c4264035@gateway/vpn/protonvpn/c4264035) (Ping timeout: 268 seconds)
17:12:53 <tomsmeding> so that more people remain in #haskell?
17:12:58 <monsterchrom> There are no Haskell jobs. Keep writing and maintaining free Haskell software.
17:13:03 <tomsmeding> :D
17:13:08 carlomagno joins (~cararell@148.87.23.6)
17:13:13 <tomsmeding> or enter academia
17:13:20 <maerwald> well, if *good* healthcare was free.. imagine that
17:13:26 <thblt> sounds suspiciously like a job!
17:13:37 <monsterchrom> nah academia is what gives you LinearTypes, not free software that you actually use.
17:13:44 <tomsmeding> accurate
17:13:47 <maerwald> programming is one of the worst things you can do to your health
17:13:49 × Jonkimi727406120 quits (~Jonkimi@223.213.166.96) (Ping timeout: 260 seconds)
17:14:00 <maerwald> mental and physical
17:14:02 × falafel_ quits (~falafel@71-34-132-121.clsp.qwest.net) (Ping timeout: 260 seconds)
17:14:05 <maerwald> Why would anyone do it
17:14:13 <tomsmeding> it's fun!
17:14:23 <thblt> Especially when it's not your job.
17:14:26 <thblt> I guess.
17:14:28 <maerwald> I don't know what fun is. I just have obsessions.
17:14:36 <monsterchrom> Oh yeah, for free good healthcare, we need to also tell medical students "nah there are no medical jobs" haha.
17:14:37 <tomsmeding> most things become less fun when it's your job, pair or unpaid
17:14:41 <thblt> If obsessions don't count as fun I'm out.
17:14:45 <maerwald> lolo
17:16:05 × MindlessDrone quits (~MindlessD@unaffiliated/mindlessdrone) (Ping timeout: 240 seconds)
17:16:09 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
17:16:10 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
17:16:10 GyroW_ joins (~GyroW@unaffiliated/gyrow)
17:16:30 <thblt> In all seriousness, I keep wondering if i should leave my job (I teach philosophy in high school, in Fr) to go work in programming, and I always end up at the conclusion that I'll certainly get paid a lot better but I'll probably hate it very, very quickly
17:16:50 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 264 seconds)
17:17:17 <maerwald> thblt: do you know Arnaud Bailly?
17:17:25 × carlomagno quits (~cararell@148.87.23.6) (Ping timeout: 240 seconds)
17:17:27 <johnw> hate programming? then you're doing it wrong!
17:17:50 <thblt> maerwald: no, whyK
17:17:54 <thblt> who is him?
17:17:55 FreeBirdLjj joins (~freebirdl@101.228.42.108)
17:17:58 <maerwald> thblt: frech philosopher, ended up in Singapore in fintech doing haskell :p
17:18:03 <dolio> Most of the industry is doing it wrong.
17:18:07 × idhugo quits (~idhugo@eduroam06.au.dk) (Ping timeout: 260 seconds)
17:18:16 <maerwald> I happened to work on his codebase long after he moved on
17:18:33 <maerwald> and then understood why
17:18:53 <monsterchrom> Do you also teach Hofstadter stuff in your philosophy class? In Haskell instead of Lisp? >:)
17:18:58 <tomsmeding> maerwald: why he moved to programming or why he moved on?
17:19:06 <maerwald> the latter
17:19:12 <maerwald> he had visions
17:19:13 hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net)
17:19:17 <maerwald> about software
17:19:20 <maerwald> I mean... lol
17:20:01 <maerwald> If fintech was the right place to exercise visions...
17:20:08 × teardown quits (~user@gateway/tor-sasl/mrush) (Remote host closed the connection)
17:20:16 <tomsmeding> then there is a good, working LSP client for vim
17:20:23 × ubert quits (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
17:20:39 <tomsmeding> modus tollens produces the required conclusion
17:20:56 MindlessDrone joins (~MindlessD@unaffiliated/mindlessdrone)
17:21:04 <monsterchrom> Does fintech simply mean blockchain stuff? It's a new term that suddenly popped up a few days ago and suddenly everyone except me knew it like it has always existed.
17:21:16 <maerwald> but they have this obsession with hiring over-qualified ppl, which sometimes has interesting side-effects
17:21:26 <tomsmeding> I understand it as high-frequency trading monsterchrom
17:21:35 <maerwald> monsterchrom: no, I mean actual fintech, stealing real money
17:21:54 Guest84165 joins (~mrc@81.30.75.204)
17:21:55 <thblt> Sounds way more honest than blockchain.
17:22:03 × Guest84165 quits (~mrc@81.30.75.204) (Client Quit)
17:22:05 × FreeBirdLjj quits (~freebirdl@101.228.42.108) (Ping timeout: 240 seconds)
17:22:07 <tomsmeding> also less power usage probably
17:22:25 <thblt> Where you steal money too, but after having had to lie to pretend it was money in the first place.
17:23:06 <maerwald> I dunno. If you apply for a job and get it... didn't you steal it from the other 50 candidates? :)
17:23:17 solonarv joins (~solonarv@astrasbourg-653-1-117-122.w90-33.abo.wanadoo.fr)
17:23:23 <monsterchrom> oh, financial technology
17:23:35 <geekosaur> if people behave as if it has value, does it?
17:24:25 <tomsmeding> for most reasonable definitions, yes
17:24:31 × xff0x_ quits (~fox@port-92-193-232-58.dynamic.as20676.net) (Ping timeout: 265 seconds)
17:24:59 <maerwald> But I can say it's interesting to have experienced real fraud once (not from employer, but customer)
17:25:18 <avdb> A-mazing. I got the next three hours to play with Haskell for the first time in a while.
17:25:41 <tomsmeding> avdb: what will you build?
17:25:42 teardown joins (~user@gateway/tor-sasl/mrush)
17:27:46 × raichoo quits (~raichoo@213.240.178.58) (Quit: Lost terminal)
17:27:47 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
17:27:50 idhugo joins (~idhugo@eduroam06.au.dk)
17:28:48 u0_a298 joins (~user@47.206.148.226)
17:29:28 × Zetagon quits (~leo@c151-177-52-233.bredband.comhem.se) (Ping timeout: 260 seconds)
17:29:41 <avdb> tomsmeding: I will be reading Chris' book since I can't even use Haskell properly yet.
17:29:58 <avdb> I'm currently learning very slowlu due to bad time managment.
17:30:01 <avdb> Slowly*
17:30:15 <tomsmeding> as long as you're having fun, learning slowly is not an issue
17:30:34 <carbolymer> I have: `counter <- newTVarIO 0` and in 2 threads I'm doing: `atomically $ modifyTVar' counter ((+)1) >> readTVar counter` and in both threads I'm getting 1 at the same time - WTF?
17:30:40 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
17:30:47 <maerwald> I'm a strong believer in slow learning
17:31:24 <maerwald> if you learn slow, you forget slow :p
17:31:27 hackage cassava-streams 0.3.0.5 - io-streams interface for the cassava CSV library. https://hackage.haskell.org/package/cassava-streams-0.3.0.5 (PeterJones)
17:31:46 <tomsmeding> carbolymer: is the code shareable? https://paste.tomsmeding.com
17:31:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
17:32:58 st8less joins (~st8less@2603:a060:11fd:0:11a8:48f2:e89a:10e3)
17:33:47 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
17:35:04 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
17:35:10 <carbolymer> tomsmeding, not really, give a minute to re-create minimal example
17:35:48 <tomsmeding> because from your description, #worksForMe :p
17:35:56 <tomsmeding> (i.e. I get 1, 2)
17:36:49 xff0x_ joins (~fox@2001:1a81:528e:cb00:4e46:bded:683a:1262)
17:39:20 <carbolymer> hmm, maybe it's because it's inside hunit test or ghc flags or idk - working on minimal example!
17:39:52 <dminuoso> I suspect there's an unsafePerformIO you didn't tell us about.
17:39:59 <tomsmeding> are you sure you have the same counter TVar both times?
17:40:45 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
17:41:53 <carbolymer> tomsmeding, yes, because I'm running 5 threads, over 100 elements (everytime this function I pasted) and I am supposed to get 100 in return - but I get only 95
17:42:02 <carbolymer> which = 100 - nr_of_threads
17:42:07 <carbolymer> which is super weird
17:42:38 × invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 264 seconds)
17:42:53 × xwvvvvwx quits (~xwvvvvwx@185.213.155.160) (Ping timeout: 260 seconds)
17:43:09 emertens joins (x@freenode/staff/haskell.developer.glguy)
17:43:10 <carbolymer> dminuoso, could be - might hidden by hunit internals
17:43:34 <carbolymer> dminuoso, but I'm using pretty straightforward test spec
17:44:16 <tomsmeding> do all the threads execute your code about the same number of times?
17:44:40 mbomba joins (~mbomba@142.114.9.241)
17:44:58 hackage th-lego 0.2.2 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.2.2 (NikitaVolkov)
17:45:04 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
17:45:17 × emertens quits (x@freenode/staff/haskell.developer.glguy) (Remote host closed the connection)
17:45:17 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
17:45:24 <carbolymer> tomsmeding, yes, I've added print after each invocation, and this function returns the same value two times at the very beginning
17:45:51 <carbolymer> so, double 1's and numbers from 2-99
17:45:56 <dminuoso> Im quite confident that stm is fine.
17:46:16 <dminuoso> carbolymer: Are you creating the counter using unsafePerformIO perhaps?
17:46:31 <carbolymer> dminuoso, no, newTVarIO
17:46:38 <dminuoso> carbolymer: No from the outside.
17:46:38 <carbolymer> inside IO
17:46:45 <carbolymer> inside test spec
17:46:49 <dminuoso> I stick to my theory "there's unsafePerformIO somehwere"
17:47:32 <tomsmeding> carbolymer: can you post the test spec?
17:47:50 <tomsmeding> despite knowing there's code we don't see
17:48:33 Tario joins (~Tario@201.192.165.173)
17:48:34 <carbolymer> I can't - I would need to retype it from remote desktop; hold on, working on that example
17:48:53 <tomsmeding> lol ok no worries
17:49:06 <carbolymer> yeah, perks of remote work in financial company
17:49:31 <geekosaur> here we go again with the fintech :p
17:49:33 xwvvvvwx joins (~xwvvvvwx@185.213.155.160)
17:50:13 christo joins (~chris@81.96.113.213)
17:50:49 <monsterchrom> <backseat-driver>Just use ssh X forwarding</backseat-driver>
17:50:58 hackage polysemy-methodology 0.1.2.1 - Domain modelling algebra for polysemy https://hackage.haskell.org/package/polysemy-methodology-0.1.2.1 (locallycompact)
17:51:21 tomsmeding expects at least one of the two platforms involved to run windows
17:51:57 geekosaur likewise
17:53:07 <monsterchrom> I like to hedge-bet (haha fin again) the fantastically unlikely. I say OS/2 at the company and macOS at home. >:)
17:53:17 <monsterchrom> I guess s/say/bet/
17:54:06 <tomsmeding> does ghc even run on OS/2
17:54:10 <dminuoso> Hey hey, why do people assume that fintech means financial technologies? What do you call companies specializing in making diver fins?
17:54:14 <dminuoso> Surely you can use Haskell for that too
17:54:22 <monsterchrom> Oh oops hehe
17:54:38 <monsterchrom> I don't assume. I googled.
17:54:49 × christo quits (~chris@81.96.113.213) (Ping timeout: 264 seconds)
17:54:57 <carbolymer> ok, my minimal example works fine, I need to wrap it in test spec
17:55:05 <geekosaur> should port readily
17:55:09 <monsterchrom> Indeed I couldn't for my life figure out what's "fin" in "fintech", never occurred to me it's "finance"
17:55:17 Deide joins (~Deide@217.155.19.23)
17:55:22 <dminuoso> or maybe its finnish tech!
17:55:27 <carbolymer> totally
17:55:32 <dminuoso> Finnish company making diver fins.
17:55:40 <dminuoso> With Haskell
17:55:40 <carbolymer> ...for finance
17:55:48 tomsmeding looked it up and found out that indeed ghc does not officially support OS/2
17:56:04 <geekosaur> neither does much of anyone else
17:56:14 <geekosaur> eCS is still out thre somewhere though
17:56:30 <monsterchrom> Even virtualbox doesn't quite support OS/2 guests, relegating to "community effort".
17:56:44 <tomsmeding> ... hence the remote desktop
17:56:58 <dminuoso> Will GHC run on DOS?
17:57:06 × mirrorbird quits (~psutcliff@2a00:801:42b:7891:16b1:e53f:55b2:15e1) (Quit: Leaving)
17:57:12 <dminuoso> You know, for the true masochists.
17:57:15 × akad_ quits (~akad@109107030050.radomsko.vectranet.pl) (Ping timeout: 268 seconds)
17:57:24 fraktor joins (~walter@129.93.184.38)
17:57:29 <geekosaur> I think you rapidly hit a memory problem
17:58:01 <tomsmeding> hm, "s390-ibm-linux" is listed as a tier 2 support platform for ghc, but with ? and "No" under GHCi and NCG
17:58:19 <fraktor> So I'm attempting to really wrap my head around some Haskell concepts, and I'm running into a couple of questions I don't know how to google. What is an example of a functor that is not applicative, or a functor that is not a monad?
17:58:25 × DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
17:59:32 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
17:59:44 <dolio> data ReadRef a = forall e. RR (IORef e) (e -> a)
18:00:01 × true-asset quits (~true-asse@185.244.214.217) ()
18:01:03 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
18:01:16 <tomsmeding> for example, https://hackage.haskell.org/package/base-4.14.0.0/docs/Control-Exception.html#t:Handler
18:01:17 DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
18:01:24 <hekkaidekapus> tomsmeding: petersen (currently offline) is quite dedicated to making GHC build on S390.
18:01:38 <monsterchrom> dminuoso: I outdid that inb4. http://www.vex.net/~trebla/haskell/cont.xhtml#yield then scroll down to Exercises, look for exercise 5 "When I was a teenager".
18:01:48 tomsmeding doesn't even properly know what S390 is, nor OS/2
18:02:34 <hekkaidekapus> tomsmeding: <https://fedoraproject.org/wiki/Architectures/s390x>
18:03:27 <monsterchrom> Actually maybe Hugs can run on 16-bit DOS.
18:04:33 <tomsmeding> "so the assumption size_t == unsigned int fails here"
18:04:45 <tomsmeding> the assumption carried from 32-bit systems, I assume
18:04:59 × bartemius quits (~bartemius@109.252.20.20) (Remote host closed the connection)
18:05:17 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
18:05:23 × teardown quits (~user@gateway/tor-sasl/mrush) (Ping timeout: 240 seconds)
18:05:35 tim joins (~user@S0106a84e3fe54613.ed.shawcable.net)
18:05:51 tim is now known as Guest18399
18:06:23 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
18:06:23 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
18:06:23 GyroW joins (~GyroW@unaffiliated/gyrow)
18:06:57 <carbolymer> tomsmeding, dminuoso, shit - I'm unable to reproduce this bug in clean hspec test :s
18:07:08 gremax joins (znc@torba.club)
18:07:13 <monsterchrom> C compilers for 16-bit DOS are also very likely to satisfy size_t = sizeof(unsigned int) = 16.
18:07:20 <tomsmeding> carbolymer: I was kind of fearing that :p
18:07:20 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
18:07:31 teardown joins (~user@gateway/tor-sasl/mrush)
18:07:33 britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch)
18:07:34 <monsterchrom> err I mean size_t = unsigned int, both 16 bits
18:07:34 × geekosaur quits (ac3a5745@172.58.87.69) (Ping timeout: 245 seconds)
18:07:44 × tvrsky quits (~tvrsky@177.20.187.150) (Ping timeout: 268 seconds)
18:07:45 × Guest18399 quits (~user@S0106a84e3fe54613.ed.shawcable.net) (Remote host closed the connection)
18:07:47 Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas)
18:07:58 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds)
18:08:01 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
18:08:29 <tomsmeding> carbolymer: can you print a line to stdout whenever newTVarIO is executed, and whenever that increment code is executed, showing which thread is doing it and what the new value is?
18:10:14 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
18:10:30 nschoe joins (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a)
18:10:48 christo joins (~chris@81.96.113.213)
18:11:05 carlomagno joins (~cararell@148.87.23.9)
18:11:26 × idhugo quits (~idhugo@eduroam06.au.dk) (Ping timeout: 268 seconds)
18:11:44 × mbomba quits (~mbomba@142.114.9.241) (Ping timeout: 240 seconds)
18:11:55 <dminuoso> carbolymer: run a grep for unsafePerformIO through your code base..
18:12:12 <hekkaidekapus> tomsmeding: For a recent example, see the ‘Archives’ section at <https://koji.fedoraproject.org/koji/buildinfo?buildID=1620850>.
18:12:26 <dminuoso> If STM is giving you race conditions, chances are you've sneaked unsafePerformIO or equivalent in.
18:12:39 × britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
18:12:50 tput joins (~user@S0106a84e3fe54613.ed.shawcable.net)
18:13:11 <tomsmeding> super fancy hekkaidekapus
18:13:39 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
18:14:27 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
18:14:32 <hekkaidekapus> S390X is an IBM thing and petersen is a RedHat employee, so not really fancy :)
18:14:39 <carbolymer> dminuoso, but how would it help? I'm just running it on isolated test case in hspec test - there's not much going on there
18:14:53 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
18:15:08 christo joins (~chris@81.96.113.213)
18:16:06 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
18:16:29 tput is now known as timput
18:16:47 chaosmasttter joins (~chaosmast@p200300c4a70a4101c1be00781dba031a.dip0.t-ipconnect.de)
18:17:10 timput is now known as tput
18:17:23 Saukk joins (~Saukk@2001:998:f9:2914:1fa4:7678:3395:bc0)
18:17:49 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
18:18:01 conal joins (~conal@64.71.133.70)
18:19:24 × nschoe quits (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a) (Ping timeout: 240 seconds)
18:19:31 <carbolymer> tomsmeding, I've found a workaround, added a random delay (1ms;5ms) before each async
18:19:37 <carbolymer> damn memory visibility!
18:20:01 <tomsmeding> ... what architecture are you running that on, and how far are these threads apart
18:20:05 <tomsmeding> physically
18:20:27 tomsmeding is back in an hour or so
18:20:38 × tput quits (~user@S0106a84e3fe54613.ed.shawcable.net) (Quit: ERC (IRC client for Emacs 27.1))
18:20:59 <carbolymer> x86_64 inside VM, windows 10 Enterprise is host
18:21:02 tput joins (~tput@S0106a84e3fe54613.ed.shawcable.net)
18:21:13 <carbolymer> physically? idk
18:21:43 lugosi1 joins (~lugosi@154.13.1.56)
18:22:44 × avdb quits (~avdb@ip-62-235-189-214.dsl.scarlet.be) (Read error: Connection reset by peer)
18:24:48 LKoen joins (~LKoen@81.255.219.130)
18:25:04 geekosaur joins (ac3a5745@172.58.87.69)
18:26:03 × kritzefitz_ quits (~kritzefit@212.86.56.80) (Ping timeout: 260 seconds)
18:28:50 × asheshambasta quits (~user@ptr-e1lysawl9rr13i61o92.18120a2.ip6.access.telenet.be) (Ping timeout: 264 seconds)
18:29:48 akad_ joins (~akad@109107030050.radomsko.vectranet.pl)
18:30:49 × dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection)
18:30:56 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
18:31:10 mbomba joins (~mbomba@142.114.9.241)
18:33:40 ransom joins (~c4264035@c-73-243-2-10.hsd1.co.comcast.net)
18:35:26 × justan0theruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 264 seconds)
18:35:35 christo joins (~chris@81.96.113.213)
18:36:11 mastarija joins (~mastarija@93-138-85-169.adsl.net.t-com.hr)
18:36:22 × fraktor quits (~walter@129.93.184.38) (Quit: WeeChat 2.8)
18:36:59 <mastarija> I'm using GHC 8.8.something and I can't expand type alias, I thought this was possible with :kind! command, but it just prints back the same type alias I give it.
18:37:12 <mastarija> Is this an error or am I doing something wrong?
18:37:31 <mastarija> *bug, not error
18:37:36 <geekosaur> known issue, I think
18:37:43 <mastarija> damn
18:37:55 <mastarija> Any workaround?
18:38:07 <geekosaur> with no fix because there are too many arguments about what it should be doing and how
18:38:12 hiroaki joins (~hiroaki@2a02:908:4b18:e20::8d72)
18:38:32 <Uniaika> mastarija: you can do it with :info actually
18:39:17 <mastarija> Uniaika, oh... that's nice
18:39:24 <mastarija> Uniaika, thanx!
18:39:38 <Uniaika> you're welcome :)
18:40:20 <mastarija> Uniaika, oh.. but it doesn't really work I've noticed
18:40:32 <mastarija> When I have a type argument it doesn't work
18:40:46 <mastarija> Or rather, it doesn't show evaluated type with type argument applied
18:41:53 <mastarija> Uniaika, if I do this :info! ( List' Int ) it says parse error, and if I remove parentheses it just lists info for List' and Int separately
18:42:40 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Remote host closed the connection)
18:42:40 tvrsky joins (~tvrsky@177.20.187.150)
18:42:56 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
18:43:02 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
18:43:28 <Uniaika> ah yeah, I've only tried on a `type Foo = Int` alias
18:44:31 christo joins (~chris@81.96.113.213)
18:44:37 <Uniaika> if geekosaur can tell you where the discussion is happening regarding what :kind! is supposed to do, maybe could you chime in and plead in favour of a dedicated ghci command?
18:45:11 <geekosaur> I'm looking...
18:46:38 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
18:47:31 christo joins (~chris@81.96.113.213)
18:48:26 alp_ joins (~alp@2a01:e0a:58b:4920:9819:e541:8055:66cf)
18:50:03 × teardown quits (~user@gateway/tor-sasl/mrush) (Ping timeout: 240 seconds)
18:51:37 <geekosaur> bah, can't search for ":kind!" sanely
18:51:46 <geekosaur> only 1000+ pages to scan through
18:51:59 teardown joins (~user@gateway/tor-sasl/mrush)
18:53:05 acidjnk_new2 joins (~acidjnk@p200300d0c72260337583e474f5800943.dip0.t-ipconnect.de)
18:54:37 p-core joins (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515)
18:56:18 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
18:56:28 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
18:56:28 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
18:56:28 GyroW joins (~GyroW@unaffiliated/gyrow)
18:56:37 <tomsmeding> https://github.com/ghc-proposals/ghc-proposals/pull/79
18:57:02 <tomsmeding> typing 'ghc kind' in my browser address bad pulled it up very quickly, I've been annoyed by this in the past too :p
18:57:07 <tomsmeding> *address bar
18:57:44 × Saukk quits (~Saukk@2001:998:f9:2914:1fa4:7678:3395:bc0) (Remote host closed the connection)
18:58:53 <geekosaur> that's a proposal spun off the bug, unless it links the bug too?
19:00:08 <geekosaur> there's a bug discussing why the type alias expansion stuff was removed, iirc it interfered with expanding type families
19:01:10 <geekosaur> https://gitlab.haskell.org/ghc/ghc/-/issues/13795
19:01:26 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Remote host closed the connection)
19:02:04 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
19:02:16 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:02:52 christo joins (~chris@81.96.113.213)
19:02:54 kritzefitz joins (~kritzefit@212.86.56.80)
19:03:37 berberman_ joins (~berberman@unaffiliated/berberman)
19:04:28 × berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 268 seconds)
19:04:55 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
19:05:44 × Kaivo quits (~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) (Ping timeout: 240 seconds)
19:07:28 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
19:08:10 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
19:08:22 Kaivo joins (~Kaivo@104-200-86-99.mc.derytele.com)
19:08:29 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:08:45 christo joins (~chris@81.96.113.213)
19:09:45 × geekosaur quits (ac3a5745@172.58.87.69) (Remote host closed the connection)
19:10:29 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:10:47 invaser joins (~Thunderbi@31.148.23.125)
19:10:57 geekosaur joins (ac3a5469@172.58.84.105)
19:11:03 christo joins (~chris@81.96.113.213)
19:12:21 mokulus joins (~mat@176.111.230.96)
19:12:31 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:13:52 texasmynsted joins (~texasmyns@104.140.52.75)
19:15:25 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:15:41 christo joins (~chris@81.96.113.213)
19:16:12 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
19:16:43 × tomsmeding quits (~tomsmedin@tomsmeding.com) (Quit: ZNC 1.7.5 - https://znc.in)
19:17:03 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:17:22 fandi_ joins (~fandi@125.160.217.204)
19:17:47 tomsmeding joins (~tomsmedin@tomsmeding.com)
19:19:53 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
19:20:00 × jedws quits (~jedws@101.184.193.144) (Ping timeout: 256 seconds)
19:20:18 u0_a298 joins (~user@47.206.148.226)
19:20:18 × hackage quits (mniip@haskell/bot/hackage) (Remote host closed the connection)
19:20:32 × fandi quits (~fandi@118.97.77.114) (Ping timeout: 272 seconds)
19:20:44 <texasmynsted> I am sure there is a structure like this.... I have something that forms a Monad and a Functor. I want to apply a function to it if it satisfies some predicate.
19:20:55 hackage joins (mniip@haskell/bot/hackage)
19:21:03 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Quit: quit)
19:21:42 × orcus- quits (~orcus@unaffiliated/orcus) (Quit: ZNC 1.7.5 - https://znc.in)
19:21:49 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
19:21:49 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
19:21:49 GyroW_ joins (~GyroW@unaffiliated/gyrow)
19:22:14 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 264 seconds)
19:22:24 jedws joins (~jedws@101.184.150.81)
19:22:29 orcus joins (~orcus@unaffiliated/orcus)
19:22:35 × lambdabot quits (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection)
19:22:44 <texasmynsted> I could do this with guards, or with an if/else, or ... hmm. I wonder if there is something in Arrow.
19:22:45 × Rudd0 quits (~Rudd0@185.189.115.98) (Ping timeout: 240 seconds)
19:23:11 lambdabot joins (~lambdabot@haskell/bot/lambdabot)
19:23:59 christo joins (~chris@81.96.113.213)
19:25:30 <tomsmeding> @t ifM (> 0) succ
19:25:38 <lambdabot> Maybe you meant: tell thank you thanks thesaurus thx tic-tac-toe ticker time todo todo-add todo-delete type v @ ? .
19:25:42 <tomsmeding> % :t ifM (> 0) succ
19:25:42 <yahb> tomsmeding: ; <interactive>:1:1: error: Variable not in scope: ifM :: (a0 -> Bool) -> (a1 -> a1) -> t
19:25:53 <koz_> texasmynsted: Try writing the type of such a thing.
19:25:57 × LKoen quits (~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
19:26:02 conal joins (~conal@64.71.133.70)
19:26:06 <tomsmeding> % :t let ifM p x y = p >>= \b -> if b then x else y in ifM (> 0) succ
19:26:07 <yahb> tomsmeding: (Ord a, Num a, Enum a) => (a -> a) -> a -> a
19:26:19 <tomsmeding> where ifM is the obvious thing, in various libraries
19:26:22 <koz_> Is your goal something like watIWant :: (Monad m) => (a -> b) -> (a -> Bool) -> m a -> m a
19:26:29 fandi__ joins (~fandi@118.97.77.114)
19:26:34 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
19:26:37 <koz_> Sorry, slight error.
19:26:41 <koz_> Is your goal something like watIWant :: (Monad m) => (a -> a) -> (a -> Bool) -> m a -> m a
19:26:57 × conal quits (~conal@64.71.133.70) (Client Quit)
19:26:57 <koz_> (Monad implies Functor, so no need to have that there)
19:27:04 × kish quits (~oracle@unaffiliated/oracle) (Remote host closed the connection)
19:27:17 christo joins (~chris@81.96.113.213)
19:27:18 texasmynsted looking up ifM
19:27:52 <tomsmeding> texasmynsted: (probably want to write it yourself if you don't already include a library that has it)
19:28:40 × nineonine quits (~textual@216.81.48.202) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:29:06 <tomsmeding> this uses the trick that ((->) a) is a monad :p
19:29:11 <tomsmeding> which is not for the faint of heart
19:29:14 <texasmynsted> Okay. Fair enough.
19:29:24 × fandi_ quits (~fandi@125.160.217.204) (Ping timeout: 272 seconds)
19:29:51 nineonine joins (~textual@216.81.48.202)
19:30:06 conal joins (~conal@64.71.133.70)
19:30:14 <dminuoso> Rewriting almost half of a 2k lines code generator in one day.
19:30:28 <dminuoso> The type system has my back once again. :)
19:30:30 <koz_> dminuoso: #JustHaskellThings ?
19:30:51 <dminuoso> koz_: Hehe yeah.
19:31:25 <koz_> Meanwhile I'm in a special kind of parsing hell.
19:31:25 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
19:31:29 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
19:31:41 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
19:31:43 <dminuoso> Haha, my parser is one big blop of adhoc stateful shenanigans.
19:31:53 <dminuoso> megaparsec over State
19:31:54 <koz_> dminuoso: FUNNY YOU SHOULD MENTION THAT
19:31:56 britva joins (~britva@2a02:aa13:7240:2980:1ce4:625f:f093:45ef)
19:32:13 × conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer)
19:32:13 <davean> dminuoso: over state, interesting.
19:32:24 jess-o-lantern is now known as sandcat
19:32:37 <koz_> So you're in like StateT s Parser?
19:32:56 <dminuoso> type Parser = ParsecT Void String (S.State ParserState)
19:33:06 <koz_> Ah, OK, the other way around.
19:34:52 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:35:22 <dminuoso> davean: Yeah. Lets you do context-sensitive things easily, or do some adhoc hacks.
19:35:37 × dopplergange quits (~dop@titan.pathogen.is) (Ping timeout: 246 seconds)
19:35:48 conal joins (~conal@64.71.133.70)
19:35:52 <dminuoso> Im doing so I can build up a data structure as Im parsing, avoiding the need to build into some kind of DSL + extra evalutaor
19:36:26 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
19:36:40 × conal quits (~conal@64.71.133.70) (Client Quit)
19:36:57 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
19:37:14 × mastarija quits (~mastarija@93-138-85-169.adsl.net.t-com.hr) (Ping timeout: 264 seconds)
19:37:24 × acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 240 seconds)
19:37:43 conal joins (~conal@64.71.133.70)
19:43:55 × u0_a298 quits (~user@47.206.148.226) (Remote host closed the connection)
19:44:16 u0_a298 joins (~user@47.206.148.226)
19:45:21 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
19:46:38 avdb joins (~avdb@ip-62-235-189-214.dsl.scarlet.be)
19:47:44 <avdb> Sorry if this question already got asked a million times, but I'm looking for a vim plugin that offers only syntax highlighting? Error correction and stuff is really disturbing to me.
19:48:07 × ransom quits (~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:48:37 <avdb> Currently using VSCode only with the "Haskell Syntax Higlighting" plugin.
19:49:05 <dminuoso> neovim/haskell-vim ?
19:49:15 <dminuoso> err
19:49:18 <dminuoso> neovimhaskell/haskell-vim ?
19:49:25 <maerwald> yes
19:49:26 nschoe joins (~quassel@2a01:e0a:3c4:c7b0:c945:6e87:b509:d89a)
19:49:28 <maerwald> neovimhaskell/haskell-vim
19:49:48 <maerwald> make sure to set g:haskell_indent_disable = 1
19:49:58 × nineonine quits (~textual@216.81.48.202) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:50:03 × teardown quits (~user@gateway/tor-sasl/mrush) (Ping timeout: 240 seconds)
19:50:56 <koz_> How would I spell 'given parser p, try it, giving Nothing if it fails, and Just its result otherwise, eat whatever input remains either way' in attoparsec?
19:51:24 × kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection)
19:51:36 <maerwald> this sounds like a good exercise for monsterchrom's students
19:51:39 <dminuoso> % :t optional -- koz_
19:51:39 <yahb> dminuoso: Alternative f => f a -> f (Maybe a)
19:52:08 bartemius joins (~bartemius@109-252-20-20.nat.spd-mgts.ru)
19:52:09 <dminuoso> Dunno about attoparsec, you might have to disable backtracking
19:52:17 <koz_> dminuoso: That's why I'm asking.
19:52:28 <avdb> dminuoso: Is it also available for basic vim? Neo got too much features that I don't need.
19:52:35 <maerwald> avdb: yes
19:53:03 <maerwald> yes, neovim is "agile"
19:53:08 <avdb> Ah okay, thanks. Currently checking the github page.
19:53:30 <maerwald> I think ppl wrote better software before git
19:53:38 <koz_> I guess I could use count with a count of 1.
19:53:50 <maerwald> there was a time when a bad release was embarrassing
19:53:54 <maerwald> now with git, no one cares
19:54:10 hackage addy 0.1.0.1 - A full-featured library for parsing, validating, and rendering email addresses https://hackage.haskell.org/package/addy-0.1.0.1 (PeterJones)
19:54:30 × jakob_ quits (~textual@p200300f49f16220061022725fbc9d567.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
19:54:51 kritzefitz joins (~kritzefit@212.86.56.80)
19:54:53 × kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection)
19:54:57 <dminuoso> koz_: It seems you cant disable backtracking on attoparsec mmm
19:55:03 <ibloom> Is there a good reason why Data.Vector and Data.Vector.Storable are different libraries and different types?
19:55:03 <avdb> maerwald: Do you mean it's better? To be honest I never checked the differences until now.
19:55:08 <koz_> Count with a count of 1 works well enough for me.
19:55:17 <avdb> I used neovim at first but for some reason I reverted back to classic vim.
19:55:27 <maerwald> avdb: no idea. It's broken on my keyboard layout, so I can't reasonably use neovim
19:55:29 <koz_> ibloom: Yes. Vector can store anything, Vector.Storable can only store... well, Storable instances.
19:55:47 <koz_> They're represented differently too - in particular, Storable Vectors are designed for passing to FFI.
19:55:50 × alp_ quits (~alp@2a01:e0a:58b:4920:9819:e541:8055:66cf) (Ping timeout: 264 seconds)
19:56:04 p8m joins (p8m@gateway/vpn/protonvpn/p8m)
19:56:05 <maerwald> also, GUIs are a mess in neovim
19:56:19 jakob_ joins (~textual@p200300f49f1622004116af098f243cdf.dip0.t-ipconnect.de)
19:56:40 <maerwald> too many, but none complete
19:56:46 <maerwald> agile
19:56:48 <dolio> Vim comes with Haskell highlighting.
19:56:54 <dolio> As does neovim, I think.
19:57:11 <ibloom> Is there a way to go between the two types of vectors at zero expense?
19:57:22 <davean> ibloom: what two types?
19:57:49 <koz_> ibloom: Also, what are you trying to do that requires this?
19:58:19 kritzefitz joins (~kritzefit@212.86.56.80)
19:58:23 <ibloom> I have regular vectors that I'm freezing from Data.Vector.Mutable and Data.Vector.Storable that come from JuicyPixels
19:58:27 <maerwald> avdb: also, Twinside/vim-hoogle is useful
19:59:40 <koz_> Is there a reason you can't just work with Storable all the time?
19:59:46 <koz_> Storable has mutable versions too.
20:00:06 <maerwald> I also use luochen1990/rainbow for haskell. First installed it for clojure some time ago, but it's nice here too
20:00:11 <avdb> maerwald: I'm not there yet, I still have a hard time understanding Hoogle but still not as bad as cppreference.
20:00:44 <ibloom> Yeah the mutable version of storable is implemented very differently... perhaps I'm missing something.
20:01:36 <davean> Ok, vectors from the 'vector' package, thats a good place to start.
20:02:09 <koz_> ibloom: What do you mean?
20:02:13 <davean> ibloom: what do you mean "implimented very differently"?
20:02:19 <koz_> It's the same as mutable vectors for any other variety basically.
20:02:25 <maerwald> avdb: https://tinyurl.com/yxhxn7m3 my plugin config
20:03:12 <ibloom> davean: Data.Vector.Mutable is based on read and write for example. Maybe I need to read more.
20:03:26 <koz_> ibloom: What do you mean by 'read more'?
20:03:37 × rdivacky quits (~rdivacky@212.96.173.4) (Read error: Connection reset by peer)
20:03:38 <ibloom> I mean I need to read more of the docs.
20:03:54 rdivacky joins (~rdivacky@212.96.173.4)
20:03:58 <koz_> ibloom: Are you unclear how to move between mutable and immutable vectors, perhaps?
20:03:59 <davean> ibloom: thats not the mutable storable, but if you can't read and write its not mutable - thats what being mutable is
20:04:41 <davean> ibloom: if you don
20:04:46 <dolio> Well, the write part.
20:04:47 <davean> t want read and write you don't want mutable vectors
20:05:02 <davean> dolio: well no, read because mutable ones have a semantic difference in that they're ordered
20:05:42 <ibloom> No no, all of that code is written already, I just have images I'm generating by writing to mutable vectors and others that I'm loading from JuicyPixels and the only way I can find to combine them was to go to and from a list.
20:06:02 × _vaibhavingale_ quits (~Adium@203.188.228.9) (Quit: Leaving.)
20:06:22 <davean> freeze?
20:07:02 <ibloom> If I freeze from Data.Vector.Mutable MVector I get a Data.Vector vector. I need a Data.Vector.Storable vector.
20:07:42 <davean> Right so use the storable version ...
20:07:55 fandi_ joins (~fandi@125.160.217.204)
20:08:07 <davean> If you want storable, use storable?
20:08:41 <ibloom> Right, that means I need to rewrite all my mutable code, because the libraries are actually very different as far as I can tell.
20:08:46 <davean> You're code doesn't have to care which it is, use Data.Vector.Generic(.Mutable)
20:08:51 <davean> no, it doesn't
20:09:16 <koz_> ibloom: Not really, no. The APIs of all the mutable vector types are almost exact matches.
20:09:20 <davean> I'm so confused how you're not hearing what is being said
20:09:42 <koz_> The only difference is that your data has to be Storable to be put in a mutable Storable vector. Is that the issue here?
20:10:04 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
20:10:11 <ibloom> I think I wasn't using the Generic version. Instead I've got an old library.
20:10:24 <davean> old? How old are we talking ... thats not new
20:10:43 <geekosaur> pretty sure they've always had nearly identical APIs
20:10:50 × fandi__ quits (~fandi@118.97.77.114) (Ping timeout: 264 seconds)
20:11:14 <geekosaur> unless we're talking some JuicyPixels thing
20:11:36 <davean> geekosaur: Data.Vector.Generic.* got added in 2009
20:11:46 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
20:11:46 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
20:11:46 GyroW joins (~GyroW@unaffiliated/gyrow)
20:11:56 <ibloom> I've been importing Data.Vector.Mutable instead of Data.Vector.Generic.Mutable
20:12:18 × avdb quits (~avdb@ip-62-235-189-214.dsl.scarlet.be) (Ping timeout: 268 seconds)
20:12:19 <ibloom> I'll try that and let you know how it goes.
20:12:28 conal_ joins (~conal@66.115.157.138)
20:12:35 × conal_ quits (~conal@66.115.157.138) (Client Quit)
20:12:38 × conal quits (~conal@64.71.133.70) (Ping timeout: 264 seconds)
20:12:38 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 264 seconds)
20:13:13 conal joins (~conal@66.115.157.138)
20:13:22 × conal quits (~conal@66.115.157.138) (Client Quit)
20:13:34 fandi__ joins (~fandi@118.97.77.114)
20:14:48 <ibloom> I see , it looks like I'm actually using STVectors. Sorry, I've been wiring up some old code I hadn't touched in a while.
20:14:50 conal joins (~conal@66.115.157.138)
20:14:58 × conal quits (~conal@66.115.157.138) (Client Quit)
20:15:18 × tvrsky quits (~tvrsky@177.20.187.150) (Quit: Leaving)
20:15:26 nineonine joins (~textual@216.81.48.202)
20:15:56 <koz_> STVector is just a mutable vector specialized to ST.
20:16:37 × fandi_ quits (~fandi@125.160.217.204) (Ping timeout: 268 seconds)
20:19:05 ransom joins (~c4264035@2603:300b:1301:3d00:1050:d45f:fca2:b267)
20:19:12 scasc joins (~szabi@213142096120.public.telering.at)
20:19:15 × jakob_ quits (~textual@p200300f49f1622004116af098f243cdf.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
20:19:52 <scasc> Just a quick question:
20:20:00 kish joins (~oracle@unaffiliated/oracle)
20:20:01 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
20:20:22 dminuoso patiently waits for the question
20:20:34 dminuoso scribbles down potential answers
20:20:38 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
20:20:45 dminuoso readies the ScopedTypeVariable answer
20:20:46 <scasc> I seem to remember that some recent GHC dropped 32-bit architecture (i386) support, and only supports x86_64 now
20:21:02 <scasc> is that right, or do I misremember?
20:21:21 <maerwald> I don't remember that
20:21:57 × kuribas quits (~user@ptr-25vy0i9qqlftcl4jjst.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
20:22:12 <geekosaur> there was discussion of that for windows, I think?
20:22:12 <maerwald> even 9.0.1-alpha1 has 32bit
20:22:13 <dminuoso> https://www.haskell.org/ghc/download_ghc_8_10_1.html#linux_i386
20:22:18 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:22:21 <dminuoso> scasc: We ship i386 builds.
20:22:41 hackage zxcvbn-hs 0.3.0.0 - Password strength estimation based on zxcvbn. https://hackage.haskell.org/package/zxcvbn-hs-0.3.0.0 (PeterJones)
20:23:18 takuan_dozo joins (~takuan@178-116-218-225.access.telenet.be)
20:24:02 × ransom quits (~c4264035@2603:300b:1301:3d00:1050:d45f:fca2:b267) (Ping timeout: 264 seconds)
20:24:13 machinedgod joins (~machinedg@24.105.81.50)
20:25:41 <scasc> Thanks. I was quite unsure, that's why I wanted to double check.
20:26:16 <scasc> Didn't find an authoritative source, but of course, I could have checked the distribution packages provided.
20:27:02 × toorevitimirp quits (~tooreviti@117.182.180.36) (Ping timeout: 264 seconds)
20:27:51 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
20:28:40 christo joins (~chris@81.96.113.213)
20:30:06 alp_ joins (~alp@2a01:e0a:58b:4920:3ce6:ebe8:a4f7:2753)
20:30:08 <geekosaur> so fwiw there is no i386 download for windows in 8.8.4
20:30:20 <geekosaur> only x86_64
20:32:15 macrover joins (~macrover@ip70-189-231-35.lv.lv.cox.net)
20:33:12 conal joins (~conal@66.115.157.138)
20:34:58 <scasc> I really thought that there was at least a discussion about generally dropping 32-bit support in general? Like I seem to remember that it was brought up that the last 32-bit only Intel processor was a Core Duo, introduced January 2006 (so, 15 years in some months).
20:35:27 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
20:35:28 <scasc> The discussion might have related a different language/compiler though. I'm really hazy.
20:36:13 × geekosaur quits (ac3a5469@172.58.84.105) (Remote host closed the connection)
20:39:12 jakob_ joins (~textual@p200300f49f1622004c183b797cf64844.dip0.t-ipconnect.de)
20:40:01 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
20:40:36 × AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
20:41:34 Franciman joins (~francesco@host-82-54-10-114.retail.telecomitalia.it)
20:41:54 × thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 268 seconds)
20:42:16 aarvar joins (~foewfoiew@50.35.43.33)
20:44:25 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
20:44:51 u0_a298 joins (~user@47.206.148.226)
20:47:07 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
20:47:31 u0_a298 joins (~user@47.206.148.226)
20:48:24 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
20:48:35 <hekkaidekapus> scasc: <https://old.reddit.com/r/haskell/comments/hrytns/announce_ghc_884_now_available/fy7qki5>
20:48:58 christo joins (~chris@81.96.113.213)
20:49:12 × invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 272 seconds)
20:49:45 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
20:50:01 christo joins (~chris@81.96.113.213)
20:50:36 <scasc> @hekkaidekapus: yes! That was it!
20:50:37 <lambdabot> Unknown command, try @list
20:51:13 <scasc> And it ben gamari only talked about 32-bit *Windows*.
20:51:15 × conal quits (~conal@66.115.157.138) (Quit: Computer has gone to sleep.)
20:51:27 <hekkaidekapus> So, see what geekosaur said above: it’s only about Windows.
20:53:28 <scasc> (if that step is concluded, then only linux would remain as a Tier 1 x86 patform, as MacOS is already only supported on x86_64)
20:53:29 <scasc> https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms#tier-1-platforms
20:55:31 benjamin-l joins (~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60)
20:55:31 × u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer)
20:55:47 avoandmayo joins (~textual@122-58-158-238-adsl.sparkbb.co.nz)
20:55:58 u0_a298 joins (~user@47.206.148.226)
20:56:06 ransom joins (c4264035@gateway/vpn/protonvpn/c4264035)
20:56:20 × cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
20:56:52 <merijn> That's because on 32bit windows there's a whole bunch of trickiness with the linker, iirc
20:57:32 <hekkaidekapus> scasc: I don’t know about the update frequency of GHC/Wiki, but if you want to be sure, choose a version and check its download page, say <https://downloads.haskell.org/~ghc/8.10.2>.
20:58:14 <hekkaidekapus> merijn: That, and all the issues linked to in the Reddit post.
20:59:25 <scasc> Hm, i386 only for deb9, not for deb10 or the other linux distros.
20:59:49 rprije joins (~rprije@194-193-168-77.tpgi.com.au)
21:00:02 × lugosi1 quits (~lugosi@154.13.1.56) ()
21:01:29 <hekkaidekapus> The deb9/deb10 is only an indication of the expected ABI. It does not mean the bindist could not work on other distros.
21:01:46 <merijn> Yeah
21:03:54 <hekkaidekapus> scasc: If unsure, use ghcup. It ships with heuristics to choose a bindist best suited to your distro.
21:04:06 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
21:04:23 <maerwald> probably not many i386 users though
21:04:45 <hekkaidekapus> Aye.
21:05:43 × jakob_ quits (~textual@p200300f49f1622004c183b797cf64844.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
21:06:04 × texasmynsted quits (~texasmyns@104.140.52.75) (Remote host closed the connection)
21:06:38 × alp_ quits (~alp@2a01:e0a:58b:4920:3ce6:ebe8:a4f7:2753) (Ping timeout: 264 seconds)
21:06:59 texasmynsted joins (~texasmyns@104.140.52.75)
21:08:31 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
21:13:14 dopplergange joins (~dop@195.158.249.53)
21:13:21 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
21:14:15 <scasc> Exploratorily: would dropping x86 (32bit) architecture support in general (for all OSes) open up the way to simplify the GHC codebase or build toolchain?
21:15:00 × chaosmasttter quits (~chaosmast@p200300c4a70a4101c1be00781dba031a.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
21:15:03 × ezzieyguywuf quits (~Unknown@unaffiliated/ezzieyguywuf) (Quit: Lost terminal)
21:15:31 ezzieyguywuf joins (~Unknown@unaffiliated/ezzieyguywuf)
21:16:09 hackage mysql 0.1.7.2 - A low-level MySQL client library. https://hackage.haskell.org/package/mysql-0.1.7.2 (paulrouse)
21:17:11 conal joins (~conal@66.115.157.138)
21:17:40 × u0_a298 quits (~user@47.206.148.226) (Ping timeout: 268 seconds)
21:18:01 hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
21:18:03 × conal quits (~conal@66.115.157.138) (Client Quit)
21:18:48 × mbomba quits (~mbomba@142.114.9.241) (Quit: WeeChat 2.9)
21:20:23 × hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
21:20:36 <monsterchrom> It would.
21:20:43 hekkaidekapus_ is now known as hekkaidekapus
21:21:20 <monsterchrom> But be careful with your measure of "simplify".
21:21:33 jakob_ joins (~textual@p200300f49f16220085510f3c3976c42b.dip0.t-ipconnect.de)
21:22:11 × elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 258 seconds)
21:22:33 <hekkaidekapus> scasc: x86 is not a bottleneck in that regard, IMO. You can make an informed opinion by exploring these labels: <https://gitlab.haskell.org/ghc/ghc/-/issues?label_name%5B%5D=infrastructure>, <https://gitlab.haskell.org/ghc/ghc/-/issues?label_name%5B%5D=CI>, <https://gitlab.haskell.org/ghc/ghc/-/issues?label_name%5B%5D=hadrian>,
21:22:34 <hekkaidekapus> <https://gitlab.haskell.org/ghc/ghc/-/issues?milestone_title=Make+removal>.
21:23:27 hekkaidekapus apologises for the URL avalanche.
21:23:45 × hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 240 seconds)
21:23:45 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
21:23:51 × ransom quits (c4264035@gateway/vpn/protonvpn/c4264035) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:23:55 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
21:31:29 wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:32:19 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
21:32:22 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
21:32:53 elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
21:33:05 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
21:33:05 <monsterchrom> Derp, I have a python file "yield.py". I try to "import yield" to load it. I forgot that this clashes with the reserved word "yield" so python isn't understanding me.
21:33:30 ransom joins (c4264035@gateway/vpn/protonvpn/c4264035)
21:33:31 <yushyin> :D
21:33:35 <Rembane> monsterchrom: You can still import it if you jump through hoops but you might want to rename it instead.
21:33:38 × acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 264 seconds)
21:33:39 <monsterchrom> This is why Haskell makes module names capitalized, and reserved words not. This is exactly right.
21:33:49 <monsterchrom> Yeah
21:34:14 × danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 264 seconds)
21:34:30 <Rembane> Cunning!
21:35:23 <monsterchrom> Wait a second, yield-examples.py won't make sense either. This is a stupid language.
21:35:44 Varis joins (~Tadas@unaffiliated/varis)
21:35:51 <hpc> be a real python programmer, name it __yield__
21:36:02 <monsterchrom> Sorry folks, I'm dabbling in python because I am coding up python yield examples so that I can then teach Racket's shift/reset. :)
21:36:42 <Rembane> monsterchrom: Misspell it instead. yeeld. :D
21:36:44 × ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
21:36:58 × bartemius quits (~bartemius@109-252-20-20.nat.spd-mgts.ru) (Remote host closed the connection)
21:37:05 <monsterchrom> Then again Yield-Example.hs won't make sense either if I plan to "import Yield-Example". Bah stupid languages. Scheme is better in this regard.
21:37:22 <monsterchrom> Haha I'll take that advice.
21:38:11 <texasmynsted> monsterchrom: You are learning python to teach Racket?
21:38:40 hackage Agda 2.6.1.2 - A dependently typed functional programming language and proof assistant https://hackage.haskell.org/package/Agda-2.6.1.2 (AndreasAbel)
21:39:10 <monsterchrom> More generally, I'm learning programming languages to teach principles of programming languages.
21:39:21 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
21:39:40 <Rembane> monsterchrom: What's your verdict of programming languages so far?
21:39:40 <monsterchrom> But we use Racket and Haskell to talk about the principles. So it does look like "to teach Racket and Haskell".
21:40:25 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
21:40:41 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
21:40:41 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
21:40:41 GyroW joins (~GyroW@unaffiliated/gyrow)
21:40:54 <monsterchrom> I don't have strong opinions. I like Haskell myself. But if students learn to deconstruct programming languages a bit and appreciate various features and sacrifices, that's cool for me.
21:40:59 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
21:41:02 knupfer joins (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de)
21:41:07 <texasmynsted> Seems to me that Racket and Haskell would be fair better choices for teaching anything than python.
21:41:26 <Rembane> Unless you want to teach Python of course
21:41:34 <texasmynsted> why would you want to do that?
21:41:57 <Rembane> monsterchrom: That sounds like very good learning outcomes
21:42:18 <dolio> Maybe you should use Ruby instead. Does it still have callCC?
21:42:20 <Rembane> texasmynsted: It's a very useful language, especially if you want to do some scripting for automating stuff or to do machine learning.
21:42:37 <texasmynsted> I am not convinced
21:42:48 <monsterchrom> To some extent I and my colleagues are converging to defining this "principles of programming languages" course to be basically the lambda-the-ultimate papers explained in modern terms and adjusted to 3rd-year CS.
21:42:48 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
21:42:57 <yushyin> useful because of tons of libraries
21:43:02 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
21:43:19 <monsterchrom> Haha I fear Ruby.
21:43:52 <texasmynsted> seems to me haskell has a fair number its self
21:44:03 <monsterchrom> 1970 : C :: 1990 : Python
21:44:42 <monsterchrom> I mean, I know C and Python have very different semantics. But I'm not comparing that.
21:45:10 <monsterchrom> I'm comparing why people use them despite semantics issues. It's only because "has libraries".
21:45:11 <texasmynsted> I am mostly joking. I have considered learning python just to be able to help all the people struggling to learn it
21:45:48 <monsterchrom> and networking effect
21:45:55 sandcat is now known as jess-o-lantern
21:46:01 <texasmynsted> I need strict typing to prevent insanity
21:46:03 knupfer1 joins (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de)
21:46:12 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
21:46:22 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
21:46:23 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
21:46:23 GyroW joins (~GyroW@unaffiliated/gyrow)
21:46:30 <dolio> Why do people spend time with elaborate type hacks in GHC instead of helping to make Idris viable? :þ
21:46:39 <monsterchrom> hehe
21:46:43 × kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection)
21:46:52 <texasmynsted> dolio: hmm. good question
21:47:04 <monsterchrom> You know what, 1970 : C :: 1990 : Python :: 2020 : Haskell.
21:47:31 sagax joins (~sagax_nb@213.138.71.146)
21:47:44 <monsterchrom> i.e., GHC Haskell enjoys more libraries than Idris does
21:47:53 × mananamenos quits (~mananamen@84.122.202.215.dyn.user.ono.com) (Ping timeout: 268 seconds)
21:48:24 <monsterchrom> Then again, I haven't checked whether there is a version of wreq for Idris.
21:49:50 × knupfer quits (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 264 seconds)
21:49:50 knupfer1 is now known as knupfer
21:50:04 mastarija joins (~mastarija@93-138-85-169.adsl.net.t-com.hr)
21:50:56 <texasmynsted> maybe the ML libraries from python should be ported to other languages.
21:51:33 <dolio> Most of it isn't even python, is it? They're just python wrappers for C code or something.
21:51:53 <monsterchrom> Yeah
21:52:16 alp_ joins (~alp@2a01:e0a:58b:4920:6800:79d6:f6e9:b658)
21:52:37 conal joins (~conal@66.115.157.138)
21:52:55 × conal quits (~conal@66.115.157.138) (Client Quit)
21:53:15 DirefulSalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt)
21:53:22 <Rembane> texasmynsted: They definitely can be, but that takes much more time than just using them.
21:53:29 <hpc> dolio: honestly, most of python is just C
21:54:54 <Sgeo> So, this is a long shot and basically completely off topic, but: A lot of FRP stuff is inspired by ActiveVRML, right? Does the ActiveVRML control exist anywhere still?
21:55:03 <dolio> I would imagine the reason things settled on python is that for machine learning you're much less likely to care about language features. You're just scripting the underlying high performance stuff.
21:56:38 × knupfer quits (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 260 seconds)
21:58:05 falafel__ joins (~falafel@71-34-132-121.clsp.qwest.net)
21:59:47 knupfer joins (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de)
22:00:22 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
22:00:22 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
22:00:22 GyroW_ joins (~GyroW@unaffiliated/gyrow)
22:01:18 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds)
22:01:43 × texasmynsted quits (~texasmyns@104.140.52.75) (Remote host closed the connection)
22:02:39 Stanley00 joins (~stanley00@unaffiliated/stanley00)
22:02:39 texasmynsted joins (~texasmyns@104.140.52.75)
22:03:04 × texasmynsted quits (~texasmyns@104.140.52.75) (Remote host closed the connection)
22:03:21 texasmynsted joins (~texasmyns@104.140.52.75)
22:03:56 × takuan_dozo quits (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 272 seconds)
22:05:07 Rudd0 joins (~Rudd0@185.189.115.108)
22:05:47 nbloomf joins (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa)
22:07:50 × Stanley00 quits (~stanley00@unaffiliated/stanley00) (Ping timeout: 264 seconds)
22:08:13 <thblt> dolio: that's roughly most of Python use besides scripting, I think :)
22:09:38 × falafel__ quits (~falafel@71-34-132-121.clsp.qwest.net) (Ping timeout: 264 seconds)
22:09:40 hackage aura 3.2.2 - A secure package manager for Arch Linux and the AUR. https://hackage.haskell.org/package/aura-3.2.2 (fosskers)
22:09:58 × knupfer quits (~Thunderbi@HSI-KBW-046-005-192-105.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 246 seconds)
22:13:13 falafel__ joins (~falafel@71-34-132-121.clsp.qwest.net)
22:14:04 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 240 seconds)
22:16:31 falafel__ is now known as falafel_
22:18:10 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:d1d4:d989:c09d:31fa) (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:18:51 <thblt> (Eg numpy is 33% C)
22:23:02 × ransom quits (c4264035@gateway/vpn/protonvpn/c4264035) (Ping timeout: 268 seconds)
22:26:07 × p-core quits (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515) (Ping timeout: 268 seconds)
22:28:10 hackage mock-httpd 1.0.0 - A HTTP server for testing HTTP clients https://hackage.haskell.org/package/mock-httpd-1.0.0 (PeterJones)
22:28:48 <texasmynsted> hmm. Looks like I got disconnected.
22:29:03 jbox joins (~atlas@unaffiliated/jbox)
22:29:27 Fuchs joins (~Fuchs@154.13.1.56)
22:29:47 Fuchs is now known as Guest31792
22:30:41 mbomba joins (~mbomba@142.114.9.241)
22:30:42 <texasmynsted> dolio: I have wondered why people would care about machine learning but not about effective programming.
22:32:05 <texasmynsted> What would be wrong with using ML and Haskell or ML and Scala. Why ML and python?
22:32:32 <Rembane> Because numpy and scipy
22:32:38 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
22:32:38 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
22:32:38 GyroW joins (~GyroW@unaffiliated/gyrow)
22:33:07 × scasc quits (~szabi@213142096120.public.telering.at) (Remote host closed the connection)
22:33:24 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
22:33:33 scasc joins (~szabi@213142096120.public.telering.at)
22:34:01 <thblt> And because you can't care about everything? Perfectionism is a curse.
22:34:10 <koz_> Also because argumentum ad serpentum makes people think Python is 'intuitive', 'natural' and 'easy to work with'.
22:34:20 mananamenos joins (~mananamen@84.122.202.215.dyn.user.ono.com)
22:34:26 <koz_> None of the above are even remotely close to _testable_, much less true, but argumentum ad serpentum.
22:34:57 conal joins (~conal@66.115.157.138)
22:35:22 <thblt> hahaha I love, and officially adopt, "argumentum ad serpentum"
22:35:32 <Uniaika> yeah I love it too
22:35:36 × Madars quits (~null@unaffiliated/madars) (Ping timeout: 272 seconds)
22:35:51 <koz_> thblt, Uniaika: Thank you, I'm glad my British private school education was not for nothing.
22:35:59 <thblt> (But well, testable or not, I honestly think it's true.)
22:36:45 × conal quits (~conal@66.115.157.138) (Client Quit)
22:36:52 p-core joins (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515)
22:36:53 <thblt> Highly dynamic languages are easy to get started on, although hard to write programs on that don't explode in mid-flight.
22:37:19 conal joins (~conal@66.115.157.138)
22:37:20 <koz_> thblt: I would argue that this is _opposite_ of 'easy to work with'.
22:37:25 <koz_> Yes, you can write garbage easily.
22:37:30 <koz_> I don't consider this a virtue.
22:37:52 × conal quits (~conal@66.115.157.138) (Client Quit)
22:37:54 <thblt> koz_: my argument was about intuitive. I'm on #haskell, I'm not going to argue the virtues of dynamic typing.
22:37:59 <thblt> :)
22:38:19 <koz_> thblt: I dunno. Python grated on my intution badly even when I _wasn't_ a Haskeller.
22:38:28 <texasmynsted> But _why_ do people want to do ML in the first place? It would seem to me because it is useful. Think how much better it would be if the programs using the libraries were equally useful.
22:39:28 × britva quits (~britva@2a02:aa13:7240:2980:1ce4:625f:f093:45ef) (Quit: This computer has gone to sleep)
22:39:43 <thblt> koz_: to each their own, I guess. To me, Python is very, very obvious and my goto language for everything .1kslocs and below.
22:39:51 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
22:39:55 <texasmynsted> I would think if one is willing to learn ML one would be willing to learn Haskell/Scala/WhateverLang.
22:40:04 <thblt> Also because of the stdlib let's be honest.
22:40:27 texasmynsted shrug
22:40:29 <koz_> thblt: Welcome to the 'it's not testable' part of my claim, and as far as I'm concerned, untestability means talking about whether it's true or not is meaningless. However, if you can get work done in Python, more power to you, because I just want to shower constantly in that language's presence.
22:41:18 <thblt> koz_: I'm not sure it's not testable, but I certainly can't be bothered into implementing a testing protocol :)
22:41:46 <koz_> thblt: You think you can come up with a scientific test for _intuitiveness_? Uhh, glhf with that.
22:41:58 <texasmynsted> Soon we will get to the testing vs types discussion . . .
22:42:15 <koz_> texasmynsted: Not the sort of testability I am referring to by a country mile.
22:42:17 <thblt> well, if it means something, it's testable.
22:42:49 <koz_> thblt: You think you can come with a _singular_ definition for intuitiveness? Uhh, also glhf with that.
22:42:56 <dsal> thblt: haskell is my goto for just about anything.
22:43:00 <texasmynsted> koz_: what are you referring to?
22:43:10 <koz_> texasmynsted: Testability in the scientific method sense.
22:43:21 <koz_> Not in the 'does my software launch nukes when I didn't ask it to' sense.
22:43:21 <texasmynsted> Python?
22:43:23 <dsal> I've seen a lot of people argue about, e.g., Haskell not being intuitive. It's usually more like, "Haskell doesn't match the mental model I've trained myself in for the last two decades."
22:43:25 <texasmynsted> Really?
22:43:48 <koz_> texasmynsted: Are you asking me if I really meant what I said?
22:43:50 <koz_> If so, then yes?
22:43:53 <thblt> dsal: I may get there, but the Prelude is an issue. For quick scripts, Python wins for me because of the batteries included aspect.
22:43:55 <koz_> Also what dsal said.
22:44:04 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
22:44:14 <thblt> dsal: isn't that exactly what an intuition is?
22:44:28 <koz_> Haskell is unashamedly different, and I like it for that. C is not such a good language that we should slavishly adopt its conventions.
22:44:32 <dsal> When you don't like python's batteries, you get to learn one of several competing things to make stuff work, and then your scripts don't work at some point in the future and you don't know how to recreate the environment.
22:44:48 <dolio> texasmynsted: I think there's nothing wrong with doing machine learning in Haskell or ML. I just think the people who gravitate toward machine learning would be the opposite of the kind of person who cares about the language it's done in being 'good'.
22:44:59 <koz_> And those batteries also suck in innumerable ways. Two of which I have encountered personally. As a _user_.
22:45:11 <dsal> thblt: It might be denotation, but connotation implies something closer to "natural." IMO, haskell is at least as natural as most other languages I've had to use.
22:45:18 <koz_> Python works if your buy-in to argumentum ad serpentum is high enough.
22:45:22 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
22:45:22 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
22:45:22 GyroW_ joins (~GyroW@unaffiliated/gyrow)
22:45:27 ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
22:45:43 <koz_> (by 'encountered' I mean 'in the last week or so')
22:45:59 <dsal> I used to use twisted quite a lot. Then I found someone who didn't like twisted made yet another thing to reinvent it and bragged about how much better and more intuitive it was (as long as you ignored the swaths of things I couldn't do with their framework).
22:46:01 × falafel_ quits (~falafel@71-34-132-121.clsp.qwest.net) (Ping timeout: 246 seconds)
22:46:03 <koz_> (and by 'user' I mean 'not a developer')
22:46:11 <texasmynsted> So testable like Coq or TLA+ or minizinc or agda, Idris, etc?
22:46:15 <thblt> koz_: Haha I believe you, big lib implies debatable choices.
22:46:28 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 268 seconds)
22:46:40 <dsal> Python stdlib includes stuff like their async library they recommend nobody ever use, or the execution running stuff that they recommend nobody ever use.
22:46:40 <texasmynsted> maybe I just do not know enough about python
22:46:43 <koz_> thblt: So then 'batteries included' really means 'Big Daddy Guido did things the way he thinks best and you better like it'.
22:46:48 × Franciman quits (~francesco@host-82-54-10-114.retail.telecomitalia.it) (Quit: Leaving)
22:47:03 <dsal> Both are *almost* good, but missing just a bit of functionality. It's recommended you pick up something else external if you want to do any of these things that are included.
22:47:15 <dsal> For all intents and purposes, hackage is stdlib for my programs.
22:47:21 <dolio> texasmynsted: Because machine learning is the opposite of trying to clearly state the solution to a problem. :)
22:47:34 <koz_> dsal: That statement ports to any language and its hosted ecosystem, to be fair.
22:47:37 <texasmynsted> dolio: Ah ha! That makes sense.
22:47:46 <koz_> C.f. JS and npm, Python and pip, etc.
22:47:53 <texasmynsted> Okay I can understand that then.
22:47:53 <thblt> Hence my .1kslocs rule of thumbs. Anything above that, I can $package-manager-and-build-system init something.
22:47:57 <dsal> To be fair, python has more than one.
22:48:20 <dsal> You have to like, easy_install pip to get your virtualenv running.
22:48:43 <dsal> But yeah, once you get into the ecosystem, it kind of works. Some ecosystems operate more smoothly than others, though.
22:49:02 <thblt> I never use those.
22:49:03 <texasmynsted> I had installed anaconda ages ago. Now it tells me that my "free trial" is about to run out. No idea what it is talking about.
22:49:22 <thblt> (for python i mena)
22:49:24 <thblt> mean
22:49:35 <merijn> Python has like 30 package managers
22:49:40 <merijn> and their all god awful
22:49:54 <koz_> merijn: Very much this.
22:49:54 <merijn> I'd kill for cabal-install anytime I have to deal with pip and virtualenvs >.>
22:49:59 <texasmynsted> sure. Why should they work any better than the language its self?
22:50:04 <thblt> merijn: #emacs would find this reasonable.
22:50:10 hackage playlists 0.5.1 - Library and executable for working with playlist files. https://hackage.haskell.org/package/playlists-0.5.1 (PeterJones)
22:50:12 <thblt> :)
22:50:18 <dolio> texasmynsted: I think it's kind of like people who use matlab, although python is way better than matlab's language (last I checked).
22:50:27 <merijn> "Our bad, guys! We fucked up the package manager, but we'll get it right this time!" *proceeds to get it wrong in entirely different ways*
22:50:56 conal joins (~conal@66.115.157.138)
22:50:57 × mananamenos quits (~mananamen@84.122.202.215.dyn.user.ono.com) (Quit: Leaving)
22:51:20 <dsal> 1kloc is massive, though. My whole GoPro app is only about 1400 lines. And that's a bunch of commandline tools (resumable upload that has to keep state), syncing to the cloud via AWS magic, local downloads, its web API, syncing down from their cloud, a SQL interface to update data via their API, and other crap (something like 16 commands in the CLI tool)
22:51:21 <texasmynsted> https://xkcd.com/927/
22:51:33 <texasmynsted> Like that but with package managers?
22:51:54 <thblt> merijn: a french tv show, the Shadoks, came up with the motto that given a very low chance of success, failing in all possible ways will get you closer to success ("The more you fail, the more likely you are to win")
22:51:55 texasmynsted shrug
22:52:04 <thblt> dsal: that's 0.1
22:52:13 <thblt> 100 lines
22:52:34 <thblt> a quick script that may need to gzip stuff or read command line args
22:52:37 <texasmynsted> thblt: That is some good wisdom there
22:53:26 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 264 seconds)
22:54:08 <texasmynsted> The "double your failure rate" idea.
22:54:11 <dsal> thblt: ah, I've not seen fractions of a kloc. My log management thing is about 80 lines. Take individual logs from S3 and combine them into a 7z file, deleting the old logs and uploading the fancy compressed one. I do use the 7z commandline, though.
22:54:58 × Foritus quits (~buggery@cpc91334-watf11-2-0-cust153.15-2.cable.virginm.net) (Ping timeout: 260 seconds)
22:55:10 <thblt> dsal: sorry for the confusion.
22:55:24 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
22:55:24 <dsal> I originally wrote this thing in go, but it was a lot longer, buggier, and harder to follow. https://github.com/dustin/papertrails/blob/master/app/Main.hs#L43-L57
22:55:51 <hekkaidekapus> dolio: People who are into research related to Statistics/Image Processing publish stuff developped with Matlab, R, Julia, Python. And once you set a foot into those waters, it’s hard to use another language because “State Of The Art”.
22:56:43 × ystael quits (~ystael@209.6.50.55) (Ping timeout: 260 seconds)
22:58:01 <thblt> That reminds me I have a stupid shebang script to transparently compile haskell scripts with stack
22:58:29 <thblt> Maybe I'll end up doing my scripting with haskell too at some point :)
22:59:01 Foritus joins (~buggery@cpc91334-watf11-2-0-cust153.15-2.cable.virginm.net)
22:59:25 <sm[m]> thblt: stack's script command works great for that
22:59:33 <dsal> Hmm... My original v5 mqtt bridge was closer to 150 lines, but I built a language parser to express the bridging configurations. It's grown since then, though. I've got multiway bridging with rewrite rules and stuff. Currently 268 lines...
23:00:29 × dhouthoo quits (~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.9)
23:00:45 <dolio> Yeah, I'm no expert, but I imagine the 'program' part isn't complicated in a lot of cases. It's making use of a bunch of already built statistics stuff, which is why you use matlab/R/etc.
23:01:14 <thblt> sm[m]: My old script uses stack, it just recompiles when modified and saves in a cache dir https://github.com/thblt/hsbang
23:01:28 <sm[m]> stack script does that also
23:01:44 <thblt> good to know, thanks!
23:01:47 <dsal> Heh. Did you reinvent nix? :)
23:02:29 <sm[m]> stack script --compile, more specifically
23:02:58 <yushyin> I've the same problem with cabal's script command, it does not cache and recompiles every time :/
23:02:59 <thblt> No, not at all! The dependency system is all stack, all what my script did was save the compiled binary and call it instead of the source script.
23:03:18 <sm[m]> yushyin: right, cabal doesn't have this feature yet
23:03:56 × mastarija quits (~mastarija@93-138-85-169.adsl.net.t-com.hr) (Quit: Leaving)
23:04:52 <hekkaidekapus> dolio: The statistics part of, say R, is mostly made of wrappers around C and Fortran. One could clean up all the mess around S3 classes, S4 classes,… (S5?) and use Haskell’s FFI. But once you go in that direction, bibliometry and funding will go in your way.
23:05:35 × texasmynsted quits (~texasmyns@104.140.52.75) (Remote host closed the connection)
23:06:45 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
23:07:59 <hekkaidekapus> As in, folks don’t care how they get to the publications as long as there is a fast-and-loose way to get them, as you wrote.
23:10:13 <dsal> almost everything I like about R is ggplot2
23:10:34 <dsal> (all the other parts I relearn every time so I can get back to ggplot2)
23:11:21 <sm[m]> wow, today I learned that stack script --optimize /= stack script --compile
23:11:30 <hekkaidekapus> ggplot2 is great because of the Grammar of Graphics. But once you peel beyong the surface, it’s C all way down.
23:11:34 <nshepperd2> ggplotly is pretty cool. the thing that takes a ggplot2 and turns it into an interactive web chart
23:11:37 <sm[m]> neither are in the user guide
23:13:44 <hekkaidekapus> And writing that Grammar part in R is cumbersome.
23:14:33 <dsal> I've not tried fancier stuff. I've often wished for ggplot2 and d3 to like, hang out. I've done a bunch of low-level junk in D3 and high level junk in ggplot2. Can take a while to express things effectively. By the time I get to the end, I'm too tired/Stockholmed to file any usability bugs.
23:14:35 <hekkaidekapus> But since there is a wide ecosystem around ggplot2, who cares about the foundations :)
23:15:35 <hekkaidekapus> lol
23:18:27 <hekkaidekapus> Fancier stuff in ggplot2 will involve the family of *apply* functions. Imagine if people used Hashell’s features of filtering and traversing instead of a pure Scheme.
23:18:47 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
23:18:51 <hekkaidekapus> *poor (not pure)
23:20:26 × xff0x_ quits (~fox@2001:1a81:528e:cb00:4e46:bded:683a:1262) (Ping timeout: 264 seconds)
23:21:09 xff0x_ joins (~fox@2001:1a81:52b5:c700:721b:f319:6c8c:effe)
23:23:25 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
23:24:19 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:26:08 Kolkrabe joins (~user@unaffiliated/siracusa)
23:27:44 × dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
23:30:52 × conal quits (~conal@66.115.157.138) (Quit: Computer has gone to sleep.)
23:33:59 conal joins (~conal@66.115.157.138)
23:34:08 texasmynsted joins (~texasmyns@104.140.52.75)
23:37:36 × jakob_ quits (~textual@p200300f49f16220085510f3c3976c42b.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
23:38:37 × texasmynsted quits (~texasmyns@104.140.52.75) (Ping timeout: 265 seconds)
23:41:33 × vacm quits (~vacwm@70.23.92.191) (Quit: My MacBook has gone to sleep. ZZZzzz…)
23:42:38 × jbox quits (~atlas@unaffiliated/jbox) (Ping timeout: 264 seconds)
23:44:28 × fendor quits (~fendor@178.165.128.1.wireless.dyn.drei.com) (Remote host closed the connection)
23:47:13 vacm joins (~vacwm@70.23.92.191)
23:48:05 × scasc quits (~szabi@213142096120.public.telering.at) (Quit: Leaving)
23:52:24 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 240 seconds)
23:54:25 thir joins (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de)
23:55:29 × Foritus quits (~buggery@cpc91334-watf11-2-0-cust153.15-2.cable.virginm.net) (Read error: Connection reset by peer)
23:55:39 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
23:56:38 dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
23:57:05 × conal quits (~conal@66.115.157.138) (Quit: Computer has gone to sleep.)
23:57:34 conal joins (~conal@66.115.157.138)
23:58:44 × thir quits (~thir@p200300f27f0b7e004c18ab60065ea01b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
23:59:36 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Quit: Leaving)

All times are in UTC on 2020-10-29.