Home liberachat/#haskell: Logs Calendar

Logs on 2021-08-13 (liberachat/#haskell)

00:01:07 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
00:06:50 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
00:07:27 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
00:07:44 × Xnuk quits (~xnuk@vultr.xnu.kr) (Quit: ZNC - https://znc.in)
00:08:01 Xnuk joins (~xnuk@vultr.xnu.kr)
00:08:25 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds)
00:10:22 × shapr quits (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 268 seconds)
00:11:45 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds)
00:13:14 hendursaga joins (~weechat@user/hendursaga)
00:13:53 × pschorf quits (~user@c-73-77-28-188.hsd1.tx.comcast.net) (Ping timeout: 248 seconds)
00:15:04 kadoban joins (~kadoban@user/kadoban)
00:15:21 × ec quits (~ec@gateway/tor-sasl/ec) (Quit: ec)
00:16:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
00:16:33 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 248 seconds)
00:18:15 ericson2314 joins (~ericson23@2001:470:69fc:105::70c)
00:18:16 adam1 joins (~adam@2001-b011-4007-2b02-08e4-8bf3-c00b-13c5.dynamic-ip6.hinet.net)
00:21:47 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
00:25:27 derelict joins (~derelict@user/derelict)
00:27:54 shailangsa joins (~shailangs@host86-145-14-24.range86-145.btcentralplus.com)
00:29:19 × ornxka quits (~ornxka@user/ornxka) (Read error: Connection reset by peer)
00:32:36 × Guest35 quits (~Guest35@190.237.13.129) (Quit: Client closed)
00:33:27 deuslambda[m] joins (~deuslambd@2001:470:69fc:105::c749)
00:36:27 jaror[m] joins (~jaror@2001:470:69fc:105::265)
00:39:26 justosophy[m] joins (~justosoph@2001:470:69fc:105::572f)
00:40:29 dminuoso[m] joins (~dminuosom@2001:470:69fc:105::33bb)
00:40:44 aveltras[m] joins (~aveltrasm@2001:470:69fc:105::3ef9)
00:41:00 RohitGoswami[m] joins (~rgoswamim@2001:470:69fc:105::16cc)
00:41:06 octeep[m] joins (~octeepmoc@2001:470:69fc:105::695e)
00:41:09 Ollie[m] joins (~ollieocha@2001:470:69fc:105::41a5)
00:42:08 bitonic joins (~bitonic@2001:470:69fc:105::1812)
00:42:10 bb010g joins (~bb010g@2001:470:69fc:105::9a5)
00:44:58 schuelermine[m] joins (~schuelerm@user/schuelermine)
00:49:18 andreabedini[m] joins (~andreabed@2001:470:69fc:105::c821)
00:49:37 × meltedbrain_y2k quits (~tekserf@31.4.247.117) (Ping timeout: 248 seconds)
00:50:40 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
00:51:33 × lbseale quits (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
00:54:13 vbeatrice[m] joins (~vbeatrice@2001:470:69fc:105::3ebf)
00:58:00 Morrow[m] joins (~morrowmma@2001:470:69fc:105::1d0)
00:59:12 siraben joins (~siraben@user/siraben)
01:03:11 × fresheyeball quits (~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
01:03:40 jeslie0 joins (~user@108.162.150.9)
01:08:30 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
01:09:29 × jeslie0 quits (~user@108.162.150.9) (Remote host closed the connection)
01:09:42 Las[m] joins (~lasmatrix@2001:470:69fc:105::74e)
01:10:47 boxscape joins (~boxscape@user/boxscape)
01:12:25 psydroid joins (~psydroid@user/psydroid)
01:13:20 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
01:20:17 alx741 joins (~alx741@181.196.68.193)
01:20:24 DoYouKnow joins (~DoYouKnow@75-28-180-206.lightspeed.bnsvil.sbcglobal.net)
01:24:23 × retroid_ quits (~retro@5ec19a54.skybroadband.com) (Ping timeout: 258 seconds)
01:25:33 ormaaj joins (~ormaaj@user/ormaaj)
01:25:33 polykernel joins (~polykerne@user/polykernel)
01:27:21 Deide joins (~deide@user/deide)
01:28:36 × OscarH_ quits (~OscarH@97e48a81.skybroadband.com) (Ping timeout: 258 seconds)
01:29:37 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 248 seconds)
01:32:58 dualinverter[m] joins (~dualinver@2001:470:69fc:105::16a7)
01:33:11 OscarH joins (~OscarH@97e48a81.skybroadband.com)
01:33:40 × DoYouKnow quits (~DoYouKnow@75-28-180-206.lightspeed.bnsvil.sbcglobal.net) (Read error: Connection reset by peer)
01:35:02 SimonWeiss[m] joins (~weiss-dma@2001:470:69fc:105::bebd)
01:35:51 bryan[m] joins (~bchreekat@2001:470:69fc:105::16b5)
01:37:26 ixlun joins (~ixlun@2001:470:69fc:105::41b3)
01:37:32 × Guest9451 quits (~chris@81.96.113.213) (Remote host closed the connection)
01:38:09 <Cajun> Guest35: do you have HLS installed?
01:38:34 <Cajun> use `ghcup tui` and install the recommended HLS version
01:39:02 <Cajun> then `ctrl+shift+p` -> "restart Haskell LSP server"
01:39:08 <Cajun> *in vscode
01:39:58 fakehacker[m] joins (~fakehacke@2001:470:69fc:105::b5f0)
01:40:05 <Cajun> and yeah im not sure why haskell hasnt moved to discord lol
01:40:16 JavierNeira[m] joins (~jneiramat@2001:470:69fc:105::d729)
01:40:34 wallymathieu[m] joins (~wallymath@2001:470:69fc:105::16ae)
01:41:13 chris joins (~chris@81.96.113.213)
01:41:16 chris is now known as Guest4291
01:41:28 × Guest4291 quits (~chris@81.96.113.213) (Remote host closed the connection)
01:42:47 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
01:46:11 CyrusT[m] joins (~cyrustcru@2001:470:69fc:105::306e)
01:48:00 Homeopath joins (~Homeopath@70.red-88-31-191.dynamicip.rima-tde.net)
01:48:05 <Homeopath> Hi
01:49:16 × kor1 quits (~kor1@user/kor1) (Quit: Leaving.)
01:50:10 jesser[m] joins (~jessermat@2001:470:69fc:105::d5ae)
01:51:13 srid[m] joins (~sridmatri@2001:470:69fc:105::1c2)
01:51:29 maralorn joins (~maralorn@2001:470:69fc:105::251)
01:52:38 × Homeopath quits (~Homeopath@70.red-88-31-191.dynamicip.rima-tde.net) (Quit: Client closed)
01:52:58 infinisil joins (~infinisil@2001:470:69fc:105::ff8)
01:53:08 afotgkmnzj7asv3r joins (~afotgkmnz@2001:470:69fc:105::c24b)
01:53:44 × xff0x quits (~xff0x@2001:1a81:5238:9600:abd9:7ea2:c2a4:a5eb) (Ping timeout: 272 seconds)
01:54:25 <Cajun> hello!
01:55:01 rednaZ[m] joins (~r3dnazmat@2001:470:69fc:105::ba70)
01:55:09 xff0x joins (~xff0x@2001:1a81:5278:5300:d62b:c7db:34dc:535c)
01:55:43 reza[m] joins (~rezaphone@2001:470:69fc:105::3eda)
01:56:00 maerwald[m] joins (~maerwaldm@2001:470:69fc:105::1ee)
01:56:03 chris joins (~chris@81.96.113.213)
01:56:06 chris is now known as Guest8544
01:56:12 ru0mad[m] joins (~ru0madmat@2001:470:69fc:105::9b2)
01:56:19 soft joins (~soft-matr@2001:470:69fc:105::c75)
01:56:20 stoicswe[m] joins (~deadlette@2001:470:69fc:105::d277)
01:56:20 yin[m] joins (~zwromatri@2001:470:69fc:105::1d4)
01:56:26 × alx741 quits (~alx741@181.196.68.193) (Quit: alx741)
01:56:43 MatrixTravelerbo joins (~voyagert2@2001:470:69fc:105::22)
01:57:08 sm joins (~sm@plaintextaccounting/sm)
01:57:45 jchia[m] joins (~jchiamatr@2001:470:69fc:105::c50b)
01:58:20 <Axman6> Cajun: we haven't moved to discord because this channel has been around for a very long time, and has a very good reputation as being the best and kindest place to ask questions. We like our simplicity =)
01:59:09 <Cajun> makes sense. i figured it was because discord would be overkill, as it seems 2 channels (on- and off-topic) was plenty and moving a community to a new platform always loses members
02:00:35 carmysilna joins (~brightly-@2001:470:69fc:105::2190)
02:03:34 cdsmith joins (~cdsmithma@2001:470:69fc:105::284)
02:04:14 × markpythonicbitc quits (~markpytho@2601:647:5a00:35:e049:539d:ba89:3861) (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:04:41 markpythonicbitc joins (~markpytho@2601:647:5a00:35:e049:539d:ba89:3861)
02:05:07 unclechu joins (~unclechu@2001:470:69fc:105::354)
02:05:20 jakefromstatefar joins (~jakefroms@2001:470:69fc:105::15ef)
02:07:20 oak- joins (~oakuniver@2001:470:69fc:105::fcd)
02:08:21 <yushyin> with the downfall of freenode some communities have switched to matrix, and i doubt many here would be pleased with a discord server and would start an irc channel anyway
02:09:08 euouae joins (~euouae@user/euouae)
02:09:18 <euouae> Hello
02:09:20 <Axman6> yeah - at least matreix has irc integration... but I tried matrix and couldn't for the life of me figure out what was going on, very confusing
02:09:33 <euouae> How can I check `recheck (Size 0) (Seed 1821521901577062835 7364151469196693399) prop_shrink_limit` with Hedgehog? This is from the hedgehog log when I ran `cabal test`
02:10:34 lwe[m] joins (~dendrumat@2001:470:69fc:105::2f9b)
02:10:34 jkachmar joins (~jkachmar@2001:470:69fc:105::c72d)
02:10:41 × hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 248 seconds)
02:10:41 <euouae> Do I have to load some module in GHCi and do the sfrom ghci?
02:10:51 hyiltiz joins (~quassel@31.220.5.250)
02:11:06 <Axman6> you should be able to pass that in via command line args to the test executable
02:11:21 marinelli[m] joins (~marinelli@2001:470:69fc:105::2d8)
02:11:25 Drew[m]1 joins (~drewefenw@2001:470:69fc:105::c8c4)
02:11:34 jophish joins (~jophish@2001:470:69fc:105::670)
02:11:34 <Axman6> try cabal test --test-option=--help
02:12:01 <Axman6> then cabal test --test-option=-option-for-test-framework --test-option=-another or something like that
02:12:03 <euouae> One thing that worked is `cabal repl Test.Example.Basic` followed by `> recheck (Size 0) (Seed 1821521901577062835 7364151469196693399) prop_shrink_limit`
02:12:43 <euouae> I'm not sure if that's the workflow
02:13:09 <Axman6> no, the command line args probably are the way to go
02:13:45 <euouae> ok
02:13:47 thomasjm[m] joins (~thomasjmm@2001:470:69fc:105::c6d9)
02:13:50 hughjfchen[m] joins (~hughjfche@2001:470:69fc:105::c29d)
02:15:04 fabfianda[m] joins (~fabfianda@2001:470:69fc:105::6db)
02:15:20 <euouae> what to make of this? https://paste.tomsmeding.com/SoiKliO8
02:15:28 hsek[m] joins (~hsekmatri@2001:470:69fc:105::d18f)
02:15:43 <euouae> Should I read the cabal configuration file to find out what the targets are?
02:16:05 <Axman6> proably
02:16:11 Deewiant joins (~deewiant@2001:470:69fc:105::2fd3)
02:16:15 <Axman6> and maybe the cabal documentation ;)
02:16:20 × waleee quits (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
02:16:54 <euouae> % cabal test hedgehog-example --test-option=--help
02:16:55 <yahb> euouae: ; <interactive>:9:1: error: Variable not in scope: cabal :: t0 -> t1 -> a; <interactive>:9:7: error:; * Variable not in scope: test; * Perhaps you meant one of these: `text' (imported from Text.PrettyPrint.HughesPJ), `nest' (imported from Text.PrettyPrint.HughesPJ); <interactive>:9:12: error: Variable not in scope: hedgehog; <interactive>:9:21: error:; * Variable not in scope: example;
02:17:07 <euouae> Oh sorry about this. The above just runs the test suite, no options showed
02:17:24 × td_ quits (~td@94.134.91.94) (Ping timeout: 268 seconds)
02:17:29 <Axman6> O think you should read the cabal docs
02:17:31 <Axman6> I*
02:17:35 <euouae> Alright
02:18:34 td_ joins (~td@muedsl-82-207-238-005.citykom.de)
02:18:39 the-coot[m] joins (~the-cootm@2001:470:69fc:105::95f)
02:20:28 PotatoHatsue joins (~berberman@2001:470:69fc:105::b488)
02:20:48 OndejSkup[m] joins (~mimivxmat@2001:470:69fc:105::c300)
02:22:33 <euouae> It just says that `--test-option=` is used to pass options to the test executable
02:22:48 <euouae> Is this related to cabal? I think at this point the question is about the interface of the hedgehog test executables
02:23:03 <Axman6> you might also need to look at the docs for hedgehog to see what flags it accepts
02:23:27 <euouae> Where are the hedgehog docs
02:23:33 <euouae> Or do you mean read the source code comments?
02:23:59 <Axman6> This is for you to find out, I don't know, I haven't used hedgehog directly
02:24:26 <euouae> You might be wrong about the workflow then
02:24:39 <euouae> They might not necessarily follow cabal conventions
02:24:42 denbrahe[m] joins (~denbrahem@2001:470:69fc:105::19c0)
02:24:52 amesgen[m] joins (~amesgenm]@2001:470:69fc:105::82b)
02:24:56 <Axman6> I'm going off what the workflow is for most other testing libraries like quickcheck and tasty
02:25:00 hsiktas[m] joins (~hsiktasma@2001:470:69fc:105::30d4)
02:25:24 <Axman6> and hedgehog integreates with tasty so I would be surprised if it is significantly different, but this could all depend on how you are using things
02:25:42 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:25:42 FinnElija is now known as Guest800
02:25:42 finn_elija is now known as FinnElija
02:25:52 <euouae> I'm going to look at the generated haddock from the project
02:27:17 unrooted joins (~unrooted@2001:470:69fc:105::a4a)
02:28:00 × Atum_ quits (~IRC@user/atum/x-2392232) (Quit: Atum_)
02:28:33 <euouae> I can't find anything
02:28:49 × Guest800 quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 248 seconds)
02:28:51 peddie joins (~peddie@2001:470:69fc:105::25d)
02:29:08 <euouae> The only thing at the very bottom of https://hackage.haskell.org/package/hedgehog mentions loading up GHCi
02:30:26 <Axman6> most other test libraries provide a function which you use for the `main` definition, and it takes care of all this stuff, but it doesn't look lik e hedgehog does. maybe look at tasty-hedgehog: https://hackage.haskell.org/package/tasty-hedgehog-1.1.0.0/docs/Test-Tasty-Hedgehog.html#t:HedgehogReplay
02:31:42 <Axman6> looks like if you used tasty-hedgehog you could pass in --hedgehog-replay="{size} {seed}"
02:32:38 <euouae> A very appropriate integration between `tasty` and `hedgehog`
02:32:47 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
02:32:49 <euouae> just worth it for the package name alone :P
02:33:49 <euouae> OK I see what's going on. Hedgehog left that aspect purposefully undeveloped since tasty exists
02:33:57 ezzieyguywuf joins (~Unknown@user/ezzieyguywuf)
02:34:26 <euouae> It's probably not the right moment for me to delve into tasty, but thank you for the link. I will use it at some point
02:34:41 fgaz joins (~fgaz@2001:470:69fc:105::842)
02:34:52 euouae wonders if Hedgehog should at least mention tasty in the README.md docs... in the workflow sectino
02:35:41 alexfmpe[m] joins (~alexfmpem@2001:470:69fc:105::38ba)
02:35:46 kar1 joins (~kar1@2001:470:69fc:105::c308)
02:36:08 smichel17[m] joins (~smichel17@2001:470:69fc:105::2d32)
02:36:17 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 248 seconds)
02:40:40 ac joins (~aloiscoch@2001:470:69fc:105::65)
02:41:01 kevin[m]123 joins (~pnotequal@2001:470:69fc:105::a54)
02:41:01 × awschnap quits (~lavaman@98.38.249.169) (Read error: Connection reset by peer)
02:41:33 lavaman joins (~lavaman@98.38.249.169)
02:43:58 × euouae quits (~euouae@user/euouae) (Quit: euouae)
02:44:48 <Axman6> yeah probably
02:45:22 ServerStatsDisco joins (~serversta@2001:470:69fc:105::1a)
02:45:28 zfnmxt joins (~zfnmxtzfn@2001:470:69fc:105::2b32)
02:46:15 Tisoxin joins (~ikosit@user/ikosit)
02:46:48 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:47:36 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
02:48:01 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 248 seconds)
02:48:42 Orbstheorem joins (~orbstheor@2001:470:69fc:105::a56)
02:48:53 adziahel[m] joins (~adziahelm@2001:470:69fc:105::b4d)
02:50:47 <dsal> I like tasty
02:50:54 <Axman6> It's yumm
02:52:39 Teohehim[m] joins (~teocmatri@2001:470:69fc:105::d327)
02:52:41 Magnus[m] joins (~magthetch@2001:470:69fc:105::d1a7)
02:53:19 vaibhavsagar[m] joins (~vaibhavsa@2001:470:69fc:105::ffe)
02:55:23 × doyougnu quits (~user@c-73-25-202-122.hsd1.or.comcast.net) (Remote host closed the connection)
02:58:07 theproffesor joins (~theproffe@2601:282:847f:8010::3a29)
03:11:23 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
03:12:19 × mnrmnaugh quits (~mnrmnaugh@68.162.206.56) (Remote host closed the connection)
03:12:49 mnrmnaugh joins (~mnrmnaugh@68.162.206.56)
03:17:16 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
03:17:44 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
03:21:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
03:24:31 fresheyeball joins (~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net)
03:39:14 justsomeguy joins (~justsomeg@user/justsomeguy)
03:44:19 AndroUser joins (~androirc@93-38-201-218.ip72.fastwebnet.it)
03:50:34 × AndroUser quits (~androirc@93-38-201-218.ip72.fastwebnet.it) (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com ))
03:51:04 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
03:53:02 × johnw quits (~johnw@2607:f6f0:3004:1:c8b4:50ff:fef8:6bf0) (Ping timeout: 245 seconds)
03:53:22 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
03:59:17 × berberman_ quits (~berberman@user/berberman) (Ping timeout: 245 seconds)
03:59:40 berberman joins (~berberman@user/berberman)
04:02:53 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
04:03:04 × adam1 quits (~adam@2001-b011-4007-2b02-08e4-8bf3-c00b-13c5.dynamic-ip6.hinet.net) (Ping timeout: 268 seconds)
04:03:08 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
04:16:53 × berberman quits (~berberman@user/berberman) (Ping timeout: 258 seconds)
04:19:23 × dermato quits (~dermatobr@154.21.23.75) (Quit: WeeChat 3.1)
04:20:24 berberman joins (~berberman@user/berberman)
04:21:49 euouae joins (~euouae@user/euouae)
04:24:31 ksqsf joins (~ksqsf@2001:da8:d800:540:289d:735c:f2de:d662)
04:36:30 × fresheyeball quits (~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
04:36:45 MorrowM joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net)
04:37:16 × euouae quits (~euouae@user/euouae) (Ping timeout: 246 seconds)
04:39:54 × ksqsf quits (~ksqsf@2001:da8:d800:540:289d:735c:f2de:d662) (Remote host closed the connection)
04:40:03 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
04:40:33 × tommd quits (~tommd@cpe-76-179-204-251.maine.res.rr.com) (Ping timeout: 248 seconds)
04:40:50 × MorrowM quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer)
04:55:35 × VoidNoir0 quits (~VoidNoir0@72.80.203.52) (Quit: Connection closed)
04:57:03 wei2912 joins (~wei2912@112.199.250.21)
05:05:46 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
05:10:37 adam1 joins (~adam@2001-b011-4007-20db-9096-c829-d743-79e0.dynamic-ip6.hinet.net)
05:11:20 ksqsf joins (~ksqsf@2001:da8:d800:540:289d:735c:f2de:d662)
05:17:25 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
05:17:40 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds)
05:20:42 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:23:29 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
05:27:58 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds)
05:29:09 × wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal)
05:30:32 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:31:07 wei2912 joins (~wei2912@112.199.250.21)
05:34:42 Erutuon joins (~Erutuon@user/erutuon)
05:34:43 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
05:34:53 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:36:01 aegon joins (~mike@174.127.249.180)
05:36:10 <aegon> is there a way to turn off -Wpartial-type-signatures for a single .hs file?
05:37:02 berberman_ joins (~berberman@user/berberman)
05:37:56 × berberman quits (~berberman@user/berberman) (Ping timeout: 272 seconds)
05:39:13 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
05:39:54 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:40:02 jneira99 joins (~jneira@212.8.115.226)
05:41:53 <dibblego> {-# OPTIONS_GHC -Wdno-partial-type-signatures #-}
05:44:45 <Axman6> without that d in there I assume?
05:44:56 <dibblego> yeah sorry
05:45:56 <aegon> thanks! I didn't see that a no could be prepended to disable
05:47:45 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 248 seconds)
05:51:29 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
05:56:27 a6a45081-2b83 joins (~aditya@223.226.228.68)
05:56:52 <a6a45081-2b83> print =<< getLine works but print <$> getLine does nothing, why?
05:57:29 <a6a45081-2b83> wait got it, it's IO (IO ())
05:57:46 <dibblego> join (print <$> getLine)
06:05:35 × paddymahoney quits (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Ping timeout: 268 seconds)
06:09:49 paddymahoney joins (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
06:11:13 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 248 seconds)
06:11:50 <a6a45081-2b83> is there a way to make I/O fast without external libraries?
06:12:01 <a6a45081-2b83> like scanf/printf vs cin/cout
06:16:19 × Cajun quits (~Cajun@user/cajun) (Quit: Client closed)
06:21:52 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
06:24:21 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
06:26:55 <a6a45081-2b83> this solution to a problem is timing out, can anyone help with any suggestions? (https://paste.tomsmeding.com/M6g7cdic)
06:27:08 × adam1 quits (~adam@2001-b011-4007-20db-9096-c829-d743-79e0.dynamic-ip6.hinet.net) (Ping timeout: 252 seconds)
06:27:46 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
06:28:54 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
06:30:22 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
06:30:22 Lord_of_Life_ is now known as Lord_of_Life
06:36:18 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
06:36:59 <pavonia> a6a45081-2b83: What do you mean by timing out?
06:37:57 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
06:37:57 <Axman6> I doubt the problem is IO, are you compipling with optimisation turned on?
06:38:50 yoctocell joins (~user@h87-96-130-155.cust.a3fiber.se)
06:39:43 <a6a45081-2b83> pavonia: I mean the online judge which executes my code expects it to process within 1 sec time limit
06:40:01 × sqrt2 quits (~ben@tunnel330957-pt.tunnel.tserv6.fra1.ipv6.he.net) (Quit: ZNC - http://znc.in)
06:40:08 <a6a45081-2b83> Axman6: I'm afraid I don't have much control over the flags that online judge uses (it says they use `O - first optimization level`)
06:40:14 <a6a45081-2b83> which I think is default
06:40:22 adam1 joins (~adam@2001-b011-4007-2359-bd8f-963e-7a4f-ca79.dynamic-ip6.hinet.net)
06:40:40 <a6a45081-2b83> also they don't support unordered-containers I think so I guess I'm doing O(nlogn) instead of O(n) which could also be a reason
06:41:07 <Axman6> maybe they'll have containers?
06:41:15 <Axman6> could use a strict map
06:41:21 sqrt2 joins (~ben@80-108-18-7.cable.dynamic.surfer.at)
06:43:11 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
06:43:24 <a6a45081-2b83> let me try intmap
06:44:33 <a6a45081-2b83> nah it times out too :)
06:47:20 × aegon quits (~mike@174.127.249.180) (Quit: leaving)
06:49:05 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
06:49:35 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
06:52:11 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:52:27 Boomerang joins (~Boomerang@xd520f68c.cust.hiper.dk)
06:53:23 acidjnk_new joins (~acidjnk@p200300d0c72b9592c07f6cae5ad3ed1e.dip0.t-ipconnect.de)
06:54:10 coldmountain parts (sid484352@id-484352.brockwell.irccloud.com) ()
06:56:33 × zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving)
06:56:38 × berberman_ quits (~berberman@user/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
06:57:02 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
06:57:36 berberman joins (~berberman@user/berberman)
06:58:09 lortabac joins (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212)
07:04:18 jneira99 is now known as jneira_
07:08:45 gehmehgeh joins (~user@user/gehmehgeh)
07:12:47 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
07:14:40 Erutuon joins (~Erutuon@user/erutuon)
07:15:38 zaquest joins (~notzaques@5.128.210.178)
07:15:47 × berberman quits (~berberman@user/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
07:16:32 × ksqsf quits (~ksqsf@2001:da8:d800:540:289d:735c:f2de:d662) (Remote host closed the connection)
07:16:36 berberman joins (~berberman@user/berberman)
07:16:40 acidjnk joins (~acidjnk@p200300d0c72b959234d1f3d5373df5b6.dip0.t-ipconnect.de)
07:19:17 × acidjnk_new quits (~acidjnk@p200300d0c72b9592c07f6cae5ad3ed1e.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
07:19:45 acidjnk_new joins (~acidjnk@p200300d0c72b959234d1f3d5373df5b6.dip0.t-ipconnect.de)
07:21:16 × acidjnk quits (~acidjnk@p200300d0c72b959234d1f3d5373df5b6.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
07:22:02 <hololeap> what does "non-injective type family mean in terms of
07:22:16 <hololeap> "non-injective type family" mean in terms of pracitcal use?
07:22:50 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Remote host closed the connection)
07:23:04 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
07:24:01 <lortabac> hololeap: if you have a type family Foo that is non-injective, it means that Foo Bar and Foo Baz can potentially be the same type
07:24:20 <lortabac> whereas if Foo is injective they must necessarily be distinct types
07:25:29 drd joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
07:26:44 <hololeap> are there any rules one can follow to avoid the "_ is a non-injective type family" errors?
07:27:05 <tomsmeding> hololeap: which, in turn, means that ghc won't be able to deduce the type 'a' from knowing 'Foo a'
07:28:05 <hololeap> also, is there a way to declare a type family to be injective?
07:29:34 <tomsmeding> hololeap: yes, with TypeFamilyDependencies
07:29:37 <tomsmeding> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/type_families.html#injective-type-families
07:30:06 <hololeap> oh, neat. I was just thinking it would work with something like functional dependencies
07:31:17 <tomsmeding> hololeap: 6.4.9.7.2 contains the checking algorithm
07:32:35 <tomsmeding> Though the wording of (2) confuses me; I get why it has to be the sole equation in that case, but that's not equivalent to thr LHS having only variable patterns
07:32:56 <tomsmeding> Because in a closed type family, that could easily be the last, default case of a list of equations
07:36:51 × azeem quits (~azeem@dynamic-adsl-84-220-236-17.clienti.tiscali.it) (Ping timeout: 268 seconds)
07:38:53 × a6a45081-2b83 quits (~aditya@223.226.228.68) (Remote host closed the connection)
07:44:03 sauvikbiswas joins (~sauvikbis@202.78.236.90)
07:44:20 azeem joins (~azeem@176.200.230.183)
07:44:41 × azeem quits (~azeem@176.200.230.183) (Read error: Connection reset by peer)
07:44:51 sauvikbiswas parts (~sauvikbis@202.78.236.90) ()
07:45:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:46:23 michalz joins (~michalz@185.246.204.45)
07:46:30 vpan joins (~vilius@212.117.1.172)
07:47:27 azeem joins (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it)
07:47:31 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
07:47:51 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
07:51:02 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds)
07:51:25 acidjnk_new3 joins (~acidjnk@p200300d0c72b9592083735004e062fb7.dip0.t-ipconnect.de)
07:53:30 acidjnk joins (~acidjnk@p200300d0c72b9592083735004e062fb7.dip0.t-ipconnect.de)
07:55:00 × acidjnk_new quits (~acidjnk@p200300d0c72b959234d1f3d5373df5b6.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
07:56:03 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:56:22 × acidjnk_new3 quits (~acidjnk@p200300d0c72b9592083735004e062fb7.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
08:01:24 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
08:01:40 geekosaur joins (~geekosaur@xmonad/geekosaur)
08:02:25 epolanski joins (uid312403@id-312403.brockwell.irccloud.com)
08:05:58 hendursa1 joins (~weechat@user/hendursaga)
08:08:24 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds)
08:13:19 × hololeap quits (~hololeap@user/hololeap) (Quit: Bye)
08:17:22 trcc joins (~trcc@users-1190.st.net.au.dk)
08:17:32 acidjnk_new joins (~acidjnk@p200300d0c72b959281899615a9e27518.dip0.t-ipconnect.de)
08:17:33 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
08:17:39 allbery_b joins (~geekosaur@xmonad/geekosaur)
08:17:42 allbery_b is now known as geekosaur
08:18:13 acidjnk_new3 joins (~acidjnk@p200300d0c72b9592746faa93d7d42dfa.dip0.t-ipconnect.de)
08:19:13 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
08:19:45 × Ananta-shesha quits (~pjetcetal@2.95.210.188) (Ping timeout: 248 seconds)
08:21:20 × acidjnk quits (~acidjnk@p200300d0c72b9592083735004e062fb7.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
08:21:31 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
08:22:05 × acidjnk_new quits (~acidjnk@p200300d0c72b959281899615a9e27518.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
08:22:57 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
08:23:44 ksqsf joins (~ksqsf@2001:da8:d800:540:15a7:f132:8a07:ce98)
08:25:23 mikoto-chan joins (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be)
08:32:55 fef joins (~thedawn@user/thedawn)
08:34:31 MoC joins (~moc@user/moc)
08:37:03 polyphem joins (~polyphem@2a02:810d:640:776c:5ce9:eeb2:9e8b:b083)
08:46:50 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 252 seconds)
08:47:31 chomwitt joins (~chomwitt@2a02:587:dc04:9a00:12c3:7bff:fe6d:d374)
08:48:33 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
08:49:00 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 268 seconds)
08:56:54 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
08:58:11 meltedbrain_y2k joins (~tekserf@31.4.247.41)
09:01:56 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
09:10:09 <vpan> hi, there's a broken external link in HLS section of https://wiki.haskell.org/Vim. I think the link target should be https://haskell-language-server.readthedocs.io/en/latest/configuration.html#vim-or-neovim.
09:10:09 <vpan> Neither anonymous edits, nor account self creation is allowed in the wiki, so I just hope some account holder shares my compulsive need to fix minor issues like that. :)
09:13:25 <jneira_> mmm maybe an issue in the web github project could be useful: https://github.com/haskell-infra/www.haskell.org/issues/new
09:14:34 × shriekingnoise quits (~shrieking@186.137.144.80) (Quit: Quit)
09:14:56 <jneira_> i am afraid we broke links with the lastest doc reorg :-/
09:15:14 <jneira_> not sure if we could setup some sort of redirection
09:16:12 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
09:18:56 <vpan> my impression is that editor integration was previously documented in the HLS repo readme, but has been moved to readthedocs. So I wouldn't really say something was broken, more like wiki got out-of-sync with the current HLS documentation.
09:19:57 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
09:23:24 pfurla joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
09:27:16 × pfurla_ quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 272 seconds)
09:27:46 × adam1 quits (~adam@2001-b011-4007-2359-bd8f-963e-7a4f-ca79.dynamic-ip6.hinet.net) (Ping timeout: 258 seconds)
09:28:27 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
09:28:58 × vicfred quits (~vicfred@user/vicfred) (Quit: Leaving)
09:32:51 agua_pesada joins (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea)
09:34:01 × michalz quits (~michalz@185.246.204.45) (Remote host closed the connection)
09:38:56 × azeem quits (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Ping timeout: 268 seconds)
09:40:43 × ksqsf quits (~ksqsf@2001:da8:d800:540:15a7:f132:8a07:ce98) (Remote host closed the connection)
09:43:09 azeem joins (~azeem@176.200.230.183)
09:43:53 × azeem quits (~azeem@176.200.230.183) (Read error: Connection reset by peer)
09:46:42 euouae joins (~euouae@user/euouae)
09:46:48 lavaman joins (~lavaman@98.38.249.169)
09:47:03 azeem joins (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it)
09:48:54 adam1 joins (~adam@2001-b011-4007-2979-f1d0-4beb-f352-05b6.dynamic-ip6.hinet.net)
09:51:54 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
09:52:26 × adam1 quits (~adam@2001-b011-4007-2979-f1d0-4beb-f352-05b6.dynamic-ip6.hinet.net) (Client Quit)
09:57:47 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212) (Quit: WeeChat 2.8)
09:57:55 lortabac joins (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212)
09:59:54 × vpan quits (~vilius@212.117.1.172) (Quit: Leaving.)
10:01:20 michalz joins (~michalz@185.246.204.33)
10:05:30 lavaman joins (~lavaman@98.38.249.169)
10:08:29 kuribas joins (~user@ptr-25vy0i8g8e654nggn7o.18120a2.ip6.access.telenet.be)
10:10:14 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
10:15:51 × Arahael quits (~arahael@124.170.238.106) (Quit: WeeChat 2.7.1)
10:16:26 arahael joins (~arahael@124.170.238.106)
10:16:36 × xff0x quits (~xff0x@2001:1a81:5278:5300:d62b:c7db:34dc:535c) (Ping timeout: 272 seconds)
10:17:19 xff0x joins (~xff0x@2001:1a81:5278:5300:c5b:fd09:8552:8cb2)
10:18:43 acidjnk_new joins (~acidjnk@p200300d0c72b9566746faa93d7d42dfa.dip0.t-ipconnect.de)
10:21:59 × acidjnk_new3 quits (~acidjnk@p200300d0c72b9592746faa93d7d42dfa.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
10:36:37 × Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer)
10:37:36 thonoht[m] joins (~thonohtma@2001:470:69fc:105::d7be)
10:37:37 <kuribas> Why is it not possible to have subtyping and HM inference?
10:42:01 <kuribas> say if I have "f :: Int -> Int", then in "let y = f x", couln't I infer x as "forall a . (I a Int)" (the intersection of Int with some type), and y as forall b . (U b Int) (the union of Int with some type).
10:42:55 <kuribas> I suppose the tricky part is unification and simplification of constraints.
10:44:10 <kuribas> or infer x as (SubTypeOf a Int => a), and y as (SuperTypeOf b Int => b)
10:44:46 Vajb joins (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583)
10:44:55 <lortabac> kuribas: the tricky part is probably how to make this system pleasant to use
10:45:15 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:45:56 <kuribas> lortabac: it should have a sufficiently smart simplification algorithm
10:46:29 <lortabac> and a nice surface syntax to express those polymorphic types with constraints
10:46:47 <lortabac> because you are going to have them in most signatures
10:47:57 <kuribas> But in this system `f :: Int -> Int` would be equivalent to `f :: forall a b. (I a Int) -> (U b Int)`
10:48:06 <kuribas> So the latter could be rewritten as the former.
10:48:25 <lortabac> oh I see the idea
10:48:41 <lortabac> so no monomorphic types at all?
10:48:49 <kuribas> indeed
10:48:54 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 272 seconds)
10:49:04 <kuribas> every type would be polymorphic.
10:49:16 <lortabac> it sounds a little extreme, but maybe worth exploring
10:51:14 × bin_ quits (~bin@user/bin/x-1583188) (Quit: ZNC - https://znc.in)
10:52:22 × euouae quits (~euouae@user/euouae) (Quit: Client closed)
10:52:34 _bin joins (~bin@user/bin/x-1583188)
10:52:49 <kuribas> maybe put an SMT solver on the constraints...
10:53:25 × markpythonicbitc quits (~markpytho@2601:647:5a00:35:e049:539d:ba89:3861) (Quit: My MacBook has gone to sleep. ZZZzzz…)
10:56:12 <lortabac> or maybe something like CHR
10:58:04 <kuribas> yes
10:58:28 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:59:00 kor1 joins (~kor1@user/kor1)
10:59:49 the_proffesor joins (~theproffe@c-24-9-30-127.hsd1.co.comcast.net)
11:00:40 Guest|77 joins (~Guest|77@dynamic-077-008-153-029.77.8.pool.telefonica.de)
11:01:00 × Guest|77 quits (~Guest|77@dynamic-077-008-153-029.77.8.pool.telefonica.de) (Client Quit)
11:01:35 × theproffesor quits (~theproffe@2601:282:847f:8010::3a29) (Ping timeout: 252 seconds)
11:02:20 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
11:02:57 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds)
11:05:21 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
11:05:22 × chomwitt quits (~chomwitt@2a02:587:dc04:9a00:12c3:7bff:fe6d:d374) (Ping timeout: 272 seconds)
11:09:05 elf_fortrez joins (~elf_fortr@adsl-72-50-7-29.prtc.net)
11:16:28 Pickchea joins (~private@user/pickchea)
11:16:38 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
11:19:29 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
11:23:52 pfurla_ joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
11:26:15 × mikoto-chan quits (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be) (Ping timeout: 268 seconds)
11:26:57 × pfurla quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds)
11:34:57 × wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal)
11:36:23 markpythonicbitc joins (~markpytho@50-254-150-41-static.hfc.comcastbusiness.net)
11:37:30 markpythonicbit_ joins (~markpytho@50-254-150-41-static.hfc.comcastbusiness.net)
11:37:38 × markpythonicbitc quits (~markpytho@50-254-150-41-static.hfc.comcastbusiness.net) (Read error: Connection reset by peer)
11:37:41 × markpythonicbit_ quits (~markpytho@50-254-150-41-static.hfc.comcastbusiness.net) (Read error: Connection reset by peer)
11:40:29 markpythonicbitc joins (~markpytho@50.228.44.6)
11:40:47 × drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 258 seconds)
11:43:33 MoC joins (~moc@user/moc)
11:43:33 × Vajb quits (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer)
11:45:01 Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi)
11:46:05 <kuribas> lortabac: well, constraint solving could produce monomorphic types, for example: "forall a b. (U a Int) ~ (I b Int)" Would imply the monomorphic type Int (with a == None, b == All).
11:46:06 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
11:46:38 × Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer)
11:48:11 Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi)
11:50:01 mikoto-chan joins (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be)
11:52:01 × Pickchea quits (~private@user/pickchea) (Ping timeout: 248 seconds)
11:53:03 × Guest8544 quits (~chris@81.96.113.213) (Remote host closed the connection)
11:53:19 <lortabac> kuribas: I wonder if there is a paper that describes such a type system, it looks like a generalization of things like row types or polymorphic variants
11:53:49 <Tisoxin> Is sb using the git revision of xmonad declaratively on nixos/with home manager?
11:54:01 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
11:54:07 <Tisoxin> oh, sorry wrong channel
11:57:47 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Read error: Connection reset by peer)
11:57:55 chris joins (~chris@81.96.113.213)
11:57:58 chris is now known as Guest2198
11:58:11 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
12:00:53 <lortabac> kuribas: this seems related https://www.normalesup.org/~simonet/publis/simonet-aplas03.pdf
12:02:09 × Guest2198 quits (~chris@81.96.113.213) (Ping timeout: 248 seconds)
12:02:41 timCF_ joins (~timCF@200-149-20-81.sta.estpak.ee)
12:03:22 <kuribas> lortabac: interesting
12:05:11 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
12:06:56 <timCF_> Hello! Is there any way of "inline" or "local" class instances, valid in scope of given function? I'm using monadic instances of some classes like "Service1Rpc", "Service2Rpc" etc to "mock" network calls of business logic in tests. But sometimes I want to "mock" it differently in one module. Does it make sense, is there the way to do so? Or there are better ways to "mock" network calls inside the tests?
12:07:07 × shredder quits (~user@user/shredder) (Quit: quitting)
12:07:26 shredder joins (~user@user/shredder)
12:08:05 <kuribas> lortabac: "In this paper, we are interested in the case ofstructuralsubtyping, where comparabletypes must have the same shape and can only differ by theiratomic leaves."
12:08:23 <kuribas> lortabac: that seems different, because in my system (U a Int) can be unified with (I b Int).
12:10:27 <kuribas> timCF_: Not really answering your question, but personally I never "mock" IO or services. I write my code in such a way that the core business logic is pure, and can be tested without any mocks.
12:10:32 o1lo01ol1o joins (~o1lo01ol1@31.22.136.245)
12:12:06 × elf_fortrez quits (~elf_fortr@adsl-72-50-7-29.prtc.net) (Quit: Client closed)
12:12:13 <kuribas> timCF_: for example, instead of mocking your database or remote service calls, I separate the fetching of the data with the handling of it.
12:12:25 <lortabac> timCF_: there is a package called reflection that allows you to create local instances, but I think kuribas's approach is much better
12:13:36 <timCF_> thanks!
12:13:53 <timCF_> kuribas: do you have any code example written in this way?
12:14:12 shriekingnoise joins (~shrieking@186.137.144.80)
12:14:55 <kuribas> timCF_: the code I am writing now does it like that (but it's for the company, I cannot show it).
12:15:23 <lortabac> timCF_: https://www.parsonsmatt.org/2017/07/27/inverted_mocking.html
12:16:49 <timCF_> thanks!
12:19:07 <timCF_> lortabac: you did mentioned this package, or some other? https://hackage.haskell.org/package/reflection-2.1.6/docs/Data-Reflection.html
12:19:32 <lortabac> timCF_: this one, but keep in mind that this is very extreme stuff
12:20:40 <kuribas> timCF_: also creating different datatypes for different stages of the program is very useful.
12:24:38 × xff0x quits (~xff0x@2001:1a81:5278:5300:c5b:fd09:8552:8cb2) (Ping timeout: 252 seconds)
12:24:53 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:25:31 xff0x joins (~xff0x@2001:1a81:5278:5300:7b4f:e6f2:6a79:44e0)
12:25:57 <lortabac> kuribas: this is a language that implements structural subtyping, with open records, open variants and first-class pattern-matching https://github.com/owo-lang/MLPolyR
12:26:06 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
12:26:40 <lortabac> it's not exactly like your idea, but (to me) it seems closely related
12:27:01 <kuribas> yeah, worth looking into
12:28:39 <kuribas> lortabac: I was inspired by typed.clojure, which uses local inference, not HM, to see if it could work with HM.
12:30:01 <lortabac> as far as I know structural subtyping is mostly used in type-checkers for dynamic languages
12:30:08 × meltedbrain_y2k quits (~tekserf@31.4.247.41) (Quit: Leaving.)
12:30:38 <lortabac> I think there is one Python that uses a similar type system
12:30:43 <lortabac> *one for Python
12:30:46 <kuribas> typed clojure follows the model of typed racket.
12:30:48 <kuribas> right
12:30:49 Pickchea joins (~private@user/pickchea)
12:30:56 <lortabac> typed clojure seems different though
12:31:15 <lortabac> it probably requires at least some annotations
12:31:18 <lortabac> right?
12:31:32 <kuribas> it does.
12:32:08 × acidjnk_new quits (~acidjnk@p200300d0c72b9566746faa93d7d42dfa.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
12:32:49 <kuribas> Maybe it would be more fruitful to create a typed language that compiles to clojure.
12:32:49 acidjnk_new joins (~acidjnk@p200300d0c72b9566746faa93d7d42dfa.dip0.t-ipconnect.de)
12:32:56 <kuribas> Instead of typing clojure code...
12:35:05 <kuribas> I like haskell, but I can understand how often it's hard to deal with the wrapping and uwrapping of monadic layers.
12:35:23 <kuribas> Or just finding that right abstraction which will solve your current problem elegantly.
12:37:06 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
12:37:33 <kuribas> Haskell solves the problem of separating effects from pure code quite well, but it comes with considerable complexity.
12:37:47 keutoi joins (~keutoi@157.47.115.91)
12:37:56 <kuribas> I wonder if that complexity is inherent in programming, or that there are easier ways, which will still give you robust programs.
12:38:29 <kuribas> The clojure solution is simple, throw away all complexity, and accept that stuff will break easily.
12:38:45 <kuribas> But it's just not that appealing.
12:40:00 Atum_ joins (~IRC@user/atum/x-2392232)
12:40:07 geekosaur joins (~geekosaur@xmonad/geekosaur)
12:40:32 <lortabac> kuribas: I think you can simplify Haskell code considerably by removing all those fancy effects and limiting yourself to either IO or pure code
12:40:57 <kuribas> lortabac: so ReaderT IO a :)
12:40:58 <lortabac> that's not idiomatic Haskell today, but it looks completely reasonable to me
12:41:28 <lortabac> kuribas: replace ReaderT with implicit parameters so you don't need transformers anymore
12:41:46 <lortabac> it become either 'a' or 'IO a'
12:41:50 <lortabac> *becomes
12:42:16 <lortabac> and use IORefs for state and writer
12:42:50 <lortabac> it would still be much safer than any mainstream language, but considerably simpler
12:43:05 <kuribas> lortabac: how would you solve validation for example?
12:43:34 <kuribas> I created my own validation transformer: https://gist.github.com/kuribas/d3d7a97de4faf340442fd3e542ea73bf
12:43:53 chris joins (~chris@81.96.113.213)
12:43:56 <lortabac> nice
12:43:57 chris is now known as Guest2008
12:44:19 <kuribas> Which works well IMO, but it is a hard sell to someone who doesn't know haskell.
12:44:44 <kuribas> Perhaps he could use an IORef [String], and just collect the errors by mutation?
12:44:57 <lortabac> kuribas: yes, that's what I'm proposing
12:45:34 <lortabac> it might seem shocking to a Haskeller, but it's still much safer than what 99% of developers do daily
12:45:45 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
12:46:26 <kuribas> haha, that's right
12:47:00 <kuribas> I modelled my database library after clojure honeysql, but even the layer which is untypes is so, so much more safe than the clojure.
12:47:13 <lortabac> however I don't actually program like this at work, I have to conform to social norms :D
12:48:06 <kuribas> you mean classes and mutation in Java, or fancy haskell? :-P
12:48:26 <lortabac> I mean mtl, lenses etc.
12:48:46 <lortabac> so more or less "standard" Haskell
12:49:21 <kuribas> lenses are fine IMO
12:49:26 <kuribas> if you stick to a few.
12:50:54 <kuribas> mtl is fine too, but this project is a test project. I don't want to scare my team away :)
12:51:16 <lortabac> oh so you are trying to introduce Haskell in the company?
12:51:45 <kuribas> yeah :)
12:52:22 <kuribas> my colleages are open to it, but also completely clueless about it...
12:52:37 <kuribas> perhaps I should scrap my fancy validation, and use IO...
12:52:49 <nitrix> Try the {-# LANGUAGE TotallyNotSpooky #-} language extension.
12:52:57 <lortabac> in my experience you can introduce all kinds of fancy advanced features, as long as you provide either a simple interface or some template to copy/paste
12:53:07 <kuribas> makes sense
12:53:21 × Pickchea quits (~private@user/pickchea) (Ping timeout: 248 seconds)
12:54:09 <lortabac> I've seen people going from zero to productive in a couple of months when given all the necessary tools
12:55:13 <lortabac> "simple haskell" simply doesn't work because most libraries on Hackage are complex
12:55:27 <kuribas> I think it's *easier* when you get your hands dirty on a well designed program, rather than just reading blog posts.
12:55:57 <kuribas> Much of the scaryness comes from thinking in Java, then trying to force that into haskell.
12:56:21 × hendursa1 quits (~weechat@user/hendursaga) (Quit: hendursa1)
12:56:28 <kuribas> But if you can copy paste good code, you understand good practices much faster.
12:57:03 hendursaga joins (~weechat@user/hendursaga)
12:57:08 <kuribas> lortabac: I agree about "simple haskell". But I still would steer clear of some libraries (singletons, fancy lens, ...)
12:57:55 <lortabac> yes, what I meant is that you can't hide the complexity of the Haskell ecosystem for too long
12:59:58 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
13:00:11 <kuribas> you can use microlens instead of lens
13:01:05 alx741 joins (~alx741@181.196.68.193)
13:01:25 Franciman joins (~francesco@openglass.it)
13:01:53 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 248 seconds)
13:01:57 × jneira_ quits (~jneira@212.8.115.226) (Quit: Client closed)
13:01:59 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
13:02:02 × xff0x quits (~xff0x@2001:1a81:5278:5300:7b4f:e6f2:6a79:44e0) (Ping timeout: 252 seconds)
13:05:04 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
13:05:15 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Read error: Connection reset by peer)
13:05:16 × michalz quits (~michalz@185.246.204.33) (Remote host closed the connection)
13:05:46 machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca)
13:05:55 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
13:06:47 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
13:12:12 × polyphem quits (~polyphem@2a02:810d:640:776c:5ce9:eeb2:9e8b:b083) (Ping timeout: 245 seconds)
13:14:20 <arahael> Applying TDD helps a great deal, imho.
13:14:33 <arahael> Though oddly enough, I rarely do so for my personal side hobbies.
13:15:11 × o1lo01ol1o quits (~o1lo01ol1@31.22.136.245) (Remote host closed the connection)
13:15:50 o1lo01ol1o joins (~o1lo01ol1@31.22.136.245)
13:15:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:21:59 × acidjnk_new quits (~acidjnk@p200300d0c72b9566746faa93d7d42dfa.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
13:23:38 pfurla joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
13:24:05 xff0x joins (~xff0x@2001:1a81:5278:5300:7b4f:e6f2:6a79:44e0)
13:27:14 × pfurla_ quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 272 seconds)
13:31:45 ystael joins (~ystael@user/ystael)
13:35:13 vrilles joins (~vrilles@user/aman)
13:38:29 × emliunix quits (~emliunix@8.37.43.217) (Remote host closed the connection)
13:39:09 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
13:40:00 <kuribas> lortabac: actually, there isn't a very satifying solution for Validation in other languages.
13:40:27 <kuribas> You cannot throw an exception, because then you only get one error.
13:40:33 × Guest2008 quits (~chris@81.96.113.213) (Remote host closed the connection)
13:40:49 <kuribas> Best would be to write the error to a mutable variable, then return a dummy variable.
13:41:07 <kuribas> And check if there where any errors before using the dummy variables.
13:43:02 × mikoto-chan quits (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be) (Ping timeout: 245 seconds)
13:43:54 × FragByte quits (~christian@user/fragbyte) (Ping timeout: 240 seconds)
13:44:18 × trcc quits (~trcc@users-1190.st.net.au.dk) ()
13:46:50 FragByte joins (~christian@user/fragbyte)
13:47:10 × cheater quits (~Username@user/cheater) (Quit: BitchX: anything else would be uncivilized)
13:49:53 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
13:50:11 chomwitt joins (~chomwitt@athedsl-32301.home.otenet.gr)
13:54:01 cheater joins (~Username@user/cheater)
13:55:57 × hgolden quits (~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Remote host closed the connection)
13:58:05 × cheater quits (~Username@user/cheater) (Read error: Connection reset by peer)
13:58:17 hgolden joins (~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
13:59:30 meltedbrain_y2k joins (~tekserf@31.4.247.40)
14:00:23 Sgeo joins (~Sgeo@user/sgeo)
14:00:41 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
14:00:45 cheater joins (~Username@user/cheater)
14:02:27 michalz joins (~michalz@185.246.204.33)
14:05:24 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
14:06:49 lavaman joins (~lavaman@98.38.249.169)
14:10:16 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212) (Quit: WeeChat 2.8)
14:11:13 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 248 seconds)
14:12:49 mattil joins (~mattilinn@84-253-224-16.bb.dnainternet.fi)
14:13:49 × mattil quits (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection)
14:14:11 mattil joins (~mattilinn@84-253-224-16.bb.dnainternet.fi)
14:17:21 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Remote host closed the connection)
14:17:52 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
14:22:11 <hsek[m]> What other beginner-friendly Haskell projects can I contribute to? I only know of `hackage-server`.
14:22:20 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Ping timeout: 272 seconds)
14:22:58 <geekosaur> xmonad? :)
14:25:05 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
14:25:09 slowButPresent joins (~slowButPr@user/slowbutpresent)
14:26:30 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
14:27:14 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
14:27:28 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
14:31:22 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
14:32:33 × Boomerang quits (~Boomerang@xd520f68c.cust.hiper.dk) (Ping timeout: 248 seconds)
14:32:49 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
14:34:58 zebrag joins (~chris@user/zebrag)
14:35:24 × o1lo01ol1o quits (~o1lo01ol1@31.22.136.245) (Remote host closed the connection)
14:35:55 o1lo01ol1o joins (~o1lo01ol1@31.22.136.245)
14:38:20 <liskin> ^^
14:38:50 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 252 seconds)
14:44:44 _73 joins (~user@pool-96-252-123-136.bstnma.fios.verizon.net)
14:45:53 × cheater quits (~Username@user/cheater) (Ping timeout: 248 seconds)
14:46:03 cheater joins (~Username@user/cheater)
14:48:57 acidjnk_new joins (~acidjnk@p200300d0c72b956684192ce5faaf8cc6.dip0.t-ipconnect.de)
14:49:46 lortabac joins (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212)
14:52:19 wonko joins (~wjc@62.115.229.50)
14:52:29 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
14:54:14 retroid_ joins (~retro@5ec19a54.skybroadband.com)
14:56:32 dyeplexer joins (~dyeplexer@user/dyeplexer)
14:57:08 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
14:59:12 × o1lo01ol1o quits (~o1lo01ol1@31.22.136.245) (Remote host closed the connection)
14:59:45 o1lo01ol1o joins (~o1lo01ol1@31.22.136.245)
15:01:56 × wonko quits (~wjc@62.115.229.50) (Ping timeout: 252 seconds)
15:02:06 dunj3 joins (~dunj3@2001:16b8:3064:3b00:c411:4236:a894:7001)
15:03:24 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Quit: WeeChat 2.8)
15:04:01 × o1lo01ol1o quits (~o1lo01ol1@31.22.136.245) (Ping timeout: 248 seconds)
15:10:28 o1lo01ol1o joins (~o1lo01ol1@31.22.136.245)
15:15:07 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:d245:f899:494d:4212) (Quit: WeeChat 2.8)
15:17:36 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Quit: ZNC 1.8.2 - https://znc.in)
15:17:56 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
15:18:03 kaol_ is now known as kaol
15:20:07 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 245 seconds)
15:20:40 chisui joins (~chisui@200116b8642cd800d092c544b616cc73.dip.versatel-1u1.de)
15:23:27 <geekosaur> hledger is also friendly to new contributors, you can check out https://hledger.org
15:23:48 pfurla_ joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
15:24:49 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
15:25:55 endless parts (~endlessed@server.zane.wiki) (The Lounge - https://thelounge.chat)
15:26:04 <janus> hsek[m]: i would recommend joining the next haskell meetup with Chris Smith. there were lots of people last time willing to explain their projects
15:27:20 × pfurla quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 258 seconds)
15:28:08 × agua_pesada quits (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Ping timeout: 256 seconds)
15:28:27 <hsek[m]> geekosaur: Sweet, thanks. I checked out xmonad's issues and I'm not sure which is difficult or not cause no labels with the first 2 pages of issues. hledger seems fun so I'll look more into that.
15:28:47 <hsek[m]> janus: Where can I get more information about the meetup? Like when it occurs and all that.
15:28:53 <geekosaur> there's a tag for "good first issue"
15:29:17 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 245 seconds)
15:29:53 <geekosaur> there wil be more oif these in xmonad-contrib; xmonad core's pretty small and mostly frozen at this point
15:30:36 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
15:30:37 <hsek[m]> Oh okay. Yeah I was looking at the main repo lol. Thank you.
15:31:39 <hsek[m]> It's a shame I didn't know about GSoC until now. I think it would've been a great opportunity for me to learn a lot of things. Bummer.
15:38:23 <janus> hsek[m]: he's on twitter: https://twitter.com/cdsmithus/ and medium https://cdsmithus.medium.com/ and meetup https://www.meetup.com/NY-Haskell/ . dunno if there is a better way to get notified
15:40:29 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds)
15:42:02 × markpythonicbitc quits (~markpytho@50.228.44.6) (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:42:27 hendursaga joins (~weechat@user/hendursaga)
15:42:32 markpythonicbitc joins (~markpytho@50.228.44.6)
15:42:54 lbseale joins (~lbseale@user/ep1ctetus)
15:43:00 × markpythonicbitc quits (~markpytho@50.228.44.6) (Client Quit)
15:43:27 markpythonicbitc joins (~markpytho@50.228.44.6)
15:45:08 <hendursaga> geekosaur: Heath Ledger? :)
15:46:29 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:47:55 × derelict quits (~derelict@user/derelict) (Ping timeout: 268 seconds)
15:48:39 × markpythonicbitc quits (~markpytho@50.228.44.6) (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:52:32 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 252 seconds)
15:54:04 geekosaur joins (~geekosaur@xmonad/geekosaur)
15:55:03 MoC joins (~moc@user/moc)
15:55:03 × acidjnk_new quits (~acidjnk@p200300d0c72b956684192ce5faaf8cc6.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
15:56:53 Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
16:00:14 mc47 joins (~mc47@xmonad/TheMC47)
16:02:11 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:04:05 × Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer)
16:04:24 Vajb joins (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583)
16:04:57 × dunj3 quits (~dunj3@2001:16b8:3064:3b00:c411:4236:a894:7001) (Remote host closed the connection)
16:06:16 polyphem joins (~polyphem@2a02:810d:640:776c:5ce9:eeb2:9e8b:b083)
16:06:40 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
16:07:08 vysn joins (~vysn@user/vysn)
16:07:19 markpythonicbitc joins (~markpytho@2600:380:8435:268b:71bd:f2e5:8aa7:8567)
16:07:36 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:09:18 × chomwitt quits (~chomwitt@athedsl-32301.home.otenet.gr) (Ping timeout: 268 seconds)
16:10:04 derelict joins (~derelict@user/derelict)
16:10:32 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds)
16:10:41 × justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 248 seconds)
16:11:52 × mc47 quits (~mc47@xmonad/TheMC47) (Read error: Connection reset by peer)
16:12:24 econo joins (uid147250@user/econo)
16:12:48 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
16:20:35 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
16:21:20 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
16:23:11 meltedbrain_y2k parts (~tekserf@31.4.247.40) ()
16:25:14 jeslie0 joins (~user@108.162.150.9)
16:31:13 × fef quits (~thedawn@user/thedawn) (Quit: Leaving)
16:31:22 × jeslie0 quits (~user@108.162.150.9) (Ping timeout: 245 seconds)
16:38:38 <JavierNeira[m]> <hsek[m]> "What other beginner-friendly Has" <- https://github.com/haskell/haskell-language-server/labels/beginner%20friendly 🙂
16:40:20 <JavierNeira[m]> hsek the one about fixing the module name suggestion is not difficult, feel free to ask anything in the issue
16:43:15 × Vajb quits (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer)
16:43:30 × Skyfire quits (~pyon@user/pyon) (Ping timeout: 256 seconds)
16:44:39 Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi)
16:45:43 justsomeguy joins (~justsomeg@user/justsomeguy)
16:45:55 × markpythonicbitc quits (~markpytho@2600:380:8435:268b:71bd:f2e5:8aa7:8567) (Ping timeout: 258 seconds)
16:46:25 × jneira quits (~jneira@28.red-80-28-169.staticip.rima-tde.net) (Ping timeout: 248 seconds)
16:47:03 Skyfire joins (~pyon@user/pyon)
16:47:42 chris joins (~chris@81.96.113.213)
16:47:45 chris is now known as Guest974
16:51:48 × Skyfire quits (~pyon@user/pyon) (Ping timeout: 272 seconds)
16:53:05 agua_pesada joins (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea)
16:53:06 × Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer)
16:53:12 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
16:53:34 Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi)
16:54:34 __monty__ joins (~toonn@user/toonn)
16:55:21 × mattil quits (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Read error: Connection reset by peer)
16:55:25 <kuribas> hsek[m]: I may have an interesting project :)
16:57:09 <kuribas> hsek[m]: to help porting my hasqlator-mysql library to postgresql
16:58:12 mc47 joins (~mc47@xmonad/TheMC47)
17:00:45 × Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer)
17:00:52 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
17:01:11 Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi)
17:01:43 <kuribas> it's good to understand how to use monad transformers, monoids, etc...
17:02:15 <kuribas> but it should be fairly easy because most of the design is already done...
17:02:37 mattil joins (~mattilinn@84-253-224-16.bb.dnainternet.fi)
17:02:52 Core6866 joins (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea)
17:02:55 <kuribas> I have a preliminary stub, but it's already out of date: https://github.com/kuribas/hasqlator-postgresql
17:04:07 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
17:05:44 × agua_pesada quits (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Ping timeout: 272 seconds)
17:07:00 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Ping timeout: 272 seconds)
17:08:55 × Guest974 quits (~chris@81.96.113.213) (Remote host closed the connection)
17:09:19 VoidNoir0 joins (~VoidNoir0@72.80.203.52)
17:10:04 Lycurgus wonders how widely understood the difference between static and embedded sql is
17:16:10 chris joins (~chris@81.96.113.213)
17:16:14 chris is now known as Guest1090
17:17:08 <kuribas> It looks a lot of work, but I am sure a lot can just be copied.
17:18:15 nvmd joins (~nvmd@user/nvmd)
17:19:56 × Guest1090 quits (~chris@81.96.113.213) (Remote host closed the connection)
17:20:56 chomwitt joins (~chomwitt@athedsl-32301.home.otenet.gr)
17:21:05 chris joins (~chris@81.96.113.213)
17:21:08 chris is now known as Guest6830
17:24:01 pfurla joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
17:26:57 × pfurla_ quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds)
17:29:18 markpythonicbitc joins (~markpytho@2601:647:5a00:35:d53f:ff79:b405:7cdc)
17:30:09 × derelict quits (~derelict@user/derelict) (Ping timeout: 248 seconds)
17:32:12 × AlexNoo_ quits (~AlexNoo@94.233.240.105) (Read error: Connection reset by peer)
17:32:27 AlexNoo_ joins (~AlexNoo@94.233.240.105)
17:32:44 derelict joins (~derelict@user/derelict)
17:33:58 fef joins (~thedawn@user/thedawn)
17:34:09 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
17:36:16 × maerwald quits (~maerwald@mail.hasufell.de) (Changing host)
17:36:16 maerwald joins (~maerwald@user/maerwald)
17:36:18 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
17:37:58 × Guest6830 quits (~chris@81.96.113.213) (Remote host closed the connection)
17:40:29 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2)
17:42:48 chris joins (~chris@81.96.113.213)
17:42:51 chris is now known as Guest2370
17:44:49 mr-red joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
17:46:07 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 268 seconds)
17:47:02 <cdsmith> Sort of a noob question, but: where's the best generic place to get a safeHead :: [a] -> Maybe a? Hoogle doesn't turn up anything that looks fundamental like base or containers. Maybe it has a different name? Or should I just define it myself to minimize deps?
17:47:17 <kuribas> :t listToMaybe
17:47:18 <maerwald> @hackage Safe
17:47:18 <lambdabot> https://hackage.haskell.org/package/Safe
17:47:18 <lambdabot> [a] -> Maybe a
17:47:26 <cdsmith> Thanks
17:47:27 <maerwald> and that too
17:47:29 × Guest2370 quits (~chris@81.96.113.213) (Ping timeout: 252 seconds)
17:47:29 <kuribas> It's in Data.Maybe
17:47:44 <maerwald> :t headMay
17:47:45 <lambdabot> error: Variable not in scope: headMay
17:48:01 <maerwald> listToMaybe is really an odd name though, so I prefer Safe.headMay
17:48:05 <kuribas> @hoogle [a] -> Maybe a
17:48:06 <lambdabot> Data.Maybe listToMaybe :: [a] -> Maybe a
17:48:06 <lambdabot> Test.Framework.Providers.API listToMaybeLast :: [a] -> Maybe a
17:48:06 <lambdabot> Distribution.Compat.Prelude.Internal listToMaybe :: [a] -> Maybe a
17:48:21 <cdsmith> Ah, should have searched by type instead of name
17:49:17 <monochrom> @quote monochrom safeFromJust
17:49:18 <lambdabot> monochrom says: I use safeFromJust :: Maybe a -> Maybe a
17:49:58 <monochrom> @quote monochrom isTrue
17:49:58 <lambdabot> monochrom says: isTrue = (unsafeCoerce :: Either a b -> Bool) . (unsafeCoerce :: Maybe c -> Either a b) . (unsafeCoerce :: Bool -> Maybe c)
17:50:48 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
17:51:12 mc47 joins (~mc47@xmonad/TheMC47)
17:51:18 <kuribas> maerwald: it's a weird name, because it discards most of the list :)
17:51:29 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 248 seconds)
17:51:31 <kuribas> the other direction makes more sense (maybeToList)
17:51:42 × mc47 quits (~mc47@xmonad/TheMC47) (Client Quit)
17:51:57 <kuribas> maerwald: however it doesn't require using another package.
17:52:05 <maerwald> true
17:52:12 <maerwald> I used it too, but I always feel dirty afterwards
17:53:00 <monochrom> Names are insider mnemonics, not meaningful.
17:53:16 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
17:54:05 <maerwald> just create a class `ToMaybe`... oh no, it already exists
17:54:27 jeslie0 joins (~user@108.162.150.9)
17:54:48 Lycurgus thinks about carnaps original notion of functor, school of rectification, usw
17:55:34 <kuribas> monochrom: still, the weird naming is making me reluctant to use the Chronicle monad.
17:55:45 <kuribas> good naming can make a difference.
17:58:11 <monochrom> Good names are successful insider mnemonics.
17:58:21 Erutuon joins (~Erutuon@user/erutuon)
17:58:39 <monochrom> There is still a difference from "meaningful" names.
17:58:55 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
17:59:50 <Lycurgus> did you mean semantically correct?
18:00:08 <monochrom> I don't know.
18:00:15 <Lycurgus> guess it's practically the same thing
18:00:32 <Lycurgus> except for stupid people that say "it's just semantics"
18:01:15 <monochrom> Programming gets very niche and vertical very quickly. Most good names require insider context because they are naming things in niche domains.
18:02:26 <monochrom> And at some point you have to give up on accurate names even then, because they would be way too long. You have to settle for mnemonics.
18:02:51 <dsal> https://twitter.com/KentonVarda/status/1425622606821142530
18:02:52 × smitop quits (~smitop@user/smitop) (Quit: Ping timeout (120 seconds))
18:03:08 <kuribas> We could name them like vancian spells.
18:03:11 <monochrom> Take note that as the resulting names are either utterly meaningless or utterly misleading for outsiders.
18:03:16 <dsal> tl;dr: stuff is the best name for this field.
18:03:32 <kuribas> listToMaybe => MaerwaldsReductiveTailChomper
18:03:35 smitop joins (~smitop@user/smitop)
18:04:00 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 268 seconds)
18:04:25 chris joins (~chris@81.96.113.213)
18:04:28 chris is now known as Guest7842
18:05:07 <kuribas> (>>=) => MoggiesEffectfulConnector
18:05:20 <monochrom> :)
18:05:45 <monochrom> Last week I realized that Moggi wrote the first monad transformer paper, too.
18:05:52 <dsal> > [1, 2, 3] ^? folded
18:05:53 <lambdabot> Just 1
18:07:16 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:07:23 <monochrom> That tweet makes another point I thought of too. Hamming distances.
18:07:58 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
18:07:59 allbery_b joins (~geekosaur@xmonad/geekosaur)
18:07:59 <monochrom> A good name has smaller Hamming distances from related things and larger Hamming distances from unrelated things.
18:08:01 allbery_b is now known as geekosaur
18:08:09 lavaman joins (~lavaman@98.38.249.169)
18:08:32 <dsal> Heh. I had to go back and read that to figure out what you meant, but yeah, that makes sense.
18:08:36 <monochrom> If you called it "context" it would have 0 distance from unrelated things in the same system. That's why it's so bad.
18:08:55 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
18:09:36 <dsal> Yeah, I have that problem doing go readability because there's a thing called `context.Context` that means something specific, but sometimes conflicts in ways that cause confusion.
18:10:19 × fef quits (~thedawn@user/thedawn) (Ping timeout: 244 seconds)
18:12:19 × Core6866 quits (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Read error: Connection reset by peer)
18:12:33 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 258 seconds)
18:12:35 agua_pesada joins (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea)
18:12:57 × jeslie0 quits (~user@108.162.150.9) (Remote host closed the connection)
18:13:46 Core6816 joins (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea)
18:13:49 × agua_pesada quits (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Read error: Connection reset by peer)
18:16:15 lavaman joins (~lavaman@98.38.249.169)
18:16:32 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
18:17:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:18:11 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
18:19:59 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Remote host closed the connection)
18:20:30 burnsidesLlama joins (~burnsides@dhcp168-014.wadham.ox.ac.uk)
18:22:25 × fabfianda quits (~fabfianda@37.183.255.57) (Ping timeout: 248 seconds)
18:23:25 fabfianda joins (~fabfianda@mob-5-91-126-104.net.vodafone.it)
18:24:49 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:24:53 × mr-red quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 252 seconds)
18:24:57 × burnsidesLlama quits (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
18:25:05 jeslie0 joins (~user@108.162.150.9)
18:25:46 drd joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
18:27:34 wonko joins (~wjc@62.115.229.50)
18:28:54 × Guest7842 quits (~chris@81.96.113.213) (Remote host closed the connection)
18:29:54 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
18:31:15 × epolanski quits (uid312403@id-312403.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
18:32:01 justsomeguy joins (~justsomeg@user/justsomeguy)
18:33:59 chris joins (~chris@81.96.113.213)
18:34:02 chris is now known as Guest2332
18:34:05 mr-red joins (~drd@93-39-151-19.ip76.fastwebnet.it)
18:34:17 × drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 245 seconds)
18:34:30 × Guest2332 quits (~chris@81.96.113.213) (Read error: Connection reset by peer)
18:35:14 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
18:35:26 lavaman joins (~lavaman@98.38.249.169)
18:35:45 chris joins (~chris@81.96.113.213)
18:35:48 chris is now known as Guest1551
18:36:58 Skyfire joins (~pyon@user/pyon)
18:39:17 × the_proffesor quits (~theproffe@c-24-9-30-127.hsd1.co.comcast.net) (Changing host)
18:39:17 the_proffesor joins (~theproffe@user/theproffesor)
18:39:27 the_proffesor is now known as theproffesor
18:39:35 × Guest1551 quits (~chris@81.96.113.213) (Remote host closed the connection)
18:40:43 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Remote host closed the connection)
18:44:25 chris joins (~chris@81.96.113.213)
18:44:28 chris is now known as Guest1076
18:46:13 Cajun joins (~Cajun@user/cajun)
18:48:44 × Guest1076 quits (~chris@81.96.113.213) (Ping timeout: 256 seconds)
18:51:13 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
18:51:40 × mattil quits (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection)
18:52:44 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
19:04:25 × keutoi quits (~keutoi@157.47.115.91) (Quit: leaving)
19:06:57 <falsifian> Does anyone here have experience building ghcjs? I'm trying to add it back to nixpkgs: https://github.com/NixOS/nixpkgs/issues/133271
19:07:37 <falsifian> One thing I'm wondering: is it okay to try to build ghcjs 8.10.5 using ghc 8.10.4? Or should the versions match?
19:11:06 chris joins (~chris@81.96.113.213)
19:11:11 chris is now known as Guest2507
19:13:40 × mr-red quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 268 seconds)
19:13:40 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
19:14:57 <maerwald> falsifian: it works for GHC at least
19:15:00 <maerwald> not sure about ghcjs
19:15:09 <Las[m]> I don't see why it wouldn't work
19:15:34 Erutuon joins (~Erutuon@user/erutuon)
19:16:08 <falsifian> Thanks for the info. I'm still scratching my head over the issue I mention in the last comment there.
19:16:29 <Las[m]> falsifian: Can I ask why you want GHCJS?
19:16:47 <Las[m]> I haven't used it, but from my perspective Asterius seems superior
19:17:10 <falsifian> Las[m]: I never heard of Asterius.
19:17:51 <Las[m]> falsifian: https://github.com/tweag/asterius
19:17:57 <Las[m]> It's not stable AFAICT, but I think that's still better than using an unmaintained project
19:18:04 <Las[m]> GHCJS is AFAIK dead
19:18:28 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
19:19:11 <falsifian> Las[m]: The version got bumped to 8.10.5 as recently as June, and there are more recent commits. It may not be well-maintained, but dead seems like an exaggeration.
19:20:19 × jeslie0 quits (~user@108.162.150.9) (Remote host closed the connection)
19:20:44 jeslie0 joins (~user@108.162.150.9)
19:20:46 <falsifian> Hm, and Asterius's most recent commit is January
19:20:57 <Las[m]> You're right, it's a slight exaggeration
19:20:57 <Las[m]> Wait really?
19:21:09 <Las[m]> lol
19:21:09 <falsifian> Looking at https://github.com/tweag/asterius. Not sure if that's the right place
19:21:17 <Las[m]> No it is the right place I think, wonder wh
19:21:19 <Las[m]> y
19:21:56 <falsifian> I'm certainly open to other options. I love Haskell, but ghc is a beast. I wish there were a lighter-weight compiler, maybe with fewer features, that isn't dead.
19:21:58 <Las[m]> falsifian: https://github.com/tweag/ghc-asterius
19:22:23 <Las[m]> I wonder why they switched repository
19:22:48 <falsifian> Las[m]: looks like they're trying to integrate it into ghc?
19:22:50 <Las[m]> I think Idris could solve that problem honestly, since it has a much simpler compiler and isn't lazy
19:22:57 <Las[m]> It already compiles to a lot of odd backends, including JS
19:23:00 <Las[m]> Yeah
19:23:19 <falsifian> Maybe I should take another look at Idris :)
19:23:49 <dsal> Is there an agdajs?
19:24:07 pfurla_ joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
19:24:27 <Las[m]> I would not use that, can't imagine using Agda for a real project
19:24:39 <Las[m]> I like being able to compile a project in under a minute
19:27:15 × pfurla quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 268 seconds)
19:28:40 <falsifian> Is anyone using Idris for a Javascript project? Is it practical?
19:29:33 × jeslie0 quits (~user@108.162.150.9) (Remote host closed the connection)
19:33:10 <kuribas> falsifian: I don't think idris is practical for anything that is not an experiment.
19:33:53 <kuribas> falsifian: have a look at purescript
19:34:19 × kuribas quits (~user@ptr-25vy0i8g8e654nggn7o.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
19:34:23 <falsifian> I've heard of purescript. I'm a bit reluctant to use anything that only targets the web, mostly on principle, but partly because I would like my thing to run natively too
19:34:26 lavaman joins (~lavaman@98.38.249.169)
19:34:55 <Cale> Yeah, it's really nice to be able to move and share code between the frontend and backend
19:36:01 × benin036932 quits (~benin@183.82.205.178) (Ping timeout: 248 seconds)
19:37:01 jneira joins (~jneira@28.red-80-28-169.staticip.rima-tde.net)
19:37:07 <falsifian> I recall the last time I tried to use Idris for a task, the first thing I implemented was count the lines of a file in what seemed like an obvious way to me. My program was extremely slow, and seemed to be taking O(n^2) time IIRC. Never figured out why. This was before Idris2.
19:37:20 <Cale> At Obsidian, we use ghcjs along with reflex-dom for a lot of our frontend work, and it's pretty nice. We've got a framework for web and mobile applications called Obelisk you might be interested in. The web/mobile side of our business got a little slow through COVID times, but it seems to be picking back up now.
19:38:23 <dsal> I've not tried purescript, but my inexperienced concern is that it's close enough to Haskell to be confusing in an uncanny valley kind of way.
19:38:40 <falsifian> Cale: My UI needs are pretty simple. I'm just creating a canvas, doing some WebGL, and catching simple events. I think I'm okay just using standard web APIs for now.
19:39:09 <sm> there's Kind
19:40:53 <falsifian> sm: Is that the one that used to be called Formality? Pretty new, right?
19:41:12 <sm> yup, very new
19:41:36 <Cale> falsifian: Yeah, if you don't need a backend, then using all of Obelisk is probably too much. It may still be nice using reflex-platform to easily work with ghcjs, and *maybe* reflex-dom to just build the web side of things, though we don't really have anything special for canvas or webgl, and we probably ought to.
19:41:40 <sm> and of course there's Elm
19:41:53 × azeem quits (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Ping timeout: 248 seconds)
19:42:55 azeem joins (~azeem@176.200.230.183)
19:43:11 <Cale> Just using the GHCJS.DOM library might be enough if the event handling is pretty simple and you're imperatively drawing on a canvas a bunch.
19:43:16 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
19:43:51 <falsifian> sm: That's also web-only, right?
19:44:06 <falsifian> Cale: Yup, that's what I'm doing. It's just an animation loop with event handlers that update a state ref.
19:44:14 <sm> no sure but I would guess so
19:48:22 Shaeto joins (~Shaeto@94.25.234.223)
19:48:53 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:49:34 Erutuon joins (~Erutuon@user/erutuon)
19:49:56 × _bin quits (~bin@user/bin/x-1583188) (Quit: ZNC - https://znc.in)
19:50:27 _bin joins (~bin@user/bin/x-1583188)
19:50:45 mnrmnaugh is now known as KeziahMason
19:52:03 × _bin quits (~bin@user/bin/x-1583188) (Client Quit)
19:52:45 Codaraxis joins (~Codaraxis@user/codaraxis)
19:52:55 _bin joins (~bin@user/bin/x-1583188)
19:53:27 × _bin quits (~bin@user/bin/x-1583188) (Client Quit)
19:53:56 _bin joins (~bin@user/bin/x-1583188)
19:56:33 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
19:58:19 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
20:01:10 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 272 seconds)
20:02:47 Erutuon joins (~Erutuon@user/erutuon)
20:03:58 × Guest2507 quits (~chris@81.96.113.213) (Remote host closed the connection)
20:05:03 × haykam quits (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection)
20:05:21 × juhp quits (~juhp@128.106.188.220) (Ping timeout: 248 seconds)
20:05:31 haykam joins (~haykam@static.100.2.21.65.clients.your-server.de)
20:07:37 juhp joins (~juhp@128.106.188.220)
20:07:51 AlexNoo_ is now known as AlexNoo
20:08:49 chris joins (~chris@81.96.113.213)
20:08:53 chris is now known as Guest1898
20:09:06 _73 parts (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2))
20:13:02 × Guest1898 quits (~chris@81.96.113.213) (Ping timeout: 245 seconds)
20:14:20 KeziahMason is now known as mnrmnaugh
20:22:37 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
20:22:45 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
20:24:02 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 258 seconds)
20:24:26 azeem joins (~azeem@176.200.230.183)
20:35:24 × Shaeto quits (~Shaeto@94.25.234.223) (Quit: WeeChat 3.1)
20:37:21 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 248 seconds)
20:38:06 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:38:26 × heath quits (~heath@user/heath) (Ping timeout: 250 seconds)
20:38:26 × oats quits (~thomas@user/oats) (Ping timeout: 250 seconds)
20:38:32 × aravk quits (~aravk@user/aravk) (Ping timeout: 252 seconds)
20:38:52 × zyklotomic quits (~ethan@2604:a880:800:10::79f:8001) (Ping timeout: 250 seconds)
20:38:52 × krjst quits (~krjst@2604:a880:800:c1::16b:8001) (Ping timeout: 250 seconds)
20:38:57 × VoidNoir0 quits (~VoidNoir0@72.80.203.52) (Ping timeout: 248 seconds)
20:39:05 × nonzen quits (~nonzen@user/nonzen) (Ping timeout: 252 seconds)
20:39:18 × sajith quits (~sajith@user/sajith) (Ping timeout: 250 seconds)
20:39:22 × jneira quits (~jneira@28.red-80-28-169.staticip.rima-tde.net) (Ping timeout: 258 seconds)
20:39:24 × jolly quits (~jolly@208.180.97.158) (Ping timeout: 268 seconds)
20:39:35 sajith_ joins (~sajith@user/sajith)
20:39:42 hololeap joins (~hololeap@user/hololeap)
20:39:48 × energizer quits (~energizer@user/energizer) (Ping timeout: 272 seconds)
20:39:56 nonzen joins (~nonzen@user/nonzen)
20:41:21 azeem joins (~azeem@176.200.230.183)
20:41:33 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
20:41:34 krjst joins (~krjst@2604:a880:800:c1::16b:8001)
20:41:40 <hololeap> I'm having a hard time figuring out why the type system thinks there's an ambiguous variable here: http://sprunge.us/L7lj5i
20:42:44 <hololeap> I used ScopedTypeVariables and littered it with enough type information that it should be able to figure it out, I would think
20:44:01 lavaman joins (~lavaman@98.38.249.169)
20:44:19 × chisui quits (~chisui@200116b8642cd800d092c544b616cc73.dip.versatel-1u1.de) (Ping timeout: 246 seconds)
20:46:06 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
20:47:44 oats joins (~thomas@user/oats)
20:49:25 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
20:50:41 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 248 seconds)
20:51:16 zyklotomic joins (~ethan@2604:a880:800:10::79f:8001)
20:51:16 <falsifian> hololeap: What error do you see? I'm not sure where to look.
20:51:38 <falsifian> hololeap: Oops, I see it's in the comment at the bottom
20:51:57 heath joins (~heath@user/heath)
20:52:26 <hololeap> yeah. what I'm trying to do is a little unusual so I may have confused myself
20:52:45 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
20:53:17 energizer joins (~energizer@user/energizer)
20:55:19 aravk joins (~aravk@user/aravk)
20:56:41 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
20:57:08 <falsifian> I haven't fully understood your function, but shouldn't the output of applyExtraArgs have type r, rather than WithExtraArgs as r?
20:57:22 <falsifian> I thought the point is to apply the extra arguments, so you get the resulting r value
20:58:36 <hololeap> the final output _is_ r, since WithExtraArgs eventually results in r
20:59:40 <falsifian> hololeap: Say as is [Int, Int] and r is Char. Your function is taking an ExtraArgsSing [Int, Int], and a WithExtraArgs as r (which is Int -> Int -> Char I think), and returning a (Int -> Int -> Char)
20:59:49 <falsifian> According to the type signature for applyExtraArgs
20:59:52 <falsifian> I'd expect it to return just Char
21:00:22 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
21:00:22 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 268 seconds)
21:00:29 <falsifian> Did you mean to write ... -> WithExtraArgs as' r?
21:00:38 <falsifian> or something like that
21:00:53 <hololeap> well, there needs to be a way for the caller of applyExtraArgs to pass in the arguments
21:01:37 <hololeap> so in your example, the applyExtraArgs would become: ExtraArgsSing '[Int,Int] -> (Int -> Int -> Char) -> Int -> Int -> Char
21:02:00 Erutuon joins (~Erutuon@user/erutuon)
21:02:12 × xff0x quits (~xff0x@2001:1a81:5278:5300:7b4f:e6f2:6a79:44e0) (Ping timeout: 245 seconds)
21:02:17 <falsifian> I'm confused. Could you just write applyExtraArgs _ x = x?
21:02:45 <falsifian> As the definition for the function
21:03:12 <falsifian> (Before, I was thinking an ExtraArgsSing as actually includes the a values, but I guess it doesn't.)
21:03:17 <hololeap> that's what the case for the empty type-level list does: applyExtraArgs NoExtraArgs x = x
21:03:17 xff0x joins (~xff0x@2001:1a81:5278:5300:e19e:51f3:462a:7dce)
21:03:37 <falsifian> hololeap: But wouldn't my definition satisfy the type signature you wrote?
21:04:04 <falsifian> Can you give an example of how withExtraArgs could be used?
21:04:24 <hololeap> hm, maybe I'm overcomplicating it...
21:06:00 burnsidesLlama joins (~burnsides@client-8-91.eduroam.oxuni.org.uk)
21:06:41 × fabfianda quits (~fabfianda@mob-5-91-126-104.net.vodafone.it) (Ping timeout: 248 seconds)
21:07:05 <hololeap> falsifian: for example: f :: WithExtraArgs '[Int,Int] Char ; applyExtraArgs f 3 4 :: Char
21:07:14 fabfianda joins (~fabfianda@37.183.255.57)
21:08:49 × kor1 quits (~kor1@user/kor1) (Ping timeout: 248 seconds)
21:09:25 jao parts (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) ()
21:09:37 × dmwit quits (~dmwit@pool-108-28-26-143.washdc.fios.verizon.net) (Ping timeout: 268 seconds)
21:09:54 <hololeap> anyway, the reason why it's this complicated is because I need to expand on this idea so that I can have a nested structure, where the extra args are passed down to the children that need them.
21:10:25 × burnsidesLlama quits (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 258 seconds)
21:11:11 dmwit joins (~dmwit@pool-108-28-26-143.washdc.fios.verizon.net)
21:12:21 <hololeap> there will need to be a value-level witness of the type-level rose tree that will be involved, so that the apply function knows which child to pass the argument to
21:12:32 <hololeap> it's like the santa claus of functional programming
21:13:32 spaceshipnow joins (~spaceship@75-164-208-223.ptld.qwest.net)
21:13:41 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
21:13:55 <monochrom> and the children live in tree houses built throughout the christmas tree...
21:15:11 × spaceshipnow quits (~spaceship@75-164-208-223.ptld.qwest.net) (Client Quit)
21:21:37 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
21:23:40 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
21:23:51 pfurla joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
21:25:14 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
21:27:01 <hololeap> I think I understand why GHC is getting confused... it doesn't have a way to know that `WithExtraArgs '[Int, Int] r` and `WithExtraArgs '[Int] r` are talking about the same 'r'
21:27:24 × pfurla_ quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 256 seconds)
21:28:32 <hololeap> and I don't know how to assure it of that. WithExtraArgs cannot be injective, since there is no specific relationship between the arguments and 'r'
21:30:13 <hololeap> so I might have to pass in the arguments as a single data structure instead
21:31:19 <falsifian> hololeap: I don't really understand your end goal, but I wonder if it really requires all this type-level trickery.
21:31:35 <falsifian> Do you have an example of how it would be used, if you got it working?
21:32:14 <hololeap> I'd have to show you the end product and then you could decide if it's necessary or not. there's too much to explain
21:32:33 <falsifian> hololeap: Sounds like you're on a fun adventure :)
21:33:11 <hololeap> heh
21:36:05 <hololeap> the best I can do to sum it up is: there is a typeclass that defines a form field, and this form field may have children attached as a type family FieldChildTypes
21:36:43 <hololeap> the children have a state that remembers if they have been filled and if they are valid, which is passed up through the tree to their ancestors
21:37:19 <hololeap> there is also a render function for this typeclass, but occasionally the render function needs extra arguments passed to it, due to the way the rendering system works
21:37:48 <hololeap> so rendering an ancestor will require passing in extra arguments for all the decendents that need them...
21:39:18 × stefan-_ quits (~cri@42dots.de) (Ping timeout: 256 seconds)
21:39:48 <hololeap> so there is also a FieldExtraArgs type family within this typeclass which holds the extra arguments needed to render, if there are any
21:40:32 <hololeap> and then I need a way to apply them, hence my attempt to make way to have a dynamic number of arguments for a function
21:41:41 <hololeap> hope that makes sense
21:42:08 <falsifian> hololeap: That sounds like a lot to think about. All I can suggest for now is: have you studied how printf works?
21:42:33 <falsifian> Other than that it's beyond me :)
21:42:41 <hololeap> falsifian: that's a good idea
21:43:23 × retroid_ quits (~retro@5ec19a54.skybroadband.com) (Ping timeout: 258 seconds)
21:43:26 stefan-_ joins (~cri@42dots.de)
21:43:27 econo joins (uid147250@user/econo)
21:50:17 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 258 seconds)
21:50:41 azeem joins (~azeem@176.200.230.183)
21:54:30 × xff0x quits (~xff0x@2001:1a81:5278:5300:e19e:51f3:462a:7dce) (Ping timeout: 258 seconds)
21:55:18 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
21:55:27 xff0x joins (~xff0x@2001:1a81:5278:5300:2655:c9ee:974:3c59)
21:56:30 <Las[m]> falsifian: There are people who are using Idris compiled to JS
21:56:41 <Las[m]> But I think the focus is more on use with Node honestly
21:57:16 × vysn quits (~vysn@user/vysn) (Remote host closed the connection)
21:57:17 <Las[m]> https://github.com/idris-lang/Idris2/blob/main/docs/source/backends/javascript.rst
21:57:47 <Las[m]> I personally think Idris is fine for use in production compared to something like raw JavaScript
21:58:01 haykam1 joins (~haykam@static.100.2.21.65.clients.your-server.de)
21:58:05 <Las[m]> There aren't that many serious bugs
21:59:45 × haykam quits (~haykam@static.100.2.21.65.clients.your-server.de) (Read error: Connection reset by peer)
22:02:22 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
22:04:17 × jtomas quits (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) (Ping timeout: 248 seconds)
22:05:07 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 268 seconds)
22:05:53 × sander quits (~sander@user/sander) (Ping timeout: 248 seconds)
22:06:17 azeem joins (~azeem@176.200.230.183)
22:09:25 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 268 seconds)
22:11:36 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
22:17:16 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 256 seconds)
22:17:27 azeem joins (~azeem@176.200.230.183)
22:21:53 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 248 seconds)
22:22:28 azeem joins (~azeem@176.200.230.183)
22:25:24 jneira joins (~jneira@28.red-80-28-169.staticip.rima-tde.net)
22:29:15 <falsifian> Las[m]: Cool, maybe I will try it later. For now, my current project is already started with ghcjs, so I think I'll stick with it. I was running into trouble re-adding it to nixpkgs, but it looks like I can use haskell.nix instead where it still works.
22:29:44 <falsifian> (It was an unpleasant surprise to update to the latest NixOS release to find that ghcjs had disappeared :( )
22:30:11 × jay-invariant quits (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Remote host closed the connection)
22:31:03 shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net)
22:31:25 drownbes joins (~igloo@79-206-50-195.sta.estpak.ee)
22:32:06 jay_invariant joins (~jay@c-24-4-6-169.hsd1.ca.comcast.net)
22:32:16 × drownbes quits (~igloo@79-206-50-195.sta.estpak.ee) (Remote host closed the connection)
22:33:59 × haykam1 quits (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection)
22:34:12 haykam joins (~haykam@static.100.2.21.65.clients.your-server.de)
22:34:35 × michalz quits (~michalz@185.246.204.33) (Remote host closed the connection)
22:34:37 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
22:37:40 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 256 seconds)
22:38:43 jay-invariant joins (~jay@c-24-4-6-169.hsd1.ca.comcast.net)
22:40:07 × jay_invariant quits (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
22:43:49 × chomwitt quits (~chomwitt@athedsl-32301.home.otenet.gr) (Remote host closed the connection)
22:53:33 goepsilongo joins (~goepsilon@2603-7000-ab00-62ed-95a9-15a9-30f0-cc26.res6.spectrum.com)
22:54:25 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 248 seconds)
22:55:11 azeem joins (~azeem@176.200.230.183)
22:59:45 × azeem quits (~azeem@176.200.230.183) (Ping timeout: 248 seconds)
23:00:19 azeem joins (~azeem@176.200.230.183)
23:00:37 × azeem quits (~azeem@176.200.230.183) (Read error: Connection reset by peer)
23:01:55 azeem joins (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it)
23:02:42 tapas is now known as Saladin
23:05:02 × yoctocell quits (~user@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 258 seconds)
23:05:17 × Tuplanolla quits (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
23:09:06 × aweinstock quits (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 240 seconds)
23:11:09 × goepsilongo quits (~goepsilon@2603-7000-ab00-62ed-95a9-15a9-30f0-cc26.res6.spectrum.com) (Quit: Textual IRC Client: www.textualapp.com)
23:11:12 aweinstock joins (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com)
23:18:47 × SoF quits (~skius@user/skius) (Quit: Ping timeout (120 seconds))
23:19:20 × Unode quits (~Unode@194.94.44.220) (Remote host closed the connection)
23:19:46 × aforemny quits (~aforemny@static.248.158.34.188.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in)
23:20:37 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
23:20:37 SoF6 joins (~skius@user/skius)
23:20:38 Unode_ joins (~Unode@194.94.44.220)
23:20:38 aforemny_ joins (~aforemny@static.248.158.34.188.clients.your-server.de)
23:20:47 Unode_ is now known as Unode
23:20:47 SoF6 is now known as SoF
23:23:52 pfurla_ joins (~pfurla@ool-3f8fcb0f.dyn.optonline.net)
23:27:29 × pfurla quits (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds)
23:27:47 GIANTWORLDKEEPER joins (~pjetcetal@2.95.210.188)
23:29:38 × GIANTWORLDKEEPER quits (~pjetcetal@2.95.210.188) (Read error: Connection reset by peer)
23:34:32 Square joins (~a@178.62.91.8)
23:38:50 × aweinstock quits (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 268 seconds)
23:39:56 Saladin is now known as tapas
23:40:26 aweinstock joins (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com)
23:41:42 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 256 seconds)
23:48:29 Ananta-shesha joins (~pjetcetal@2.95.210.188)
23:49:27 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
23:52:33 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds)
23:55:17 slack1256 joins (~slack1256@191.126.13.254)
23:59:42 hexfive joins (~eric@50.35.83.177)
23:59:47 × hexfive quits (~eric@50.35.83.177) (Client Quit)

All times are in UTC on 2021-08-13.