Logs on 2021-12-06 (liberachat/#haskell)
| 00:00:32 | <Axman6> | Answer is: tes |
| 00:00:35 | <Axman6> | yes* |
| 00:00:57 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 00:01:35 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:10:34 | → | adelon joins (~adelon@user/adelon) |
| 00:10:44 | × | adelon quits (~adelon@user/adelon) (Client Quit) |
| 00:33:34 | → | curiousgay joins (~curiousga@77-120-141-90.kha.volia.net) |
| 00:36:03 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 00:37:09 | → | gzj joins (~GZJ0X@216.24.178.99.16clouds.com) |
| 00:37:40 | → | GZJ0X_ joins (~GZJ0X@216.24.178.99.16clouds.com) |
| 00:38:37 | → | Codaraxis joins (~Codaraxis@user/codaraxis) |
| 00:38:42 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 00:41:42 | × | GZJ0X_ quits (~GZJ0X@216.24.178.99.16clouds.com) (Client Quit) |
| 00:41:43 | × | gzj quits (~GZJ0X@216.24.178.99.16clouds.com) (Ping timeout: 256 seconds) |
| 00:42:53 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 00:43:26 | × | jgeerds quits (~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 252 seconds) |
| 00:50:37 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 00:52:47 | × | acidjnk_new quits (~acidjnk@p200300d0c7271e180970d7f4a6232670.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 00:53:17 | → | sprout joins (~quassel@2a02:a467:ccd6:1:38e1:73a2:ce5d:fb32) |
| 00:56:36 | × | sprout_ quits (~quassel@2a02:a467:ccd6:1:bde9:c3fb:c9c:3dee) (Ping timeout: 245 seconds) |
| 01:03:13 | × | TranquilEcho quits (~grom@user/tranquilecho) (Quit: WeeChat 2.8) |
| 01:04:40 | × | Tuplanolla quits (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
| 01:10:33 | × | Midjak quits (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: This computer has gone to sleep) |
| 01:11:21 | → | mvk joins (~mvk@2607:fea8:5cdd:f000::9788) |
| 01:14:36 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 01:15:23 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 01:20:12 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
| 01:21:48 | <boxscape> | is there a way to prevent cabal repl from exiting when you hit Ctrl-C? |
| 01:22:38 | <geekosaur> | not portably :( |
| 01:23:05 | <boxscape> | hm okay |
| 01:23:24 | <boxscape> | is there a non-portable way? |
| 01:24:05 | <geekosaur> | on a posix system cabal could SIG_IGN SIGINT while running ghci. on windows there's no way to do this at all, iirc |
| 01:24:47 | <boxscape> | If I'm understanding correctly that POSIX solution is something that cabal would have to implement, rather than a solution I as a user could use? |
| 01:25:01 | <geekosaur> | this would probably require rewiring how cabal runs subprocesses completely, since it would have to use the posix subprocess interfaces to do this |
| 01:25:14 | <boxscape> | okay |
| 01:25:41 | <boxscape> | interestingly there is an issue from 7 years ago that claims it was fixed https://github.com/haskell/cabal/issues/1610 |
| 01:25:53 | <boxscape> | s/7/8 |
| 01:27:06 | <geekosaur> | mrr. wonder if it's a regression, and if so was it introduced by trying to improve windows support |
| 01:27:12 | × | burnsidesLlama quits (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 268 seconds) |
| 01:27:45 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 01:27:50 | <boxscape> | it's also entirely that it works on linux, I actually went into this thinking I need a linux solution because I'm on WSL2, but then I realized I'm calling the windows cabal from the WSL2 terminal at the moment |
| 01:28:24 | <geekosaur> | that would make sense. there is very little provided on windows for ctrl-c handling |
| 01:28:38 | <boxscape> | hm, right |
| 01:28:38 | <geekosaur> | which is why I said "not portably" |
| 01:30:19 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
| 01:30:43 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 01:31:03 | × | chenqisu12 quits (~chenqisu1@183.217.201.63) (Remote host closed the connection) |
| 01:31:16 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 01:34:50 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3) |
| 01:38:41 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 245 seconds) |
| 01:41:40 | × | dsrt^ quits (~dsrt@68.101.58.90) (Remote host closed the connection) |
| 01:42:30 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
| 01:44:14 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 01:52:28 | × | mjrosenb quits (~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net) (Remote host closed the connection) |
| 02:06:17 | <nfd> | dsal: sorry for ghosting your question last night; had/have my client misconfigured on this channel |
| 02:06:37 | <nfd> | (lexeme was supposed to eat trailing spaces and tabs, and does) |
| 02:07:58 | ← | nfd parts (~nfd@user/nfd) () |
| 02:08:02 | → | nfd joins (~nfd@user/nfd) |
| 02:11:16 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 02:11:26 | → | wei2912 joins (~wei2912@116.88.103.128) |
| 02:11:49 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 02:15:16 | <dsal> | nfd: yeah, just wondering how you defined it. It used to confuse me/lead to bugs |
| 02:16:50 | → | deadmarshal joins (~deadmarsh@95.38.119.139) |
| 02:17:13 | → | stevenxl joins (~stevenlei@174.128.182.152) |
| 02:21:09 | × | deadmarshal quits (~deadmarsh@95.38.119.139) (Ping timeout: 252 seconds) |
| 02:25:11 | × | neurocyte0132889 quits (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
| 02:28:52 | × | xff0x quits (~xff0x@2001:1a81:5227:8600:e134:3a0d:618c:1205) (Ping timeout: 268 seconds) |
| 02:30:21 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:e5f5:ee22:f6bb:9023) |
| 02:30:41 | <nfd> | i actually *did* have a bug due to my exact definition consuming newlines |
| 02:31:40 | × | zincy quits (~tom@2a00:23c8:970c:4801:8164:4807:4ccb:62f3) (Remote host closed the connection) |
| 02:31:45 | × | tom_ quits (~tom@2a00:23c8:970c:4801:8164:4807:4ccb:62f3) (Remote host closed the connection) |
| 02:31:47 | → | zincy joins (~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) |
| 02:31:48 | → | tom__ joins (~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) |
| 02:32:09 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:34:42 | × | hololeap quits (~hololeap@user/hololeap) (Ping timeout: 276 seconds) |
| 02:36:51 | → | hololeap joins (~hololeap@user/hololeap) |
| 02:40:34 | → | genieliu joins (~genieliu@103.37.140.24) |
| 02:45:39 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 02:51:41 | × | Techcable_ quits (~Techcable@168.235.93.147) (Ping timeout: 268 seconds) |
| 03:02:39 | × | hololeap quits (~hololeap@user/hololeap) (Ping timeout: 276 seconds) |
| 03:04:42 | × | lemonsnicks quits (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 03:05:29 | → | hololeap joins (~hololeap@user/hololeap) |
| 03:06:15 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 03:06:47 | → | sagax joins (~sagax_nb@user/sagax) |
| 03:08:27 | × | mvk quits (~mvk@2607:fea8:5cdd:f000::9788) (Ping timeout: 252 seconds) |
| 03:18:36 | → | lemonsnicks joins (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
| 03:19:05 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 03:21:17 | × | euandreh quits (~euandreh@2804:14c:33:9fe5:f767:b15a:e5b1:96f0) (Ping timeout: 268 seconds) |
| 03:22:12 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:b36c:1fc0:956d:d06c) |
| 03:28:41 | × | renzhi quits (~xp@2607:fa49:6500:b100::5cef) (Ping timeout: 268 seconds) |
| 03:29:43 | × | InternetCitizen quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 252 seconds) |
| 03:31:23 | → | mbuf joins (~Shakthi@122.178.240.120) |
| 03:33:00 | → | genieliu_ joins (~genieliu@103.37.140.24) |
| 03:33:59 | × | genieliu quits (~genieliu@103.37.140.24) (Ping timeout: 256 seconds) |
| 03:34:07 | × | td_ quits (~td@muedsl-82-207-238-182.citykom.de) (Ping timeout: 252 seconds) |
| 03:35:55 | → | td_ joins (~td@muedsl-82-207-238-027.citykom.de) |
| 03:37:08 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:37:08 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 03:37:08 | finn_elija | is now known as FinnElija |
| 03:40:13 | × | _xor quits (~xor@72.49.199.147) (Ping timeout: 256 seconds) |
| 03:41:49 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
| 03:47:49 | × | terrorjack quits (~terrorjac@static.3.200.12.49.clients.your-server.de) (Quit: The Lounge - https://thelounge.chat) |
| 03:49:03 | → | terrorjack joins (~terrorjac@2a01:4f8:1c1e:509a::1) |
| 03:52:22 | × | waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.3) |
| 03:52:53 | × | kennyd quits (~bc8165b6@83.167.180.121) (Quit: CGI:IRC (Session timeout)) |
| 04:07:36 | → | sprout_ joins (~quassel@2a02:a467:ccd6:1:39f3:76e9:9ca1:32bd) |
| 04:10:47 | × | sprout quits (~quassel@2a02:a467:ccd6:1:38e1:73a2:ce5d:fb32) (Ping timeout: 252 seconds) |
| 04:11:57 | × | genieliu_ quits (~genieliu@103.37.140.24) (Ping timeout: 256 seconds) |
| 04:12:44 | × | cjb quits (~cjb@user/cjb) (Quit: rcirc on GNU Emacs 29.0.50) |
| 04:25:16 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 04:29:25 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 04:34:28 | → | Techcable joins (~Techcable@168.235.93.147) |
| 04:40:19 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Remote host closed the connection) |
| 04:43:31 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 04:44:56 | → | genieliu joins (~genieliu@103.37.140.38) |
| 04:44:56 | × | darchitect quits (~darchitec@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Ping timeout: 245 seconds) |
| 04:45:46 | × | darchite` quits (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Ping timeout: 268 seconds) |
| 04:47:43 | → | deadmarshal joins (~deadmarsh@95.38.119.139) |
| 04:50:01 | × | genieliu quits (~genieliu@103.37.140.38) (Ping timeout: 252 seconds) |
| 04:55:09 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:55:24 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:55:31 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:55:53 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
| 04:58:46 | → | on^ joins (~on@68.101.58.90) |
| 05:02:45 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:12:04 | × | deadmarshal quits (~deadmarsh@95.38.119.139) (Quit: ZNC 1.8.2 - https://znc.in) |
| 05:13:12 | → | deadmarshal joins (~deadmarsh@95.38.119.139) |
| 05:14:57 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 05:18:13 | → | famubu joins (~famubu@user/famubu) |
| 05:18:56 | → | genieliu joins (~genieliu@103.37.140.24) |
| 05:19:04 | <famubu> | Hi. Can we say that 'Monad ⊂ Applicatives ⊂ Functors'? |
| 05:19:12 | <famubu> | I was trying to learn about monads. |
| 05:19:20 | <sclv> | yes, that's correct |
| 05:19:27 | <famubu> | Thanks. :) |
| 05:19:43 | × | deadmarshal quits (~deadmarsh@95.38.119.139) (Ping timeout: 252 seconds) |
| 05:21:55 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 05:23:55 | × | genieliu quits (~genieliu@103.37.140.24) (Ping timeout: 256 seconds) |
| 05:26:28 | × | glguy quits (x@libera/staff/glguy) (*.net *.split) |
| 05:26:28 | × | on^ quits (~on@68.101.58.90) (*.net *.split) |
| 05:26:28 | × | sprout_ quits (~quassel@2a02:a467:ccd6:1:39f3:76e9:9ca1:32bd) (*.net *.split) |
| 05:26:28 | × | zincy quits (~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) (*.net *.split) |
| 05:26:28 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:e5f5:ee22:f6bb:9023) (*.net *.split) |
| 05:26:28 | × | stevenxl quits (~stevenlei@174.128.182.152) (*.net *.split) |
| 05:26:28 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (*.net *.split) |
| 05:26:28 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (*.net *.split) |
| 05:26:28 | × | Codaraxis quits (~Codaraxis@user/codaraxis) (*.net *.split) |
| 05:26:29 | × | curiousgay quits (~curiousga@77-120-141-90.kha.volia.net) (*.net *.split) |
| 05:26:29 | × | Alex_test quits (~al_test@178.34.163.11) (*.net *.split) |
| 05:26:29 | × | AlexZenon quits (~alzenon@178.34.163.11) (*.net *.split) |
| 05:26:29 | × | vgtw_ quits (~vgtw@c-2359205c.07-348-756d651.bbcust.telenor.se) (*.net *.split) |
| 05:26:29 | × | pavonia quits (~user@user/siracusa) (*.net *.split) |
| 05:26:29 | × | justSleigh quits (~justache@user/justache) (*.net *.split) |
| 05:26:29 | × | bradparker quits (sid262931@id-262931.uxbridge.irccloud.com) (*.net *.split) |
| 05:26:29 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (*.net *.split) |
| 05:26:29 | × | connrs quits (~connrs@user/connrs) (*.net *.split) |
| 05:26:29 | × | taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (*.net *.split) |
| 05:26:29 | × | alx741 quits (~alx741@186.178.109.217) (*.net *.split) |
| 05:26:29 | × | shriekingnoise quits (~shrieking@186.137.144.80) (*.net *.split) |
| 05:26:29 | × | flukiluke quits (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (*.net *.split) |
| 05:26:29 | × | Jonno_FTW quits (~come@api.carswap.me) (*.net *.split) |
| 05:26:29 | × | gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (*.net *.split) |
| 05:26:29 | × | zaquest quits (~notzaques@5.130.79.72) (*.net *.split) |
| 05:26:29 | × | shailangsa quits (~shailangs@host86-186-142-82.range86-186.btcentralplus.com) (*.net *.split) |
| 05:26:29 | × | int-e quits (~noone@int-e.eu) (*.net *.split) |
| 05:26:29 | × | trillp quits (~user@69.233.98.238) (*.net *.split) |
| 05:26:29 | × | JimL quits (~quassel@89-162-2-132.fiber.signal.no) (*.net *.split) |
| 05:26:29 | × | wz1000 quits (~zubin@static.11.113.47.78.clients.your-server.de) (*.net *.split) |
| 05:26:29 | × | jinsun quits (~quassel@user/jinsun) (*.net *.split) |
| 05:26:29 | × | nickdaly quits (45ce440a48@2604:bf00:561:2000::e2) (*.net *.split) |
| 05:26:29 | × | elvishjerricco quits (sid237756@id-237756.helmsley.irccloud.com) (*.net *.split) |
| 05:26:29 | × | FragByte quits (~christian@user/fragbyte) (*.net *.split) |
| 05:26:29 | × | halides quits (halides@imases.biss.ee) (*.net *.split) |
| 05:26:29 | × | iqubic quits (~user@c-67-171-37-233.hsd1.wa.comcast.net) (*.net *.split) |
| 05:26:29 | × | res0nat0r8 quits (~Fletch@dia.whatbox.ca) (*.net *.split) |
| 05:26:29 | × | gdd quits (~gdd@129.199.146.230) (*.net *.split) |
| 05:26:29 | × | EvanR quits (~evan@user/evanr) (*.net *.split) |
| 05:26:29 | × | mud quits (~mud@user/kadoban) (*.net *.split) |
| 05:26:29 | × | acowley quits (~acowley@c-68-83-22-43.hsd1.nj.comcast.net) (*.net *.split) |
| 05:26:29 | × | MasseR quits (~MasseR@51.15.143.128) (*.net *.split) |
| 05:26:29 | × | m5zs7k quits (aquares@web10.mydevil.net) (*.net *.split) |
| 05:26:29 | × | arahael quits (~arahael@27-32-144-20.tpgi.com.au) (*.net *.split) |
| 05:26:29 | × | ozzymcduff quits (~mathieu@81-234-151-21-no94.tbcn.telia.com) (*.net *.split) |
| 05:26:29 | × | samhh quits (7569f027cf@2604:bf00:561:2000::e4) (*.net *.split) |
| 05:26:29 | × | dibblego quits (~dibblego@haskell/developer/dibblego) (*.net *.split) |
| 05:26:29 | × | jakzale quits (6291399afa@user/jakzale) (*.net *.split) |
| 05:26:29 | × | Typedfern quits (~Typedfern@75.red-88-22-25.staticip.rima-tde.net) (*.net *.split) |
| 05:26:29 | × | Flonk quits (~Flonk@vps-zap441517-1.zap-srv.com) (*.net *.split) |
| 05:26:29 | × | stefan-_ quits (~cri@42dots.de) (*.net *.split) |
| 05:26:30 | × | srk quits (~sorki@user/srk) (*.net *.split) |
| 05:26:30 | × | theproffesor quits (~theproffe@user/theproffesor) (*.net *.split) |
| 05:26:30 | × | obfusk quits (~quassel@a82-161-150-56.adsl.xs4all.nl) (*.net *.split) |
| 05:26:30 | × | haasn quits (~nand@haasn.dev) (*.net *.split) |
| 05:26:30 | × | bsima1 quits (9d7e39c8ad@2604:bf00:561:2000::dd) (*.net *.split) |
| 05:26:30 | × | sus quits (zero@user/zeromomentum) (*.net *.split) |
| 05:26:30 | × | Boarders_ quits (sid425905@id-425905.lymington.irccloud.com) (*.net *.split) |
| 05:26:30 | × | JSharp quits (sid4580@id-4580.lymington.irccloud.com) (*.net *.split) |
| 05:26:30 | × | ysh quits (sid6017@id-6017.ilkley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | whatif quits (~user@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split) |
| 05:26:30 | × | saolsen quits (sid26430@id-26430.lymington.irccloud.com) (*.net *.split) |
| 05:26:30 | × | tapas quits (sid467876@id-467876.ilkley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | cbarrett quits (sid192934@id-192934.helmsley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | enemeth79 quits (sid309041@id-309041.lymington.irccloud.com) (*.net *.split) |
| 05:26:30 | × | bjs quits (sid190364@user/bjs) (*.net *.split) |
| 05:26:30 | × | sclv quits (sid39734@haskell/developer/sclv) (*.net *.split) |
| 05:26:30 | × | mrianbloom quits (sid350277@id-350277.ilkley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | dmj` quits (sid72307@id-72307.hampstead.irccloud.com) (*.net *.split) |
| 05:26:30 | × | acertain quits (sid470584@id-470584.hampstead.irccloud.com) (*.net *.split) |
| 05:26:30 | × | Pent quits (sid313808@id-313808.lymington.irccloud.com) (*.net *.split) |
| 05:26:30 | × | gaze___ quits (sid387101@id-387101.helmsley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | V quits (~v@anomalous.eu) (*.net *.split) |
| 05:26:30 | × | SethTisue__ quits (sid14912@id-14912.ilkley.irccloud.com) (*.net *.split) |
| 05:26:30 | × | hongminhee quits (sid295@id-295.tinside.irccloud.com) (*.net *.split) |
| 05:26:30 | × | famubu quits (~famubu@user/famubu) (*.net *.split) |
| 05:26:30 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (*.net *.split) |
| 05:26:30 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (*.net *.split) |
| 05:26:30 | × | Techcable quits (~Techcable@168.235.93.147) (*.net *.split) |
| 05:26:30 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (*.net *.split) |
| 05:26:30 | × | aweinstock quits (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (*.net *.split) |
| 05:26:30 | × | Sgeo quits (~Sgeo@user/sgeo) (*.net *.split) |
| 05:26:30 | × | juhp quits (~juhp@128.106.188.82) (*.net *.split) |
| 05:26:30 | × | jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (*.net *.split) |
| 05:26:30 | × | dhruvasagar quits (~dhruvasag@49.207.222.205) (*.net *.split) |
| 05:26:30 | × | mikoto-chan quits (~mikoto-ch@esm-84-240-99-143.netplaza.fi) (*.net *.split) |
| 05:26:30 | × | nfd quits (~nfd@user/nfd) (*.net *.split) |
| 05:26:30 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (*.net *.split) |
| 05:26:30 | × | tv quits (~tv@user/tv) (*.net *.split) |
| 05:26:30 | × | kritzefitz quits (~kritzefit@debian/kritzefitz) (*.net *.split) |
| 05:26:30 | × | hrdl quits (~hrdl@mail.hrdl.eu) (*.net *.split) |
| 05:26:30 | × | jlamothe quits (~jlamothe@198.251.61.229) (*.net *.split) |
| 05:26:30 | × | lambdabot quits (~lambdabot@haskell/bot/lambdabot) (*.net *.split) |
| 05:26:30 | × | gentauro quits (~gentauro@user/gentauro) (*.net *.split) |
| 05:26:30 | × | noctux quits (~noctux@user/noctux) (*.net *.split) |
| 05:26:30 | × | sweater quits (~sweater@206.81.18.26) (*.net *.split) |
| 05:26:30 | × | dolio quits (~dolio@130.44.130.54) (*.net *.split) |
| 05:26:30 | × | Logio quits (em@kapsi.fi) (*.net *.split) |
| 05:26:31 | × | niko quits (~niko@libera/staff/niko) (*.net *.split) |
| 05:26:31 | × | nisstyre quits (~wes@user/nisstyre) (*.net *.split) |
| 05:26:31 | × | pragma- quits (~chaos@user/pragmatic-chaos) (*.net *.split) |
| 05:26:31 | × | dka quits (~code-is-a@ns3059207.ip-193-70-33.eu) (*.net *.split) |
| 05:26:31 | × | phma quits (~phma@host-67-44-208-5.hnremote.net) (*.net *.split) |
| 05:26:31 | × | pie__ quits (~pie_bnc@user/pie/x-2818909) (*.net *.split) |
| 05:26:31 | × | m1dnight_ quits (~christoph@christophe.dev) (*.net *.split) |
| 05:26:31 | × | [exa] quits (~exa@user/exa/x-3587197) (*.net *.split) |
| 05:26:31 | × | Hecate quits (~mariposa@user/hecate) (*.net *.split) |
| 05:26:31 | × | dfordivam1 quits (~dfordivam@tk2-219-19469.vs.sakura.ne.jp) (*.net *.split) |
| 05:26:31 | × | greyrat_ quits (~greyrat@ip202.ip-51-178-215.eu) (*.net *.split) |
| 05:26:31 | × | eL_Bart0- quits (eL_Bart0@dietunichtguten.org) (*.net *.split) |
| 05:26:31 | × | davl_ quits (~davl@207.154.228.18) (*.net *.split) |
| 05:26:31 | × | MidAutumnMoon6 quits (~MidAutumn@user/midautumnmoon) (*.net *.split) |
| 05:26:31 | × | jzsinatra quits (~jzsinatra@88-114-238-31.elisa-laajakaista.fi) (*.net *.split) |
| 05:26:31 | × | statusbot quits (~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (*.net *.split) |
| 05:26:31 | × | peutri quits (~peutri@ns317027.ip-94-23-46.eu) (*.net *.split) |
| 05:26:31 | × | lyxia quits (~lyxia@poisson.chat) (*.net *.split) |
| 05:26:31 | × | incertia quits (~incertia@d4-50-26-103.nap.wideopenwest.com) (*.net *.split) |
| 05:26:31 | × | ikke quits (~kevin@alpine/developer/ikke) (*.net *.split) |
| 05:26:31 | × | Athas quits (athas@sigkill.dk) (*.net *.split) |
| 05:26:31 | × | haveo quits (~haveo@sl35.iuwt.fr) (*.net *.split) |
| 05:26:31 | × | bens quits (~bens@www.typius.com) (*.net *.split) |
| 05:26:31 | × | jjhoo quits (~jahakala@user/jjhoo) (*.net *.split) |
| 05:26:31 | × | finsternis quits (~X@23.226.237.192) (*.net *.split) |
| 05:26:31 | × | Benzi-Junior quits (~BenziJuni@88-149-66-61.du.xdsl.is) (*.net *.split) |
| 05:26:31 | × | yahb quits (xsbot@user/mniip/bot/yahb) (*.net *.split) |
| 05:26:31 | × | turlando quits (~turlando@user/turlando) (*.net *.split) |
| 05:26:31 | × | Unode quits (~Unode@194.94.44.220) (*.net *.split) |
| 05:26:31 | × | derelict quits (~derelict@user/derelict) (*.net *.split) |
| 05:26:31 | × | asm quits (~alexander@user/asm) (*.net *.split) |
| 05:26:31 | × | WhateverRabbit quits (~rabbit@206.81.18.26) (*.net *.split) |
| 05:26:31 | × | adamCS quits (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (*.net *.split) |
| 05:26:31 | × | terrorjack quits (~terrorjac@2a01:4f8:1c1e:509a::1) (*.net *.split) |
| 05:26:31 | × | sagax quits (~sagax_nb@user/sagax) (*.net *.split) |
| 05:26:31 | × | wei2912 quits (~wei2912@116.88.103.128) (*.net *.split) |
| 05:26:31 | × | johnw quits (~johnw@2607:f6f0:3004:1:c8b4:50ff:fef8:6bf0) (*.net *.split) |
| 05:26:31 | × | tito quits (tito@tilde.team) (*.net *.split) |
| 05:26:31 | × | hook54321 quits (sid149355@user/hook54321) (*.net *.split) |
| 05:26:31 | × | unyu quits (~pyon@user/pyon) (*.net *.split) |
| 05:26:31 | × | img quits (~img@user/img) (*.net *.split) |
| 05:26:31 | × | retroid_ quits (~retro@97e2ba2e.skybroadband.com) (*.net *.split) |
| 05:26:31 | × | cyphase quits (~cyphase@user/cyphase) (*.net *.split) |
| 05:26:31 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (*.net *.split) |
| 05:26:31 | × | dispater quits (~dispater@user/brprice) (*.net *.split) |
| 05:26:31 | × | jamestmartin quits (~james@jtmar.me) (*.net *.split) |
| 05:26:31 | × | vjoki quits (~vjoki@2a00:d880:3:1::fea1:9ae) (*.net *.split) |
| 05:26:31 | × | filwisher quits (2e6936c793@2604:bf00:561:2000::170) (*.net *.split) |
| 05:26:31 | × | yaroot quits (~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) (*.net *.split) |
| 05:26:31 | × | rembo10 quits (~rembo10@remulis.com) (*.net *.split) |
| 05:26:31 | × | ehamberg quits (sid18208@id-18208.hampstead.irccloud.com) (*.net *.split) |
| 05:26:31 | × | sm2n quits (ae95cb1267@user/sm2n) (*.net *.split) |
| 05:26:31 | × | jkoshy quits (99b9359beb@2604:bf00:561:2000::10f) (*.net *.split) |
| 05:26:31 | × | TimWolla quits (~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split) |
| 05:26:31 | × | lukec quits (9dfd4d094e@2604:bf00:561:2000::10e) (*.net *.split) |
| 05:26:31 | × | dagit quits (~dagit@2001:558:6025:38:6476:a063:d05a:44da) (*.net *.split) |
| 05:26:32 | × | joeyh quits (joeyh@kitenet.net) (*.net *.split) |
| 05:26:32 | × | ralu quits (~ralu@static.211.245.203.116.clients.your-server.de) (*.net *.split) |
| 05:26:32 | × | infinity0 quits (~infinity0@occupy.ecodis.net) (*.net *.split) |
| 05:26:32 | × | hays quits (rootvegeta@fsf/member/hays) (*.net *.split) |
| 05:26:32 | × | TMA quits (tma@twin.jikos.cz) (*.net *.split) |
| 05:26:32 | × | iphy quits (sid67735@id-67735.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | whez quits (sid470288@id-470288.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | _0x47_ quits (sid508683@id-508683.tinside.irccloud.com) (*.net *.split) |
| 05:26:32 | × | awpr quits (uid446117@id-446117.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | teehemkay_ quits (sid14792@id-14792.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | angerman quits (sid209936@id-209936.ilkley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | ephemient quits (uid407513@id-407513.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | gregberns__ quits (sid315709@id-315709.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | kaizen quits (sid501599@id-501599.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | MironZ quits (~MironZ@nat-infra.ehlab.uk) (*.net *.split) |
| 05:26:32 | × | Kaiepi quits (~Kaiepi@156.34.44.192) (*.net *.split) |
| 05:26:32 | × | micro quits (~micro@user/micro) (*.net *.split) |
| 05:26:32 | × | russruss quits (~russruss@my.russellmcc.com) (*.net *.split) |
| 05:26:32 | × | S11001001 quits (sid42510@id-42510.ilkley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | NiKaN quits (sid385034@id-385034.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | Cale quits (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (*.net *.split) |
| 05:26:32 | × | thaumavorio quits (~thaumavor@thaumavor.io) (*.net *.split) |
| 05:26:32 | × | tnks quits (sid412124@id-412124.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | duckonomy quits (~duckonomy@177.ip-144-217-84.net) (*.net *.split) |
| 05:26:32 | × | marienz quits (~marienz@libera/staff/marienz) (*.net *.split) |
| 05:26:32 | × | davetapley quits (sid666@id-666.uxbridge.irccloud.com) (*.net *.split) |
| 05:26:32 | × | rtpg quits (sid443069@id-443069.ilkley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | b20n quits (sid115913@id-115913.uxbridge.irccloud.com) (*.net *.split) |
| 05:26:32 | × | lightandlight quits (sid135476@id-135476.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | caasih quits (sid13241@id-13241.ilkley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | edmundnoble quits (sid229620@id-229620.helmsley.irccloud.com) (*.net *.split) |
| 05:26:32 | × | PotatoGim quits (sid99505@id-99505.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | philpax_ quits (sid516926@id-516926.lymington.irccloud.com) (*.net *.split) |
| 05:26:32 | × | jakesyl_ quits (sid56879@id-56879.hampstead.irccloud.com) (*.net *.split) |
| 05:26:32 | × | Ekho quits (~Ekho@user/ekho) (*.net *.split) |
| 05:26:32 | × | yushyin quits (3RNeQpThcJ@karif.server-speed.net) (*.net *.split) |
| 05:26:32 | × | m4lvin quits (~m4lvin@w4eg.de) (*.net *.split) |
| 05:26:32 | × | fryguybob quits (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (*.net *.split) |
| 05:26:32 | × | myme quits (~myme@40.51-175-185.customer.lyse.net) (*.net *.split) |
| 05:26:32 | × | amk quits (~amk@109.255.169.126) (*.net *.split) |
| 05:26:32 | × | averell quits (~averell@user/averell) (*.net *.split) |
| 05:26:32 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (*.net *.split) |
| 05:26:32 | × | bbear quits (~znc@21212.s.t4vps.eu) (*.net *.split) |
| 05:26:32 | × | darkstardevx quits (~darkstard@50.39.115.145) (*.net *.split) |
| 05:26:32 | × | erisco quits (~erisco@d24-57-249-233.home.cgocable.net) (*.net *.split) |
| 05:26:32 | × | dragestil quits (~znc@user/dragestil) (*.net *.split) |
| 05:26:32 | × | welterde quits (welterde@thinkbase.srv.welterde.de) (*.net *.split) |
| 05:26:32 | × | earthy quits (~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) (*.net *.split) |
| 05:26:32 | × | cawfee quits (~root@2406:3003:2077:2758::babe) (*.net *.split) |
| 05:26:32 | × | liskin quits (~liskin@xmonad/liskin) (*.net *.split) |
| 05:26:32 | × | emergence quits (~emergence@vm0.max-p.me) (*.net *.split) |
| 05:26:32 | × | leah2 quits (~leah@vuxu.org) (*.net *.split) |
| 05:26:32 | × | defanor quits (~defanor@tart.uberspace.net) (*.net *.split) |
| 05:26:32 | × | codedmart quits (codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split) |
| 05:26:32 | × | nshepperd quits (nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (*.net *.split) |
| 05:26:32 | × | Putonlalla quits (~sapekiis@it-cyan.it.jyu.fi) (*.net *.split) |
| 05:26:32 | × | koolazer quits (~koo@user/koolazer) (*.net *.split) |
| 05:26:32 | × | mikko quits (~mikko@2a02:7b40:d418:6a61::1) (*.net *.split) |
| 05:26:32 | × | Taneb quits (~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split) |
| 05:26:32 | × | bjobjo quits (~bjobjo@user/bjobjo) (*.net *.split) |
| 05:26:32 | × | xnbya quits (~xnbya@2a01:4f8:c17:cbdd::1) (*.net *.split) |
| 05:26:32 | × | bastelfreak quits (~bastelfre@basteles-bastelknecht.bastelfreak.org) (*.net *.split) |
| 05:26:32 | × | Adran quits (~adran@botters/adran) (*.net *.split) |
| 05:26:32 | × | energizer quits (~energizer@user/energizer) (*.net *.split) |
| 05:26:32 | × | tomjaguarpaw quits (~tom@li367-225.members.linode.com) (*.net *.split) |
| 05:26:32 | × | Arsen quits (arsen@managarm/dev/Arsen) (*.net *.split) |
| 05:26:32 | × | immae quits (~immae@2a01:4f8:141:53e7::) (*.net *.split) |
| 05:26:32 | × | cross quits (~cross@spitfire.i.gajendra.net) (*.net *.split) |
| 05:26:32 | × | janus quits (janus@anubis.0x90.dk) (*.net *.split) |
| 05:26:32 | × | phaazon quits (~phaazon@2001:41d0:a:fe76::1) (*.net *.split) |
| 05:26:32 | × | sphynx quits (~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288) (*.net *.split) |
| 05:26:32 | × | dixie quits (~dixie@real.wilbury.sk) (*.net *.split) |
| 05:26:32 | × | dunj3 quits (~dunj3@kingdread.de) (*.net *.split) |
| 05:26:32 | × | cpape quits (~user@2a01:4f9:c010:632d::1) (*.net *.split) |
| 05:26:32 | × | sm[i] quits (~user@plaintextaccounting/sm) (*.net *.split) |
| 05:26:32 | × | xsarnik quits (xsarnik@lounge.fi.muni.cz) (*.net *.split) |
| 05:26:32 | × | tubogram quits (~tubogram@user/tubogram) (*.net *.split) |
| 05:26:32 | × | Axman6 quits (~Axman6@user/axman6) (*.net *.split) |
| 05:26:39 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 05:27:14 | → | geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com) |
| 05:27:14 | → | famubu joins (~famubu@user/famubu) |
| 05:27:14 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:27:14 | → | on^ joins (~on@68.101.58.90) |
| 05:27:14 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 05:27:14 | → | Techcable joins (~Techcable@168.235.93.147) |
| 05:27:14 | → | sprout_ joins (~quassel@2a02:a467:ccd6:1:39f3:76e9:9ca1:32bd) |
| 05:27:14 | → | terrorjack joins (~terrorjac@2a01:4f8:1c1e:509a::1) |
| 05:27:14 | → | sagax joins (~sagax_nb@user/sagax) |
| 05:27:14 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 05:27:14 | → | zincy joins (~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) |
| 05:27:14 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:e5f5:ee22:f6bb:9023) |
| 05:27:14 | → | stevenxl joins (~stevenlei@174.128.182.152) |
| 05:27:14 | → | wei2912 joins (~wei2912@116.88.103.128) |
| 05:27:14 | → | nfd joins (~nfd@user/nfd) |
| 05:27:14 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 05:27:14 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 05:27:14 | → | Codaraxis joins (~Codaraxis@user/codaraxis) |
| 05:27:14 | → | curiousgay joins (~curiousga@77-120-141-90.kha.volia.net) |
| 05:27:14 | → | Alex_test joins (~al_test@178.34.163.11) |
| 05:27:14 | → | AlexZenon joins (~alzenon@178.34.163.11) |
| 05:27:14 | → | aweinstock joins (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) |
| 05:27:14 | → | vgtw_ joins (~vgtw@c-2359205c.07-348-756d651.bbcust.telenor.se) |
| 05:27:14 | → | pavonia joins (~user@user/siracusa) |
| 05:27:14 | → | justSleigh joins (~justache@user/justache) |
| 05:27:14 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 05:27:14 | → | juhp joins (~juhp@128.106.188.82) |
| 05:27:14 | → | jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 05:27:14 | → | bradparker joins (sid262931@id-262931.uxbridge.irccloud.com) |
| 05:27:14 | → | johnw joins (~johnw@2607:f6f0:3004:1:c8b4:50ff:fef8:6bf0) |
| 05:27:14 | → | dhruvasagar joins (~dhruvasag@49.207.222.205) |
| 05:27:14 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 05:27:14 | → | tito joins (tito@tilde.team) |
| 05:27:14 | → | mikoto-chan joins (~mikoto-ch@esm-84-240-99-143.netplaza.fi) |
| 05:27:14 | → | connrs joins (~connrs@user/connrs) |
| 05:27:14 | → | taktoa[c] joins (sid282096@id-282096.tinside.irccloud.com) |
| 05:27:14 | → | hook54321 joins (sid149355@user/hook54321) |
| 05:27:14 | → | unyu joins (~pyon@user/pyon) |
| 05:27:14 | → | alx741 joins (~alx741@186.178.109.217) |
| 05:27:14 | → | shriekingnoise joins (~shrieking@186.137.144.80) |
| 05:27:14 | → | flukiluke joins (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) |
| 05:27:14 | → | Jonno_FTW joins (~come@api.carswap.me) |
| 05:27:14 | → | gabiruh joins (~gabiruh@vps19177.publiccloud.com.br) |
| 05:27:14 | → | shailangsa joins (~shailangs@host86-186-142-82.range86-186.btcentralplus.com) |
| 05:27:14 | → | zaquest joins (~notzaques@5.130.79.72) |
| 05:27:14 | → | int-e joins (~noone@int-e.eu) |
| 05:27:14 | → | img joins (~img@user/img) |
| 05:27:14 | → | retroid_ joins (~retro@97e2ba2e.skybroadband.com) |
| 05:27:14 | → | trillp joins (~user@69.233.98.238) |
| 05:27:14 | → | JimL joins (~quassel@89-162-2-132.fiber.signal.no) |
| 05:27:14 | → | wz1000 joins (~zubin@static.11.113.47.78.clients.your-server.de) |
| 05:27:14 | → | jinsun joins (~quassel@user/jinsun) |
| 05:27:14 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 05:27:14 | → | tv joins (~tv@user/tv) |
| 05:27:14 | → | nickdaly joins (45ce440a48@2604:bf00:561:2000::e2) |
| 05:27:14 | → | elvishjerricco joins (sid237756@id-237756.helmsley.irccloud.com) |
| 05:27:14 | → | FragByte joins (~christian@user/fragbyte) |
| 05:27:14 | → | halides joins (halides@imases.biss.ee) |
| 05:27:14 | → | iqubic joins (~user@c-67-171-37-233.hsd1.wa.comcast.net) |
| 05:27:14 | → | cyphase joins (~cyphase@user/cyphase) |
| 05:27:14 | → | res0nat0r8 joins (~Fletch@dia.whatbox.ca) |
| 05:27:14 | → | gdd joins (~gdd@129.199.146.230) |
| 05:27:14 | → | samhh joins (7569f027cf@2604:bf00:561:2000::e4) |
| 05:27:14 | → | EvanR joins (~evan@user/evanr) |
| 05:27:14 | → | mud joins (~mud@user/kadoban) |
| 05:27:14 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 05:27:14 | → | kritzefitz joins (~kritzefit@debian/kritzefitz) |
| 05:27:14 | → | Benzi-Junior joins (~BenziJuni@88-149-66-61.du.xdsl.is) |
| 05:27:14 | → | hrdl joins (~hrdl@mail.hrdl.eu) |
| 05:27:14 | → | acowley joins (~acowley@c-68-83-22-43.hsd1.nj.comcast.net) |
| 05:27:14 | → | MasseR joins (~MasseR@51.15.143.128) |
| 05:27:14 | → | m5zs7k joins (aquares@web10.mydevil.net) |
| 05:27:14 | → | arahael joins (~arahael@27-32-144-20.tpgi.com.au) |
| 05:27:14 | → | ozzymcduff joins (~mathieu@81-234-151-21-no94.tbcn.telia.com) |
| 05:27:14 | → | jlamothe joins (~jlamothe@198.251.61.229) |
| 05:27:14 | → | dibblego joins (~dibblego@haskell/developer/dibblego) |
| 05:27:14 | → | jakzale joins (6291399afa@user/jakzale) |
| 05:27:14 | → | dispater joins (~dispater@user/brprice) |
| 05:27:14 | → | jamestmartin joins (~james@jtmar.me) |
| 05:27:14 | → | lambdabot joins (~lambdabot@haskell/bot/lambdabot) |
| 05:27:14 | → | vjoki joins (~vjoki@2a00:d880:3:1::fea1:9ae) |
| 05:27:14 | → | Typedfern joins (~Typedfern@75.red-88-22-25.staticip.rima-tde.net) |
| 05:27:14 | → | Flonk joins (~Flonk@vps-zap441517-1.zap-srv.com) |
| 05:27:14 | → | stefan-_ joins (~cri@42dots.de) |
| 05:27:14 | → | srk joins (~sorki@user/srk) |
| 05:27:14 | → | theproffesor joins (~theproffe@user/theproffesor) |
| 05:27:14 | → | obfusk joins (~quassel@a82-161-150-56.adsl.xs4all.nl) |
| 05:27:14 | → | haasn joins (~nand@haasn.dev) |
| 05:27:14 | → | bsima1 joins (9d7e39c8ad@2604:bf00:561:2000::dd) |
| 05:27:14 | → | sus joins (zero@user/zeromomentum) |
| 05:27:14 | → | gentauro joins (~gentauro@user/gentauro) |
| 05:27:14 | → | noctux joins (~noctux@user/noctux) |
| 05:27:14 | → | sweater joins (~sweater@206.81.18.26) |
| 05:27:14 | → | dolio joins (~dolio@130.44.130.54) |
| 05:27:14 | → | filwisher joins (2e6936c793@2604:bf00:561:2000::170) |
| 05:27:14 | → | yaroot joins (~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) |
| 05:27:14 | → | rembo10 joins (~rembo10@remulis.com) |
| 05:27:14 | → | ehamberg joins (sid18208@id-18208.hampstead.irccloud.com) |
| 05:27:14 | → | Logio joins (em@kapsi.fi) |
| 05:27:14 | → | jkoshy joins (99b9359beb@2604:bf00:561:2000::10f) |
| 05:27:14 | → | sm2n joins (ae95cb1267@user/sm2n) |
| 05:27:14 | → | TimWolla joins (~timwolla@2a01:4f8:150:6153:beef::6667) |
| 05:27:14 | → | lukec joins (9dfd4d094e@2604:bf00:561:2000::10e) |
| 05:27:14 | → | dagit joins (~dagit@2001:558:6025:38:6476:a063:d05a:44da) |
| 05:27:14 | → | niko joins (~niko@libera/staff/niko) |
| 05:27:14 | → | nisstyre joins (~wes@user/nisstyre) |
| 05:27:14 | → | joeyh joins (joeyh@kitenet.net) |
| 05:27:14 | → | pragma- joins (~chaos@user/pragmatic-chaos) |
| 05:27:14 | → | dka joins (~code-is-a@ns3059207.ip-193-70-33.eu) |
| 05:27:14 | → | ralu joins (~ralu@static.211.245.203.116.clients.your-server.de) |
| 05:27:14 | → | infinity0 joins (~infinity0@occupy.ecodis.net) |
| 05:27:14 | → | hays joins (rootvegeta@fsf/member/hays) |
| 05:27:14 | → | phma joins (~phma@host-67-44-208-5.hnremote.net) |
| 05:27:14 | → | Axman6 joins (~Axman6@user/axman6) |
| 05:27:14 | → | TMA joins (tma@twin.jikos.cz) |
| 05:27:14 | → | iphy joins (sid67735@id-67735.lymington.irccloud.com) |
| 05:27:14 | → | _0x47_ joins (sid508683@id-508683.tinside.irccloud.com) |
| 05:27:14 | → | whez joins (sid470288@id-470288.lymington.irccloud.com) |
| 05:27:14 | → | awpr joins (uid446117@id-446117.lymington.irccloud.com) |
| 05:27:14 | → | teehemkay_ joins (sid14792@id-14792.lymington.irccloud.com) |
| 05:27:14 | → | angerman joins (sid209936@id-209936.ilkley.irccloud.com) |
| 05:27:14 | → | ephemient joins (uid407513@id-407513.lymington.irccloud.com) |
| 05:27:14 | → | gregberns__ joins (sid315709@id-315709.helmsley.irccloud.com) |
| 05:27:14 | → | kaizen joins (sid501599@id-501599.helmsley.irccloud.com) |
| 05:27:14 | → | MironZ joins (~MironZ@nat-infra.ehlab.uk) |
| 05:27:14 | → | Kaiepi joins (~Kaiepi@156.34.44.192) |
| 05:27:14 | → | micro joins (~micro@user/micro) |
| 05:27:14 | → | sm[i] joins (~user@plaintextaccounting/sm) |
| 05:27:14 | → | xsarnik joins (xsarnik@lounge.fi.muni.cz) |
| 05:27:14 | → | pie__ joins (~pie_bnc@user/pie/x-2818909) |
| 05:27:14 | → | m1dnight_ joins (~christoph@christophe.dev) |
| 05:27:14 | → | dfordivam1 joins (~dfordivam@tk2-219-19469.vs.sakura.ne.jp) |
| 05:27:14 | → | [exa] joins (~exa@user/exa/x-3587197) |
| 05:27:14 | → | Hecate joins (~mariposa@user/hecate) |
| 05:27:14 | → | greyrat_ joins (~greyrat@ip202.ip-51-178-215.eu) |
| 05:27:14 | → | eL_Bart0- joins (eL_Bart0@dietunichtguten.org) |
| 05:27:14 | → | davl_ joins (~davl@207.154.228.18) |
| 05:27:14 | → | russruss joins (~russruss@my.russellmcc.com) |
| 05:27:14 | → | MidAutumnMoon6 joins (~MidAutumn@user/midautumnmoon) |
| 05:27:14 | → | jzsinatra joins (~jzsinatra@88-114-238-31.elisa-laajakaista.fi) |
| 05:27:14 | → | statusbot joins (~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) |
| 05:27:14 | → | hongminhee joins (sid295@id-295.tinside.irccloud.com) |
| 05:27:14 | → | SethTisue__ joins (sid14912@id-14912.ilkley.irccloud.com) |
| 05:27:14 | → | V joins (~v@anomalous.eu) |
| 05:27:14 | → | gaze___ joins (sid387101@id-387101.helmsley.irccloud.com) |
| 05:27:14 | → | Pent joins (sid313808@id-313808.lymington.irccloud.com) |
| 05:27:14 | → | acertain joins (sid470584@id-470584.hampstead.irccloud.com) |
| 05:27:14 | → | dmj` joins (sid72307@id-72307.hampstead.irccloud.com) |
| 05:27:14 | → | mrianbloom joins (sid350277@id-350277.ilkley.irccloud.com) |
| 05:27:14 | → | sclv joins (sid39734@haskell/developer/sclv) |
| 05:27:14 | → | bjs joins (sid190364@user/bjs) |
| 05:27:14 | → | enemeth79 joins (sid309041@id-309041.lymington.irccloud.com) |
| 05:27:14 | → | cbarrett joins (sid192934@id-192934.helmsley.irccloud.com) |
| 05:27:14 | → | tapas joins (sid467876@id-467876.ilkley.irccloud.com) |
| 05:27:14 | → | saolsen joins (sid26430@id-26430.lymington.irccloud.com) |
| 05:27:14 | → | whatif joins (~user@2400:8902::f03c:92ff:fe60:98d8) |
| 05:27:14 | → | ysh joins (sid6017@id-6017.ilkley.irccloud.com) |
| 05:27:14 | → | JSharp joins (sid4580@id-4580.lymington.irccloud.com) |
| 05:27:14 | → | Boarders_ joins (sid425905@id-425905.lymington.irccloud.com) |
| 05:27:14 | → | S11001001 joins (sid42510@id-42510.ilkley.irccloud.com) |
| 05:27:14 | → | NiKaN joins (sid385034@id-385034.helmsley.irccloud.com) |
| 05:27:14 | → | Cale joins (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) |
| 05:27:14 | → | thaumavorio joins (~thaumavor@thaumavor.io) |
| 05:27:14 | → | peutri joins (~peutri@ns317027.ip-94-23-46.eu) |
| 05:27:14 | → | lyxia joins (~lyxia@poisson.chat) |
| 05:27:14 | → | tnks joins (sid412124@id-412124.helmsley.irccloud.com) |
| 05:27:14 | → | glguy joins (x@libera/staff/glguy) |
| 05:27:14 | → | duckonomy joins (~duckonomy@177.ip-144-217-84.net) |
| 05:27:14 | → | marienz joins (~marienz@libera/staff/marienz) |
| 05:27:14 | → | davetapley joins (sid666@id-666.uxbridge.irccloud.com) |
| 05:27:14 | → | rtpg joins (sid443069@id-443069.ilkley.irccloud.com) |
| 05:27:14 | → | b20n joins (sid115913@id-115913.uxbridge.irccloud.com) |
| 05:27:14 | → | lightandlight joins (sid135476@id-135476.helmsley.irccloud.com) |
| 05:27:14 | → | caasih joins (sid13241@id-13241.ilkley.irccloud.com) |
| 05:27:14 | → | edmundnoble joins (sid229620@id-229620.helmsley.irccloud.com) |
| 05:27:14 | → | PotatoGim joins (sid99505@id-99505.lymington.irccloud.com) |
| 05:27:14 | → | philpax_ joins (sid516926@id-516926.lymington.irccloud.com) |
| 05:27:14 | → | jakesyl_ joins (sid56879@id-56879.hampstead.irccloud.com) |
| 05:27:14 | → | Ekho joins (~Ekho@user/ekho) |
| 05:27:14 | → | incertia joins (~incertia@d4-50-26-103.nap.wideopenwest.com) |
| 05:27:14 | → | ikke joins (~kevin@alpine/developer/ikke) |
| 05:27:14 | → | Athas joins (athas@sigkill.dk) |
| 05:27:14 | → | haveo joins (~haveo@sl35.iuwt.fr) |
| 05:27:14 | → | bens joins (~bens@www.typius.com) |
| 05:27:14 | → | jjhoo joins (~jahakala@user/jjhoo) |
| 05:27:14 | → | yushyin joins (3RNeQpThcJ@karif.server-speed.net) |
| 05:27:14 | → | m4lvin joins (~m4lvin@w4eg.de) |
| 05:27:14 | → | fryguybob joins (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) |
| 05:27:14 | → | finsternis joins (~X@23.226.237.192) |
| 05:27:14 | → | myme joins (~myme@40.51-175-185.customer.lyse.net) |
| 05:27:14 | → | amk joins (~amk@109.255.169.126) |
| 05:27:14 | → | averell joins (~averell@user/averell) |
| 05:27:14 | → | yahb joins (xsbot@user/mniip/bot/yahb) |
| 05:27:14 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 05:27:14 | → | turlando joins (~turlando@user/turlando) |
| 05:27:14 | → | bbear joins (~znc@21212.s.t4vps.eu) |
| 05:27:14 | → | darkstardevx joins (~darkstard@50.39.115.145) |
| 05:27:14 | → | erisco joins (~erisco@d24-57-249-233.home.cgocable.net) |
| 05:27:14 | → | dragestil joins (~znc@user/dragestil) |
| 05:27:14 | → | Unode joins (~Unode@194.94.44.220) |
| 05:27:14 | → | welterde joins (welterde@thinkbase.srv.welterde.de) |
| 05:27:14 | → | derelict joins (~derelict@user/derelict) |
| 05:27:14 | → | earthy joins (~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) |
| 05:27:14 | → | cawfee joins (~root@2406:3003:2077:2758::babe) |
| 05:27:14 | → | liskin joins (~liskin@xmonad/liskin) |
| 05:27:14 | → | asm joins (~alexander@user/asm) |
| 05:27:14 | → | emergence joins (~emergence@vm0.max-p.me) |
| 05:27:14 | → | leah2 joins (~leah@vuxu.org) |
| 05:27:14 | → | WhateverRabbit joins (~rabbit@206.81.18.26) |
| 05:27:14 | → | defanor joins (~defanor@tart.uberspace.net) |
| 05:27:14 | → | codedmart joins (codedmart@2600:3c01::f03c:92ff:fefe:8511) |
| 05:27:14 | → | nshepperd joins (nshepperd@2600:3c03::f03c:92ff:fe28:92c9) |
| 05:27:14 | → | adamCS joins (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) |
| 05:27:14 | → | Putonlalla joins (~sapekiis@it-cyan.it.jyu.fi) |
| 05:27:14 | → | koolazer joins (~koo@user/koolazer) |
| 05:27:14 | → | tubogram joins (~tubogram@user/tubogram) |
| 05:27:14 | → | mikko joins (~mikko@2a02:7b40:d418:6a61::1) |
| 05:27:14 | → | Taneb joins (~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) |
| 05:27:14 | → | bjobjo joins (~bjobjo@user/bjobjo) |
| 05:27:14 | → | xnbya joins (~xnbya@2a01:4f8:c17:cbdd::1) |
| 05:27:14 | → | bastelfreak joins (~bastelfre@basteles-bastelknecht.bastelfreak.org) |
| 05:27:14 | → | Adran joins (~adran@botters/adran) |
| 05:27:14 | → | energizer joins (~energizer@user/energizer) |
| 05:27:14 | → | tomjaguarpaw joins (~tom@li367-225.members.linode.com) |
| 05:27:14 | → | Arsen joins (arsen@managarm/dev/Arsen) |
| 05:27:14 | → | immae joins (~immae@2a01:4f8:141:53e7::) |
| 05:27:14 | → | cross joins (~cross@spitfire.i.gajendra.net) |
| 05:27:14 | → | phaazon joins (~phaazon@2001:41d0:a:fe76::1) |
| 05:27:14 | → | janus joins (janus@anubis.0x90.dk) |
| 05:27:14 | → | sphynx joins (~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288) |
| 05:27:14 | → | dixie joins (~dixie@real.wilbury.sk) |
| 05:27:14 | → | cpape joins (~user@2a01:4f9:c010:632d::1) |
| 05:27:14 | → | dunj3 joins (~dunj3@kingdread.de) |
| 05:27:14 | × | AndrewYu quits (~andrew@user/andrewyu) (Max SendQ exceeded) |
| 05:27:14 | × | d34df00d quits (~d34df00d@2600:1700:8c60:3a10::48) (Excess Flood) |
| 05:27:14 | × | wolfshappen quits (~waff@irc.furworks.de) (Max SendQ exceeded) |
| 05:27:14 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Max SendQ exceeded) |
| 05:27:29 | × | zopsi quits (~zopsi@irc.dir.ac) (Max SendQ exceeded) |
| 05:28:09 | × | koolazer quits (~koo@user/koolazer) (Max SendQ exceeded) |
| 05:28:13 | × | on^ quits (~on@68.101.58.90) (Max SendQ exceeded) |
| 05:28:13 | × | shailangsa quits (~shailangs@host86-186-142-82.range86-186.btcentralplus.com) (Max SendQ exceeded) |
| 05:28:18 | → | AndrewYu joins (~andrew@user/andrewyu) |
| 05:28:19 | → | zopsi joins (zopsi@2600:3c00::f03c:91ff:fe14:551f) |
| 05:28:36 | → | koolazer joins (~koo@user/koolazer) |
| 05:28:52 | geekosaur | is now known as Guest1121 |
| 05:28:57 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds) |
| 05:29:20 | → | on^ joins (~on@68.101.58.90) |
| 05:29:21 | × | litharge quits (litharge@libera/bot/litharge) (Remote host closed the connection) |
| 05:29:24 | → | litharge joins (litharge@libera/bot/litharge) |
| 05:29:28 | → | wolfshappen joins (~waff@irc.furworks.de) |
| 05:29:50 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 05:30:02 | × | kevin[m]1 quits (~pnotequal@2001:470:69fc:105::a54) (Ping timeout: 240 seconds) |
| 05:30:05 | × | fsckskye[m] quits (~kmatrixth@2001:470:69fc:105::1:3b2f) (Ping timeout: 250 seconds) |
| 05:30:05 | × | iammrinal0[m] quits (~iammrinal@2001:470:69fc:105::1:2248) (Ping timeout: 250 seconds) |
| 05:30:05 | × | ppseafield[m] quits (~elementpp@2001:470:69fc:105::1:250a) (Ping timeout: 250 seconds) |
| 05:30:39 | × | glider quits (~glider@user/glider) (Ping timeout: 256 seconds) |
| 05:30:47 | × | hook54321 quits (sid149355@user/hook54321) (Ping timeout: 268 seconds) |
| 05:31:16 | × | carbolymer quits (~carbolyme@dropacid.net) (Remote host closed the connection) |
| 05:31:26 | → | glider joins (~glider@user/glider) |
| 05:31:53 | → | carbolymer joins (~carbolyme@dropacid.net) |
| 05:32:37 | → | hook54321 joins (sid149355@user/hook54321) |
| 05:34:17 | → | iammrinal0[m] joins (~iammrinal@2001:470:69fc:105::1:2248) |
| 05:34:54 | → | kevin[m]1 joins (~pnotequal@2001:470:69fc:105::a54) |
| 05:34:59 | → | ppseafield[m] joins (~elementpp@2001:470:69fc:105::1:250a) |
| 05:35:01 | → | fsckskye[m] joins (~kmatrixth@2001:470:69fc:105::1:3b2f) |
| 05:36:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 05:37:33 | × | Hafydd quits (~Hafydd@user/hafydd) (*.net *.split) |
| 05:37:33 | × | SquidDev quits (~SquidDev@autoclave.squiddev.cc) (*.net *.split) |
| 05:37:33 | × | superbil quits (~superbil@1-34-176-171.hinet-ip.hinet.net) (*.net *.split) |
| 05:37:33 | × | In0perable quits (~PLAYER_1@fancydata.science) (*.net *.split) |
| 05:37:33 | × | Square quits (~a@user/square) (*.net *.split) |
| 05:37:33 | × | mht-wtf quits (~mht@mht.wtf) (*.net *.split) |
| 05:37:33 | × | remedan quits (~remedan@balak.me) (*.net *.split) |
| 05:37:33 | × | drewolson quits (~drewolson@user/drewolson) (*.net *.split) |
| 05:37:33 | × | nf quits (~n@monade.li) (*.net *.split) |
| 05:37:33 | × | vaibhavsagar[m] quits (~vaibhavsa@2001:470:69fc:105::ffe) (*.net *.split) |
| 05:37:33 | × | InternetManaging quits (~imjmatrix@2001:470:69fc:105::1:2ea5) (*.net *.split) |
| 05:37:33 | × | jophish quits (~jophish@2001:470:69fc:105::670) (*.net *.split) |
| 05:37:33 | × | kadoban quits (~kadoban@user/kadoban) (*.net *.split) |
| 05:37:33 | × | soft quits (~soft@2001:470:69fc:105::c75) (*.net *.split) |
| 05:37:33 | × | asdofindia-m quits (~akshaymat@2001:470:69fc:105::831) (*.net *.split) |
| 05:37:33 | × | bb010g quits (~bb010g@2001:470:69fc:105::9a5) (*.net *.split) |
| 05:37:33 | × | thomasjm[m] quits (~thomasjmm@2001:470:69fc:105::c6d9) (*.net *.split) |
| 05:37:33 | × | utk quits (~utk@2001:470:69fc:105::1:2fe0) (*.net *.split) |
| 05:37:33 | × | PigDude quits (~PigDude@159.203.16.199) (*.net *.split) |
| 05:37:33 | × | fcortesi quits (~fcortesi@2001:470:69fc:105::f3a9) (*.net *.split) |
| 05:37:33 | × | schuelermine[m] quits (~schuelerm@user/schuelermine) (*.net *.split) |
| 05:37:33 | × | DemiMarieObenour quits (~alwayscur@2001:470:69fc:105::4886) (*.net *.split) |
| 05:37:33 | × | Christoph[m] quits (~hpotsirhc@2001:470:69fc:105::2ff8) (*.net *.split) |
| 05:37:33 | × | craige[m] quits (~craigemcw@2001:470:69fc:105::35f1) (*.net *.split) |
| 05:37:33 | × | AWizzArd quits (~code@gehrels.uberspace.de) (*.net *.split) |
| 05:37:33 | × | root1 quits (root@2600:3c02::f03c:92ff:fe1a:c779) (*.net *.split) |
| 05:37:33 | × | |beowulf| quits (1000@sourcemage/mage/beowulf) (*.net *.split) |
| 05:37:33 | × | ggVGc quits (~ggVGc@a.lowtech.earth) (*.net *.split) |
| 05:37:33 | × | absence quits (~absence@hildring.pvv.ntnu.no) (*.net *.split) |
| 05:37:33 | × | ft quits (~ft@shell.chaostreff-dortmund.de) (*.net *.split) |
| 05:37:33 | × | kawpuh quits (~kawpuh@66.42.81.80) (*.net *.split) |
| 05:37:33 | × | eco quits (~ubuntu@ec2-54-201-230-197.us-west-2.compute.amazonaws.com) (*.net *.split) |
| 05:37:33 | × | byorgey quits (~byorgey@155.138.238.211) (*.net *.split) |
| 05:37:33 | × | tdammers quits (~tdammers@77.109.72.177.res.static.edpnet.net) (*.net *.split) |
| 05:37:33 | × | SoF quits (~skius@user/skius) (*.net *.split) |
| 05:37:40 | → | AWizzArd joins (~code@gehrels.uberspace.de) |
| 05:37:42 | → | absence joins (torgeihe@hildring.pvv.ntnu.no) |
| 05:37:42 | → | byorgey joins (~byorgey@155.138.238.211) |
| 05:37:44 | → | PigDude joins (~PigDude@159.203.16.199) |
| 05:37:47 | → | eco joins (~ubuntu@ec2-54-201-230-197.us-west-2.compute.amazonaws.com) |
| 05:37:50 | → | tdammers joins (~tdammers@77.109.72.177.res.static.edpnet.net) |
| 05:37:51 | → | drewolson joins (~drewolson@user/drewolson) |
| 05:37:53 | → | kawpuh joins (~kawpuh@66.42.81.80) |
| 05:37:54 | → | root1 joins (root@2600:3c02::f03c:92ff:fe1a:c779) |
| 05:37:55 | → | ggVGc joins (~ggVGc@a.lowtech.earth) |
| 05:38:05 | → | Hafydd joins (~Hafydd@owlchat.newnet.net) |
| 05:38:05 | → | ft joins (~ft@shell.chaostreff-dortmund.de) |
| 05:38:07 | → | mht-wtf joins (~mht@2a03:b0c0:3:e0::1e2:c001) |
| 05:38:09 | → | |beowulf| joins (1000@gabilgathol.bandrate.org) |
| 05:38:11 | × | Hafydd quits (~Hafydd@owlchat.newnet.net) (Signing in (Hafydd)) |
| 05:38:11 | → | Hafydd joins (~Hafydd@user/hafydd) |
| 05:38:17 | → | superbil joins (~superbil@1-34-176-171.hinet-ip.hinet.net) |
| 05:38:19 | → | SquidDev joins (~SquidDev@autoclave.squiddev.cc) |
| 05:38:24 | → | SoF joins (~skius@user/skius) |
| 05:38:26 | → | remedan joins (~remedan@balak.me) |
| 05:38:31 | → | nf joins (~n@monade.li) |
| 05:38:43 | |beowulf| | is now known as Guest2359 |
| 05:39:29 | → | yauhsien_ joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 05:39:34 | → | asdofindia-m joins (~akshaymat@2001:470:69fc:105::831) |
| 05:40:21 | → | Square joins (~a@user/square) |
| 05:40:56 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 05:41:24 | → | genieliu joins (~genieliu@103.37.140.38) |
| 05:41:29 | → | InternetManaging joins (~imjmatrix@2001:470:69fc:105::1:2ea5) |
| 05:42:13 | → | Inoperable joins (~PLAYER_1@fancydata.science) |
| 05:42:14 | → | vaibhavsagar[m] joins (~vaibhavsa@2001:470:69fc:105::ffe) |
| 05:43:16 | → | _xor joins (~xor@dsl-50-5-233-169.fuse.net) |
| 05:44:07 | → | jophish joins (~jophish@2001:470:69fc:105::670) |
| 05:45:15 | → | bb010g joins (~bb010g@2001:470:69fc:105::9a5) |
| 05:45:21 | × | yauhsien_ quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 245 seconds) |
| 05:45:45 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:e5f5:ee22:f6bb:9023) (Ping timeout: 252 seconds) |
| 05:46:14 | → | kadoban joins (~kadoban@user/kadoban) |
| 05:46:28 | → | craige[m] joins (~craigemcw@2001:470:69fc:105::35f1) |
| 05:46:36 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:c51f:ff7b:f3d8:91b6) |
| 05:46:37 | → | Christoph[m] joins (~hpotsirhc@2001:470:69fc:105::2ff8) |
| 05:46:46 | → | DemiMarieObenour joins (~alwayscur@2001:470:69fc:105::4886) |
| 05:46:47 | → | schuelermine[m] joins (~schuelerm@user/schuelermine) |
| 05:46:52 | → | fcortesi joins (~fcortesi@2001:470:69fc:105::f3a9) |
| 05:46:56 | → | utk joins (~utk@2001:470:69fc:105::1:2fe0) |
| 05:47:15 | → | thomasjm[m] joins (~thomasjmm@2001:470:69fc:105::c6d9) |
| 05:48:06 | → | soft joins (~soft@2001:470:69fc:105::c75) |
| 05:49:01 | × | genieliu quits (~genieliu@103.37.140.38) (Ping timeout: 240 seconds) |
| 05:50:28 | × | joel135 quits (sid136450@id-136450.hampstead.irccloud.com) (*.net *.split) |
| 05:50:28 | × | obviyus quits (sid415299@user/obviyus) (*.net *.split) |
| 05:50:28 | × | meinside quits (uid24933@id-24933.helmsley.irccloud.com) (*.net *.split) |
| 05:50:28 | × | mustafa quits (sid502723@rockylinux/releng/mustafa) (*.net *.split) |
| 05:50:28 | × | stilgart_ quits (~Christoph@chezlefab.net) (*.net *.split) |
| 05:50:28 | × | carter quits (sid14827@id-14827.helmsley.irccloud.com) (*.net *.split) |
| 05:50:28 | × | a1paca_ quits (~a1paca@user/a1paca) (*.net *.split) |
| 05:50:28 | × | raoul quits (~raoul@95.179.203.88) (*.net *.split) |
| 05:50:28 | × | Firedancer quits (sid336191@id-336191.hampstead.irccloud.com) (*.net *.split) |
| 05:50:28 | × | scav quits (sid309693@id-309693.helmsley.irccloud.com) (*.net *.split) |
| 05:50:28 | × | SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (*.net *.split) |
| 05:50:28 | × | teehemkay quits (sid14792@id-14792.lymington.irccloud.com) (*.net *.split) |
| 05:50:28 | × | bw quits (sid2730@user/betawaffle) (*.net *.split) |
| 05:50:28 | × | hendi quits (sid489601@id-489601.lymington.irccloud.com) (*.net *.split) |
| 05:50:28 | × | gonz_____ quits (sid304396@id-304396.lymington.irccloud.com) (*.net *.split) |
| 05:50:28 | × | jassob quits (~jassob@h-98-128-166-172.NA.cust.bahnhof.se) (*.net *.split) |
| 05:50:28 | × | carmysilna quits (~brightly-@2001:470:69fc:105::2190) (*.net *.split) |
| 05:50:28 | × | ongy[m] quits (~ongymatri@2001:470:69fc:105::5018) (*.net *.split) |
| 05:50:28 | × | quantum quits (~quantum@user/quantum/x-8556232) (*.net *.split) |
| 05:50:28 | × | siraben quits (~siraben@user/siraben) (*.net *.split) |
| 05:50:28 | × | ServerStatsDisco quits (~serversta@2001:470:69fc:105::1a) (*.net *.split) |
| 05:50:28 | × | acco[m] quits (~accotedom@2001:470:69fc:105::1:3236) (*.net *.split) |
| 05:50:28 | × | RosarioPulella[m quits (~rosariopu@2001:470:69fc:105::a57) (*.net *.split) |
| 05:50:28 | × | jkachmar quits (~jkachmar@2001:470:69fc:105::c72d) (*.net *.split) |
| 05:50:28 | × | kosmikus[m] quits (~andresloe@2001:470:69fc:105::95d) (*.net *.split) |
| 05:50:28 | × | justosophy[m] quits (~justosoph@2001:470:69fc:105::572f) (*.net *.split) |
| 05:50:28 | × | xddq[m] quits (~xddqmatri@2001:470:69fc:105::bfd8) (*.net *.split) |
| 05:50:28 | × | reza[m] quits (~rezaphone@2001:470:69fc:105::3eda) (*.net *.split) |
| 05:50:28 | × | ilkecan[m] quits (~ilkecanma@2001:470:69fc:105::1:79b) (*.net *.split) |
| 05:50:28 | × | SawyerBergeron[m quits (~sawyerber@2001:470:69fc:105::3036) (*.net *.split) |
| 05:50:28 | × | ouroboros quits (~ouroboros@user/ouroboros) (*.net *.split) |
| 05:50:28 | × | HurdyGurdyBurdy quits (~HurdyGurd@user/hurdygurdyburdy) (*.net *.split) |
| 05:50:28 | × | samebchase quits (~thelounge@51.15.68.182) (*.net *.split) |
| 05:50:28 | × | burakcank quits (~burakcank@has.arrived.and.is.ready-to.party) (*.net *.split) |
| 05:50:28 | × | swistak quits (~swistak@185.21.216.141) (*.net *.split) |
| 05:50:28 | × | noctuks quits (dzDZscEp9m@user/noctux) (*.net *.split) |
| 05:50:28 | × | elcaro quits (~anonymous@45.32.191.75) (*.net *.split) |
| 05:50:29 | × | Vq quits (~vq@90-227-195-41-no77.tbcn.telia.com) (*.net *.split) |
| 05:50:29 | × | mrus quits (~mrus@149.28.224.172) (*.net *.split) |
| 05:50:29 | × | wanko quits (~wanko@51.15.4.226) (*.net *.split) |
| 05:50:36 | → | teehemkay joins (sid14792@id-14792.lymington.irccloud.com) |
| 05:50:37 | → | wanko joins (~wanko@51.15.4.226) |
| 05:50:37 | → | elcaro joins (~anonymous@45.32.191.75) |
| 05:50:40 | → | swistak joins (~swistak@185.21.216.141) |
| 05:50:42 | → | stilgart joins (~Christoph@chezlefab.net) |
| 05:50:46 | → | joel135 joins (sid136450@id-136450.hampstead.irccloud.com) |
| 05:50:51 | → | meinside joins (uid24933@id-24933.helmsley.irccloud.com) |
| 05:50:51 | → | mustafa joins (sid502723@rockylinux/releng/mustafa) |
| 05:50:51 | → | jassob joins (~jassob@h-98-128-166-172.NA.cust.bahnhof.se) |
| 05:50:52 | → | scav joins (sid309693@id-309693.helmsley.irccloud.com) |
| 05:50:56 | → | hendi joins (sid489601@id-489601.lymington.irccloud.com) |
| 05:50:59 | → | noctuks joins (RIj3X4Rlia@karif.server-speed.net) |
| 05:51:03 | → | bw joins (sid2730@user/betawaffle) |
| 05:51:06 | → | Firedancer joins (sid336191@id-336191.hampstead.irccloud.com) |
| 05:51:10 | → | gonz_____ joins (sid304396@id-304396.lymington.irccloud.com) |
| 05:51:14 | → | HurdyGurdyBurdy joins (~HurdyGurd@user/hurdygurdyburdy) |
| 05:51:14 | × | noctuks quits (RIj3X4Rlia@karif.server-speed.net) (Signing in (noctuks)) |
| 05:51:14 | → | noctuks joins (RIj3X4Rlia@user/noctux) |
| 05:51:18 | → | carter joins (sid14827@id-14827.helmsley.irccloud.com) |
| 05:51:19 | → | obviyus joins (sid415299@id-415299.uxbridge.irccloud.com) |
| 05:51:22 | × | obviyus quits (sid415299@id-415299.uxbridge.irccloud.com) (Changing host) |
| 05:51:22 | → | obviyus joins (sid415299@user/obviyus) |
| 05:51:26 | → | raoul joins (~raoul@95.179.203.88) |
| 05:51:30 | → | SrPx joins (sid108780@id-108780.uxbridge.irccloud.com) |
| 05:51:36 | → | mrus joins (~mrus@149.28.224.172) |
| 05:51:50 | → | burakcank joins (~burakcank@has.arrived.and.is.ready-to.party) |
| 05:52:15 | → | ouroboros joins (~ouroboros@user/ouroboros) |
| 05:52:21 | × | stevenxl quits (~stevenlei@174.128.182.152) (Ping timeout: 252 seconds) |
| 05:52:40 | → | siraben joins (~siraben@user/siraben) |
| 05:53:15 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 05:53:18 | → | a1paca joins (~a1paca@user/a1paca) |
| 05:53:28 | → | ilkecan[m] joins (~ilkecanma@2001:470:69fc:105::1:79b) |
| 05:53:28 | → | SawyerBergeron[m joins (~sawyerber@2001:470:69fc:105::3036) |
| 05:55:44 | → | Vq joins (~vq@90-227-195-41-no77.tbcn.telia.com) |
| 05:56:38 | → | ServerStatsDisco joins (~serversta@2001:470:69fc:105::1a) |
| 05:56:41 | → | justosophy[m] joins (~justosoph@2001:470:69fc:105::572f) |
| 05:56:42 | → | RosarioPulella[m joins (~rosariopu@2001:470:69fc:105::a57) |
| 05:56:43 | → | jkachmar joins (~jkachmar@2001:470:69fc:105::c72d) |
| 05:56:44 | → | xddq[m] joins (~xddqmatri@2001:470:69fc:105::bfd8) |
| 05:56:45 | → | acco[m] joins (~accotedom@2001:470:69fc:105::1:3236) |
| 05:56:46 | → | reza[m] joins (~rezaphone@2001:470:69fc:105::3eda) |
| 05:56:46 | → | carmysilna joins (~brightly-@2001:470:69fc:105::2190) |
| 05:56:47 | → | quantum joins (~quantum@user/quantum/x-8556232) |
| 05:58:26 | → | genieliu joins (~genieliu@103.37.140.24) |
| 05:59:09 | → | kosmikus[m] joins (~andresloe@2001:470:69fc:105::95d) |
| 05:59:31 | → | fef joins (~thedawn@user/thedawn) |
| 06:00:04 | → | lavaman joins (~lavaman@98.38.249.169) |
| 06:00:16 | → | ongy[m] joins (~ongymatri@2001:470:69fc:105::5018) |
| 06:01:37 | → | deadmarshal joins (~deadmarsh@95.38.119.139) |
| 06:05:53 | → | slowtyper joins (~slowtyper@user/slowtyper) |
| 06:07:32 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:c51f:ff7b:f3d8:91b6) (Ping timeout: 240 seconds) |
| 06:08:15 | → | shailangsa joins (~shailangs@host86-186-142-82.range86-186.btcentralplus.com) |
| 06:08:49 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:91e5:b69c:2cfa:3fc5) |
| 06:12:43 | → | Codaraxis_ joins (~Codaraxis@user/codaraxis) |
| 06:16:12 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 06:16:33 | × | Codaraxis quits (~Codaraxis@user/codaraxis) (Ping timeout: 252 seconds) |
| 06:16:37 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:19:58 | → | mvk joins (~mvk@2607:fea8:5cdd:f000::9788) |
| 06:20:29 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Quit: Konversation terminated!) |
| 06:20:58 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 06:21:59 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 06:23:14 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:91e5:b69c:2cfa:3fc5) (Ping timeout: 265 seconds) |
| 06:24:00 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:a7f2:d756:85f3:34a8) |
| 06:25:21 | × | deadmarshal quits (~deadmarsh@95.38.119.139) (Ping timeout: 252 seconds) |
| 06:25:38 | → | deadmarshal joins (~deadmarsh@95.38.229.189) |
| 06:28:50 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 252 seconds) |
| 06:36:31 | → | max22- joins (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) |
| 06:41:30 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 06:45:53 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 06:49:48 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 06:52:31 | × | pfurla quits (~pfurla@2804:14d:5c81:4104:9dad:b7eb:58e3:98e6) (Quit: gone to sleep. ZZZzzz…) |
| 06:59:25 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 07:02:25 | → | michalz joins (~michalz@185.246.204.40) |
| 07:06:28 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Quit: Konversation terminated!) |
| 07:07:56 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 07:10:01 | → | sprout joins (~quassel@2a02:a467:ccd6:1:6993:39fb:9bc8:e953) |
| 07:10:07 | × | genieliu quits (~genieliu@103.37.140.24) (Ping timeout: 265 seconds) |
| 07:13:23 | × | sprout_ quits (~quassel@2a02:a467:ccd6:1:39f3:76e9:9ca1:32bd) (Ping timeout: 252 seconds) |
| 07:15:06 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Remote host closed the connection) |
| 07:15:40 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 07:19:09 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 07:20:33 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
| 07:23:39 | × | deadmarshal quits (~deadmarsh@95.38.229.189) (Ping timeout: 265 seconds) |
| 07:25:47 | → | genieliu joins (~genieliu@103.37.140.38) |
| 07:26:39 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 07:30:10 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:31:06 | × | fef quits (~thedawn@user/thedawn) (Ping timeout: 276 seconds) |
| 07:31:18 | → | deadmarshal joins (~deadmarsh@95.38.229.189) |
| 07:34:09 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:34:27 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 07:34:27 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:36:07 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:36:25 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:37:58 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:38:26 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:a7f2:d756:85f3:34a8) (Ping timeout: 268 seconds) |
| 07:38:39 | → | notzmv joins (~zmv@user/notzmv) |
| 07:39:15 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:2d41:b802:44a7:1f0c) |
| 07:39:52 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 07:40:39 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 07:44:55 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:45:13 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:46:53 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:47:11 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:47:29 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
| 07:50:12 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 07:52:23 | × | famubu quits (~famubu@user/famubu) (Ping timeout: 256 seconds) |
| 07:52:42 | → | chele joins (~chele@user/chele) |
| 07:53:07 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:53:24 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:53:56 | → | jtomas joins (~jtomas@212.117.18.99) |
| 07:54:21 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 07:55:33 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Ping timeout: 252 seconds) |
| 07:55:41 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 07:55:59 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 07:59:39 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 08:04:57 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 08:06:37 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 08:06:54 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 08:07:01 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 08:08:13 | × | deadmarshal quits (~deadmarsh@95.38.229.189) (Ping timeout: 240 seconds) |
| 08:08:30 | → | dhouthoo joins (~dhouthoo@178-117-36-167.access.telenet.be) |
| 08:11:07 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 08:11:09 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:6538:452b:466b:b6bb) |
| 08:13:15 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 08:13:33 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 08:15:13 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 08:15:30 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 08:19:44 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 08:26:25 | → | cfricke joins (~cfricke@user/cfricke) |
| 08:29:06 | × | Codaraxis_ quits (~Codaraxis@user/codaraxis) (Read error: Connection reset by peer) |
| 08:29:26 | → | Codaraxis_ joins (~Codaraxis@user/codaraxis) |
| 08:31:32 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 08:32:50 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:41:03 | × | coolnickname quits (~coolnickn@73.194.7.51.dyn.plus.net) (Ping timeout: 256 seconds) |
| 08:42:08 | × | LiaoTao quits (~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection) |
| 08:42:34 | → | LiaoTao joins (~LiaoTao@gateway/tor-sasl/liaotao) |
| 08:42:39 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:43:33 | → | senoraraton joins (~senorarat@192-195-83-130.static.monkeybrains.net) |
| 08:43:56 | <senoraraton> | Are there settings for cabal that I can change the default program Main.hs that it creates? |
| 08:44:35 | <merijn> | senoraraton: Yes |
| 08:44:45 | <merijn> | Or rather, I guess it depends what you mean? :p |
| 08:45:11 | <merijn> | Do you mean change "what is the main module?" or "change the contents of the generated one?" |
| 08:45:42 | <senoraraton> | I don't want it to print "Hello, Haskell!" I want it to print "Hack the Planet!" |
| 08:46:20 | <senoraraton> | The one that Cabal generates. It would also be nice to rename the app directory to src. |
| 08:46:29 | <merijn> | Pretty sure you can't change that. Also pretty sure that seems rather pointless? |
| 08:47:35 | → | yauhsien joins (~yauhsien@2402:7500:4e5:d897:1821:b278:c264:a86f) |
| 08:47:45 | <senoraraton> | I have my reasons. |
| 08:48:06 | dminuoso | stares |
| 08:48:23 | <dminuoso> | Feel free to fork cabal, and make the modifications. |
| 08:48:38 | <merijn> | Pretty much that, yeah |
| 08:48:42 | <arahael> | Or write a wrapper. |
| 08:48:57 | <merijn> | I doubt there's any interest to integrate anything like that into cabal-install |
| 08:48:57 | <arahael> | (Pretty much as stack did) |
| 08:49:21 | <dminuoso> | In the grand scheme of things, setting up a project is a one-time thing that occurs relatively rarely. |
| 08:49:40 | <dminuoso> | I'd rather the cabal maintainers spend their previous time on features that are relevant to the actual workload of haskell development. |
| 08:49:56 | <senoraraton> | Well, it is quite clear that you and I have different priorties! |
| 08:50:00 | <dminuoso> | It is. |
| 08:50:05 | → | famubu joins (~famubu@14.139.174.50) |
| 08:50:15 | <dminuoso> | s/previous/precious/ |
| 08:51:41 | <lortabac> | senoraraton: at my previous job we had our own scaffolding scripts, since we used microservices we created new projects quite often |
| 08:52:05 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 08:52:09 | <lortabac> | senoraraton: it's probably easier than forking cabal |
| 08:53:07 | <merijn> | I mean, you can just manually modify the generated files however you want, turn them into some kinda "template repo" and just use that to initialise projects instead of cabal-install... |
| 08:53:15 | → | deadmarshal joins (~deadmarsh@95.38.114.2) |
| 08:54:16 | <lortabac> | merijn: yes, that's more or less what we did, plus a bash script to replace the name and a couple of settings |
| 08:56:21 | <senoraraton> | I wrote a bash script that just does the cabal setup, then it replaces the text. Was fairly trivial, I mostly wanted to know about cabal settings and if it was configurable. |
| 08:56:47 | × | senoraraton quits (~senorarat@192-195-83-130.static.monkeybrains.net) (Quit: Lost terminal) |
| 08:57:33 | × | deadmarshal quits (~deadmarsh@95.38.114.2) (Ping timeout: 256 seconds) |
| 08:59:05 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 08:59:52 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 09:00:09 | × | PotatoHatsue quits (~berberman@2001:470:69fc:105::b488) (Quit: You have been kicked for being idle) |
| 09:00:09 | × | Deewiant quits (~deewiant@2001:470:69fc:105::2fd3) (Quit: You have been kicked for being idle) |
| 09:00:33 | × | shriekingnoise quits (~shrieking@186.137.144.80) (Quit: Quit) |
| 09:00:33 | → | deadmarshal joins (~deadmarsh@95.38.114.2) |
| 09:01:25 | × | jtomas quits (~jtomas@212.117.18.99) (Ping timeout: 240 seconds) |
| 09:02:43 | → | jtomas joins (~jtomas@212.117.18.99) |
| 09:08:53 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 09:12:08 | → | Vajb joins (~Vajb@nalkaylds2h97nzof-2.v6.elisa-mobile.fi) |
| 09:15:54 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.3) |
| 09:17:42 | × | Guest1121 quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection) |
| 09:18:04 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 09:19:32 | × | LiaoTao quits (~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection) |
| 09:19:49 | → | LiaoTao joins (~LiaoTao@gateway/tor-sasl/liaotao) |
| 09:23:20 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 09:26:18 | → | Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) |
| 09:35:29 | × | on^ quits (~on@68.101.58.90) (Remote host closed the connection) |
| 09:37:51 | × | yauhsien quits (~yauhsien@2402:7500:4e5:d897:1821:b278:c264:a86f) (Ping timeout: 252 seconds) |
| 09:39:38 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 09:39:39 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 09:40:02 | × | hendi quits (sid489601@id-489601.lymington.irccloud.com) (Ping timeout: 240 seconds) |
| 09:40:39 | → | Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
| 09:42:19 | → | hendi joins (sid489601@id-489601.lymington.irccloud.com) |
| 09:44:49 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 09:45:59 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 09:48:54 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 09:52:02 | → | dsrt^ joins (~dsrt@68.101.58.90) |
| 09:53:37 | → | robosexual joins (~spaceoyst@5.167.241.206) |
| 09:56:21 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 09:58:14 | <merijn> | hmm |
| 09:58:44 | <merijn> | Is there something that somehow combines mapM and intercalate to run something in between each element? I guess not... |
| 09:59:25 | <dminuoso> | https://hackage.haskell.org/package/monadlist-0.0.2/docs/Control-Monad-ListM.html#v:intercalateM |
| 09:59:27 | <dminuoso> | Mmm |
| 09:59:31 | <dminuoso> | Should be easy to carve out. :) |
| 09:59:45 | <dminuoso> | Also |
| 09:59:47 | <dminuoso> | https://hackage.haskell.org/package/semigroupoids-5.3.6/docs/Data-Semigroup-Foldable.html#v:intercalateMap1 |
| 10:00:05 | <dminuoso> | Given that semigroupoids is so ubiquitous, you might have access to that already. |
| 10:00:29 | <dminuoso> | Ah, but its for Foldable1 only |
| 10:00:54 | <merijn> | hmm |
| 10:01:22 | <dminuoso> | merijn: Id just use sequence + intercalate |
| 10:01:25 | <merijn> | I'm happy with none of this >.> Maybe I'll just do map + intercalate followed by sequence |
| 10:01:28 | <dminuoso> | Plus some map |
| 10:01:32 | <dminuoso> | Yeah |
| 10:02:26 | <dminuoso> | Optics question, I want something like `itoFold :: IxFold i s a -> Fold s (i, a)`, does that exist? |
| 10:04:02 | → | cosimone joins (~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) |
| 10:04:34 | → | acidjnk_new joins (~acidjnk@p200300d0c7271e18cc88fab5aa5aa2cc.dip0.t-ipconnect.de) |
| 10:04:46 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 10:04:53 | <merijn> | Wait, it's intersperse, not intercalate :p |
| 10:04:55 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 10:05:41 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 10:06:49 | × | genieliu quits (~genieliu@103.37.140.38) (Ping timeout: 252 seconds) |
| 10:08:34 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 10:09:01 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
| 10:09:54 | Lord_of_Life_ | is now known as Lord_of_Life |
| 10:11:46 | × | cosimone quits (~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) (Remote host closed the connection) |
| 10:12:13 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 10:12:57 | <merijn> | ugh...I had a neat combinator for unioning a bunch of maps while checking for duplicates |
| 10:12:58 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 10:13:07 | <merijn> | But I can't find it in my own code >.> |
| 10:15:01 | × | jtomas quits (~jtomas@212.117.18.99) (Ping timeout: 240 seconds) |
| 10:15:37 | × | xff0x quits (~xff0x@2001:1a81:5269:5600:2d41:b802:44a7:1f0c) (Ping timeout: 252 seconds) |
| 10:16:27 | → | xff0x joins (~xff0x@2001:1a81:5269:5600:97b6:69e2:8ab7:379a) |
| 10:17:39 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 265 seconds) |
| 10:19:05 | → | InternetCitizen joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 10:20:14 | <[exa]> | merijn: it's probably `traverse` anyway |
| 10:20:44 | <merijn> | Naah, sequence + fold + unionWith or something along those lines |
| 10:21:07 | × | deadmarshal quits (~deadmarsh@95.38.114.2) (Ping timeout: 252 seconds) |
| 10:21:59 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
| 10:22:20 | <merijn> | dminuoso: ah, fuck, map + intersperse doesn't work |
| 10:22:35 | <merijn> | dminuoso: Because it's parsers |
| 10:22:49 | <merijn> | And I don't care about the interspersed type |
| 10:24:11 | <merijn> | The alternative is some form of map that modifies "all but the last" element of a list :\ |
| 10:24:20 | <merijn> | Why this gotta be so ugly? >.< |
| 10:25:21 | <dminuoso> | merijn: why doesnt that work? |
| 10:25:34 | <merijn> | dminuoso: Because the intersperse parser is the wrong type |
| 10:25:57 | <dminuoso> | Huh? |
| 10:26:18 | <merijn> | dminuoso: I have a bunch of parser to run (in a list) and wanna run another one in between each |
| 10:26:22 | <merijn> | So, kinda like, sepBy |
| 10:26:54 | <merijn> | Except, sepBy doesn't work because I have a specific, finite few parsers to run, not arbitrarily many repeats |
| 10:27:25 | <merijn> | So I guess I have to hand-write some custom sepBy-like combinator :\ |
| 10:28:43 | <merijn> | Well, I guess I was already doing that, but there seems to be no elegant/convenient way :\ |
| 10:29:09 | <halides> | https://paste-bin.xyz/20684 why do i need to paren the z-2? |
| 10:29:50 | <merijn> | halides: Because prefix function application is higher precedence then operators |
| 10:30:35 | <merijn> | halides: How else would you distinguish '(f z) - (2 3)' from 'f (z-2) 3' or any other bracketing you can think off? |
| 10:31:23 | <halides> | ok, so just precedence, thanks :-) |
| 10:31:27 | → | jtomas joins (~jtomas@212.117.18.99) |
| 10:32:42 | × | maerwald quits (~maerwald@user/maerwald) (Quit: gone) |
| 10:33:23 | → | maerwald joins (~maerwald@mail.hasufell.de) |
| 10:34:40 | → | CiaoSen joins (~Jura@p200300c9570204002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 10:34:45 | × | maerwald quits (~maerwald@mail.hasufell.de) (Changing host) |
| 10:34:45 | → | maerwald joins (~maerwald@user/maerwald) |
| 10:34:46 | → | darchitect joins (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) |
| 10:35:06 | <darchitect> | greetings |
| 10:38:13 | → | xsebek joins (~xsebek@217.196.215.202) |
| 10:39:22 | <xsebek> | Does anyone know how to get power function for the "matrix" in linear package? |
| 10:40:01 | <xsebek> | I am looking for V n (V n a) -> Int -> V n (V n a) that would be like the ^ from Prelude |
| 10:45:00 | <xsebek> | The Num instance only multiplies elements pair wise, but not the "matrix" :/ |
| 10:46:50 | <jackdk> | xsebek: first answer would be to build something out of `(!*!)` using iterated mutliplication, then rewrite with repeated squaring. Let me see if I can find a better answer |
| 10:48:04 | <phaazon> | anyone has an input for AoC day 4? |
| 10:48:12 | <phaazon> | (and expected output) |
| 10:50:34 | <xsebek> | jackdk: that is what I did for AoC today, but getting it for free would be nice :) |
| 10:51:01 | → | genieliu joins (~genieliu@103.37.140.38) |
| 10:51:11 | <jackdk> | I don't have a better answer for you sorry |
| 10:51:15 | → | Guest|46 joins (~Guest|46@188.27.78.223) |
| 10:52:22 | <dminuoso> | Is there some extension that lets me have two classes with duplicate method names in the same file? |
| 10:52:22 | × | Guest|46 quits (~Guest|46@188.27.78.223) (Client Quit) |
| 10:53:03 | [exa] | tries googling for -XOverloadedOverlads |
| 10:53:14 | <dminuoso> | Reason Im asking is Im generating classy lenses with optics, and I have something like `data Foo ...` and `data Bar = { foo :: Foo ... }` in the same file, and generating classy lenses for both will cause both generated classes to have some `foo` method |
| 10:54:07 | <xsebek> | jackdk: thanks anyway, I just wanted to make sure I did not miss something obvious :) |
| 10:55:49 | × | genieliu quits (~genieliu@103.37.140.38) (Ping timeout: 240 seconds) |
| 10:59:20 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 11:03:21 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Ping timeout: 256 seconds) |
| 11:04:30 | → | genieliu joins (~genieliu@103.37.140.24) |
| 11:06:19 | → | deadmarshal joins (~deadmarsh@95.38.114.2) |
| 11:11:10 | → | shriekingnoise joins (~shrieking@186.137.144.80) |
| 11:11:28 | → | xkuru joins (~xkuru@user/xkuru) |
| 11:11:47 | × | jtomas quits (~jtomas@212.117.18.99) (Ping timeout: 265 seconds) |
| 11:18:54 | → | ubert joins (~Thunderbi@p200300ecdf0ba2cae6b318fffe838f33.dip0.t-ipconnect.de) |
| 11:19:56 | <dminuoso> | • An_AffineTraversal cannot be composed with A_Lens |
| 11:20:01 | <dminuoso> | Mmm. |
| 11:20:52 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 11:21:14 | <dminuoso> | • An_AffineTraversal cannot be composed with An_AffineTraversal |
| 11:21:20 | <dminuoso> | Wonderful, I think Im tripping up optics here |
| 11:22:20 | × | darchitect quits (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Remote host closed the connection) |
| 11:22:33 | × | cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds) |
| 11:23:25 | × | xsebek quits (~xsebek@217.196.215.202) (Ping timeout: 240 seconds) |
| 11:25:38 | → | darchitect joins (~darchitec@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) |
| 11:26:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 11:26:51 | <darchitect> | hey guys, do you think "TheHaskellBook" is the best book on haskell ? |
| 11:27:09 | <darchitect> | in terms of a full grasp of the language, not just beginner stuff .. |
| 11:28:08 | <dminuoso> | No. |
| 11:28:14 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:28:25 | <dminuoso> | I dont think "the best book" exists on any given subject. |
| 11:28:43 | <dminuoso> | Books target particular audiences, and opinions tend to vary. |
| 11:28:47 | <darchitect> | yeah, of course, you're right |
| 11:29:28 | <darchitect> | I guess I meant -> the best book for the language details as an overall "bible" similar to the "C++ Language" by Stroustrup |
| 11:29:39 | <darchitect> | or the "C_Progrmaming_Language" |
| 11:29:50 | <dminuoso> | There's no bible in Haskell |
| 11:30:02 | <dminuoso> | Well, for language details, look at the Haskell Report |
| 11:30:19 | <dminuoso> | Compared to C or C++, it's a very approachable and readable language standard. |
| 11:30:27 | <dminuoso> | Even for beginners it can work |
| 11:30:58 | <dminuoso> | But that will not teach you about how to solve problems or idiomatic solutions to problems. |
| 11:30:59 | <darchitect> | makes sense |
| 11:31:24 | <dminuoso> | There's a select few popular picks in niche topics |
| 11:31:24 | <darchitect> | I also find a big blog "What I wish I knew.." etc.. |
| 11:31:30 | <darchitect> | that + the report will do for now I gues |
| 11:31:47 | → | kuribas joins (~user@ptr-25vy0i7z7uknhuz4b8c.18120a2.ip6.access.telenet.be) |
| 11:31:53 | <dminuoso> | Like, for type level programming Thinking with Types by Sandy Maguire is received relatively well by the Haskell community |
| 11:32:28 | <dminuoso> | But whether type level programming is a good idea is another topic altogether. |
| 11:32:56 | <dminuoso> | darchitect: to me personally, browsing GHC source code helped me get a lot of ideas. :) |
| 11:33:00 | → | kennyd joins (~bc8165b6@cerf.good1.com) |
| 11:33:04 | <dminuoso> | Few things beat the real world experience. |
| 11:33:23 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 11:33:40 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:34:53 | <darchitect> | dminuoso: true that |
| 11:35:12 | <kuribas> | IMO type level programming is over used, and proper abstractions (Applicative/Monoid/...) underused. |
| 11:38:15 | <kuribas> | darchitect: if you "really" want to do type level programming, look at dependent types. |
| 11:38:27 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 11:39:33 | <kuribas> | In the end, a Type Family is just a type level function. |
| 11:39:35 | <dminuoso> | kuribas: I think you're talking orthogonally to the subject of the discussion. |
| 11:39:36 | <Rembane> | Idris and Agda are more ergonomic for type level programming than Haskell is. |
| 11:39:46 | Rembane | joins the orthogonals |
| 11:39:52 | <kuribas> | dminuoso: could be, I just jumped in and I miss context :) |
| 11:40:02 | <dminuoso> | kuribas: I just brought up that book to talk about a book, this isn't even about type level programming. |
| 11:40:11 | <darchitect> | thanks guys, I am a bit on the imperative side of the spectrum in terms of mindset atm, but I will look into it |
| 11:40:18 | <kuribas> | dminuoso: oh right |
| 11:40:42 | <darchitect> | I love haskell |
| 11:40:53 | <dminuoso> | darchitect: For learning Haskell, I'm personally quite fond of CIS194 (both Joachim Breitners version as well as Brent Yorgeys) |
| 11:41:00 | <darchitect> | but it does take its time to get to grips with |
| 11:41:04 | <dminuoso> | So depending on what kind of list you're building, perhaps add it as well. |
| 11:41:11 | <dminuoso> | CIS194 generally is well regarded as well |
| 11:41:19 | × | famubu quits (~famubu@14.139.174.50) (Ping timeout: 256 seconds) |
| 11:41:29 | <kuribas> | it seems to be missing transformers... |
| 11:41:29 | <dminuoso> | It's a different approach than The Haskell Book, as its a uni course, but with well designed examples that build up on each other |
| 11:41:42 | <Rembane> | darchitect: Also! Remember that you can come back here and ask questions! :) |
| 11:43:11 | <dminuoso> | • A_Lens cannot be composed with A_Lens |
| 11:43:18 | <dminuoso> | Hah, this is the perfect one now! |
| 11:43:41 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 11:43:50 | <darchitect> | maaate I think CIS194 is exactly what I'm looking for |
| 11:44:08 | <kuribas> | darchitect: one of the biggest advantages of learning FP is getting rid of global state. |
| 11:44:13 | → | jtomas joins (~jtomas@212.117.18.99) |
| 11:44:22 | <kuribas> | darchitect: you can use the FP mindset also when programming in imperative languages. |
| 11:44:40 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:44:40 | <kuribas> | In our company, all our java code uses immutability by default. |
| 11:45:00 | <kuribas> | It makes everything easier to reason about. |
| 11:45:02 | <darchitect> | kuribas: yeah deffinitely, I work as an ML engineer atm and have used partial functions (currying) in many occasions (to the amazement of colleagues :) ) |
| 11:46:08 | <dminuoso> | By ML engineer, do you mean it in the sense of SML? Or machine learning? |
| 11:48:21 | <darchitect> | machine learning |
| 11:48:40 | <darchitect> | we do most things in Python as you may presume |
| 11:48:48 | <darchitect> | we do most things in Python as you may have guessed * |
| 11:49:43 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 11:49:51 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 11:50:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:52:02 | × | shailangsa quits (~shailangs@host86-186-142-82.range86-186.btcentralplus.com) () |
| 11:55:01 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 11:55:37 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:58:37 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 11:58:46 | <Logio> | functional programming in Python tends to make me feel like I'm in a cargo cult, hoping for correctness to emerge from the heavens |
| 11:59:41 | <Logio> | "if a use @dataclass here, a type annotation there, and curry my functions, then maybe some day my programs will be composable" |
| 12:00:01 | <Logio> | but they never are in Python :( |
| 12:00:06 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 12:00:42 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 12:00:51 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 12:01:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:01:08 | × | Hecate quits (~mariposa@user/hecate) (Remote host closed the connection) |
| 12:01:10 | <kuribas> | and lambda's are broken in Python |
| 12:02:29 | <sshine> | broken? |
| 12:03:33 | <kuribas> | like you cannot do statements in lambdas. |
| 12:03:45 | <sshine> | Logio, composability isn't as valuable in languages that don't allow for high-level AST transforms, I think... otherwise I'm sure the extra wrapping causes eventual overhead that people will argue is bad. |
| 12:04:15 | → | aman joins (~aman@user/aman) |
| 12:04:28 | <kuribas> | It's just like Python puts arbitrary limitations on things, and calls it "discipline". |
| 12:05:10 | <kuribas> | And then has counter productive community standards. |
| 12:05:12 | <sshine> | Logio, I seem to recall that even OCaml programmers will historically not use the composition operator (but I think the mentality has somewhat changed with flambda). |
| 12:05:26 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 265 seconds) |
| 12:05:53 | <sshine> | kuribas, I suppose it does require discipline to be both arbitrary and consistent. :-P |
| 12:06:07 | <kuribas> | sshine: that's one way to look at it :) |
| 12:07:06 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 12:09:39 | × | InternetCitizen quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 252 seconds) |
| 12:11:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 12:12:21 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:17:47 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 12:18:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:18:42 | → | pfurla joins (~pfurla@201.17.118.230) |
| 12:23:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 12:23:32 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 12:23:39 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:26:00 | × | rembo10 quits (~rembo10@remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 12:27:04 | → | rembo10 joins (~rembo10@remulis.com) |
| 12:29:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 12:29:24 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:30:16 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 12:30:51 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 12:35:43 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 12:37:01 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.3) |
| 12:39:00 | → | famubu joins (~famubu@14.139.174.50) |
| 12:39:45 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 12:40:45 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 12:42:17 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 12:43:01 | → | jgeerds joins (~jgeerds@55d4ac73.access.ecotel.net) |
| 12:48:51 | <merijn> | hmm, Vector doesn't have a modify function that returns the old value? |
| 12:53:06 | × | unyu quits (~pyon@user/pyon) (Quit: brb) |
| 12:53:35 | <[exa]> | why such function though? |
| 12:53:49 | → | unyu joins (~pyon@user/pyon) |
| 12:53:50 | <dminuoso> | glguy: Question, is there a particular reason config-schema uses * rather than -? |
| 12:54:33 | <merijn> | [exa]: For the same reason nearly all Var/Ref types have one? Because an "update and get old (and/or new) value" is very useful? |
| 12:54:49 | × | hololeap quits (~hololeap@user/hololeap) (Remote host closed the connection) |
| 12:54:59 | <[exa]> | you mean for MVector? |
| 12:55:12 | <dminuoso> | modify f (New p) = New (do { v <- p; f v; return v }) |
| 12:55:18 | <dminuoso> | Seems like you can trivially build your own |
| 12:55:22 | <merijn> | Well, any vector, really |
| 12:55:26 | <merijn> | dminuoso: Well yes |
| 12:55:34 | <merijn> | but I don't want to if I don't have too >.< |
| 12:56:11 | → | hololeap joins (~hololeap@user/hololeap) |
| 12:56:15 | <merijn> | dminuoso: It seems weird to have 'modifyM :: Vector a -> (a -> a) -> m ()', it's strictly less useful than the one returning 'm a' |
| 12:57:19 | <hpc> | also not naming it modifyM_ makes it hard to add the return-y version |
| 12:58:03 | <merijn> | In general there doesn't seem to be an "update a single value" function for immutable vector, which is also annoying |
| 12:59:02 | <merijn> | The closest thing is 'modify :: Unbox a => (forall s. MVector s a -> ST s ()) -> Vector a -> Vector a' |
| 12:59:35 | × | famubu quits (~famubu@14.139.174.50) (Changing host) |
| 12:59:35 | → | famubu joins (~famubu@user/famubu) |
| 12:59:38 | <merijn> | I just wanna increment a single index and get the result >.> |
| 13:00:47 | <merijn> | Have to manually index, then do bulk update, bah |
| 13:00:51 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 13:01:50 | <[exa]> | merijn: for mutable vector there is `exchange` but not sure if that's there for normal vectors |
| 13:03:11 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 13:11:39 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 13:13:17 | × | gehmehgeh quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 13:14:02 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 13:17:26 | → | darchite` joins (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) |
| 13:17:45 | <darchite`> | test |
| 13:18:58 | → | ub joins (~Thunderbi@p200300ecdf0ba2ca3910be5e8791151b.dip0.t-ipconnect.de) |
| 13:19:15 | <yushyin> | passed |
| 13:19:22 | <pragma-> | how do you know? |
| 13:19:57 | <yushyin> | crystal ball |
| 13:21:15 | → | InternetCitizen joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 13:21:27 | → | __monty__ joins (~toonn@user/toonn) |
| 13:26:18 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:6538:452b:466b:b6bb) (Quit: WeeChat 2.8) |
| 13:26:22 | <InternetCitizen> | I was doing aoc day 4 and when it came to part 2 I wanted to use State to keep the last winning board and its drawn number as s |
| 13:27:34 | AlexNoo__ | is now known as AlexNoo |
| 13:27:36 | × | jgeerds quits (~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 265 seconds) |
| 13:27:37 | <InternetCitizen> | does this sound like a good use of State or are there better ways of exressing this? The other options was just to construct the list of winning boards recursively and call last at the end |
| 13:29:33 | <merijn> | I'll let you know when my slacker ass finishes part 1 of day 4 xD |
| 13:30:40 | <InternetCitizen> | hahaha |
| 13:31:08 | <merijn> | \o/ it worked the first time! |
| 13:31:21 | <merijn> | Well, second time, because I didn't read carefully, but close enough |
| 13:31:37 | <InternetCitizen> | sweet, I had put a && instead of || |
| 13:31:52 | <InternetCitizen> | took me a good couple of mins to realize |
| 13:31:56 | → | lavaman joins (~lavaman@98.38.249.169) |
| 13:32:23 | <merijn> | I did the product of unmarked squares, instead of product of last number and sum of unmarked squares :p |
| 13:32:49 | <InternetCitizen> | oh |
| 13:33:34 | <merijn> | I guess you could use State, but tbh, the 2nd one (like the first) seems a fairly straightforward fold |
| 13:33:50 | <aplainzetakind> | My Python implementation of the same solution for today is faster than the Haskell implementation. Is this normal because numpy is basically C or what? |
| 13:34:17 | <merijn> | aplainzetakind: That's impossible to say without seeing what your Haskell looks like |
| 13:34:44 | <maerwald> | naive python is sometimes faster than naive Haskell, but not that often |
| 13:34:46 | <InternetCitizen> | merijn: problem is I couldn't get it to work :Y I'm not too sure how State works that's why I wanted to jump on it |
| 13:34:52 | <geekosaur> | and other details, e.g. -fllvm on m1 macs will be slower than ncg on other platforms |
| 13:35:07 | <aplainzetakind> | merijn: https://gitlab.com/aplainzetakind/aoc2021/-/blob/master/Haskell/lib/AoC2021/Day06.hs |
| 13:35:11 | <merijn> | InternetCitizen: the best way to understand State is to reimplement it yourself, tbh |
| 13:35:21 | <merijn> | oh, I can't look at that xD |
| 13:35:27 | <merijn> | Spoilers :p |
| 13:35:39 | <aplainzetakind> | merijn: :) |
| 13:35:56 | <merijn> | InternetCitizen: https://gist.github.com/merijn/098106abd45c940dab09 |
| 13:36:13 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 13:36:30 | <merijn> | InternetCitizen: Homework for understanding State is: Fill in the missing pieces :p |
| 13:37:06 | <maerwald> | aplainzetakind: how did you run the code? |
| 13:37:47 | <maerwald> | in ghci doesn't count |
| 13:38:09 | <aplainzetakind> | maerwald: Ran the executable built with cabal build -O2 |
| 13:38:20 | <aplainzetakind> | And the measurement is done by criterion. |
| 13:38:22 | <geekosaur> | -O2 is not always an optimization |
| 13:38:52 | <InternetCitizen> | merijn: this is what I got https://paste.tomsmeding.com/m3lqvu7x |
| 13:38:58 | <aplainzetakind> | geekosaur: Sometimes it's counterproductive? |
| 13:39:03 | <geekosaur> | yes |
| 13:39:14 | <aplainzetakind> | Hmm. |
| 13:40:00 | <geekosaur> | usually it's no better than -O / -O1, sometimes it's worse |
| 13:41:15 | <aplainzetakind> | Is -O1 always an optimization then? |
| 13:41:20 | <geekosaur> | yes |
| 13:41:37 | <merijn> | InternetCitizen: That's missing a lot of context :) |
| 13:41:51 | <geekosaur> | -O1 is the optimizations that are well tested and work fairly well. -O2 is "optimizations" that sometinmes are optimizations but often aren't |
| 13:42:14 | → | simendsjo joins (~user@84.211.91.241) |
| 13:42:26 | <geekosaur> | ghc manual strongly recommends -O1 last I checked, unless you have good reason to think the optimizations in -O2 will help your code |
| 13:42:50 | <maerwald> | have never seen O2 slowing down code, but I also don't test for that very often |
| 13:43:04 | <aplainzetakind> | Anyway, Same result with -O1. |
| 13:43:16 | <geekosaur> | it's not that common, like I said earlier usually it's no better than -O1 |
| 13:44:22 | <geekosaur> | iirc the optimizations in -O1 are known to not have pessimal edge cases, the ones in -O2 have such cases |
| 13:44:37 | <geekosaur> | but also have other edge cases where they speed things up significantly |
| 13:45:13 | × | jtomas quits (~jtomas@212.117.18.99) (Remote host closed the connection) |
| 13:45:36 | <merijn> | InternetCitizen: My (as usual) overengineered solution for day 4: https://github.com/merijn/AdventOfCode/blob/master/Day4.hs |
| 13:47:07 | × | genieliu quits (~genieliu@103.37.140.24) (Ping timeout: 256 seconds) |
| 13:47:38 | → | lavaman joins (~lavaman@98.38.249.169) |
| 13:49:07 | <geekosaur> | but the real hit you take is -O2 takes a lot longer to compile, so you really want to benchmark to see if that extra hit is worth any gains you might get |
| 13:53:47 | × | xsperry quits (~xs@user/xsperry) (Ping timeout: 252 seconds) |
| 13:54:49 | → | cheater joins (~Username@user/cheater) |
| 13:56:09 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 13:59:14 | × | darchite` quits (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Remote host closed the connection) |
| 14:00:23 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Ping timeout: 252 seconds) |
| 14:03:59 | → | stevenxl joins (~stevenlei@174.128.182.55) |
| 14:06:34 | × | LiaoTao quits (~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection) |
| 14:06:51 | → | LiaoTao joins (~LiaoTao@gateway/tor-sasl/liaotao) |
| 14:07:40 | → | jkaye joins (~jkaye@2601:281:8300:7530:1572:52e4:1190:1c22) |
| 14:09:13 | × | max22- quits (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
| 14:11:30 | × | xkuru quits (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
| 14:11:30 | × | kennyd quits (~bc8165b6@cerf.good1.com) (Quit: CGI:IRC (Ping timeout)) |
| 14:11:55 | → | xkuru joins (~xkuru@user/xkuru) |
| 14:14:02 | → | kspalaiologos joins (~kspalaiol@user/kspalaiologos) |
| 14:15:38 | → | xsperry joins (~xs@user/xsperry) |
| 14:17:31 | <__monty__> | merijn: Where's the microbenchmarks though? : ) |
| 14:18:02 | <merijn> | __monty__: Microbenchmarks are way to hard to do :p |
| 14:19:20 | <dminuoso> | Is there some more expressive way to write this small monadic code? https://gist.github.com/dminuoso/64e95c5284ca4a5bc7d81d93d349ddab |
| 14:20:18 | → | lbseale joins (~ep1ctetus@user/ep1ctetus) |
| 14:20:48 | <dminuoso> | -- whenF :: Functor f => Bool -> (a -> a) -> f a -> f a |
| 14:20:54 | <dminuoso> | This would seem a bit awkward for a one-offf |
| 14:23:12 | <geekosaur> | yeh, I can think of ways to shorten it but I'm not sure they're clearer |
| 14:24:38 | × | InternetCitizen quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 265 seconds) |
| 14:24:40 | <dminuoso> | The other idea Im playing with is making a separate `buildNodeSingleArpNd__ pr = fillArpNdVlanInterfaces <$> buildNodeSingle__ pr` binding, and then just write `if r then buildNodeSingleArpNd__ prec else buildNodeSingle__ prec` |
| 14:24:43 | → | genieliu joins (~genieliu@111.193.167.10) |
| 14:24:56 | <dminuoso> | It's a bit longer but feels a bit more readable |
| 14:24:58 | × | curiousgay quits (~curiousga@77-120-141-90.kha.volia.net) (Quit: Leaving) |
| 14:26:13 | × | simendsjo quits (~user@84.211.91.241) (Ping timeout: 256 seconds) |
| 14:26:50 | <byorgey> | (if r then fmap fillArpNdVlanInterfaces else id) (buildNodeSingle__ prec) ? |
| 14:27:17 | <byorgey> | dunno if that's better, just an idea |
| 14:28:17 | <geekosaur> | that was the main one I was thinking of. as I said, not sure it's more readable |
| 14:28:56 | <byorgey> | depends who's reading it I guess. |
| 14:29:01 | × | famubu quits (~famubu@user/famubu) (Ping timeout: 240 seconds) |
| 14:29:34 | <dminuoso> | Oh I have a cunning plan! |
| 14:29:43 | <kuribas> | dminuoso: I like: whenMono :: Monoid m => Bool -> m -> m |
| 14:30:03 | <dminuoso> | https://gist.github.com/dminuoso/b3b77ce2e30f8b923b3c24eeeca9407f geekosaur, byorgey. What do you think? |
| 14:30:22 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 14:30:24 | <byorgey> | oooooh, shiny |
| 14:30:48 | <byorgey> | dminuoso: I like it |
| 14:30:53 | <kuribas> | > let whenMono True m = m; whenMono False _ = mempty in \b f -> appEndo (whenMono b (Endo f)) |
| 14:30:55 | <lambdabot> | error: |
| 14:30:55 | <lambdabot> | • No instance for (Typeable a0) |
| 14:30:55 | <lambdabot> | arising from a use of ‘show_M87810610666469311768’ |
| 14:30:59 | <kuribas> | :t let whenMono True m = m; whenMono False _ = mempty in \b f -> appEndo (whenMono b (Endo f)) |
| 14:31:01 | <lambdabot> | Bool -> (a -> a) -> a -> a |
| 14:31:01 | <geekosaur> | I kinda don't like the duplication, but I'm not sure it's worth factoring away |
| 14:31:50 | × | hololeap quits (~hololeap@user/hololeap) (Remote host closed the connection) |
| 14:32:20 | <dminuoso> | You have to opt for the lesser evil here I think. |
| 14:32:54 | <byorgey> | :t let whenMono True m = m; whenMono False _ = mempty in \b -> fmap . appEndo . whenMono b . Endo |
| 14:32:55 | <lambdabot> | Functor f => Bool -> (b -> b) -> f b -> f b |
| 14:33:03 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 14:33:13 | → | hololeap joins (~hololeap@user/hololeap) |
| 14:33:30 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 14:33:44 | <dminuoso> | kuribas: Well, I really want a whenMonoM then, so I can write `whenMonoM (has_fun_flag FunArpNdSuppress) buildNodeSingle__` |
| 14:33:51 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 14:34:20 | <dminuoso> | Though, the Endo is real overkill here. |
| 14:34:39 | <dminuoso> | At the end this is just the whenF I mentioned earlier |
| 14:34:46 | <dminuoso> | With just an overly elaborate implementation |
| 14:35:49 | <kuribas> | I wouldn't bother with something that trivial. |
| 14:36:06 | <kuribas> | Whatever comes up first is fine IMO. |
| 14:36:25 | <kuribas> | A bit of duplication cannot hurt. |
| 14:38:12 | → | InternetCitizen joins (~fuzzypixe@tchebychev.ensimag.fr) |
| 14:39:55 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 14:43:00 | × | InternetCitizen quits (~fuzzypixe@tchebychev.ensimag.fr) (Ping timeout: 265 seconds) |
| 14:48:43 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 14:48:50 | × | xsperry quits (~xs@user/xsperry) (Remote host closed the connection) |
| 14:48:57 | → | slack1256 joins (~slack1256@191.125.99.212) |
| 14:49:11 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 14:49:49 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 14:50:18 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 14:50:18 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 14:50:18 | → | wroathe joins (~wroathe@user/wroathe) |
| 14:51:16 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 14:51:30 | → | max22- joins (~maxime@2a01cb0883359800374d9426cde47cad.ipv6.abo.wanadoo.fr) |
| 14:52:02 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 14:52:38 | × | LiaoTao quits (~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection) |
| 14:52:52 | → | LiaoTao joins (~LiaoTao@gateway/tor-sasl/liaotao) |
| 14:54:36 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 265 seconds) |
| 14:55:05 | × | acidjnk_new quits (~acidjnk@p200300d0c7271e18cc88fab5aa5aa2cc.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
| 14:55:43 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 14:57:36 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.3) |
| 14:59:40 | × | slack1256 quits (~slack1256@191.125.99.212) (Read error: Connection reset by peer) |
| 14:59:47 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
| 15:01:17 | × | lbseale quits (~ep1ctetus@user/ep1ctetus) (Read error: Connection reset by peer) |
| 15:01:58 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 15:02:31 | <hskpractice> | is there any way to completely wipe the HLS caches? |
| 15:03:08 | <maerwald> | ~/.cache/ghcide/ |
| 15:03:26 | <maerwald> | or ~/.cache/hie-bios/ |
| 15:03:29 | <maerwald> | I'm not sure |
| 15:03:44 | <maerwald> | tools get constantly renamed |
| 15:05:30 | → | slack1256 joins (~slack1256@191.125.99.212) |
| 15:05:50 | → | xsperry joins (~xs@cpe-188-129-101-182.dynamic.amis.hr) |
| 15:05:52 | × | xsperry quits (~xs@cpe-188-129-101-182.dynamic.amis.hr) (Changing host) |
| 15:05:52 | → | xsperry joins (~xs@user/xsperry) |
| 15:06:54 | <boxscape> | Hmm I'm writing a library that converts Haskell source code to Template Haskell and I'm wondering if there's any value in having a pure function `String -> Exp` instead of only functions in Q like `String -> Q Exp` |
| 15:07:02 | <boxscape> | both are very doable, though the latter is internally a bit cleaner |
| 15:07:03 | <hskpractice> | :) thanks, maerwald |
| 15:07:20 | → | Hecate joins (~mariposa@163.172.211.189) |
| 15:07:44 | × | Hecate quits (~mariposa@163.172.211.189) (Changing host) |
| 15:07:44 | → | Hecate joins (~mariposa@user/hecate) |
| 15:07:52 | × | dsrt^ quits (~dsrt@68.101.58.90) (Remote host closed the connection) |
| 15:10:54 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:10:54 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 15:10:54 | → | wroathe joins (~wroathe@user/wroathe) |
| 15:12:40 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 15:15:12 | <vaibhavsagar[m]> | boxscape: `String -> Exp` is strictly more general, so if you only have one IMO it should be that one |
| 15:15:25 | × | pfurla quits (~pfurla@201.17.118.230) (Quit: gone to sleep. ZZZzzz…) |
| 15:15:52 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 265 seconds) |
| 15:16:29 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 15:17:14 | <boxscape> | hmm, the difference is that with `String -> Exp` the names are dynamically bound once you use the Exp, whereas with `String -> Q Exp` I could look up the real names while constructing the Exp (and so you could figure out which package etc. they are from once it's constructed), so it's not strictly more general in that sense. Although you could always have a function `Exp -> Q Exp` that converts the first kind into the second... |
| 15:17:16 | <dminuoso> | boxscape: How do you make fresh names without Q? |
| 15:17:56 | <boxscape> | dminuoso: they're not fresh, I'm using mkName, so they're bound to whatever's around once you use the Exp |
| 15:18:21 | <dminuoso> | Ahh |
| 15:18:23 | <dminuoso> | Right |
| 15:19:08 | <dminuoso> | boxscape: Uh, but doesnt that thing already exist in form of `String -> Q Exp`? |
| 15:19:15 | × | genieliu quits (~genieliu@111.193.167.10) (Ping timeout: 265 seconds) |
| 15:19:30 | <dminuoso> | I distinctly remember being able to feed GHCi with just arbitrary strings to figure out the TH representation equivkly |
| 15:19:36 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
| 15:20:00 | <boxscape> | dminuoso: As far as I can tell you have to write a wrapper around to be able to use it outside of GHCi, which is what I'm doing |
| 15:20:09 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 15:20:29 | <dminuoso> | % runQ [d| instance Functor [] where |] >>= print |
| 15:20:30 | <yahb> | dminuoso: [InstanceD Nothing [] (AppT (ConT GHC.Base.Functor) (ConT GHC.Types.[])) []] |
| 15:20:37 | <dminuoso> | % :t runQ [d| instance Functor [] where |] |
| 15:20:37 | <yahb> | dminuoso: Quasi m => m Language.Haskell.TH.Lib.Internal.Decs |
| 15:20:50 | <boxscape> | right, you didn't supply a String there though, you supplied a TH bracket |
| 15:21:42 | <dminuoso> | I wonder, is there no quasiquoter hidden inside that might be exported? |
| 15:22:15 | <dminuoso> | % runQ [| x + x |] >>= print |
| 15:22:16 | <yahb> | dminuoso: InfixE (Just (UnboundVarE x)) (VarE GHC.Num.+) (Just (UnboundVarE x)) |
| 15:22:36 | <boxscape> | more or less what I'm doing is taking a string, wrapping it in "[d|...|]" or some other bracket, and then spinning up a GHC monad to parse that String and interpret it into template haskell |
| 15:22:45 | <boxscape> | with some AST massaging to prevent it from complain about names it can't find |
| 15:22:52 | <dminuoso> | Ah, without actual TH being invoked you mean |
| 15:22:54 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 15:22:56 | <dminuoso> | This is cute |
| 15:23:01 | <boxscape> | right |
| 15:23:23 | <dminuoso> | I do something similar in one of our projects, except its with haskell-src-exts-qq and using a quasiquoter |
| 15:23:39 | <dminuoso> | Benefit is being able to capture outside identifiers in the QQs |
| 15:24:05 | <dminuoso> | It's for module-level code generation |
| 15:24:29 | <boxscape> | something similar is also provided by haskell-src-meta - my main idea here was to see if I could use GHC's parser instead of relying on haskell-src-exts |
| 15:24:44 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 15:26:04 | <dminuoso> | Nice to know about haskell-src-meta |
| 15:26:15 | → | lavaman joins (~lavaman@98.38.249.169) |
| 15:28:13 | × | mvk quits (~mvk@2607:fea8:5cdd:f000::9788) (Ping timeout: 240 seconds) |
| 15:30:35 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 15:30:38 | → | zebrag joins (~chris@user/zebrag) |
| 15:31:58 | → | _73 joins (~user@pool-96-233-64-53.bstnma.fios.verizon.net) |
| 15:33:17 | ← | _73 parts (~user@pool-96-233-64-53.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2)) |
| 15:33:48 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 15:33:57 | × | stevenxl quits (~stevenlei@174.128.182.55) (Quit: leaving) |
| 15:34:17 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 15:35:57 | <boxscape> | Hm I think I can actually put in a reasonably nice way to abstract over the two approaches, so I suppose I'll provide both |
| 15:43:58 | → | famubu joins (~famubu@14.139.174.50) |
| 15:45:57 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 15:52:51 | → | doyougnu joins (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) |
| 15:54:55 | → | burnsidesLlama joins (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
| 15:56:56 | → | lbseale joins (~ep1ctetus@user/ep1ctetus) |
| 15:57:54 | → | myShoggoth joins (~myShoggot@97-120-85-195.ptld.qwest.net) |
| 15:58:08 | <myShoggoth> | HF Office Hours will start in an hour: https://www.twitch.tv/myshoggoth |
| 15:58:49 | × | alx741 quits (~alx741@186.178.109.217) (Ping timeout: 252 seconds) |
| 15:58:56 | → | curiousgay joins (~curiousga@77-120-141-90.kha.volia.net) |
| 16:00:25 | dminuoso | idly notes that the impression of joining and almost randomly putting in a weblink without an immediately clear reference that this is on-topic is almost fishy. |
| 16:00:34 | → | lavaman joins (~lavaman@98.38.249.169) |
| 16:00:59 | <dminuoso> | But thanks for the headsup, myShoggoth. |
| 16:01:19 | <maerwald> | why would that need a reference? |
| 16:01:23 | <merijn> | Whoo! |
| 16:01:29 | <merijn> | Finally caught up with AoC again :p |
| 16:01:32 | <cigsender> | you kinda have to know HF means Haskell Foundation :p |
| 16:01:35 | <dminuoso> | ^- |
| 16:01:39 | <cigsender> | merijn: nice! :) |
| 16:01:42 | <merijn> | Right, so who had questions about Day 6 again? :p |
| 16:03:06 | geekosaur | was thinking "twitch.tv/myshoggoth" does not look very official |
| 16:03:21 | <dminuoso> | That as well. :) |
| 16:03:37 | <cigsender> | i was worried it was going to take forever until i realized i could keep track of how many were at each stage instead of the stage of each fish :p |
| 16:04:03 | <dminuoso> | myShoggoth: So perhaps a haskell.foundation/twitch link might give a better first impression! :) |
| 16:04:13 | <dminuoso> | Or /stream or some such |
| 16:04:37 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 16:04:39 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 16:05:01 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 16:05:12 | × | ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
| 16:05:18 | <merijn> | aplainzetakind: So, I took a look at your day 6 and I'm pretty sure I know why it's slower |
| 16:05:34 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 16:06:01 | <merijn> | cigsender: Same revelation for me, yeah :p |
| 16:06:36 | <merijn> | "no answer in 5s...*think*...oh, this is going to run me out of memory..." |
| 16:06:59 | <merijn> | The new one is effectively instant, despite using immutable vectors :p |
| 16:07:21 | <maerwald> | dminuoso complaining about links today... :o |
| 16:07:34 | <dminuoso> | maerwald: Im in no way complaining. |
| 16:07:46 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 16:07:49 | <maerwald> | that's a lvlup for nitpicking :p |
| 16:08:13 | <dminuoso> | If you call giving constructive criticism a complaint, so be it. Not interested in arguing with you. |
| 16:08:14 | → | x88x88x joins (~x88x88x@149.28.53.172) |
| 16:08:37 | <geekosaur> | ^ |
| 16:09:58 | <Hecate> | cigsender: hi <3 |
| 16:11:41 | × | wei2912 quits (~wei2912@116.88.103.128) (Quit: Lost terminal) |
| 16:13:05 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
| 16:13:05 | → | alx741 joins (~alx741@186.178.108.139) |
| 16:13:42 | <cigsender> | salut Hecate <3 |
| 16:13:54 | × | kspalaiologos quits (~kspalaiol@user/kspalaiologos) (Quit: Leaving) |
| 16:14:08 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 16:15:40 | <cigsender> | merijn: i used a map, but got the wrong answer the first try by using deleteFindMin instead of manually popping 0 |
| 16:16:00 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 16:16:08 | <cigsender> | mistakenly assumed there'd always be some ready :p |
| 16:16:17 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 16:17:57 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 16:18:21 | → | x88x88x- joins (~cheeg@gateway/vpn/pia/x88x88x) |
| 16:19:11 | × | deadmarshal quits (~deadmarsh@95.38.114.2) (Ping timeout: 265 seconds) |
| 16:20:12 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds) |
| 16:21:34 | <merijn> | cigsender: You coulda used minView which returns the smallest key and the map with it removed |
| 16:21:55 | <merijn> | ah, yeah |
| 16:22:00 | <merijn> | I see what you mean :) |
| 16:22:23 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
| 16:22:34 | <merijn> | cigsender: I channeled my inner HPC spirit and realised that "arrays are the universal data structure" :p |
| 16:23:10 | <merijn> | All problems are unboxed Vector problems! https://github.com/merijn/AdventOfCode/blob/master/Day6.hs |
| 16:23:18 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 16:23:58 | <aplainzetakind> | merijn: I just saw what you wrote. So what is it? |
| 16:25:08 | <merijn> | aplainzetakind: So, casual glance at Data.Matrix shows it's just using Vector with hand-rolled operations on it |
| 16:25:17 | <merijn> | aplainzetakind: You used numpy for the python version? |
| 16:25:49 | × | mbuf quits (~Shakthi@122.178.240.120) (Quit: Leaving) |
| 16:25:52 | <aplainzetakind> | merijn: https://gitlab.com/aplainzetakind/aoc2021/-/blob/master/Python/aoc2021/days/day06.py |
| 16:25:54 | <aplainzetakind> | Yep. |
| 16:25:59 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 16:26:06 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 16:26:30 | <merijn> | numpy uses BLAS/LAPACK for its matrix operations, which are libraries with decades worth of optimisation and vectorisation for matrix computations, which will outperform some hand-rolled matrix math on vectors any time |
| 16:26:35 | → | shailangsa joins (~shailangs@host86-186-136-27.range86-186.btcentralplus.com) |
| 16:26:58 | <aplainzetakind> | And surely there's an equivalent Haskell library? |
| 16:27:07 | <merijn> | hmatrix provides BLAS/LAPACK bindings |
| 16:27:32 | <merijn> | Although the matrix solution seems rather overcomplicated for day 6. At least for me :p |
| 16:27:57 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 16:28:14 | <aplainzetakind> | It's pretty short. I first wrote a map solution and this one is simpler imo. |
| 16:28:58 | <merijn> | aplainzetakind: Have a look at mine a few lines back :) |
| 16:31:42 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 16:31:56 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 16:32:14 | × | CiaoSen quits (~Jura@p200300c9570204002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
| 16:33:39 | <aplainzetakind> | merijn: For some reason I never use Vector... It never occurs to me that it exists. |
| 16:34:22 | <aplainzetakind> | merijn: How long does this one take for both parts? |
| 16:35:17 | <merijn> | aplainzetakind: Eh, when I run it it's instant, so I'd have to time it somehow :p |
| 16:35:43 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 16:36:03 | <merijn> | time report 0.02s real time, 0.002s usertime |
| 16:36:37 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 16:36:51 | <aplainzetakind> | time doesn't get much faster than that I suppose. |
| 16:36:59 | <aplainzetakind> | s/get/report |
| 16:37:16 | <merijn> | I mean, you can always get it faster, but doesn't seem worth the bother :p |
| 16:38:26 | <aplainzetakind> | merijn: Would you care to also diagnose why https://gitlab.com/aplainzetakind/aoc2021/-/blob/master/Haskell/lib/AoC2021/Day05.hs is slower than https://gitlab.com/aplainzetakind/aoc2021/-/blob/master/Python/aoc2021/days/day05.py |
| 16:38:34 | Lord_of_Life_ | is now known as Lord_of_Life |
| 16:40:40 | × | robosexual quits (~spaceoyst@5.167.241.206) (Quit: Konversation terminated!) |
| 16:40:43 | <merijn> | aplainzetakind: Lots of lists, which are always bad for performance due to the large number of indirections and the multiset approach is probably not super cheap either |
| 16:41:15 | <merijn> | aplainzetakind: How long does it take? |
| 16:41:58 | → | lavaman joins (~lavaman@98.38.249.169) |
| 16:42:36 | <Franciman> | how does haskell's garbage collector deal with data alignment? |
| 16:42:41 | <Franciman> | does it use a uniform alignment for all types? |
| 16:42:54 | <Franciman> | like it knows that the biggest alignment is 16bytes and alignes everything to 16 bytes? |
| 16:43:03 | <merijn> | My day5 isn't instant (0.3s), but it's fast enough (and stupid, I literally end up parsing the input twice) |
| 16:43:04 | <Franciman> | or is it more into having different regions for different alignment requests? |
| 16:44:01 | <merijn> | Franciman: I mean, you can just "overallocate" to make sure you've got space to get whatever alignment you need |
| 16:44:13 | <merijn> | Franciman: Although I wager most things are simply 4 or 8 byte aligned |
| 16:44:18 | <aplainzetakind> | merijn: This is also something like 0.3s. But what bugs me is that it's literally the same algorithm and Python ends up faster. |
| 16:44:46 | <Franciman> | yes allocating a bool with 16 byte alignment is a nice idea lol |
| 16:44:53 | <Franciman> | I keep thinking about it |
| 16:45:00 | <merijn> | aplainzetakind: The problem is that python's "lists" are arrays. They are dense memory objects, which means lots of cache hits |
| 16:45:20 | <merijn> | aplainzetakind: Whereas linked lists are kinda bad in terms of caching |
| 16:45:21 | <Franciman> | who cares about 128bit integers |
| 16:45:25 | <merijn> | aplainzetakind: Also, how are you timing them? |
| 16:46:18 | <merijn> | Franciman: It doesn't seem like a big problem? I mean, at worst you waste a handful of bytes the few times something has a weird alignment requirement |
| 16:46:22 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 16:46:46 | <Franciman> | eh so you mean, do 8byte alignment, which is common |
| 16:46:48 | <merijn> | aplainzetakind: splitOn and read are also gonna be rather terrible performance |
| 16:46:53 | <Franciman> | and in the rare occasion you need an int128, you just pad a lot |
| 16:47:00 | <Franciman> | that's not bad yeah |
| 16:47:12 | <merijn> | Franciman: I don't see why int128 would need a lot of padding, tbh |
| 16:47:21 | <Franciman> | it needs 8bytes padding |
| 16:47:32 | <Franciman> | to make sure it ends on 16bytes aligned address |
| 16:47:35 | <Franciman> | but only sometines |
| 16:47:44 | <merijn> | Franciman: What makes you think it needs to be 16 byte aligned? |
| 16:47:44 | <Franciman> | sometimes you are lucky and already are on 16bytes aligned addresses |
| 16:47:48 | <Franciman> | my C compiler |
| 16:47:50 | <Franciman> | ^^ |
| 16:47:54 | <merijn> | AFAIK no current CPUs support native 128bit accesses anyway |
| 16:48:29 | <geekosaur> | I think 16 byte alignment only applies to code, not data? |
| 16:48:36 | <merijn> | Franciman: Ah, see, but now your question is mixing 2 things. "How does GHC's GC handle alignment" and "How should I handle alignment as specified by the C spec" :p |
| 16:48:36 | <geekosaur> | most things are 8 byte aligned |
| 16:49:04 | <merijn> | Franciman: GHC only has to worry about what the CPU will handle (which will generally be 4/8 byte alignment for word accesses) |
| 16:49:09 | × | curiousgay quits (~curiousga@77-120-141-90.kha.volia.net) (Ping timeout: 265 seconds) |
| 16:49:21 | <Franciman> | long double in C on my architecture requires 16byte alignment |
| 16:49:22 | × | ubert quits (~Thunderbi@p200300ecdf0ba2cae6b318fffe838f33.dip0.t-ipconnect.de) (Quit: ubert) |
| 16:49:22 | ub | is now known as ubert |
| 16:49:28 | <merijn> | 128bit numbers would be handled in software anyway, 'cos no 128bit hardware currently |
| 16:49:36 | <Franciman> | I see, thanks |
| 16:49:38 | <Franciman> | nice |
| 16:49:44 | → | ubert1 joins (~Thunderbi@p200300ecdf0ba2ca8fd37040f9dc92fe.dip0.t-ipconnect.de) |
| 16:49:48 | <merijn> | Franciman: Right, but is that a *C* requirement or a *CPU* requirement? :) |
| 16:49:57 | <merijn> | because GHC only has to worry about the latter |
| 16:50:45 | <merijn> | aplainzetakind: Also, whenever you wonder about performance and you see String. You should already assume that's bad :) |
| 16:50:48 | <Franciman> | now I wonder why C requires this |
| 16:51:14 | <Franciman> | but that's for another channel :D |
| 16:51:16 | <Franciman> | thanks merijn |
| 16:51:21 | <geekosaur> | uses the same alignment for code and data? |
| 16:51:38 | <merijn> | C (at least partially) specifies memory layout of data structures and data |
| 16:51:44 | <aplainzetakind> | merijn: I thime them like so: https://gitlab.com/aplainzetakind/aoc2021/-/blob/master/Haskell/bench/Main.hs |
| 16:52:00 | <merijn> | The Haskell Report specifies, essentially, nothing about memory layout, so the compiler can do whatever it wants :p |
| 16:52:52 | <merijn> | aplainzetakind: With absolutely no promises about what happens: I wonder if using readFile from Data.Text and changing your solutions to use Text will help |
| 16:53:04 | <Franciman> | the nice thing about self managed mamory and editable compiler without a PhD is that you can do your own statistics and update the situation as you wish |
| 16:53:21 | <aplainzetakind> | merijn: I'll try to leave parsing out of the benchmarking ans see if that's the choke point.? |
| 16:53:50 | <aplainzetakind> | In the meantime, what would be a better choice than MultiSet for this purpose? |
| 16:54:03 | <merijn> | aplainzetakind: I just used "Map Point Int" :p |
| 16:54:16 | <Franciman> | unfortunately every compiler reaches a point where it requires advanced knowledge unfortunately |
| 16:54:25 | <merijn> | aplainzetakind: You can check it in my repo :) |
| 16:55:40 | <Franciman> | but until that point I'm gonna enjoy it |
| 16:55:47 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 16:56:57 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Remote host closed the connection) |
| 16:57:24 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 16:58:14 | → | emf joins (~emf@cpe-174-109-36-85.nc.res.rr.com) |
| 17:00:09 | → | emf_ joins (~emf@2620:10d:c090:400::5:6c88) |
| 17:01:43 | × | x88x88x- quits (~cheeg@gateway/vpn/pia/x88x88x) (Ping timeout: 265 seconds) |
| 17:03:18 | × | emf quits (~emf@cpe-174-109-36-85.nc.res.rr.com) (Ping timeout: 268 seconds) |
| 17:05:55 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 17:06:12 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 17:07:33 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
| 17:15:50 | <phaazon> | anyone can send me an input.txt for day4 of AoC, if anyone has one? jle` are you around? :) |
| 17:16:17 | <phaazon> | I have reviewed my algorithm 40 times, which works on part 1 fully and the sample of part 2, so I don’t get it |
| 17:18:13 | × | synthmeat quits (~synthmeat@user/synthmeat) (Read error: Connection reset by peer) |
| 17:18:20 | → | synthmeat1 joins (~synthmeat@user/synthmeat) |
| 17:18:31 | <aplainzetakind> | phaazon: https://dpaste.com//5GVUFPAGC |
| 17:18:45 | <aplainzetakind> | If a paste is fine |
| 17:19:39 | <phaazon> | it is, thanks |
| 17:19:53 | <phaazon> | aplainzetakind: have you solved it? |
| 17:19:56 | <phaazon> | what are the expected values? |
| 17:21:06 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 17:21:09 | <phaazon> | hm, I get 0 for that one too, so I guess I still have something wrong anyway |
| 17:21:44 | <aplainzetakind> | 65325 and 4624 |
| 17:22:09 | <yin> | is there something like `class Acyclic t where leaves :: t a -> [a]` ? |
| 17:22:57 | <phaazon> | this is super weird |
| 17:23:05 | <aplainzetakind> | phaazon: Maybe going through the paste some newlines get borked or something, I'd check if it parses fine first. |
| 17:23:21 | <phaazon> | because my algorithm makes sense, it’s just a simple exclusion variation of the first algorithm |
| 17:23:23 | <geekosaur> | :t toList |
| 17:23:24 | <lambdabot> | Foldable t => t a -> [a] |
| 17:23:30 | <phaazon> | I’m a bit confused |
| 17:23:53 | <geekosaur> | yin, how does that differ from toList on a tree that happens to be an acyclic graph? |
| 17:24:33 | <phaazon> | aplainzetakind: I think there might be a rule or something I missed |
| 17:24:40 | <phaazon> | because the trace for the sample looks exactly like what I want |
| 17:24:42 | <phaazon> | https://gist.github.com/phaazon/dddc750231502c371847cc5150294ebe |
| 17:24:51 | <phaazon> | but for the actual input, I end up with a 0 score |
| 17:25:19 | <yin> | geekosaur: toList gives you all the nodes? |
| 17:25:27 | <yin> | i want only the leaves |
| 17:25:45 | <yin> | so it has t be both acyclic and directed |
| 17:26:04 | → | pfurla joins (~pfurla@201.17.118.230) |
| 17:26:19 | <c_wraith> | due to laziness, it's *really* hard to guarantee a data type is acyclic in haskell |
| 17:27:33 | × | emf_ quits (~emf@2620:10d:c090:400::5:6c88) (Ping timeout: 252 seconds) |
| 17:27:53 | <yin> | c_wraith: well... s/acyclic/infinite , technically |
| 17:27:57 | <c_wraith> | But in general, I've used lenses for that sort of thing. Given a lens to get all the children of the current node and a lens to get the value you want, there are combinators to turn that into "get all the leaves" |
| 17:28:00 | <aplainzetakind> | phaazon: ¯\_(ツ)_/¯ |
| 17:28:20 | <aplainzetakind> | phaazon: Do you have the trace for the actual run? |
| 17:30:08 | → | emf joins (~emf@2620:10d:c090:400::5:6c88) |
| 17:30:23 | <raehik> | :t _1 |
| 17:30:24 | <lambdabot> | (Field1 s t a b, Functor f) => (a -> f b) -> s -> f t |
| 17:30:42 | <raehik> | ^ On GHCi 9.2, the following displays: |
| 17:30:54 | <raehik> | Field1 s t a b => Lens s t a b |
| 17:31:03 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 17:31:24 | <raehik> | did :t stop expanding type synonyms in GHC 9.2? I can't find specific detail in the changelogs |
| 17:32:08 | <c_wraith> | type synonyms have a history of changing how they're displayed frequently |
| 17:32:12 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 17:33:01 | × | doyougnu quits (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 17:33:04 | <c_wraith> | eta expanding it removes the type synonym! |
| 17:33:44 | <raehik> | any command to give GHCi to do that? (none of this is a complaint or problem, just interesting) |
| 17:34:44 | <c_wraith> | I just checked to see if there's a :t! analogous to :k! and it does not seem to exist |
| 17:34:57 | <raehik> | yeah, neither anything in :help |
| 17:35:40 | <raehik> | I prefer this way but amusingly it broke doctests in generic-lens |
| 17:35:44 | <phaazon> | aplainzetakind: yes, I also display the boards |
| 17:35:47 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 17:36:45 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 17:36:54 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 17:37:15 | <phaazon> | the trace makes sense |
| 17:37:17 | <c_wraith> | phaazon: note that 0 is a number that can be called (at least in some inputs). If you return that as the last number called in the last board, the score will be zero |
| 17:37:35 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 17:37:37 | → | whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com) |
| 17:37:41 | <phaazon> | at least for the sample |
| 17:37:57 | <phaazon> | c_wraith: I use -1 |
| 17:38:03 | <phaazon> | https://gist.github.com/phaazon/bbbec07d81fb6a05aeb860ac7822b05d |
| 17:39:04 | <c_wraith> | phaazon: I mean it's valid for the output to be 0, given completely correct code. It probably isn't, but it's valid. |
| 17:40:00 | <phaazon> | https://gist.github.com/phaazon/edbf57cf390643ebbcafde0783a3a8b2 |
| 17:40:05 | <phaazon> | the input’s output |
| 17:40:07 | <phaazon> | it’s… weird |
| 17:40:26 | <phaazon> | like the score of the second |
| 17:40:44 | <phaazon> | but yeah, since I multiply by 0… |
| 17:41:08 | <c_wraith> | phaazon: ok, something is definitely wrong. look at line 450, for example |
| 17:41:12 | → | curiousgay joins (~curiousga@77-120-141-90.kha.volia.net) |
| 17:41:20 | <c_wraith> | phaazon: you played until the board was blacked out entirely. that's going too long |
| 17:41:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 17:41:32 | <c_wraith> | phaazon: there was definitely a bingo before the blackout |
| 17:42:13 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 17:42:22 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:42:57 | <phaazon> | I don’t understand how that can happen given I exclude a board at the first win |
| 17:44:44 | <dsal> | When I've got stuck on stuff like this, I've written unit tests for the code I was pretty sure was right. |
| 17:44:46 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 17:44:48 | → | sprout_ joins (~quassel@2a02:a467:ccd6:1:bc10:5f40:71cb:b3b6) |
| 17:45:00 | <c_wraith> | well, evidence shows that the test isn't quite working right |
| 17:45:10 | <c_wraith> | so... time to figure out why |
| 17:47:25 | × | sprout quits (~quassel@2a02:a467:ccd6:1:6993:39fb:9bc8:e953) (Ping timeout: 240 seconds) |
| 17:47:33 | → | mvk joins (~mvk@2607:fea8:5cdd:f000::9788) |
| 17:47:38 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 17:47:57 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:50:41 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 17:50:58 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 17:51:47 | <EvanR> | yeah if your code is split into small functions, and you "verified" each function on the repl, then the whole thing can't be wrong xD |
| 17:51:50 | <EvanR> | (YMMV) |
| 17:53:26 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 17:53:43 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:53:44 | <dsal> | I wrote most of my bugs in the obviously correct parts of the code. |
| 17:54:32 | → | deadmarshal joins (~deadmarsh@95.38.114.2) |
| 17:55:07 | <phaazon> | c_wraith: it’s that kind of puzzles where I’m sure I just didn’t understand a hidden rule |
| 17:55:15 | <phaazon> | I have that with all AoC |
| 17:55:19 | <phaazon> | https://gist.github.com/phaazon/13fdd3bf646dde2ee6153cc25d4507a0 |
| 17:55:25 | <phaazon> | this test all passes |
| 17:55:43 | <c_wraith> | I couldn't be bothered to write complicated code to test whether the game had ended for day 4. so I doubled the size of the problem in exchange for making the test and the calling process much easier. |
| 17:56:57 | <phaazon> | I don’t think it matters that much, because of the exclusion thing |
| 17:57:09 | <phaazon> | if I have excluded everything, it will just be spinning loops until the end of the numbers |
| 17:57:14 | <phaazon> | (and I keep the last score in memory) |
| 17:57:17 | <phaazon> | so |
| 17:57:25 | <phaazon> | :shrug: |
| 17:59:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 17:59:29 | <c_wraith> | the ones running to blackout are the real mystery |
| 17:59:39 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:00:26 | <c_wraith> | because that implies they didn't stop at any of the previous horizontal or vertical checks. |
| 18:01:21 | × | burnsidesLlama quits (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Remote host closed the connection) |
| 18:01:53 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Ping timeout: 268 seconds) |
| 18:01:54 | → | burnsidesLlama joins (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
| 18:02:16 | <c_wraith> | but it sounds like you did the whole problem differently than I did - it sounds like you're running the boards in lockstep. in that case, you need to check for accidental crosstalk between tests |
| 18:02:57 | <dsal> | Yeah, I just ran all of them in parallel. |
| 18:04:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:05:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:05:49 | × | burnsidesLlama quits (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 18:05:49 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 240 seconds) |
| 18:05:52 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 18:08:15 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 18:08:33 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:10:13 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 18:10:31 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:12:11 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 18:12:29 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:12:59 | × | hgolden quits (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Quit: Konversation terminated!) |
| 18:14:13 | × | pfurla quits (~pfurla@201.17.118.230) (Quit: gone to sleep. ZZZzzz…) |
| 18:14:19 | <c_wraith> | phaazon: I have a hypothesis, based on what you said: you're still sending moves to boards that have already won in some cases - ie, your exclusion isn't excluding as much as you hoped |
| 18:15:40 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 18:16:37 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:18:27 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 18:18:45 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:19:10 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 18:19:10 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 18:19:10 | → | wroathe joins (~wroathe@user/wroathe) |
| 18:19:25 | × | myShoggoth quits (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 240 seconds) |
| 18:20:04 | → | Midjak joins (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) |
| 18:21:02 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 18:21:49 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 18:22:21 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:23:45 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 18:24:12 | → | myShoggoth joins (~myShoggot@97-120-85-195.ptld.qwest.net) |
| 18:25:00 | <phaazon> | c_wraith: what do you mean? |
| 18:25:08 | <phaazon> | whenever a board wins, I put its index in an exclusion set |
| 18:25:16 | <phaazon> | and then will never update the board again / check it |
| 18:25:26 | → | lavaman joins (~lavaman@98.38.249.169) |
| 18:26:00 | → | hgolden joins (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
| 18:26:07 | <c_wraith> | well, boards that have already won keep getting played. so either your win detection is buggy or your exclusion set is buggy. |
| 18:26:26 | <c_wraith> | and I'm willing to bet it's the latter |
| 18:26:39 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 18:27:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:27:57 | <dsal> | phaazon: I play each board independently, so there's no kind of exclusion set. |
| 18:27:58 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:28:03 | <dsal> | The nice thing is that you can do them all in parallel. |
| 18:28:18 | <dsal> | `catMaybes $ parMap rseq go boards` |
| 18:29:05 | <phaazon> | c_wraith: keep getting played? |
| 18:29:08 | <phaazon> | what does that mean? |
| 18:29:13 | <phaazon> | a board can win several times? |
| 18:29:25 | <c_wraith> | well, did you look at your output? |
| 18:29:38 | <c_wraith> | there are boards in there which have a lot of wins |
| 18:29:54 | <c_wraith> | clearly they had squares marked off after they had already won |
| 18:30:01 | <c_wraith> | otherwise that couldn't happen |
| 18:30:09 | <dsal> | If you have the concept of an exclusion set, then you have the possibility of that not working the way you think it does. |
| 18:30:23 | <dsal> | If you just play a single board until it completes and then don't have the ability to touch it again, then you can't write that bug. |
| 18:30:43 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 18:30:49 | <EvanR> | yeah there are ways that are simpler than others, and if we insist on them, we lose biodiversity xD |
| 18:31:00 | <phaazon> | I don’t get your point dsal |
| 18:31:01 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 18:31:01 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:31:16 | <phaazon> | I tried both ideas |
| 18:31:18 | <EvanR> | let the special solutions live |
| 18:31:19 | <phaazon> | (keep playing them, etc.) |
| 18:32:04 | <phaazon> | once a board wins (i.e. it has either one row or one column), we shouldn’t include it anymore in the mark algorithm because it’s already won |
| 18:32:15 | <phaazon> | if not, then that’s the kind of « hidden rules » I mentioned above about AoC |
| 18:33:11 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 18:33:19 | <c_wraith> | my point is that you know your code is wrong, and yet keep arguing that it's right |
| 18:33:49 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 240 seconds) |
| 18:33:49 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:34:13 | <c_wraith> | you know it's wrong. you have evidence as to the form of it's incorrectness, based in the trace you posted |
| 18:34:18 | <c_wraith> | *its |
| 18:34:22 | <phaazon> | that’s what I did |
| 18:34:25 | <phaazon> | and the tests are all green |
| 18:34:33 | <c_wraith> | then the tests are wrong |
| 18:34:49 | <c_wraith> | (tests being wrong is the main problem with tests) |
| 18:34:55 | <EvanR> | phaazon, regardless of if a board keeps playing, the "rules" for that day want to know who won first or last |
| 18:35:03 | <EvanR> | so it technically doesn't matter if you keep them going |
| 18:35:04 | <phaazon> | I’m not saying it’s right, I’m saying I don’t get what’s wrong |
| 18:35:28 | <c_wraith> | I've already told you, it's either the win detection or the exclusion mechanism |
| 18:35:29 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 18:35:42 | <c_wraith> | those are the two places the cover the symptoms |
| 18:35:52 | <phaazon> | if the win detection was bugged, I guess I wouldn’t have passed part 1a, 1b and 2a |
| 18:35:56 | <phaazon> | (both input and samples) |
| 18:36:05 | <phaazon> | so I guess it’s the exclusion mechanism |
| 18:36:10 | <EvanR> | it's interesting to go back and figure out why a bug didn't mess up part 1 xD |
| 18:36:11 | <phaazon> | but yet it still passes the sample |
| 18:36:15 | <EvanR> | I had that several times |
| 18:36:22 | → | burnsidesLlama joins (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
| 18:36:28 | <phaazon> | my algorithm is pretty simple |
| 18:36:47 | <phaazon> | I just do the same as part 1 but as soon as a board wins, I place its index in a set and updates the winning score |
| 18:37:06 | <EvanR> | my algorithm is pretty simple, alas IRC doesn't have enough margin space for it |
| 18:37:36 | <c_wraith> | it's almost certain the bug is outside the code you're testing |
| 18:38:07 | <merijn> | How are you detecting wins? |
| 18:38:17 | <c_wraith> | it's in code coordinating the action, rather than the units you have tested |
| 18:38:37 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 18:39:35 | <merijn> | I'm curious what the code looks like |
| 18:39:36 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 18:41:06 | → | jgeerds joins (~jgeerds@55d4ac73.access.ecotel.net) |
| 18:42:02 | <c_wraith> | well, it's in rust. which is probably why phaazon hasn't just posted it to ask for a review. :) |
| 18:42:15 | × | burnsidesLlama quits (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
| 18:44:08 | <EvanR> | oof |
| 18:44:30 | <EvanR> | this isn't the AoC help channel or the rust channel xD |
| 18:44:40 | <geekosaur> | there is always -offtopic |
| 18:45:28 | <EvanR> | hard to understand bugs in your code is why haskell lol |
| 18:45:28 | <phaazon> | merijn: I check columns (any…all…==-1) and rows |
| 18:46:23 | × | ystael quits (~ystael@user/ystael) (Ping timeout: 252 seconds) |
| 18:47:06 | <merijn> | There's an AOC channel too, no? |
| 18:47:17 | <c_wraith> | I didn't see one on this server |
| 18:47:30 | <c_wraith> | maybe it stayed on freenode( |
| 18:48:10 | <dsal> | There are three here I'm in |
| 18:48:16 | <EvanR> | #adventofcode |
| 18:48:25 | <dsal> | #adventofcode-{,help,spoilers} |
| 18:48:29 | <c_wraith> | i wonder why that didn't show up in my search |
| 18:48:41 | ← | halides parts (halides@imases.biss.ee) () |
| 18:49:21 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3) |
| 18:50:36 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 18:52:03 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 18:53:49 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:55:43 | → | Codaraxis__ joins (~Codaraxis@user/codaraxis) |
| 18:58:53 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 18:59:55 | × | Codaraxis_ quits (~Codaraxis@user/codaraxis) (Ping timeout: 256 seconds) |
| 19:01:43 | × | max22- quits (~maxime@2a01cb0883359800374d9426cde47cad.ipv6.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
| 19:03:45 | → | kupi joins (uid212005@id-212005.hampstead.irccloud.com) |
| 19:04:21 | <maerwald> | anyone tried haskell on void linux? |
| 19:06:24 | × | jinsun quits (~quassel@user/jinsun) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 19:06:44 | → | jinsun joins (~quassel@user/jinsun) |
| 19:08:11 | <dsal> | void linux? That sounds absurd |
| 19:09:51 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:10:09 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:10:28 | <maerwald> | why? |
| 19:11:08 | <geekosaur> | bad joke |
| 19:11:17 | <geekosaur> | :t absurd |
| 19:11:18 | <lambdabot> | Void -> a |
| 19:11:53 | <maerwald> | well |
| 19:11:55 | <maerwald> | https://github.com/void-linux/void-packages/issues/11718 |
| 19:11:58 | <maerwald> | there's the first one |
| 19:13:59 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:14:17 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:14:56 | <janus> | lambdadog gets it working on nix in the end |
| 19:16:08 | <geekosaur> | I'm still of the opinion haskeline should try libncurses if libtinfo isn't found |
| 19:16:34 | × | deadmarshal quits (~deadmarsh@95.38.114.2) (Ping timeout: 265 seconds) |
| 19:16:52 | <sm> | could someone remind me of the repo that keeps stack.yaml's for newer GHCs ? |
| 19:17:13 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:17:22 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 19:17:31 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:18:54 | <maerwald> | what stack.yamls? |
| 19:19:26 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 19:19:47 | <sm> | stack.yaml's for newer GHCs, that aren't on stackage.org yet |
| 19:20:02 | <maerwald> | stack.yaml are project files |
| 19:20:09 | <maerwald> | do you mean this? https://github.com/commercialhaskell/stackage-content/blob/master/stack/stack-setup-2.yaml |
| 19:20:46 | × | connrs quits (~connrs@user/connrs) (Quit: ZNC 1.8.2 - https://znc.in) |
| 19:21:17 | <sm> | no, but that looks like it will do (I want GHC 9.2.1, and it looks like stack setup knows how to install that)- thanks |
| 19:22:02 | × | famubu quits (~famubu@14.139.174.50) (Remote host closed the connection) |
| 19:23:01 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 240 seconds) |
| 19:23:31 | <phaazon> | I found my bug |
| 19:23:45 | → | deadmarshal joins (~deadmarsh@95.38.114.2) |
| 19:24:13 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 19:24:48 | <phaazon> | it was… a single keyword :) |
| 19:25:10 | <phaazon> | and it was indeed a cornercase that wasn’t mentioned in the « rules », so I needed an assumption here |
| 19:25:15 | <geekosaur> | didn't someone mention having a && instead of a || earlier? |
| 19:25:31 | <phaazon> | it was a while needed instead of a if :) |
| 19:25:46 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:27:11 | <DigitalKiwi> | so it's fitting that my website https://mostlyabsurd.com features haskell then lol |
| 19:29:09 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:30:27 | → | econo joins (uid147250@user/econo) |
| 19:31:03 | <maerwald> | https://mostlyabsurd.com/pieces/2020/02/05/agdaboi-matte-5x7/ looks fluffy |
| 19:32:43 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:32:43 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Read error: Connection reset by peer) |
| 19:33:01 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:33:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 19:33:32 | → | tfeb joins (~tfb@88.98.95.237) |
| 19:35:42 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:35:59 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 19:36:27 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 19:36:36 | <tomsmeding> | h/urlse |
| 19:36:40 | <tomsmeding> | .... sorry |
| 19:40:36 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
| 19:43:15 | → | yauhsien joins (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) |
| 19:43:51 | → | max22- joins (~maxime@2a01cb08833598003eb627eec416786c.ipv6.abo.wanadoo.fr) |
| 19:45:54 | → | doyougnu joins (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) |
| 19:47:23 | → | ircbrowse_tom joins (~ircbrowse@2a01:4f8:1c1c:9319::1) |
| 19:47:25 | Server | sets mode +Cnt |
| 19:47:38 | × | yauhsien quits (~yauhsien@61-231-32-247.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 19:49:58 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:53:15 | × | tomsmeding quits (~tomsmedin@tomsmeding.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 19:54:13 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 19:55:03 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:56:51 | → | tomsmeding joins (~tomsmedin@tomsmeding.com) |
| 20:01:28 | × | tfeb quits (~tfb@88.98.95.237) (Quit: died) |
| 20:02:15 | nickdaly | is now known as nickdaly-away |
| 20:04:39 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:04:39 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 20:04:39 | → | wroathe joins (~wroathe@user/wroathe) |
| 20:05:05 | × | juhp quits (~juhp@128.106.188.82) (Ping timeout: 256 seconds) |
| 20:06:36 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 20:06:48 | → | juhp joins (~juhp@128.106.188.82) |
| 20:08:18 | × | cyphase quits (~cyphase@user/cyphase) (Ping timeout: 268 seconds) |
| 20:09:13 | <Midjak> | Hello on a fold expression with a function which return a bool is lazyness apply and stop as soon as function returns false ? |
| 20:09:37 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 20:10:26 | <monochrom> | Yes for foldr. |
| 20:10:46 | <monochrom> | But your question wording is very vague. |
| 20:10:56 | → | darchite` joins (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) |
| 20:11:22 | <xsperry> | > foldr (||) True (True : undefined) |
| 20:11:24 | <lambdabot> | True |
| 20:11:58 | <monochrom> | For example, xsperry's example shows that the answer to your worded question can be "no" because you need to s/false/true/ |
| 20:13:01 | <monochrom> | Evidently, "a function which return a bool" is much broader than the one single function you have in mind. (So why didn't you spell it out? What's there to conceal?) |
| 20:14:01 | <Midjak> | well it's not easy to express this. In `foldl (\acc elem -> even elem && acc) True [5, 2, 4]` is this expression evaluate `even 2 && False` ? |
| 20:15:25 | × | myShoggoth quits (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 240 seconds) |
| 20:15:25 | × | Vajb quits (~Vajb@nalkaylds2h97nzof-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 20:15:38 | <Midjak> | I am expecting this stop on first element of the list |
| 20:15:49 | <Midjak> | I am not sure however |
| 20:16:00 | <monochrom> | That expands to: ((even 5 && even 2) && even 4) && True |
| 20:16:10 | <monochrom> | It will not stop early. |
| 20:16:14 | <kuribas> | > foldl (\acc elem -> even elem && acc) True [5, undefined, 4] |
| 20:16:16 | <lambdabot> | *Exception: Prelude.undefined |
| 20:16:20 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 20:16:26 | → | cyphase joins (~cyphase@user/cyphase) |
| 20:16:35 | <kuribas> | > foldl (\acc elem -> even elem && acc) True [5, 2, undefined] |
| 20:16:37 | <lambdabot> | *Exception: Prelude.undefined |
| 20:16:49 | <Midjak> | hummm ok... |
| 20:16:56 | <monochrom> | Perhaps the more important skill is to know how to expand foldl (\acc elem -> even elem && acc) True [5, 2, 4] |
| 20:16:57 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 20:17:41 | <xsperry> | > foldr (\elem acc -> even elem && acc) True [5, 2, undefined] |
| 20:17:42 | <lambdabot> | False |
| 20:18:02 | <Midjak> | what is this undefined ? |
| 20:18:10 | <merijn> | :t undefined |
| 20:18:11 | <lambdabot> | a |
| 20:18:23 | <xsperry> | undefined is everything and nothing :) |
| 20:18:26 | <geekosaur> | undefined just throws an exception |
| 20:18:27 | <kuribas> | > foldl (\acc elem -> even elem && acc) True [undefined, 2, 4] |
| 20:18:28 | <lambdabot> | *Exception: Prelude.undefined |
| 20:19:11 | <kuribas> | > foldl (\acc elem -> even elem && acc) True [undefined, undefined, 3] |
| 20:19:11 | <Midjak> | I mean does I need that for my purpose ? |
| 20:19:13 | <lambdabot> | False |
| 20:19:14 | → | cfricke joins (~cfricke@user/cfricke) |
| 20:19:21 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 20:19:35 | <geekosaur> | no, it's just being used ot prove/disprove early stopping |
| 20:19:41 | <kuribas> | monochrom: that evaluates to ((even 4 && even 2) && even 5) && True |
| 20:19:44 | <merijn> | tbh, any use of undefined besides examples of strictness is probably a mistake |
| 20:19:52 | <geekosaur> | since if it stops early then undefined won't be evaluated and won't throw an exception |
| 20:19:54 | <Midjak> | ah ok geekosaur |
| 20:20:02 | <kuribas> | it does stop early |
| 20:20:07 | <kuribas> | but from the right. |
| 20:20:12 | <Midjak> | ah ok |
| 20:20:41 | <Midjak> | why from the right ? |
| 20:20:50 | <kuribas> | foldl is the reverse of foldr. |
| 20:20:51 | <merijn> | I dislike this terminology of "from the right" and "from the left" when discussing folds, it's usually confusing and ambiguous |
| 20:20:58 | <merijn> | kuribas: Is it? |
| 20:21:16 | <merijn> | Arguably wouldn't, like, scanr be the reverse? :p |
| 20:21:23 | <Midjak> | l is for left en r ids for right no ? |
| 20:21:25 | <geekosaur> | the l/r in foldl/foldr is aboout associativity, not direction of evaluation |
| 20:21:31 | <kuribas> | merijn: reverse direction |
| 20:21:33 | <Midjak> | ok |
| 20:21:49 | <geekosaur> | > foldl f z [a,b,c] |
| 20:21:50 | <lambdabot> | f (f (f z a) b) c |
| 20:21:51 | <monochrom> | even 4 (even 2 && (even 5 && True)). All of us were wrong. |
| 20:21:54 | <merijn> | kuribas: I think "direction" is a bad term for what you see, though. See geekosaur's comment |
| 20:21:55 | <geekosaur> | > foldr f z [a,b,c] |
| 20:21:56 | <lambdabot> | f a (f b (f c z)) |
| 20:22:12 | <kuribas> | monochrom: ah right :) |
| 20:22:14 | <merijn> | kuribas: "left associative" vs "right associative" is less ambiguous than "from the left" or "from the right" |
| 20:22:28 | <kuribas> | merijn: true |
| 20:22:40 | <monochrom> | "from left" and "from right" are OK in Scheme and SML. Haskell laziness made them weird. |
| 20:22:43 | <merijn> | Which directions (due to flawed human brains) tend to also imply evalation orders |
| 20:22:57 | <merijn> | s/Which/Since |
| 20:22:59 | <Midjak> | ok is the reason why foldr function is \x acc -> .. and in foldl \acc x -> .. |
| 20:23:13 | → | perro joins (~perro@072-191-245-069.res.spectrum.com) |
| 20:23:18 | <DigitalKiwi> | foldLeft/foldl => FL => For Loop; foldRight/foldr => fR => constructor Replacement |
| 20:23:24 | <monochrom> | No reason. Arbitrary decision. |
| 20:23:42 | <Midjak> | ok ok |
| 20:24:01 | <kuribas> | > foldl (\acc elem -> even elem && acc) True [5::Expr, 2, 4] |
| 20:24:02 | <lambdabot> | False |
| 20:24:13 | <Midjak> | this kind o rules are very hard for a newbie :-) |
| 20:24:29 | <xsperry> | there's a reason. see on what side is z (which is acc) used in foldl, vs foldr |
| 20:24:31 | <kuribas> | > foldl (\acc elem -> f elem && acc) True [5::Expr, 2, 4] |
| 20:24:33 | <lambdabot> | error: |
| 20:24:33 | <lambdabot> | • No instance for (FromExpr Bool) arising from a use of ‘f’ |
| 20:24:33 | <lambdabot> | • In the first argument of ‘(&&)’, namely ‘f elem’ |
| 20:24:36 | <xsperry> | > foldl f z [a,b,c] |
| 20:24:38 | <lambdabot> | f (f (f z a) b) c |
| 20:24:39 | <xsperry> | > foldr f z [a,b,c] |
| 20:24:41 | <lambdabot> | f a (f b (f c z)) |
| 20:24:50 | <merijn> | Midjak: True. But what helps a lot is "staring at the respective types a long time" |
| 20:24:53 | <monochrom> | What you should dislike is the simpleton mindset that just because a mental model works for your echo chamber, it works universally. |
| 20:25:02 | <DigitalKiwi> | now do infinite lists |
| 20:25:28 | <merijn> | Midjak: Taking a pen & paper and mentally working out what the fold types turn into without your specific function(s) can also be very educational |
| 20:25:43 | <monochrom> | And of course, also beware of the perfectionist mindset: just because a model breaks somewhere, it can't work in a suitable echo chamber. |
| 20:26:25 | <merijn> | monochrom: I don't recall whether it was TaPL or some other book, but one of them in the preface mentioned that early chapters would essentially "lie for educational convenience" :p |
| 20:26:59 | <monochrom> | Yeah, that's the best attitude. |
| 20:27:07 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 20:27:08 | × | aman quits (~aman@user/aman) (Ping timeout: 265 seconds) |
| 20:27:17 | <EvanR> | the docs for vector foldl and foldr literally say "from left to right" and "from right to left" (not necessarily in that order) |
| 20:27:22 | <EvanR> | still boggling |
| 20:27:29 | <merijn> | The goal of models is to usefully predict results of actions. Many people underrate the value of an untrue, but useful to beginners model |
| 20:27:40 | <monochrom> | For vector, that is a correct model. |
| 20:27:51 | <merijn> | EvanR: For vector that is sensible, because operations are generally strict |
| 20:27:57 | <monochrom> | In fact, the actual code probably does exactly that, no more no less. |
| 20:28:04 | <EvanR> | uh which operations? xD |
| 20:28:21 | <EvanR> | the traversal or the visitor |
| 20:28:42 | <EvanR> | i don't see why e.g. toList should be strict |
| 20:28:44 | <merijn> | EvanR: traversals for sure, since the whole traversal goes at once when the new vector is forced |
| 20:28:50 | <Midjak> | merijn, what do you mind by "what helps a lot is "staring at the respective types a long time" |
| 20:28:56 | <Midjak> | *mean |
| 20:28:59 | <merijn> | :t foldl |
| 20:29:00 | <lambdabot> | Foldable t => (b -> a -> b) -> b -> t a -> b |
| 20:29:06 | <merijn> | hmm |
| 20:29:11 | <merijn> | :t Data.List.foldl |
| 20:29:12 | <lambdabot> | Foldable t => (b -> a -> b) -> b -> t a -> b |
| 20:29:16 | <merijn> | oi! |
| 20:29:25 | <merijn> | :t Data.OldList.foldl |
| 20:29:27 | <lambdabot> | error: |
| 20:29:27 | <lambdabot> | Not in scope: ‘Data.OldList.foldl’ |
| 20:29:27 | <lambdabot> | Perhaps you meant one of these: |
| 20:29:36 | <merijn> | pfft, I give up :p |
| 20:29:47 | <EvanR> | that is the type I internalized |
| 20:29:52 | <EvanR> | what were you looking for |
| 20:30:03 | <merijn> | Midjak: Basically, write that on a paper. Take the function you wanna pass to foldl, fill in the 'a' and 'b', see what comes out |
| 20:30:08 | <merijn> | EvanR: The version without Foldable |
| 20:30:12 | <EvanR> | ah |
| 20:30:28 | <merijn> | unnecessary details, and all that |
| 20:30:29 | <EvanR> | :t foldl @[] |
| 20:30:30 | <lambdabot> | error: |
| 20:30:30 | <lambdabot> | Pattern syntax in expression context: foldl@[] |
| 20:30:30 | <lambdabot> | Did you mean to enable TypeApplications? |
| 20:30:35 | <EvanR> | FFFFUUUUUUU |
| 20:30:55 | <merijn> | TypeApplications are bad anyway :p |
| 20:31:04 | <EvanR> | orly? |
| 20:31:52 | <merijn> | Midjak: I find it hard to articulate what the result is, since at this point foldl and foldr feel like second nature. But I distinctly recall repeatedly writing out full types on a white board of whatever I wanted to do with them and achieving an epiphany :p |
| 20:32:32 | <merijn> | Hell, in general, just "working out the types and filling them in manually using pen and paper" is an *entirely* underrated method for getting better at understanding Haskell :) |
| 20:32:42 | → | myShoggoth joins (~myShoggot@97-120-85-195.ptld.qwest.net) |
| 20:33:03 | <kuribas> | merijn: or using a scratch buffer |
| 20:33:06 | <EvanR> | the type of foldl and foldr are basically the same... |
| 20:33:31 | <merijn> | EvanR: For *us* |
| 20:33:33 | <merijn> | Sure |
| 20:33:47 | <EvanR> | which doesn't help discriminate what they do xD |
| 20:33:49 | <merijn> | But I still (vaguely!) remember it all being super mistifying :) |
| 20:34:14 | <merijn> | EvanR: I recall a time where their types seemed very different |
| 20:34:39 | <monochrom> | Generally, basic algebra skills are underrated. |
| 20:34:59 | <monochrom> | http://www.vex.net/~trebla/haskell/prerequisite.xhtml |
| 20:35:04 | <geekosaur> | EvanR, TypeApplictaions can be done in yahb |
| 20:35:37 | <Midjak> | > foldl (\acc elem -> acc && even elem) True [5, 2, 4, undefined] |
| 20:35:38 | <EvanR> | % :t foldl @[] |
| 20:35:38 | <yahb> | EvanR: (b -> a -> b) -> b -> [a] -> b |
| 20:35:39 | <lambdabot> | False |
| 20:35:44 | <merijn> | I do notice that the past few years it's becoming slightly harder to relate to beginners, because it's been so long ago since it was all confusing to me :) |
| 20:36:06 | <Midjak> | thank you merijn |
| 20:36:11 | <Midjak> | I got it I think |
| 20:36:12 | <monochrom> | Even when you were learning "x+y = y+x", for example, it would help to write down "so for example 5+3=3+5, hey that is not intimidating at all!" |
| 20:36:44 | <Midjak> | if I try to expand this it 's clear indeed |
| 20:36:56 | <phaazon> | day 5 was fun :) |
| 20:37:03 | <smichel17[m]> | Hi all. I'm relatively new to Haskell, trying to figure out whether it's feasible to use yesod with tailwindcss— mostly, this is about compile times— and there's absolutely nothing on the internet about it. So I made a repo with basically just the scaffolded site from `stack new` to test on, and a slightly longer write-up here: https://github.com/smichel17/yesod-perf-test/issues/1 |
| 20:37:04 | <smichel17[m]> | If anybody is able to help, that would be amazing :) |
| 20:37:27 | <yin> | is there a performance difference between (>=) and (>=) ? |
| 20:37:46 | <yin> | *(<=) |
| 20:37:47 | <kuribas> | yin: no? :-P |
| 20:37:48 | <smichel17[m]> | (whenever the current conversation is over) |
| 20:37:48 | phaazon | frowns |
| 20:37:54 | <geekosaur> | wuh? those look the same to me |
| 20:38:05 | <yin> | obviously a typo |
| 20:38:12 | <yin> | (<=) and (>=) |
| 20:38:21 | <kuribas> | yin: probably no |
| 20:38:25 | <phaazon> | there should be a GHC rewrite rule to remove the flip? |
| 20:38:57 | <kuribas> | could be done on assembly level. |
| 20:39:02 | <merijn> | yin: Mu |
| 20:39:07 | <phaazon> | could be yeah |
| 20:39:19 | <phaazon> | but I think it would be nicer to have that as a GHC thing rather than a backend (i.e. LLVM) thing |
| 20:39:25 | <phaazon> | to be sure it will be applied everywhere |
| 20:39:36 | <monochrom> | I think the correct answer is "it depends". |
| 20:39:47 | <kuribas> | true, I forget ghc has it's own assembly generator. |
| 20:39:52 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 20:39:59 | <merijn> | That's not the reaosn, though |
| 20:40:12 | <merijn> | The reason is "it depends on how Ord is implemented" |
| 20:40:23 | <merijn> | Which is user code, so god knows |
| 20:40:42 | <phaazon> | :ohno: |
| 20:40:42 | <geekosaur> | time to look at Core if you really care |
| 20:41:03 | <geekosaur> | but I suspect any difference will be minuscule anyway |
| 20:41:04 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 20:41:05 | <merijn> | ealistically most people will use the default implementation going via 'compare' |
| 20:41:11 | <merijn> | So *probably* no difference |
| 20:41:21 | <monochrom> | In most cases, even without rewrite rules, low-level code optimizations may render the difference immaterial. |
| 20:43:45 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 20:43:55 | <hololeap> | % foldMap (\i -> Monoid.First $ if (i == 5) then Just i else Nothing) [0..] |
| 20:43:56 | <yahb> | hololeap: ; <interactive>:1:16: error:; Not in scope: data constructor `Monoid.First'; No module named `Monoid' is imported. |
| 20:43:59 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 20:44:22 | <yin> | Mu? |
| 20:44:22 | <hololeap> | % import qualified Data.Monoid as Monoid |
| 20:44:23 | <yahb> | hololeap: |
| 20:44:29 | <phaazon> | haha |
| 20:44:36 | <phaazon> | day 6 reminds me last year N-body exercise a bit :) |
| 20:44:38 | <hololeap> | % import qualified Data.Semigroup as Semigroup |
| 20:44:38 | <yahb> | hololeap: |
| 20:44:42 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 20:44:42 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 20:44:42 | <hololeap> | % foldMap (\i -> Monoid.First $ if (i == 5) then Just i else Nothing) [0..] |
| 20:44:43 | <yahb> | hololeap: First {getFirst = Just 5} |
| 20:44:52 | <hololeap> | % foldMap (\i -> Semigroup.First <$> if (i == 5) then Just i else Nothing) [0..] |
| 20:44:57 | <yahb> | hololeap: [Timed out] |
| 20:45:05 | <merijn> | yin: Mu is the Zen/koan "non-answer" to a question that is ill-formed and thus has no answer :p |
| 20:45:25 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 20:45:49 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 20:46:15 | <hololeap> | https://hackage.haskell.org/package/base-4.14.3.0/docs/Data-Monoid.html#t:First |
| 20:46:33 | <hololeap> | this says that the two behave the same, which is clearly not true |
| 20:46:58 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 20:47:13 | <merijn> | hololeap: Most claims/laws are in a total setting |
| 20:47:38 | <geekosaur> | uh, did you intend $ vs. <$> ? |
| 20:47:38 | <hololeap> | although I notice they remove all those warnings for Monoid.First in later versions of base |
| 20:47:49 | <hololeap> | yes |
| 20:48:17 | <hololeap> | % foldMap (\i -> Semigroup.First <$> if (i == 5) then Just i else Nothing) [0..10] |
| 20:48:18 | <yahb> | hololeap: ; <interactive>:1:16: error:; Not in scope: data constructor `Semigroup.First'; No module named `Semigroup' is imported. |
| 20:48:37 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.3) |
| 20:48:37 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 20:49:08 | <hololeap> | >>> foldMap (\i -> Semigroup.First <$> if (i == 5) then Just i else Nothing) [0..10] ; Just (First {getFirst = 5}) |
| 20:49:40 | → | bitmapper joins (uid464869@id-464869.lymington.irccloud.com) |
| 20:49:55 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 20:51:16 | <hololeap> | I find Monoid.First to be much more useful, since it will ignore any mappends after the first Just value |
| 20:52:33 | <hololeap> | ignore might not be the correct term here... |
| 20:53:01 | <dsal> | I think you should compare the same code twice |
| 20:53:50 | → | mmhat joins (~mmh@55d45587.access.ecotel.net) |
| 20:54:01 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 20:54:19 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Quit: ERC (IRC client for Emacs 27.1)) |
| 20:55:05 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 20:55:08 | <hololeap> | > This type will be marked deprecated in GHC 8.8, and removed in GHC 8.10 |
| 20:55:30 | <hololeap> | obviously this didn't happen and those warnings are not there in base-4.16, so I actually have nothing to complain about. |
| 20:55:31 | × | slack1256 quits (~slack1256@191.125.99.212) (Ping timeout: 256 seconds) |
| 20:55:47 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 20:57:13 | × | MidAutumnMoon6 quits (~MidAutumn@user/midautumnmoon) (Ping timeout: 256 seconds) |
| 20:57:15 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 20:57:19 | → | cjb joins (~cjb@user/cjb) |
| 20:58:21 | <merijn> | hololeap: I mean, the short circuiting behaviour can also be: |
| 20:58:44 | × | sagax quits (~sagax_nb@user/sagax) (Remote host closed the connection) |
| 20:58:56 | <merijn> | % foldMap (\i -> Data.Monoid.Alt $ if (i == 5) then Just i else Nothing) [0..10] |
| 20:58:56 | <yahb> | merijn: Alt {getAlt = Just 5} |
| 20:59:00 | <merijn> | % foldMap (\i -> Data.Monoid.Alt $ if (i == 5) then Just i else Nothing) [0..] |
| 20:59:01 | <yahb> | merijn: Alt {getAlt = Just 5} |
| 20:59:34 | <hololeap> | oh, that's true. there is Alt on the Maybe Alternative instance |
| 20:59:37 | → | slack1256 joins (~slack1256@191.125.99.210) |
| 20:59:55 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 20:59:56 | <merijn> | Which is mentioned in the First docs, even ;) |
| 21:00:31 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) (Remote host closed the connection) |
| 21:00:40 | <hololeap> | however, it also says "Users are advised to use the variant from Data.Semigroup and wrap it in Maybe." |
| 21:01:23 | <hololeap> | which does not short circuit like Monoid.First does |
| 21:02:41 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 21:03:16 | <hololeap> | bad docs. oh well, they eventually sorted it out. |
| 21:04:31 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 21:04:59 | × | Codaraxis__ quits (~Codaraxis@user/codaraxis) (Ping timeout: 252 seconds) |
| 21:09:01 | × | trillp quits (~user@69.233.98.238) (Ping timeout: 252 seconds) |
| 21:09:48 | → | MidAutumnMoon6 joins (~MidAutumn@user/midautumnmoon) |
| 21:13:23 | × | kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 21:13:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 21:16:16 | <cigsender> | anyone have a link to that mailing list discussion about the use of Prelude.head giving different errors than expected? |
| 21:18:07 | → | acidjnk_new joins (~acidjnk@p200300d0c7271e6304137ec8947839cf.dip0.t-ipconnect.de) |
| 21:18:10 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 21:18:47 | <geekosaur> | I remember the discussion and am looking for it |
| 21:18:55 | × | alx741 quits (~alx741@186.178.108.139) (Ping timeout: 252 seconds) |
| 21:20:14 | <geekosaur> | it was about ghc considering any bottom to be equivalent to any other, so it could produce different bottoms than expected when it knew a bottom would result anyway |
| 21:20:14 | <geekosaur> | ? |
| 21:20:14 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 21:20:16 | <dmj`> | it'd be nice if there was a lens that had insertWith semantics when using += on an IntMap Int |
| 21:21:54 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 21:22:13 | <awpr> | maybe something like `ix 5 . non 0 +~ 42`? |
| 21:22:39 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 21:22:52 | <awpr> | s/ix/at/ |
| 21:24:37 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:25:14 | → | pfurla joins (~pfurla@2804:14d:5c81:4104:c8d2:5d49:1706:3792) |
| 21:25:58 | × | doyougnu quits (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) (Remote host closed the connection) |
| 21:27:00 | <dsal> | The difference between ix and at in this context is that you want the other one. |
| 21:28:09 | <awpr> | `ix`: does nothing if the key is not present; `at 5 . non 0`: pretends the value was 0 if not present |
| 21:28:33 | → | pfurla_ joins (~pfurla@2804:14d:5c81:4104:91cd:1543:8918:bc14) |
| 21:28:49 | <dsal> | ix and at are kind of like folded / traversed in that recipes look very similar depending on whether you're viewing or setting. |
| 21:28:57 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 21:29:15 | → | doyougnu joins (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) |
| 21:30:30 | → | Morrow joins (~quassel@bzq-110-168-31-106.red.bezeqint.net) |
| 21:32:07 | × | pfurla quits (~pfurla@2804:14d:5c81:4104:c8d2:5d49:1706:3792) (Ping timeout: 252 seconds) |
| 21:32:15 | → | learner-monad joins (~ehanneken@user/learner-monad) |
| 21:32:20 | → | alx741 joins (~alx741@186.178.108.36) |
| 21:34:11 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:37:13 | <dmj`> | awpr: that's very nice, thank you |
| 21:37:54 | <dmj`> | awpr: nicer way to solve day 6, https://gist.github.com/479681544942476eb3b271b4d834e2b1 |
| 21:38:26 | × | darchite` quits (~user@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Read error: Connection reset by peer) |
| 21:39:01 | × | myShoggoth quits (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 240 seconds) |
| 21:40:36 | <dmj`> | might come in handy for subsequent days |
| 21:41:15 | <int-e> | dmj`: wah, why do you do that with a State monad rather than something like IM.fromListWith (++) (IM.assocs m >>= next) where next (0,v) = [(6,v),(8,v)]; next (i,v) = [(i-1,v)] |
| 21:41:32 | <geekosaur> | not finding it :( |
| 21:42:05 | <int-e> | dmj`: err, (+) rather than (++) |
| 21:42:29 | → | x88x88x- joins (~cheeg@156.146.57.109) |
| 21:42:31 | × | x88x88x- quits (~cheeg@156.146.57.109) (Remote host closed the connection) |
| 21:43:39 | <gentauro> | hmmm, perhaps a wrong name to use? Nightly should be deliver on a nightly basis right? https://www.stackage.org/nightly-2021-12-04 |
| 21:43:42 | <gentauro> | xD |
| 21:44:02 | → | senoraraton joins (~senorarat@192-195-83-130.static.monkeybrains.net) |
| 21:45:44 | <dmj`> | int-e: that's what I originally did, but used nested calls to insertWith instead of fromListWith (+). I agree the fromListWith solution is nicer since you can use the list monad... IM.fromListWith (+) $ m >>= \(k,v) -> case k of { 0 -> [(6,v),(8,v),(0,-v)]; _ -> [(k,-v),(k-1,v)] } |
| 21:46:33 | <senoraraton> | So I have a statement: gridmaker n k = [ n .. n+k-1 ] : gridmaker (n+k) k I'm trying to understand just exactly what the append operator does in this case. |
| 21:47:49 | <int-e> | dmj`: No, you don't need (0,-v) or (k,-v) in this case; you have these in your code because your state has the old IM, rather than an empty one. |
| 21:48:20 | <dsal> | I just did `IntMap.fromListWith (+) . foldMap' f . IntMap.assocs` where `f (0,n) = [(6,n), (8,n)]; f (x,n) = [(x-1, n)]` |
| 21:48:54 | <dsal> | senoraraton: what are you referring to `:` as the "append operator" ? |
| 21:48:55 | <int-e> | dmj`: And it's the need for those two adjustments that make that State-based code awful in my eyese. |
| 21:50:12 | <senoraraton> | dsal I thought that was what it was called? |
| 21:50:21 | <dsal> | senoraraton: No, that's cons, append is more like <> |
| 21:51:12 | <dsal> | But in your case, you're making a list of numbers starting at n, let's call it `a` and then making a list of `a` followed by a recursive call to `gridmaker` |
| 21:51:46 | <dsal> | e.g., |
| 21:51:49 | <dsal> | @src iterate |
| 21:51:49 | <lambdabot> | iterate f x = x : iterate f (f x) |
| 21:52:03 | <dsal> | > iterate (* 3) 1 |
| 21:52:04 | <lambdabot> | [1,3,9,27,81,243,729,2187,6561,19683,59049,177147,531441,1594323,4782969,143... |
| 21:52:41 | <dsal> | Your is a list of lists and that sometimes confuses people, but it's doing a thing that's similar to what iterate is doing above. |
| 21:52:51 | × | ubert1 quits (~Thunderbi@p200300ecdf0ba2ca8fd37040f9dc92fe.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 21:53:19 | <int-e> | dsal: it's funny how foldMap' and >>= do the same thing here |
| 21:53:29 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e52b:eca6:e736:3c6b) |
| 21:54:09 | <dsal> | int-e: Yeah, it's also funny how vertical my brain gets. I start thinking monoids and the idea of using a monad never occurs to me. |
| 21:56:16 | <dmj`> | int-e: well I needed those cases with the insertWith approach too... https://github.com/dmjio/aoc2021/blob/master/6/Main.hs |
| 21:56:56 | <dsal> | dmj`: Yeah, the point is that it's easier just to make a new map altogether on each iteration. |
| 21:57:07 | <dsal> | Then you only ever add. |
| 21:57:10 | × | pfurla_ quits (~pfurla@2804:14d:5c81:4104:91cd:1543:8918:bc14) (Quit: gone to sleep. ZZZzzz…) |
| 21:57:12 | <int-e> | dmj`: yeah but why would you do step (IM.assocs m) m rather than step (IM.assocs m) IM.empty |
| 21:57:13 | <dsal> | senoraraton: Did the above make sense? |
| 21:58:55 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 21:58:59 | <senoraraton> | dsal: The recursive call makes sense now, I'm just trying to understand how the recursion terminates. |
| 21:59:09 | <dsal> | senoraraton: It doesn't need to. |
| 21:59:16 | <dsal> | Given the snippet you showed, it doesn't. |
| 21:59:19 | <dsal> | iterate doesn't terminate. |
| 21:59:48 | → | burnsidesLlama joins (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
| 22:00:09 | × | jgeerds quits (~jgeerds@55d4ac73.access.ecotel.net) (Quit: Leaving) |
| 22:02:02 | → | ystael joins (~ystael@user/ystael) |
| 22:02:55 | <dmj`> | int-e: oh wow, I didn't see that initially. |
| 22:06:11 | → | pfurla joins (~pfurla@2804:14d:5c81:4104:91cd:1543:8918:bc14) |
| 22:06:13 | × | burnsidesLlama quits (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 22:09:12 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 22:12:18 | → | burnsidesLlama joins (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
| 22:13:54 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
| 22:15:58 | <phaazon> | AoC day 6p2 was fun :P |
| 22:17:51 | × | pepeiborra quits (sid443799@ilkley.irccloud.com) (Ping timeout: 245 seconds) |
| 22:18:07 | <phaazon> | now it’s time to see how jle` solved it :D |
| 22:18:26 | → | sagax joins (~sagax_nb@user/sagax) |
| 22:18:41 | × | bbhoss quits (sid18216@tinside.irccloud.com) (Ping timeout: 245 seconds) |
| 22:19:16 | → | pepeiborra joins (sid443799@id-443799.ilkley.irccloud.com) |
| 22:20:13 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 22:20:13 | → | hskpractice joins (~hskpracti@94-255-217-215.cust.bredband2.com) |
| 22:21:23 | <int-e> | phaazon: the amazing thing about part 2 is that some people struggle with it :) (I can speculate... I guess you might literally maintain a list of lanternfish, or you might stumble over the requirement to handle numbers larger than 32 bits (but not, I think, 64 bits) |
| 22:22:16 | → | bbhoss joins (sid18216@id-18216.tinside.irccloud.com) |
| 22:22:30 | → | azimut_ joins (~azimut@gateway/tor-sasl/azimut) |
| 22:22:54 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 276 seconds) |
| 22:23:54 | → | myShoggoth joins (~myShoggot@97-120-85-195.ptld.qwest.net) |
| 22:24:25 | × | hskpractice quits (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
| 22:25:25 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 22:25:37 | × | curiousgay quits (~curiousga@77-120-141-90.kha.volia.net) (Ping timeout: 256 seconds) |
| 22:25:51 | <phaazon> | int-e: oh it took me a couple of minutes |
| 22:25:57 | <phaazon> | because I started with the wrong approach :) |
| 22:26:07 | <phaazon> | and then I switched my approach and realized I didn’t even need a Vector :D |
| 22:26:49 | <phaazon> | https://github.com/phaazon/advent-of-code-2021/blob/master/day06/src/main.rs |
| 22:27:02 | <phaazon> | my first solution was more « verbatim » regarding the text of the puzzle :) |
| 22:28:50 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 22:29:01 | × | Techcable quits (~Techcable@168.235.93.147) (Ping timeout: 256 seconds) |
| 22:29:53 | <int-e> | phaazon: Yeah the C++-like vector is a list in this context :) |
| 22:30:47 | <phaazon> | :) |
| 22:31:09 | <phaazon> | but yeah I can totally understand why everybody is having fun with meme on reddit regarding this puzzle |
| 22:31:14 | <int-e> | The example in the problem description was, of course, evil. |
| 22:31:17 | <phaazon> | because my first approach was probably theirs :D |
| 22:31:21 | <phaazon> | int-e: yeah |
| 22:33:59 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:36:01 | <Hecate> | 'sup merijn :) |
| 22:38:20 | <dmj`> | some people solved part 2 with a custom rotate on a linked list |
| 22:38:38 | <Franciman> | my goal for the next week is trying to write this https://nullprogram.com/blog/2021/12/04/ in my language |
| 22:38:55 | → | pavonia joins (~user@user/siracusa) |
| 22:39:07 | <Franciman> | this requires I implement SIMD primitives |
| 22:39:12 | <Franciman> | that's going to be raad |
| 22:39:45 | → | lavaman joins (~lavaman@98.38.249.169) |
| 22:40:49 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 22:43:49 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 22:44:00 | × | pfurla quits (~pfurla@2804:14d:5c81:4104:91cd:1543:8918:bc14) (Quit: gone to sleep. ZZZzzz…) |
| 22:44:13 | × | slack1256 quits (~slack1256@191.125.99.210) (Ping timeout: 240 seconds) |
| 22:45:05 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds) |
| 22:45:54 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 22:48:01 | × | kuribas quits (~user@ptr-25vy0i7z7uknhuz4b8c.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 22:49:35 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:51:01 | → | InternetCitizen joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 22:51:30 | <senoraraton> | https://termbin.com/wj9p |
| 22:52:28 | <senoraraton> | So this is where I'm at. I take in two inputs, and I want to use those inputs for gridMaker. I have to convert the String types into Ints which the read does, but I get an error: |
| 22:52:36 | <monochrom> | Did you forget to "w = read width"? |
| 22:52:54 | <senoraraton> | Couldn't match type ‘[]’ with ‘IO’ |
| 22:53:17 | <monochrom> | Did you forget to "print (your formula here)"? |
| 22:53:43 | <geekosaur> | did you forget to do something with the result of take … |
| 22:54:04 | <senoraraton> | I don't intend to print it, at the moment, I just wanted to compile and then deal with what to do with it next. |
| 22:54:12 | → | lavaman joins (~lavaman@98.38.249.169) |
| 22:54:20 | <monochrom> | Then comment it out? |
| 22:54:43 | <monochrom> | Or write like "let foo = your formula here" and then go on to ignore foo? |
| 22:54:54 | <senoraraton> | Sure. ---> |
| 22:55:04 | <geekosaur> | also having the definition of gridMaker between the type signature and implementation of main is confusing, even though it's legal |
| 22:55:31 | <senoraraton> | https://termbin.com/0pxj |
| 22:55:59 | <senoraraton> | I was getting errors when it was in the main=do so I moved it out, and it stopped the errors *shrug* |
| 22:56:38 | <monochrom> | You know that putStrLn is good for strings only, don't you? |
| 22:56:54 | <monochrom> | You also know that you're missing parentheses, don't you? |
| 22:57:12 | <juri_> | oh neat, stack overflow! |
| 22:57:35 | <senoraraton> | No, I knew neither of those things. |
| 22:58:19 | <Axman6> | juri_: it's a pretty cool website, eh |
| 22:58:40 | <juri_> | Axman6: what's it doing in my haskell? :) |
| 22:59:01 | <Axman6> | solving your problems and banning your questions as duplicates, probably |
| 22:59:07 | <monochrom> | The first is discoverable by either taking the docs seriously or from a simple ":type putStrLn". |
| 22:59:42 | <monochrom> | The second is a logical conclusion of "you would write like `take h (gridMaker 1 w)`, not `take h gridMaker 1 w`" |
| 23:01:39 | <senoraraton> | So like this -> https://termbin.com/5c4w I still get an error 'parse error on input 'h'' |
| 23:02:24 | <monochrom> | print (take h ( gridMaker 1 w)) |
| 23:04:00 | <senoraraton> | Ah ha, and now it all makes much more sense. |
| 23:04:13 | × | learner-monad quits (~ehanneken@user/learner-monad) (Ping timeout: 240 seconds) |
| 23:04:44 | × | michalz quits (~michalz@185.246.204.40) (Remote host closed the connection) |
| 23:07:03 | × | emf quits (~emf@2620:10d:c090:400::5:6c88) (Read error: Connection reset by peer) |
| 23:08:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 23:11:56 | <oats> | finally got around to doing AoC day 4 https://github.com/oatberry/aoc2021-haskell/blob/main/src/Day4.hs |
| 23:12:01 | <oats> | lenses are fun |
| 23:13:20 | → | emf joins (~emf@2620:10d:c091:480::1:c2f8) |
| 23:14:35 | → | abrantesasf joins (~abrantesa@187.36.170.211) |
| 23:16:56 | × | azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 23:21:21 | <dsal> | oats: numP == Text.Megaparsec.Char.Lexer.decimal |
| 23:21:53 | <oats> | oh neat, I didn't know about that module |
| 23:22:21 | <oats> | I really want to get more familiar with lens |
| 23:22:59 | <oats> | kinda scary though, so much terminology and scary-looking types |
| 23:23:06 | <dsal> | Yeah, I spent a while getting familiar with parsers on these things. I don't do as much with lens. |
| 23:23:45 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3) |
| 23:24:31 | <Axman6> | senoraraton: you can't use `'s like that, just use brackets: print (take h ( gridMaker 1 w)) |
| 23:25:08 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:25:39 | <dsal> | oats: I don't see anything particularly confusing in the lens stuff, though. I use .~ instead of set. heh |
| 23:25:48 | <Axman6> | senoraraton: also, defining the type signature for main, then randomly sticking in the definition of an unrelated function, and then defining the implementation of maine is pretty odd |
| 23:26:10 | <dsal> | Oh actually, I used lens in day4... |
| 23:26:17 | <oats> | dsal, I don't love using too much infix lens stuff lol |
| 23:26:42 | <dsal> | oats: I did this for detecting wins: https://www.irccloud.com/pastebin/qYCqiEaV/winners.hs |
| 23:26:43 | × | max22- quits (~maxime@2a01cb08833598003eb627eec416786c.ipv6.abo.wanadoo.fr) (Quit: Leaving) |
| 23:27:21 | → | kennyd joins (~bc8165b6@cerf.good1.com) |
| 23:27:24 | <dsal> | colFill and rowFill are counts of numbers at each row and column. When one hits zero, we have a winner. |
| 23:27:59 | <Axman6> | senoraraton: also, you understand that gridmaker is going to make an infinite list right? |
| 23:28:04 | <oats> | hmm, interesting |
| 23:28:13 | <Axman6> | > let gridMaker n k = [ n .. n+k-1 ] : gridMaker (n+k) k in gridMaker 2 3 |
| 23:28:13 | <dsal> | -~ is nice there. :) |
| 23:28:15 | <lambdabot> | [[2,3,4],[5,6,7],[8,9,10],[11,12,13],[14,15,16],[17,18,19],[20,21,22],[23,24... |
| 23:28:17 | <oats> | dsal, is your whole soln up anywhere? |
| 23:28:33 | <dsal> | Not at the moment. Just have my repo in keybase right now. I'll paste it. |
| 23:28:37 | <Axman6> | oh you use take as well, all good |
| 23:29:02 | <dsal> | oats: This is my whole day 4. https://www.irccloud.com/pastebin/wNWecKmJ/day4.hs |
| 23:29:46 | × | xkuru quits (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
| 23:29:52 | <oats> | dsal, I like the way you represent boards, probably more performant than mine |
| 23:29:55 | <dsal> | The parser is a bit lame in that it doesn't detect the board size, I just tell it. |
| 23:30:19 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
| 23:30:30 | <dsal> | The numbers in the board are the sequence of numbers being called. So you an solve each one independently, and then use the map to figure out what the actual called numbers are. |
| 23:32:07 | ← | bontaq parts (~user@ool-45779fe5.dyn.optonline.net) (ERC (IRC client for Emacs 27.1)) |
| 23:32:12 | <dsal> | They're also in order of call. I did some heavy lifting in the parser. |
| 23:32:35 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 23:33:29 | <dsal> | I run benchmarks with one of the larger inputs, but you can see where I put the effort: https://s3.amazonaws.com/public.west.spy.net/tmp/bench-day4.html |
| 23:33:42 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 265 seconds) |
| 23:36:35 | <oats> | I don't love my `findBoard` function, wish there were a nicer way of doing that |
| 23:40:43 | <dsal> | Yeah, I don't quite understand what you're going for there. I just did all of them. Then you could use a monoid or minimum/maximum or similar. |
| 23:42:42 | <dsal> | @hoogle Last |
| 23:42:43 | <lambdabot> | Data.Monoid newtype Last a |
| 23:42:43 | <lambdabot> | Data.Monoid Last :: Maybe a -> Last a |
| 23:42:43 | <lambdabot> | Data.Semigroup newtype Last a |
| 23:44:08 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 23:44:59 | × | lbseale quits (~ep1ctetus@user/ep1ctetus) (Quit: Leaving) |
| 23:45:23 | <EvanR> | cool the fish thing if taken as a matrix turns into pascals triangles |
| 23:45:34 | <EvanR> | day 6 |
| 23:46:16 | <EvanR> | also if coded with loop unrolling i got to day trillion lol |
| 23:47:09 | <dsal> | Somebody did 10^18. That's apparently a large number. |
| 23:48:12 | <dsal> | oats: try either First/Min or Last/Max |
| 23:49:15 | <oats> | dsal: the way I did it, playBingo can calculate out the whole game, and then I wanted a generic way that I could use for part 1 and 2 that will find a board in a round with some criteria |
| 23:49:29 | <oats> | That's what findBoard is doing |
| 23:50:34 | <dsal> | Yeah, I see. It's basically Last. |
| 23:50:50 | <oats> | Hmm, I'll take a look at those in a second, interesting |
| 23:51:01 | <oats> | Hadn't thought Monoid might be useful |
| 23:51:15 | × | dhouthoo quits (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.3) |
| 23:51:17 | ← | abraham parts (~abraham@143.244.185.86) (The Lounge - https://thelounge.chat) |
| 23:51:37 | <dsal> | my part 1 is minimum and my part 2 is maximum, but I could also use foldMap or something to implement winners and have it monoidify the thing for me. |
| 23:52:57 | <dsal> | Something like `winners :: Monoid m => Input -> ((Int, Int) -> m) -> m` |
| 23:55:19 | <dsal> | Actually, switch the first two arguments. Now my part1, 2, and big run are all basically the same. |
| 23:58:09 | → | pfurla joins (~pfurla@2804:14d:5c81:4104:91cd:1543:8918:bc14) |
| 23:59:16 | <dsal> | oats: This way, `winners` doesn't make/return a list. Just the thing I'm interested in. https://www.irccloud.com/pastebin/qIkpC0Gr/winning.hs |
| 23:59:53 | × | darchitect quits (~darchitec@2a00:23c6:3584:df00:7dec:bf13:8fa:748c) (Ping timeout: 252 seconds) |
| 23:59:54 | <dsal> | In the 'biggun' case, that's both the min *and* the max because I just have it do parts 1 and 2 in one pass. |
All times are in UTC on 2021-12-06.