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.