2021/10/30

2021-10-30 00:02:04 +0200zincy_(~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e)
2021-10-30 00:07:58 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-10-30 00:09:34 +0200xff0x(~xff0x@2001:1a81:529e:f300:b22f:69e6:aa77:fd2f) (Ping timeout: 268 seconds)
2021-10-30 00:09:43 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-10-30 00:10:18 +0200xff0x(~xff0x@2001:1a81:529e:f300:d3c7:e134:91d9:4541)
2021-10-30 00:11:40 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2021-10-30 00:16:51 +0200Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-10-30 00:17:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-10-30 00:19:01 +0200kn07_(~kn07_@86.121.23.168) (Quit: Leaving)
2021-10-30 00:19:04 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 00:19:04 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 00:19:04 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 00:19:56 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-10-30 00:22:54 +0200mcglk_(~mcglk@131.191.49.120)
2021-10-30 00:23:32 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-10-30 00:23:47 +0200mcglk(~mcglk@131.191.49.120) (Ping timeout: 260 seconds)
2021-10-30 00:24:05 +0200jespada(~jespada@181.28.253.200)
2021-10-30 00:26:45 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2021-10-30 00:29:47 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 258 seconds)
2021-10-30 00:30:27 +0200jil(~user@160.155.45.49) (ERC (IRC client for Emacs 27.2))
2021-10-30 00:31:09 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz) (Read error: Connection reset by peer)
2021-10-30 00:31:22 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz)
2021-10-30 00:32:50 +0200hyiltiz(~quassel@31.220.5.250) (Quit: hyiltiz)
2021-10-30 00:33:41 +0200hyiltiz(~quassel@31.220.5.250)
2021-10-30 00:35:22 +0200jespada(~jespada@181.28.253.200) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-10-30 00:37:18 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz) (Read error: Connection reset by peer)
2021-10-30 00:37:27 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz)
2021-10-30 00:39:01 +0200f-a(f2a@f2a.jujube.ircnow.org)
2021-10-30 00:39:56 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2021-10-30 00:40:00 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-10-30 00:40:27 +0200 <f-a> I am writing a small haskell program, is there a way GHC can show me *unused* top-level functions in my src/ when I run the program?
2021-10-30 00:40:43 +0200ubert(~Thunderbi@178.115.53.120.wireless.dyn.drei.com)
2021-10-30 00:42:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Lost terminal)
2021-10-30 00:45:59 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-10-30 00:47:38 +0200 <hpc> not at runtime
2021-10-30 00:47:50 +0200 <hpc> ghc has various -Wunused-* flags you can pass
2021-10-30 00:47:58 +0200 <hpc> or maybe hlint
2021-10-30 00:50:36 +0200 <f-a> thanks
2021-10-30 00:55:40 +0200kupi(uid212005@id-212005.hampstead.irccloud.com)
2021-10-30 00:59:33 +0200hyiltiz(~quassel@31.220.5.250) (Quit: hyiltiz)
2021-10-30 01:06:05 +0200fluffyballoon(~user@131.93.208.196) (Ping timeout: 268 seconds)
2021-10-30 01:06:42 +0200 <clever> f-a: also, unused top-level functions will only be warned about if you have explicit exports
2021-10-30 01:06:53 +0200 <clever> if you export everything, then it cant know what is unused in other modules
2021-10-30 01:07:07 +0200zincy_(~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e) (Remote host closed the connection)
2021-10-30 01:07:20 +0200 <f-a> argh, I see
2021-10-30 01:07:52 +0200Farzad(~FarzadBek@37.49.150.10)
2021-10-30 01:13:35 +0200burnsidesLlama(~burnsides@dhcp168-040.wadham.ox.ac.uk) (Remote host closed the connection)
2021-10-30 01:14:07 +0200burnsidesLlama(~burnsides@dhcp168-040.wadham.ox.ac.uk)
2021-10-30 01:14:12 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz) (Ping timeout: 260 seconds)
2021-10-30 01:14:23 +0200proboscis(~proboscis@115-189-132-172.mobile.spark.co.nz)
2021-10-30 01:17:07 +0200max22-(~maxime@2a01cb0883359800df57ac14517550fc.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-10-30 01:18:24 +0200 <dsal> Explicit exports are kind of bad, but generating lots of stuff with TH and having to type up a bunch of exports for code that doesn't exist in the file can be annoying.
2021-10-30 01:18:24 +0200MQ-17J(~MQ-17J@d192-24-122-179.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-10-30 01:18:42 +0200 <dsal> Er, not having explicit exports is kind of bad.
2021-10-30 01:18:59 +0200 <Cajun> also exporting potentially unsafe constructors is obviously not good
2021-10-30 01:18:59 +0200burnsidesLlama(~burnsides@dhcp168-040.wadham.ox.ac.uk) (Ping timeout: 264 seconds)
2021-10-30 01:19:36 +0200unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Remote host closed the connection)
2021-10-30 01:19:59 +0200MQ-17J(~MQ-17J@8.6.144.203)
2021-10-30 01:21:40 +0200tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 260 seconds)
2021-10-30 01:22:50 +0200tomboy64(~tomboy64@user/tomboy64)
2021-10-30 01:24:18 +0200 <energizer> why is there no dynamic language with haskell syntax?
2021-10-30 01:25:24 +0200 <geekosaur> define 'dynamic language'
2021-10-30 01:25:58 +0200 <aegon> maybe they mean interpreted?
2021-10-30 01:26:00 +0200 <energizer> i know it when i see it
2021-10-30 01:26:19 +0200 <aegon> like a ghci vm :?
2021-10-30 01:26:25 +0200 <hpc> you could always defer type errors :D
2021-10-30 01:26:33 +0200 <geekosaur> hugs?
2021-10-30 01:26:56 +0200 <geekosaur> if you mean dynamic typing, there's small issues like pattern matching fundamentally relying on strict typing
2021-10-30 01:28:46 +0200 <geekosaur> also "i know it when i see it" basiclaly makes your question unanswerable, because we can't get into your head to see what you really want
2021-10-30 01:29:08 +0200 <energizer> i think many of us know it when we see it
2021-10-30 01:29:17 +0200 <energizer> what is "strict typing"?
2021-10-30 01:29:29 +0200 <hpc> you'd be surprised how many people are able to see things without knowing them
2021-10-30 01:29:46 +0200 <aegon> i see things without knowing them every day :P
2021-10-30 01:29:55 +0200 <aegon> i'm seeing a screen right now, i could say how it works, but i don't know it
2021-10-30 01:29:56 +0200 <hpc> strict means "types must match", static means "at compile time"
2021-10-30 01:30:01 +0200 <aegon> lets get nit picky!!! :D
2021-10-30 01:30:08 +0200 <energizer> now try this schtick when i say python is statically typed
2021-10-30 01:30:13 +0200 <hpc> (strict typing is also called strong typing)
2021-10-30 01:30:32 +0200 <hpc> weak typing is "the language will do what it can to make things work"
2021-10-30 01:30:42 +0200 <hpc> python is strict and dynamic typed
2021-10-30 01:30:47 +0200 <hpc> haskell is strict and static typed
2021-10-30 01:31:03 +0200 <hpc> perl is weak and static typed
2021-10-30 01:31:05 +0200 <energizer> yeah so pattern matching depending on types seems irrelevant
2021-10-30 01:31:17 +0200 <energizer> since dynamic languages can have strong types
2021-10-30 01:31:25 +0200 <hpc> (its compile-time types are $, @, %, &, and *)
2021-10-30 01:31:38 +0200 <hpc> (when you use the wrong one, it might do something like give you the length of a list, or make a list of one element)
2021-10-30 01:31:57 +0200 <hpc> C is weak and static typed
2021-10-30 01:32:20 +0200 <hpc> its types are sizes, and if you use the wrong size it can sometimes figure things out for you
2021-10-30 01:32:55 +0200 <hpc> (byte = 1, int = cpu-dependent, struct = sum of all field sizes, etc)
2021-10-30 01:34:03 +0200 <monochrom> Racket has pattern matching, yes.
2021-10-30 01:34:11 +0200 <hpc> python has pattern matching
2021-10-30 01:35:11 +0200proboscis(~proboscis@115-189-132-172.mobile.spark.co.nz) (Ping timeout: 260 seconds)
2021-10-30 01:35:14 +0200Domino[m](~dominothe@2001:470:69fc:105::1:271b)
2021-10-30 01:35:40 +0200proboscis(~proboscis@115-189-83-58.mobile.spark.co.nz)
2021-10-30 01:35:58 +0200 <monochrom> But histo-socially, users of dynamic typing don't want haskell syntax in the first place.
2021-10-30 01:37:21 +0200 <hololeap> I don't understand what function composition would look like in a dynamically typed language
2021-10-30 01:37:22 +0200 <geekosaur> I should have specified Haskell's pattern matching, which I consider part of its syntax
2021-10-30 01:37:32 +0200wrengr(~wrengr@150.12.83.34.bc.googleusercontent.com) (Quit: leaving)
2021-10-30 01:37:41 +0200 <hololeap> just passing strings around?
2021-10-30 01:37:55 +0200wrengr(~wrengr@150.12.83.34.bc.googleusercontent.com)
2021-10-30 01:38:05 +0200 <monochrom> But I brought up Racket pattern matching because it's a superset of Haskell pattern matching.
2021-10-30 01:38:57 +0200 <hololeap> hm, nvm that was dumb of me
2021-10-30 01:39:18 +0200 <hololeap> I've used ruby before :p
2021-10-30 01:39:31 +0200 <monochrom> And function composition in Racket looks like (compose f g)
2021-10-30 01:39:50 +0200shailangsa(~shailangs@host217-39-45-200.range217-39.btcentralplus.com)
2021-10-30 01:39:55 +0200ubert(~Thunderbi@178.115.53.120.wireless.dyn.drei.com) (Remote host closed the connection)
2021-10-30 01:40:57 +0200 <hololeap> energizer: when you say "dynamic languages", do you mean so-called "interpreted languages"?
2021-10-30 01:41:29 +0200 <hololeap> https://en.wikipedia.org/wiki/List_of_programming_languages_by_type
2021-10-30 01:41:47 +0200 <hololeap> there's no "dynamic language" section here, so it's hard to pin down a definition
2021-10-30 01:43:18 +0200 <energizer> let's say language with runtime types
2021-10-30 01:43:57 +0200 <monochrom> OK, so dynamic typing.
2021-10-30 01:44:06 +0200 <energizer> regardless of whether it also has static types, like python does
2021-10-30 01:45:17 +0200fef(~thedawn@user/thedawn)
2021-10-30 01:45:34 +0200 <monochrom> Anyone wanna state that Haskell is a dynamic language with Haskell syntax on account that Typeable is runtime type information? >:)
2021-10-30 01:47:06 +0200 <hololeap> or because of typeclasses/polymorphic literals
2021-10-30 01:47:39 +0200 <monochrom> But type classes are completely resolved at link time.
2021-10-30 01:48:23 +0200MQ-17J(~MQ-17J@8.6.144.203) (Ping timeout: 264 seconds)
2021-10-30 01:48:42 +0200MQ-17J(~MQ-17J@8.6.144.203)
2021-10-30 01:48:50 +0200cads(~cads@ip-64-72-99-234.lasvegas.net) (Quit: Leaving)
2021-10-30 01:48:56 +0200 <monochrom> Err that contradicts what I said about Typeable haha.
2021-10-30 01:57:07 +0200acidjnk_new(~acidjnk@p200300d0c7238d89cc95ba723fa3afc9.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-10-30 02:00:03 +0200mcglk_(~mcglk@131.191.49.120) (*.net *.split)
2021-10-30 02:00:03 +0200nehsou^(~nehsou@wsip-98-188-242-6.mc.at.cox.net) (*.net *.split)
2021-10-30 02:00:03 +0200Kaiepi(~Kaiepi@156.34.44.192) (*.net *.split)
2021-10-30 02:00:03 +0200JSharp(sid4580@id-4580.lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:03 +0200bradparker(sid262931@id-262931.uxbridge.irccloud.com) (*.net *.split)
2021-10-30 02:00:03 +0200hendi(sid489601@id-489601.lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:03 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split)
2021-10-30 02:00:03 +0200Sgeo(~Sgeo@user/sgeo) (*.net *.split)
2021-10-30 02:00:03 +0200AlexNoo(~AlexNoo@178.34.163.209) (*.net *.split)
2021-10-30 02:00:03 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (*.net *.split)
2021-10-30 02:00:03 +0200neurocyte0132889(~neurocyte@user/neurocyte) (*.net *.split)
2021-10-30 02:00:03 +0200_xor(~xor@72.49.199.147) (*.net *.split)
2021-10-30 02:00:03 +0200terrorjack(~terrorjac@static.3.200.12.49.clients.your-server.de) (*.net *.split)
2021-10-30 02:00:03 +0200pavonia(~user@user/siracusa) (*.net *.split)
2021-10-30 02:00:04 +0200carter(sid14827@id-14827.helmsley.irccloud.com) (*.net *.split)
2021-10-30 02:00:04 +0200Feuermagier(~Feuermagi@user/feuermagier) (*.net *.split)
2021-10-30 02:00:04 +0200pieguy128_(~pieguy128@bras-base-mtrlpq5031w-grc-48-67-70-102-17.dsl.bell.ca) (*.net *.split)
2021-10-30 02:00:04 +0200AndrewYu(~andrew@user/andrewyu) (*.net *.split)
2021-10-30 02:00:04 +0200sander(~sander@user/sander) (*.net *.split)
2021-10-30 02:00:04 +0200philpax_(sid516926@id-516926.lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:04 +0200dsal(sid13060@id-13060.lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:04 +0200Gestotterd(~Stotteren@pool-108-20-79-41.bstnma.fios.verizon.net) (*.net *.split)
2021-10-30 02:00:04 +0200slowtype-(~slowtyper@2a02:214c:8630:300:654c:f501:742f:b8e4) (*.net *.split)
2021-10-30 02:00:04 +0200d34df00d(~d34df00d@2600:1700:8c60:3a10::48) (*.net *.split)
2021-10-30 02:00:04 +0200martin02(~silas@emasq.stusta.mhn.de) (*.net *.split)
2021-10-30 02:00:04 +0200jneira[m](~jneiramat@2001:470:69fc:105::d729) (*.net *.split)
2021-10-30 02:00:04 +0200nonzen(~nonzen@user/nonzen) (*.net *.split)
2021-10-30 02:00:04 +0200Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split)
2021-10-30 02:00:04 +0200nurupo(~nurupo.ga@user/nurupo) (*.net *.split)
2021-10-30 02:00:04 +0200farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (*.net *.split)
2021-10-30 02:00:04 +0200jocke-l(jocke-l@a.x0.is) (*.net *.split)
2021-10-30 02:00:04 +0200oxytocat(~alloca@user/suppi) (*.net *.split)
2021-10-30 02:00:04 +0200defanor(~defanor@tart.uberspace.net) (*.net *.split)
2021-10-30 02:00:04 +0200xerox(~edi@user/edi) (*.net *.split)
2021-10-30 02:00:04 +0200lstor(~lstor@user/lstor) (*.net *.split)
2021-10-30 02:00:04 +0200dolio(~dolio@130.44.130.54) (*.net *.split)
2021-10-30 02:00:04 +0200n3t(n3t@user/n3t) (*.net *.split)
2021-10-30 02:00:04 +0200unmanbearpig(~unmanbear@user/unmanbearpig) (*.net *.split)
2021-10-30 02:00:04 +0200NemesisD(sid24071@lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200kristjansson_(sid126207@tinside.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200sa(sid1055@tinside.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200grfn(sid449115@helmsley.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200teehemkay(sid14792@lymington.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200mcfilib(sid302703@user/mcfilib) (*.net *.split)
2021-10-30 02:00:05 +0200haasn(~nand@haasn.dev) (*.net *.split)
2021-10-30 02:00:05 +0200mniip(~mniip@libera/staff/mniip) (*.net *.split)
2021-10-30 02:00:05 +0200ggVGc(~ggVGc@a.lowtech.earth) (*.net *.split)
2021-10-30 02:00:05 +0200tinwood(~tinwood@canonical/tinwood) (*.net *.split)
2021-10-30 02:00:05 +0200truckasaurus(sid457088@helmsley.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200urdh(~urdh@user/urdh) (*.net *.split)
2021-10-30 02:00:05 +0200ehamberg(sid18208@hampstead.irccloud.com) (*.net *.split)
2021-10-30 02:00:05 +0200tritlo(sid58727@user/tritlo) (*.net *.split)
2021-10-30 02:00:05 +0200tomku(~tomku@user/tomku) (*.net *.split)
2021-10-30 02:00:05 +0200Teacup(~teacup@user/teacup) (*.net *.split)
2021-10-30 02:00:05 +0200absence(torgeihe@hildring.pvv.ntnu.no) (*.net *.split)
2021-10-30 02:00:05 +0200kevin[m]1(~pnotequal@2001:470:69fc:105::a54) (*.net *.split)
2021-10-30 02:00:05 +0200sudden(~cat@user/sudden) (*.net *.split)
2021-10-30 02:00:05 +0200opqdonut(opqdonut@pseudo.fixme.fi) (*.net *.split)
2021-10-30 02:00:05 +0200rembo10(~rembo10@remulis.com) (*.net *.split)
2021-10-30 02:00:05 +0200sayola(~vekto@dslb-002-201-085-156.002.201.pools.vodafone-ip.de) (*.net *.split)
2021-10-30 02:00:05 +0200Trattue(~Trattue@152.70.182.158) (*.net *.split)
2021-10-30 02:00:05 +0200eL_Bart0(eL_Bart0@dietunichtguten.org) (*.net *.split)
2021-10-30 02:00:05 +0200thaumavorio(~thaumavor@thaumavor.io) (*.net *.split)
2021-10-30 02:00:05 +0200Sqaure(~a@178.62.91.8) (*.net *.split)
2021-10-30 02:00:13 +0200absence(~absence@hildring.pvv.ntnu.no)
2021-10-30 02:00:15 +0200tinwood(~tinwood@general.default.akavanagh.uk0.bigv.io)
2021-10-30 02:00:17 +0200tomku(~tomku@user/tomku)
2021-10-30 02:00:17 +0200sudden(~cat@h-98-128-128-173.A351.priv.bahnhof.se)
2021-10-30 02:00:18 +0200defanor(~defanor@tart.uberspace.net)
2021-10-30 02:00:19 +0200rembo10(~rembo10@remulis.com)
2021-10-30 02:00:22 +0200nehsou^(~nehsou@wsip-98-188-242-6.mc.at.cox.net)
2021-10-30 02:00:23 +0200sayola(~vekto@dslb-002-201-085-156.002.201.pools.vodafone-ip.de)
2021-10-30 02:00:24 +0200Trattue(~Trattue@152.70.182.158)
2021-10-30 02:00:24 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:6419:933b:46e0:8942)
2021-10-30 02:00:25 +0200ggVGc(~ggVGc@a.lowtech.earth)
2021-10-30 02:00:26 +0200Kaiepi(~Kaiepi@156.34.44.192)
2021-10-30 02:00:31 +0200pavonia(~user@ip5f5bf406.dynamic.kabel-deutschland.de)
2021-10-30 02:00:32 +0200NemesisD(sid24071@id-24071.lymington.irccloud.com)
2021-10-30 02:00:33 +0200teehemkay(sid14792@lymington.irccloud.com)
2021-10-30 02:00:36 +0200farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505)
2021-10-30 02:00:37 +0200dsal(sid13060@id-13060.lymington.irccloud.com)
2021-10-30 02:00:38 +0200tinwood(~tinwood@general.default.akavanagh.uk0.bigv.io) (Changing host)
2021-10-30 02:00:38 +0200tinwood(~tinwood@canonical/tinwood)
2021-10-30 02:00:38 +0200truckasaurus(sid457088@id-457088.helmsley.irccloud.com)
2021-10-30 02:00:38 +0200mcfilib(sid302703@id-302703.helmsley.irccloud.com)
2021-10-30 02:00:39 +0200oxytocat(~alloca@2a03:4000:f:7ca:7407:d1ff:fe34:8cd0)
2021-10-30 02:00:43 +0200suddenGuest4382
2021-10-30 02:00:44 +0200mniip(mniip@libera/staff/mniip)
2021-10-30 02:00:44 +0200AndrewYu(~andrew@andrewyu.org)
2021-10-30 02:00:45 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:6419:933b:46e0:8942) (Changing host)
2021-10-30 02:00:45 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-10-30 02:00:46 +0200bradparker(sid262931@uxbridge.irccloud.com)
2021-10-30 02:00:46 +0200philpax_(sid516926@lymington.irccloud.com)
2021-10-30 02:00:46 +0200Raito_Bezarius(~Raito@2a01:e0a:5f9:9681:a0a0:bb76:611f:9da7)
2021-10-30 02:00:47 +0200JSharp(sid4580@id-4580.lymington.irccloud.com)
2021-10-30 02:00:47 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 02:00:48 +0200dolio(~dolio@130.44.130.54)
2021-10-30 02:00:50 +0200slowtyper(~slowtyper@2a02:214c:8630:300:225:64ff:feb7:4668)
2021-10-30 02:00:54 +0200hendi(sid489601@id-489601.lymington.irccloud.com)
2021-10-30 02:00:54 +0200pavonia(~user@ip5f5bf406.dynamic.kabel-deutschland.de) (Changing host)
2021-10-30 02:00:55 +0200pavonia(~user@user/siracusa)
2021-10-30 02:00:55 +0200sa(sid1055@id-1055.tinside.irccloud.com)
2021-10-30 02:00:59 +0200neurocyte0132889(~neurocyte@46.243.81.22)
2021-10-30 02:01:00 +0200jocke-l(jocke-l@a.x0.is)
2021-10-30 02:01:00 +0200ehamberg(sid18208@id-18208.hampstead.irccloud.com)
2021-10-30 02:01:05 +0200unmanbearpig(~unmanbear@45.76.95.141)
2021-10-30 02:01:09 +0200n3t(n3t@s45.mydevil.net)
2021-10-30 02:01:11 +0200opqdonut(opqdonut@pseudo.fixme.fi)
2021-10-30 02:01:13 +0200grfn(sid449115@helmsley.irccloud.com)
2021-10-30 02:01:15 +0200mcfilib(sid302703@id-302703.helmsley.irccloud.com) (Changing host)
2021-10-30 02:01:15 +0200mcfilib(sid302703@user/mcfilib)
2021-10-30 02:01:16 +0200tritlo(sid58727@id-58727.hampstead.irccloud.com)
2021-10-30 02:01:16 +0200eL_Bart0(eL_Bart0@dietunichtguten.org)
2021-10-30 02:01:22 +0200AndrewYu(~andrew@andrewyu.org) (Changing host)
2021-10-30 02:01:22 +0200AndrewYu(~andrew@user/andrewyu)
2021-10-30 02:01:24 +0200carter(sid14827@id-14827.helmsley.irccloud.com)
2021-10-30 02:01:26 +0200slowtyper(~slowtyper@2a02:214c:8630:300:225:64ff:feb7:4668) (Changing host)
2021-10-30 02:01:26 +0200slowtyper(~slowtyper@user/slowtyper)
2021-10-30 02:01:28 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 02:01:28 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 02:01:35 +0200_xor(~xor@72.49.199.147)
2021-10-30 02:01:37 +0200neurocyte0132889(~neurocyte@46.243.81.22) (Changing host)
2021-10-30 02:01:37 +0200neurocyte0132889(~neurocyte@user/neurocyte)
2021-10-30 02:01:43 +0200tritlo(sid58727@id-58727.hampstead.irccloud.com) (Changing host)
2021-10-30 02:01:43 +0200tritlo(sid58727@user/tritlo)
2021-10-30 02:01:53 +0200pieguy128(~pieguy128@bas1-quebec14-67-70-102-17.dsl.bell.ca)
2021-10-30 02:01:53 +0200onionyin
2021-10-30 02:02:12 +0200nurupo(~nurupo.ga@user/nurupo)
2021-10-30 02:02:18 +0200jneira[m](~jneiramat@2001:470:69fc:105::d729)
2021-10-30 02:02:20 +0200sander(~sander@user/sander)
2021-10-30 02:02:30 +0200Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2021-10-30 02:02:35 +0200haasn(~nand@haasn.dev)
2021-10-30 02:02:41 +0200kristjansson_(sid126207@tinside.irccloud.com)
2021-10-30 02:02:43 +0200nonzen(~nonzen@user/nonzen)
2021-10-30 02:02:47 +0200martin02(~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1)
2021-10-30 02:03:00 +0200OscarH(~OscarH@90.201.86.195)
2021-10-30 02:03:03 +0200Teacup(~teacup@user/teacup)
2021-10-30 02:03:09 +0200urdh(~urdh@user/urdh)
2021-10-30 02:03:11 +0200terrorjack(~terrorjac@static.3.200.12.49.clients.your-server.de)
2021-10-30 02:03:31 +0200thaumavorio(~thaumavor@thaumavor.io)
2021-10-30 02:05:11 +0200lstor(~lstor@user/lstor)
2021-10-30 02:05:11 +0200mcglk(~mcglk@131.191.49.120)
2021-10-30 02:05:11 +0200xerox(~edi@user/edi)
2021-10-30 02:05:11 +0200kevin[m]1(~pnotequal@2001:470:69fc:105::a54)
2021-10-30 02:05:28 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-10-30 02:07:30 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2021-10-30 02:08:20 +0200xsperry(~xs@user/xsperry)
2021-10-30 02:08:22 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2021-10-30 02:10:01 +0200fendor(~fendor@178.115.69.81.wireless.dyn.drei.com) (Remote host closed the connection)
2021-10-30 02:18:33 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-10-30 02:19:28 +0200guniberas(~guniberas@42.191.188.121)
2021-10-30 02:20:00 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2021-10-30 02:21:30 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2021-10-30 02:22:05 +0200trillp(~trillp@69.233.98.238)
2021-10-30 02:29:31 +0200Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
2021-10-30 02:31:23 +0200Square(~a@178.62.91.8)
2021-10-30 02:33:30 +0200dustee(~dustee@63.81.59.158)
2021-10-30 02:35:16 +0200dajoer(~david@user/gvx)
2021-10-30 02:37:42 +0200n3t(n3t@s45.mydevil.net) (Changing host)
2021-10-30 02:37:42 +0200n3t(n3t@user/n3t)
2021-10-30 02:42:07 +0200Null_A(~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Remote host closed the connection)
2021-10-30 02:42:13 +0200dustee(~dustee@63.81.59.158) ()
2021-10-30 02:42:42 +0200Null_A(~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3)
2021-10-30 02:47:11 +0200Null_A(~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Ping timeout: 264 seconds)
2021-10-30 02:49:11 +0200alx741(~alx741@181.196.69.253) (Quit: alx741)
2021-10-30 02:49:58 +0200iqubic(~user@2601:602:9502:c70:367a:1ecd:9a9a:53e8)
2021-10-30 02:52:00 +0200Farzad(~FarzadBek@37.49.150.10) (Ping timeout: 260 seconds)
2021-10-30 02:52:11 +0200 <iqubic> I wish there was a unified API for Sets and Maps. I want a way to write a single mapping function that could take a Set and modify the values or it could take a Map and modify the keys.
2021-10-30 02:53:17 +0200lbseale(~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
2021-10-30 02:53:42 +0200 <iqubic> This is slightly different from fmap. Because while fmap will modify the values in a Set, it will also modify the values in a Map and not touch the Keys.
2021-10-30 03:01:30 +0200 <dsal> Sets are Foldable.
2021-10-30 03:01:34 +0200 <aegon> iqubic: changing the key of a value on a map is afaik not normally a Map thing
2021-10-30 03:01:56 +0200 <aegon> maps store static keys -> possibly mutable values
2021-10-30 03:02:11 +0200proboscis(~proboscis@115-189-83-58.mobile.spark.co.nz) (Ping timeout: 264 seconds)
2021-10-30 03:02:51 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 268 seconds)
2021-10-30 03:02:56 +0200 <iqubic> aegon, that makes a lot of sense.
2021-10-30 03:03:06 +0200 <dsal> > foldMap (S.singleton . (*2)) $ S.fromList [1, 2, 2]
2021-10-30 03:03:07 +0200 <lambdabot> fromList [2,4]
2021-10-30 03:03:52 +0200 <iqubic> dsal: I'm afraid I don't understand what that code is doing?
2021-10-30 03:04:09 +0200 <iqubic> Is that modifying the Keys in the map?
2021-10-30 03:04:17 +0200 <dsal> That's a Set, not a map.
2021-10-30 03:04:35 +0200 <dsal> It's doing basically the same thing as `fmap (*2) [1, 2, 2]` but with a Set instead of a list.
2021-10-30 03:04:38 +0200 <dsal> :t foldMap
2021-10-30 03:04:39 +0200 <lambdabot> (Foldable t, Monoid m) => (a -> m) -> t a -> m
2021-10-30 03:04:48 +0200artemis(~artemis@user/artemis) (Ping timeout: 260 seconds)
2021-10-30 03:04:49 +0200 <iqubic> Right. Is it possible to modify the Keys of a Map?
2021-10-30 03:05:04 +0200 <aegon> i think to change the keys you'd have to remove the old and andd a new in a transaction so probably put it in an MVar or you could create a whole new map every time
2021-10-30 03:05:24 +0200 <aegon> it sounds like if you want to perform operations on the keys your looking for something aside from a Map though
2021-10-30 03:05:26 +0200kupi(uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-10-30 03:05:36 +0200 <iqubic> Yeah. I agree.
2021-10-30 03:05:59 +0200 <dsal> Well, if I'm really sloppy with what you're saying then there's `mapWithKey` but doing just the keys in isolation doesn't make any sense at all. There's not enough information.
2021-10-30 03:06:02 +0200proboscis(~proboscis@115-189-133-238.mobile.spark.co.nz)
2021-10-30 03:06:29 +0200 <iqubic> I've gotten the interface I want. It's fine now.
2021-10-30 03:07:37 +0200artemis(~artemis@user/artemis)
2021-10-30 03:09:36 +0200 <dsal> Actually, other way around...
2021-10-30 03:09:38 +0200 <dsal> > M.mapKeysWith (const ) (*2) $ M.fromList [(1, "a"), (2, "b"), (3, "c")]
2021-10-30 03:09:39 +0200 <lambdabot> fromList [(2,"a"),(4,"b"),(6,"c")]
2021-10-30 03:09:53 +0200 <dsal> > M.mapKeysWith const odd $ M.fromList [(1, "a"), (2, "b"), (3, "c")]
2021-10-30 03:09:54 +0200 <lambdabot> fromList [(False,"b"),(True,"c")]
2021-10-30 03:10:15 +0200 <dsal> This one at least lets you decide what to do on collision.
2021-10-30 03:10:38 +0200 <dsal> > M.mapKeys odd $ M.fromList [(1, "a"), (2, "b"), (3, "c")]
2021-10-30 03:10:39 +0200 <lambdabot> fromList [(False,"b"),(True,"c")]
2021-10-30 03:10:43 +0200 <dsal> Otherwise, it'll choose for you.
2021-10-30 03:10:49 +0200 <dsal> > M.mapKeys show $ M.fromList [(1, "a"), (2, "b"), (3, "c")]
2021-10-30 03:10:50 +0200 <lambdabot> fromList [("1","a"),("2","b"),("3","c")]
2021-10-30 03:12:09 +0200 <aegon> dsal: i guess this digs into how Data.Map is optimized, but wouldnt that seriously jumble cache coherency on using the map? in an OO langauge that would be recreating the map but i'm not sure if thats as much of a concern in Data.Map land
2021-10-30 03:12:11 +0200proboscis(~proboscis@115-189-133-238.mobile.spark.co.nz) (Ping timeout: 245 seconds)
2021-10-30 03:12:48 +0200 <dsal> I'd assume rekeying a map is not going to be a cheap process in general.
2021-10-30 03:14:10 +0200 <iqubic> I'm no longer wanting to rekey a map. I've rethought my API here and I've realized that just using a different data structure makes more sense in general.
2021-10-30 03:14:58 +0200neurocyte0132889(~neurocyte@user/neurocyte) (Ping timeout: 268 seconds)
2021-10-30 03:15:14 +0200proboscis(~proboscis@115-189-129-63.mobile.spark.co.nz)
2021-10-30 03:15:21 +0200_xor(~xor@72.49.199.147) (Quit: WeeChat 3.3)
2021-10-30 03:15:32 +0200_xor(~xor@72.49.199.147)
2021-10-30 03:16:23 +0200alzgh(~alzgh@user/alzgh) (Remote host closed the connection)
2021-10-30 03:19:32 +0200mmhat(~mmh@55d4be4b.access.ecotel.net) (Quit: WeeChat 3.3)
2021-10-30 03:19:35 +0200proboscis(~proboscis@115-189-129-63.mobile.spark.co.nz) (Ping timeout: 264 seconds)
2021-10-30 03:20:39 +0200proboscis(~proboscis@115-189-134-103.mobile.spark.co.nz)
2021-10-30 03:22:54 +0200betelgeuse(~betelgeus@94-225-47-8.access.telenet.be)
2021-10-30 03:23:47 +0200yrlnry(~mjd@pool-74-109-22-90.phlapa.fios.verizon.net) (Ping timeout: 264 seconds)
2021-10-30 03:24:03 +0200vicfred(~vicfred@user/vicfred)
2021-10-30 03:24:13 +0200brettgilio(~brettgili@x-node.gq) (Quit: Leaving...)
2021-10-30 03:27:25 +0200brettgilio(~brettgili@x-node.gq)
2021-10-30 03:31:19 +0200trillp(~trillp@69.233.98.238) (Quit: nyaa~)
2021-10-30 03:33:01 +0200proboscis(~proboscis@115-189-134-103.mobile.spark.co.nz) (Ping timeout: 245 seconds)
2021-10-30 03:33:40 +0200ceedon(~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net)
2021-10-30 03:33:54 +0200proboscis(~proboscis@115-189-134-232.mobile.spark.co.nz)
2021-10-30 03:35:59 +0200yinonion
2021-10-30 03:37:41 +0200ceedon(~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) (Remote host closed the connection)
2021-10-30 03:39:37 +0200ceedon(~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net)
2021-10-30 03:43:59 +0200xff0x(~xff0x@2001:1a81:529e:f300:d3c7:e134:91d9:4541) (Ping timeout: 260 seconds)
2021-10-30 03:44:02 +0200onionyin
2021-10-30 03:44:16 +0200ceedon(~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) (Ping timeout: 245 seconds)
2021-10-30 03:45:39 +0200xff0x(~xff0x@2001:1a81:52e0:c000:6019:bb95:26f0:c29b)
2021-10-30 03:47:46 +0200yinonion
2021-10-30 03:49:05 +0200onionoion
2021-10-30 03:49:17 +0200oiononion
2021-10-30 03:50:47 +0200proboscis(~proboscis@115-189-134-232.mobile.spark.co.nz) (Ping timeout: 264 seconds)
2021-10-30 03:52:05 +0200proboscis(~proboscis@115-189-86-19.mobile.spark.co.nz)
2021-10-30 04:04:53 +0200onionyin
2021-10-30 04:06:05 +0200proboscis(~proboscis@115-189-86-19.mobile.spark.co.nz) (Ping timeout: 264 seconds)
2021-10-30 04:06:43 +0200proboscis(~proboscis@115-189-85-1.mobile.spark.co.nz)
2021-10-30 04:06:43 +0200myShoggoth(~myShoggot@97-120-85-195.ptld.qwest.net) (Quit: Leaving)
2021-10-30 04:06:51 +0200yinzzz
2021-10-30 04:15:20 +0200 <lechner> Hi, can Database.PostgreSQL.Simple connect custom database types like pg-semver with the Haskell semver type, or should I go via text() in the query? Thanks!
2021-10-30 04:15:32 +0200Feuermagier(~Feuermagi@user/feuermagier) (Quit: Leaving)
2021-10-30 04:15:43 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-10-30 04:17:14 +0200proboscis(~proboscis@115-189-85-1.mobile.spark.co.nz) (Ping timeout: 246 seconds)
2021-10-30 04:17:45 +0200proboscis(~proboscis@115-189-81-242.mobile.spark.co.nz)
2021-10-30 04:28:26 +0200proboscis(~proboscis@115-189-81-242.mobile.spark.co.nz) (Ping timeout: 246 seconds)
2021-10-30 04:29:12 +0200proboscis(~proboscis@115-189-86-194.mobile.spark.co.nz)
2021-10-30 04:29:29 +0200artemis(~artemis@user/artemis) (Ping timeout: 264 seconds)
2021-10-30 04:30:15 +0200artemis(~artemis@user/artemis)
2021-10-30 04:36:15 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2021-10-30 04:36:59 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2021-10-30 04:37:36 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 245 seconds)
2021-10-30 04:38:43 +0200tungki(~tungki@subs31-116-206-15-39.three.co.id)
2021-10-30 04:39:44 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-10-30 04:45:56 +0200proboscis(~proboscis@115-189-86-194.mobile.spark.co.nz) (Ping timeout: 245 seconds)
2021-10-30 04:46:46 +0200proboscis(~proboscis@115-189-81-196.mobile.spark.co.nz)
2021-10-30 04:48:05 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Ping timeout: 260 seconds)
2021-10-30 04:48:25 +0200 <iqubic> What does the Foldable instance for Data.Map do? Would the toList function get a list of keys, or a list of values?
2021-10-30 04:52:16 +0200Sgeo(~Sgeo@user/sgeo)
2021-10-30 04:53:04 +0200td_(~td@muedsl-82-207-238-132.citykom.de) (Ping timeout: 260 seconds)
2021-10-30 04:54:23 +0200xff0x(~xff0x@2001:1a81:52e0:c000:6019:bb95:26f0:c29b) (Ping timeout: 264 seconds)
2021-10-30 04:54:40 +0200td_(~td@muedsl-82-207-238-253.citykom.de)
2021-10-30 04:56:00 +0200xff0x(~xff0x@2001:1a81:52f0:9300:e3ac:46aa:98d2:36ad)
2021-10-30 04:56:15 +0200yushyin(0Ujx9gMz8O@karif.server-speed.net) (Quit: WeeChat 3.3)
2021-10-30 04:56:27 +0200yushyin(vmwyqzEgOc@karif.server-speed.net)
2021-10-30 04:56:51 +0200 <c_wraith> iqubic: looking at the type should answer that
2021-10-30 04:57:02 +0200 <iqubic> Yeah. I've figure it out now.
2021-10-30 04:57:24 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 04:58:35 +0200proboscis(~proboscis@115-189-81-196.mobile.spark.co.nz) (Ping timeout: 265 seconds)
2021-10-30 04:59:13 +0200proboscis(~proboscis@115-189-82-114.mobile.spark.co.nz)
2021-10-30 04:59:51 +0200fef(~thedawn@user/thedawn) (Quit: Leaving)
2021-10-30 05:06:06 +0200proboscis(~proboscis@115-189-82-114.mobile.spark.co.nz) (Read error: Connection reset by peer)
2021-10-30 05:06:23 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz)
2021-10-30 05:15:50 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2021-10-30 05:16:09 +0200ishutin(~ishutin@92-249-141-159.pool.digikabel.hu) (Read error: Connection reset by peer)
2021-10-30 05:16:32 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-10-30 05:16:53 +0200td_(~td@muedsl-82-207-238-253.citykom.de) (Ping timeout: 264 seconds)
2021-10-30 05:18:09 +0200td_(~td@muedsl-82-207-238-113.citykom.de)
2021-10-30 05:18:32 +0200ishutin(~ishutin@62-165-208-189.pool.digikabel.hu)
2021-10-30 05:20:14 +0200betelgeuse(~betelgeus@94-225-47-8.access.telenet.be) (Ping timeout: 246 seconds)
2021-10-30 05:23:13 +0200 <dsal> lechner: not sure about the specific types you're referring to, but it can do some quite flexible things
2021-10-30 05:26:11 +0200 <sm> anybody running haskell on macos monterey ? any problems ?
2021-10-30 05:26:49 +0200 <ski> % :t Data.Map.toList @(Data.Map.Map Int String)
2021-10-30 05:26:49 +0200 <yahb> ski: Map (Map Int String) a -> [(Map Int String, a)]
2021-10-30 05:27:36 +0200 <ski> % :t Data.Foldable.toList @(Data.Map.Map Int)
2021-10-30 05:27:36 +0200 <yahb> ski: Map Int a -> [a]
2021-10-30 05:41:19 +0200 <lechner> dsal: thanks!
2021-10-30 05:43:05 +0200 <dsal> lechner: just got to a computer and looked. Yeah, basically you'd just need one of these: https://hackage.haskell.org/package/postgresql-simple-0.6.4/docs/Database-PostgreSQL-Simple-FromFi… (and the other direction)
2021-10-30 05:44:10 +0200 <dsal> Towards the DB is pretty easy because you just need to get a ByteString or something. From the DB, you'll get a lot of metadata and a bytestring
2021-10-30 05:45:56 +0200 <lechner> dsal: that looks great!
2021-10-30 05:48:22 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 265 seconds)
2021-10-30 05:50:05 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-10-30 06:02:19 +0200burakcank(burakcank@has.arrived.and.is.ready-to.party) (Ping timeout: 252 seconds)
2021-10-30 06:07:29 +0200tungki(~tungki@subs31-116-206-15-39.three.co.id) (Remote host closed the connection)
2021-10-30 06:08:03 +0200tungki(~tungki@subs20-114-142-172-14.three.co.id)
2021-10-30 06:09:38 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 06:09:38 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 06:09:38 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 06:11:43 +0200hendursaga(~weechat@user/hendursaga) (Remote host closed the connection)
2021-10-30 06:14:05 +0200hendursaga(~weechat@user/hendursaga)
2021-10-30 06:16:15 +0200LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao) (Ping timeout: 276 seconds)
2021-10-30 06:16:29 +0200zebrag(~chris@user/zebrag)
2021-10-30 06:16:53 +0200LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao)
2021-10-30 06:31:43 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-10-30 06:31:52 +0200zzzyin
2021-10-30 06:35:07 +0200yin(~z@user/zero) ()
2021-10-30 06:35:50 +0200hueso(~root@user/hueso) (Quit: No Ping reply in 180 seconds.)
2021-10-30 06:36:23 +0200Skyfire(~pyon@user/pyon) (Quit: WeeChat 3.3)
2021-10-30 06:37:00 +0200hueso(~root@user/hueso)
2021-10-30 06:52:59 +0200mikoto-chan(~mikoto-ch@185.237.102.119)
2021-10-30 06:55:13 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2021-10-30 07:05:53 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-10-30 07:10:26 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-10-30 07:40:10 +0200faultline(~christian@193.27.14.21) (Ping timeout: 260 seconds)
2021-10-30 07:57:48 +0200Farzad(~FarzadBek@109.203.185.154)
2021-10-30 07:57:51 +0200Farzad(~FarzadBek@109.203.185.154) (Client Quit)
2021-10-30 08:00:49 +0200awth13(~awth13@user/awth13) (Remote host closed the connection)
2021-10-30 08:03:49 +0200tungki(~tungki@subs20-114-142-172-14.three.co.id) (Ping timeout: 256 seconds)
2021-10-30 08:11:24 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-10-30 08:13:33 +0200mikoto-chan(~mikoto-ch@185.237.102.119) (Read error: Connection reset by peer)
2021-10-30 08:19:15 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-10-30 08:19:56 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-10-30 08:20:02 +0200max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr)
2021-10-30 08:20:51 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2)
2021-10-30 08:22:54 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2021-10-30 08:24:58 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 265 seconds)
2021-10-30 08:32:35 +0200cheater1__(~Username@user/cheater)
2021-10-30 08:32:46 +0200cheater(~Username@user/cheater) (Ping timeout: 268 seconds)
2021-10-30 08:32:49 +0200cheater1__cheater
2021-10-30 08:34:13 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2021-10-30 08:44:08 +0200Hero(~E-Kolay@212.108.153.129)
2021-10-30 08:44:11 +0200Hero(~E-Kolay@212.108.153.129) ()
2021-10-30 08:47:01 +0200zangi(~zangi@103.154.230.133)
2021-10-30 08:47:38 +0200 <zangi> hey, do you need to re-run `hoogle generate` after you run `cabal update`?
2021-10-30 08:49:13 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2021-10-30 08:50:51 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 08:50:51 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 08:50:52 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 08:55:20 +0200tungki(~tungki@subs31-116-206-15-21.three.co.id)
2021-10-30 08:55:32 +0200 <c_wraith> you should need to. cabal update only updates the index file, not any installed packages
2021-10-30 08:55:35 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 264 seconds)
2021-10-30 08:55:36 +0200 <c_wraith> *shouldn't
2021-10-30 08:59:16 +0200guniberas(~guniberas@42.191.188.121) (Ping timeout: 245 seconds)
2021-10-30 09:00:02 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2021-10-30 09:00:45 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2021-10-30 09:02:00 +0200chomwitt(~chomwitt@2a02:587:dc12:b600:12c3:7bff:fe6d:d374)
2021-10-30 09:02:34 +0200tungki(~tungki@subs31-116-206-15-21.three.co.id) (Remote host closed the connection)
2021-10-30 09:03:11 +0200aegon(~mike@174.127.249.180) (Remote host closed the connection)
2021-10-30 09:12:16 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 09:16:46 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-10-30 09:18:23 +0200Farzad(~FarzadBek@178.131.28.251)
2021-10-30 09:23:55 +0200zincy_(~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e)
2021-10-30 09:24:39 +0200zincy__(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 09:26:09 +0200gehmehgeh(~user@user/gehmehgeh)
2021-10-30 09:28:01 +0200zincy_(~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e) (Ping timeout: 245 seconds)
2021-10-30 09:41:46 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 245 seconds)
2021-10-30 09:43:42 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-10-30 09:49:07 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection)
2021-10-30 09:54:23 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 264 seconds)
2021-10-30 09:55:13 +0200zaquest(~notzaques@5.128.210.178) (Remote host closed the connection)
2021-10-30 09:56:04 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-10-30 10:03:19 +0200zincy__(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 10:05:51 +0200hendursa1(~weechat@user/hendursaga)
2021-10-30 10:05:54 +0200acidjnk_new(~acidjnk@p200300d0c7238d89cc95ba723fa3afc9.dip0.t-ipconnect.de)
2021-10-30 10:08:05 +0200mc47(~mc47@xmonad/TheMC47)
2021-10-30 10:08:57 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 276 seconds)
2021-10-30 10:16:30 +0200zangi(~zangi@103.154.230.133) (Quit: zangi)
2021-10-30 10:19:30 +0200AlexNoo(~AlexNoo@178.34.163.209)
2021-10-30 10:20:35 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-10-30 10:26:12 +0200Inst__(~Inst@2601:6c4:4080:3f80:9dd3:1e99:a750:2941)
2021-10-30 10:27:43 +0200Inst__Inst
2021-10-30 10:31:47 +0200ikke(~kevin@alpine/developer/ikke)
2021-10-30 10:32:25 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Quit: mikoto-chan)
2021-10-30 10:43:48 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 10:48:26 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-10-30 10:49:02 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-10-30 10:49:30 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 10:49:49 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 10:53:02 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-10-30 10:54:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 264 seconds)
2021-10-30 10:55:34 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-10-30 10:59:04 +0200Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-10-30 10:59:04 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2021-10-30 10:59:22 +0200gentauro(~gentauro@user/gentauro)
2021-10-30 11:03:10 +0200hendursa1(~weechat@user/hendursaga) (Remote host closed the connection)
2021-10-30 11:04:31 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-10-30 11:04:50 +0200hendursa1(~weechat@user/hendursaga)
2021-10-30 11:10:25 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2021-10-30 11:10:58 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-10-30 11:17:23 +0200zaquest(~notzaques@5.128.210.178)
2021-10-30 11:23:15 +0200jakalx(~jakalx@base.jakalx.net)
2021-10-30 11:24:34 +0200ksu(~ksu@user/prtr)
2021-10-30 11:24:59 +0200Inst(~Inst@2601:6c4:4080:3f80:9dd3:1e99:a750:2941) (Ping timeout: 264 seconds)
2021-10-30 11:32:28 +0200unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291)
2021-10-30 11:41:31 +0200 <unit73e> Sometimes I wonder why tutorials like to teach the wrong way just because it's simpler. I was continuing the SDL2 examples and noticed most examples use surfaces instead of textures but virtually all devices nowadays have a GPU. No point in using software rendering.
2021-10-30 11:41:44 +0200 <unit73e> That just confuses beginners imo
2021-10-30 11:41:53 +0200themc47(~mc47@xmonad/TheMC47)
2021-10-30 11:43:29 +0200 <unit73e> might be a bit easier to code but in the real world all games use hardware acceleration
2021-10-30 11:44:41 +0200mc47(~mc47@xmonad/TheMC47) (Ping timeout: 245 seconds)
2021-10-30 11:50:07 +0200themc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-10-30 11:53:06 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-10-30 11:53:53 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 12:05:47 +0200jlamothe(~jlamothe@198.251.61.229) (Ping timeout: 264 seconds)
2021-10-30 12:13:05 +0200fendor(~fendor@178.115.69.81.wireless.dyn.drei.com)
2021-10-30 12:17:31 +0200trainlag1602(~saroa@user/trainlag1602)
2021-10-30 12:23:27 +0200LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection)
2021-10-30 12:25:34 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection)
2021-10-30 12:26:21 +0200LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao)
2021-10-30 12:28:18 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-10-30 12:33:29 +0200 <juri_> hey, is there a `mustNotBe` to be the inverse of `shouldBe` in hunit?
2021-10-30 12:35:27 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi)
2021-10-30 12:36:14 +0200 <juri_> oh, sorry, hspec, not hunit.
2021-10-30 12:38:46 +0200viluon(uid453725@id-453725.helmsley.irccloud.com)
2021-10-30 12:38:56 +0200xff0x(~xff0x@2001:1a81:52f0:9300:e3ac:46aa:98d2:36ad) (Remote host closed the connection)
2021-10-30 12:39:13 +0200xff0x(~xff0x@2001:1a81:52f0:9300:56a6:e6bc:62c4:b7e4)
2021-10-30 12:39:35 +0200 <juri_> oh, there is. thanks for nothing! :D
2021-10-30 12:39:47 +0200 <manicennui> https://hackage.haskell.org/package/hspec-expectations-0.8.2/docs/Test-Hspec-Expectations.html
2021-10-30 12:39:50 +0200 <manicennui> Yeah, just found it.
2021-10-30 12:40:17 +0200 <juri_> hard to search for. should have just drilled into hackage instead. *shrugs*
2021-10-30 12:40:21 +0200 <juri_> thanks. :)
2021-10-30 12:44:37 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 12:45:19 +0200guniberas(~guniberas@42.191.188.121)
2021-10-30 12:49:35 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
2021-10-30 12:49:48 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-10-30 12:51:34 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 12:52:20 +0200mmhat(~mmh@55d4bc38.access.ecotel.net)
2021-10-30 12:53:49 +0200acidjnk_new(~acidjnk@p200300d0c7238d89cc95ba723fa3afc9.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2021-10-30 12:54:57 +0200 <maerwald> c_wraith: do you have an account on gitlab.haskell.org?
2021-10-30 12:55:53 +0200xff0x(~xff0x@2001:1a81:52f0:9300:56a6:e6bc:62c4:b7e4) (Ping timeout: 264 seconds)
2021-10-30 12:55:56 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds)
2021-10-30 12:56:23 +0200xff0x(~xff0x@2001:1a81:52f0:9300:48ef:5b4a:4ac:bf95)
2021-10-30 13:07:16 +0200burakcank(~burakcank@has.arrived.and.is.ready-to.party)
2021-10-30 13:08:27 +0200aga(~a@p200300ef973db19d4086f0a6a24fc4dd.dip0.t-ipconnect.de)
2021-10-30 13:09:20 +0200 <aga> Can I specify the name of the log file when I do $ stack build --profile -- myexe ... ?
2021-10-30 13:10:33 +0200 <aga> I tried to use the GHC flag -ohi but that doesn't work.
2021-10-30 13:12:42 +0200 <aga> *exec not build
2021-10-30 13:17:33 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2021-10-30 13:17:49 +0200zer0bitz_(~zer0bitz@2a0b:dbc1:2:81c1:dd79:459d:8214:30ba)
2021-10-30 13:17:59 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-10-30 13:18:25 +0200Midjak(~Midjak@82-65-111-221.subs.proxad.net)
2021-10-30 13:20:45 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 268 seconds)
2021-10-30 13:22:00 +0200zer0bitz(~zer0bitz@2a0b:dbc1:2:81c1:55ef:5d0:c1e8:90b)
2021-10-30 13:24:59 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 264 seconds)
2021-10-30 13:25:17 +0200zer0bitz_(~zer0bitz@2a0b:dbc1:2:81c1:dd79:459d:8214:30ba) (Ping timeout: 264 seconds)
2021-10-30 13:39:02 +0200zer0bitz_(~zer0bitz@2a0b:dbc1:2:81c1:30bc:a359:39b5:99ae)
2021-10-30 13:41:43 +0200zer0bitz(~zer0bitz@2a0b:dbc1:2:81c1:55ef:5d0:c1e8:90b) (Ping timeout: 268 seconds)
2021-10-30 13:42:20 +0200mc47(~mc47@xmonad/TheMC47)
2021-10-30 13:43:03 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-10-30 13:43:52 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 13:45:23 +0200zer0bitz(~zer0bitz@2a0b:dbc1:2:81c1:d418:453f:8e01:9edf)
2021-10-30 13:48:05 +0200zer0bitz_(~zer0bitz@2a0b:dbc1:2:81c1:30bc:a359:39b5:99ae) (Ping timeout: 246 seconds)
2021-10-30 13:48:06 +0200chisui(~chisui@95.33.35.0)
2021-10-30 13:49:36 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-10-30 13:50:22 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 13:54:49 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-10-30 13:57:57 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3)
2021-10-30 13:58:44 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 14:00:47 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Client Quit)
2021-10-30 14:01:33 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2021-10-30 14:03:18 +0200max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 268 seconds)
2021-10-30 14:03:44 +0200Lycurgus(~juan@98.4.112.204)
2021-10-30 14:08:45 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.3)
2021-10-30 14:10:24 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-10-30 14:11:08 +0200zer0bitz(~zer0bitz@2a0b:dbc1:2:81c1:d418:453f:8e01:9edf) (Read error: Connection reset by peer)
2021-10-30 14:20:54 +0200chisui(~chisui@95.33.35.0) (Quit: Client closed)
2021-10-30 14:27:18 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-10-30 14:28:44 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-10-30 14:32:18 +0200proboscis(~proboscis@115-189-129-117.mobile.spark.co.nz) (Ping timeout: 265 seconds)
2021-10-30 14:37:37 +0200proboscis(~proboscis@115-189-81-94.mobile.spark.co.nz)
2021-10-30 14:38:57 +0200Lycurgus(~juan@98.4.112.204) (Quit: Exeunt)
2021-10-30 14:39:19 +0200__monty__(~toonn@user/toonn)
2021-10-30 14:43:27 +0200benin(~benin@183.82.30.38)
2021-10-30 14:45:31 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 245 seconds)
2021-10-30 14:52:54 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-10-30 14:53:08 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 14:53:54 +0200Raito_Bezarius(~Raito@2a01:e0a:5f9:9681:a0a0:bb76:611f:9da7) (Changing host)
2021-10-30 14:53:54 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2021-10-30 14:57:12 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2021-10-30 14:57:36 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds)
2021-10-30 14:59:05 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 14:59:24 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 14:59:28 +0200betelgeuse(~betelgeus@94-225-47-8.access.telenet.be)
2021-10-30 14:59:46 +0200max22-(~maxime@2a01cb0883359800f7ab1f6aa3293843.ipv6.abo.wanadoo.fr)
2021-10-30 15:01:54 +0200dariof4(~dariof4@134.0.0.51)
2021-10-30 15:02:23 +0200Alex_test(~al_test@178.34.163.209) (Quit: ;-)
2021-10-30 15:02:28 +0200AlexZenon(~alzenon@178.34.163.209) (Quit: ;-)
2021-10-30 15:03:01 +0200AlexNoo(~AlexNoo@178.34.163.209) (Quit: Leaving)
2021-10-30 15:03:41 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
2021-10-30 15:04:05 +0200asm(~alexander@burner.asm89.io) (Changing host)
2021-10-30 15:04:05 +0200asm(~alexander@user/asm)
2021-10-30 15:05:35 +0200kn07_(~kn07_@86.121.23.168)
2021-10-30 15:06:02 +0200kn07_(~kn07_@86.121.23.168) (Remote host closed the connection)
2021-10-30 15:07:21 +0200trainlag1602(~saroa@user/trainlag1602) ()
2021-10-30 15:17:43 +0200AlexZenon(~alzenon@178.34.163.209)
2021-10-30 15:18:22 +0200jespada(~jespada@181.28.253.200)
2021-10-30 15:18:31 +0200jespada(~jespada@181.28.253.200) (Client Quit)
2021-10-30 15:18:54 +0200Alex_test(~al_test@178.34.163.209)
2021-10-30 15:20:57 +0200AlexNoo(~AlexNoo@178.34.163.209)
2021-10-30 15:26:06 +0200machinedgod(~machinedg@24.105.81.50)
2021-10-30 15:31:53 +0200max22-(~maxime@2a01cb0883359800f7ab1f6aa3293843.ipv6.abo.wanadoo.fr) (Ping timeout: 264 seconds)
2021-10-30 15:32:27 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2021-10-30 15:44:02 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-10-30 15:44:40 +0200nehsou^(~nehsou@wsip-98-188-242-6.mc.at.cox.net) (Remote host closed the connection)
2021-10-30 15:46:05 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-10-30 15:47:23 +0200jlamothe(~jlamothe@198.251.61.229)
2021-10-30 16:00:02 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-10-30 16:00:22 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi)
2021-10-30 16:07:19 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2021-10-30 16:11:55 +0200Lycurgus(~juan@98.4.112.204)
2021-10-30 16:14:37 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 16:14:58 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 16:17:00 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 16:30:46 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 16:30:52 +0200dsrt^(~dsrt@wsip-98-188-242-6.mc.at.cox.net)
2021-10-30 16:35:41 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com)
2021-10-30 16:39:25 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 265 seconds)
2021-10-30 16:41:10 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-10-30 16:45:55 +0200boxscape_(~boxscape_@i577BCB53.versanet.de)
2021-10-30 16:47:29 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 16:50:51 +0200floridmarshmallo(~quickspin@pool-100-19-29-41.phlapa.fios.verizon.net)
2021-10-30 16:50:59 +0200burnsidesLlama(~burnsides@client-8-89.eduroam.oxuni.org.uk)
2021-10-30 16:51:17 +0200burnsidesLlama(~burnsides@client-8-89.eduroam.oxuni.org.uk) (Read error: Connection reset by peer)
2021-10-30 16:51:29 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk)
2021-10-30 16:52:18 +0200floridmarshmallo(~quickspin@pool-100-19-29-41.phlapa.fios.verizon.net) (Client Quit)
2021-10-30 16:52:29 +0200 <zincy_> Any ideas how to model mealy machines?
2021-10-30 16:54:33 +0200 <Ollie[m]> zincy_ https://hackage.haskell.org/package/machines-0.7.2/docs/Data-Machine-Mealy.html is one option
2021-10-30 16:54:38 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 16:54:57 +0200f-a(f2a@f2a.jujube.ircnow.org) ()
2021-10-30 16:54:59 +0200 <zincy_> Is there a way of doing similar with say Streamly?
2021-10-30 16:55:05 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-10-30 16:55:30 +0200 <zincy_> So this is one way of encoding machines as "streams" right?
2021-10-30 16:55:47 +0200zer0bitz_(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi)
2021-10-30 16:57:28 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
2021-10-30 16:58:35 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 264 seconds)
2021-10-30 16:58:51 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds)
2021-10-30 16:59:02 +0200son0p(~ff@181.136.122.143)
2021-10-30 16:59:37 +0200 <davean> I'm not sure how streamly could do it
2021-10-30 16:59:57 +0200 <davean> Well I mean in a sesne theres a larger embeding it could do
2021-10-30 17:00:06 +0200 <davean> what does moeling a mealy machine mean to you?
2021-10-30 17:00:20 +0200 <zincy_> Here is the problem, I am lost in this design space :D
2021-10-30 17:00:29 +0200 <davean> I'm pretty sure streamly can't perform operations on a mealy machine - just execute it
2021-10-30 17:00:41 +0200 <zincy_> Maybe the best thing to do it give Machines a shot and learn the hard way ? :D
2021-10-30 17:00:47 +0200 <davean> er, to clarrify - operations on the mealy machine as a mathematical object
2021-10-30 17:01:15 +0200 <zincy_> I am still learning what a Mealy machine is tbh
2021-10-30 17:01:30 +0200 <zincy_> By modelling I was referring to Haskell code
2021-10-30 17:01:47 +0200 <zincy_> I.e custom monad vs Machines
2021-10-30 17:03:20 +0200 <davean> if you have machines questions I can answer them
2021-10-30 17:04:06 +0200 <zincy_> oh great where do I start :D
2021-10-30 17:04:44 +0200 <davean> basicly theres two parts - PlanT which is the monad constructor, and MachineT which is the actual engine
2021-10-30 17:05:06 +0200 <davean> you write your thing as the PlanT monad typically and "compile" it to a machine
2021-10-30 17:05:48 +0200 <zincy_> Is the Fail data constructor for signifying the machine cannot process the action?
2021-10-30 17:06:02 +0200 <zincy_> If I have two machines linked
2021-10-30 17:06:10 +0200 <davean> The thing thats notably abotu machines vs. other iterative streaming libraries is that theres an actual general operation used to step the next result
2021-10-30 17:06:36 +0200 <zincy_> one produces eithers and the other reads eithers, can the second one use awaits with the unwrapped Right value?
2021-10-30 17:06:47 +0200 <davean> No
2021-10-30 17:06:51 +0200 <davean> thats the MonadFail fail
2021-10-30 17:07:05 +0200 <davean> so maybe?
2021-10-30 17:07:18 +0200 <zincy_> So when is fail used?
2021-10-30 17:07:34 +0200 <davean> fail is used to handle the match failure on <- in do notation
2021-10-30 17:07:47 +0200 <zincy_> Oh so I shouldnt concern myself with it
2021-10-30 17:07:50 +0200 <zincy_> When writing a plan
2021-10-30 17:08:14 +0200 <zincy_> The first machine would Just yield Either a b and the other machine would await Either a b
2021-10-30 17:09:06 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi)
2021-10-30 17:09:13 +0200 <davean> MonadFail is how that works in Haskell
2021-10-30 17:09:35 +0200 <davean> yep thats pretty simple
2021-10-30 17:09:36 +0200neurocyte0132889(~neurocyte@185.117.69.128)
2021-10-30 17:09:36 +0200neurocyte0132889(~neurocyte@185.117.69.128) (Changing host)
2021-10-30 17:09:36 +0200neurocyte0132889(~neurocyte@user/neurocyte)
2021-10-30 17:09:42 +0200 <davean> so the thing I was talking about
2021-10-30 17:09:52 +0200 <davean> awaits :: k i -> Plan k o i
2021-10-30 17:09:57 +0200 <davean> see how it has a k i?
2021-10-30 17:10:01 +0200 <davean> you get an actual selector
2021-10-30 17:10:09 +0200 <davean> you probably want await :: Category k => Plan (k i) o i
2021-10-30 17:10:12 +0200 <zincy_> So is k i my "query"
2021-10-30 17:10:16 +0200 <davean> (for what you're talking about there)
2021-10-30 17:10:28 +0200 <davean> yes, k i is your query saying "under semantic k, give me an i"
2021-10-30 17:10:50 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 17:11:11 +0200 <davean> but you don't have to do this streaming thing to use mealy machines
2021-10-30 17:11:23 +0200 <davean> AutomatonM means there is a lifting into machines
2021-10-30 17:11:27 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2021-10-30 17:11:29 +0200 <davean> but MealyT m a b exists on its own
2021-10-30 17:11:43 +0200Skyfire(~pyon@user/pyon)
2021-10-30 17:11:47 +0200zer0bitz_(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-10-30 17:12:01 +0200 <davean> (you'll probably WANT the streaming stuff mind you, but you don't NEED it)
2021-10-30 17:12:31 +0200 <davean> So to start with we have its a category
2021-10-30 17:12:34 +0200 <davean> so we get (.) :: forall (b :: k) (c :: k) (a :: k). MealyT m b c -> MealyT m a b -> MealyT m a c
2021-10-30 17:13:17 +0200 <davean> given a machine reading 'a's, and producing 'b's and a machine reading 'b's and producing 'c's we can compose them into a machine reading 'a's and producing 'c's
2021-10-30 17:13:35 +0200 <davean> Its also Arrow, so we can lift functions arr :: (b -> c) -> MealyT m b c
2021-10-30 17:13:52 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2021-10-30 17:14:04 +0200 <davean> Making sense?
2021-10-30 17:14:22 +0200 <zincy_> great, the last bit makes sense about composing Mealy machines
2021-10-30 17:14:36 +0200 <zincy_> Still confused about the k i
2021-10-30 17:14:50 +0200 <davean> ok, so normally you'd have "Is a"
2021-10-30 17:14:51 +0200 <zincy_> Is k typically a monadic type to express whether we want to process the input
2021-10-30 17:15:00 +0200 <davean> no, k isn't monadic
2021-10-30 17:15:04 +0200 <davean> k is usually Is
2021-10-30 17:15:35 +0200 <davean> so all the streaming libraries you've used fit their semantics ~ into Is (pushback being a case where that isn't true)
2021-10-30 17:15:50 +0200 <davean> awaits (Is a) says "give me an a"
2021-10-30 17:16:41 +0200 <zincy_> So (Is a) is essentially a way of matching on a type that wraps the input?
2021-10-30 17:16:59 +0200 <davean> It doesn't wrap it, it says it wants it here, let me give a demo
2021-10-30 17:17:08 +0200 <zincy_> ok
2021-10-30 17:17:44 +0200xff0x(~xff0x@2001:1a81:52f0:9300:48ef:5b4a:4ac:bf95) (Ping timeout: 246 seconds)
2021-10-30 17:17:45 +0200 <davean> awaits (Refl::Is (Either a b))
2021-10-30 17:17:54 +0200 <davean> there k is (Is (Either a b))
2021-10-30 17:18:01 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2021-10-30 17:18:10 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2021-10-30 17:18:13 +0200 <davean> which forces the i, in k i to be (Either a b)
2021-10-30 17:18:27 +0200 <davean> (because Is is a GADT with a constraint)
2021-10-30 17:18:31 +0200 <zincy_> So its like proxy
2021-10-30 17:18:34 +0200xff0x(~xff0x@2001:1a81:52f0:9300:c38e:4fda:aa4c:3e21)
2021-10-30 17:18:34 +0200 <davean> Yes
2021-10-30 17:18:37 +0200Inst(~Inst@2601:6c4:4080:3f80:6122:580e:b697:71e1)
2021-10-30 17:18:37 +0200 <davean> very much so
2021-10-30 17:18:38 +0200 <zincy_> Ah cool
2021-10-30 17:18:42 +0200 <davean> so
2021-10-30 17:18:45 +0200 <davean> why do we have k at all?
2021-10-30 17:18:47 +0200 <zincy_> How can it form a category
2021-10-30 17:18:49 +0200 <davean> Well we can do a LOT MORe
2021-10-30 17:19:04 +0200 <zincy_> Ooh what more
2021-10-30 17:19:04 +0200 <davean> we can for example do a stack machine
2021-10-30 17:19:09 +0200 <davean> https://hackage.haskell.org/package/machines-0.7.2/docs/Data-Machine-Stack.html
2021-10-30 17:19:21 +0200 <davean> we can "Pop Either a b"
2021-10-30 17:19:27 +0200 <davean> or we can Push Right 5
2021-10-30 17:19:28 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2021-10-30 17:19:34 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2021-10-30 17:19:40 +0200 <davean> For example
2021-10-30 17:19:48 +0200 <davean> this is usually custom coded into other libraries
2021-10-30 17:19:55 +0200 <davean> or
2021-10-30 17:20:28 +0200 <davean> I have a system that abstracts over files on disk, or data in memory using machines that has two operations "Read" and "Seek" seek returns () but moves our pointer in the file
2021-10-30 17:20:47 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds)
2021-10-30 17:21:01 +0200 <davean> I also have a combinator "Timeout" that allows us to say how long we'll wait for a response before we want to return without data
2021-10-30 17:21:02 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Remote host closed the connection)
2021-10-30 17:21:05 +0200aga(~a@p200300ef973db19d4086f0a6a24fc4dd.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2021-10-30 17:21:08 +0200kspalaiologos(~kspalaiol@user/kspalaiologos)
2021-10-30 17:21:09 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2021-10-30 17:21:20 +0200 <davean> So how is it a category? Uh, in the most boring way possible.
2021-10-30 17:21:30 +0200 <davean> Its not an exciting category
2021-10-30 17:22:04 +0200 <zincy_> Im finding it hard to see how the (Is a) comes into the examples you gave
2021-10-30 17:22:13 +0200 <davean> It doesn't
2021-10-30 17:22:21 +0200 <davean> Is is the equivilent of my Read in the seeking one
2021-10-30 17:22:22 +0200 <zincy_> oh ok
2021-10-30 17:22:31 +0200 <davean> Is is the basic fixed query
2021-10-30 17:22:45 +0200 <davean> you can replace it with more exicting query types
2021-10-30 17:22:55 +0200aga(~a@p200300ef973db1e74086f0a6a24fc4dd.dip0.t-ipconnect.de)
2021-10-30 17:22:57 +0200 <zincy_> Ah right
2021-10-30 17:22:59 +0200 <davean> having a k of Is says "I will only ever ask youfor the next thing"
2021-10-30 17:23:10 +0200 <davean> Refl is my Read above
2021-10-30 17:23:17 +0200 <davean> (Refl being a constructor of Is)
2021-10-30 17:23:27 +0200 <davean> so k is always something specific
2021-10-30 17:23:34 +0200 <davean> like "Stack"
2021-10-30 17:23:35 +0200 <zincy_> So you don't have to use Is as k but it is a useful choice
2021-10-30 17:23:40 +0200 <davean> Right
2021-10-30 17:23:52 +0200 <davean> You can use sometyhing more exicting
2021-10-30 17:23:53 +0200 <zincy_> Any category can be used to select the input we want
2021-10-30 17:24:05 +0200 <davean> and most of them have an identity ish eliment equivilent to Refl
2021-10-30 17:24:22 +0200 <davean> Doesn't HAVE to be a category actually - awaits isn't constrainted
2021-10-30 17:24:34 +0200 <davean> await though only knows how to get the default boring query out of a Category
2021-10-30 17:24:56 +0200 <davean> If its a category, we can do the simple versions
2021-10-30 17:25:09 +0200 <davean> if its not, we have to do everything manually
2021-10-30 17:25:16 +0200Lycurgus(~juan@98.4.112.204) (Quit: Exeunt)
2021-10-30 17:25:24 +0200 <davean> we can only "reason" about it as a category?
2021-10-30 17:25:30 +0200kspalaiologos(~kspalaiol@user/kspalaiologos) (Client Quit)
2021-10-30 17:25:34 +0200 <davean> IDK how to say this pithily
2021-10-30 17:26:10 +0200 <davean> That all making sense now?
2021-10-30 17:26:35 +0200 <zincy_> Ah yes k isnt necessarily a category for awaits
2021-10-30 17:26:54 +0200 <davean> We just only get the simple case when it is
2021-10-30 17:26:55 +0200kspalaiologos(~kspalaiol@user/kspalaiologos)
2021-10-30 17:27:04 +0200 <zincy_> Is the difference between awaits vs await one is less manual than the other?
2021-10-30 17:27:36 +0200 <davean> Yep
2021-10-30 17:27:38 +0200 <davean> exactly
2021-10-30 17:27:40 +0200alx741(~alx741@181.196.69.253)
2021-10-30 17:27:52 +0200 <davean> awaits is the manual version, await is the onethat just pulls out the identity case
2021-10-30 17:28:05 +0200 <davean> Category says "we have the right sort of identity laying around"
2021-10-30 17:28:20 +0200 <davean> Thats ... it
2021-10-30 17:28:26 +0200 <davean> most boring sense of being categorical
2021-10-30 17:28:41 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 17:28:41 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 17:28:41 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 17:28:47 +0200 <zincy_> Awesome I think this is making sense now!
2021-10-30 17:29:07 +0200 <zincy_> So say you have this. awaits (Refl::Is (Either a b))
2021-10-30 17:29:27 +0200 <davean> (Which BTW is exactly "await")
2021-10-30 17:29:41 +0200sm2n(~sm2n@user/sm2n) (Remote host closed the connection)
2021-10-30 17:29:41 +0200 <zincy_> ah interesting
2021-10-30 17:29:43 +0200 <davean> (If you want to do it non-manually)
2021-10-30 17:30:00 +0200sm2n(~sm2n@user/sm2n)
2021-10-30 17:30:18 +0200 <zincy_> And you get a Left which means you dont want to do anything further. Would you just not yield anything
2021-10-30 17:30:21 +0200 <zincy_> and return ()
2021-10-30 17:30:25 +0200 <zincy_> Or use Done
2021-10-30 17:31:17 +0200 <davean> stop ideally, but you can just end your monad
2021-10-30 17:31:33 +0200 <davean> The difference between plan and machien is machine doesn't "have a value" to "return"
2021-10-30 17:31:36 +0200 <davean> it just streams
2021-10-30 17:31:44 +0200 <davean> so any () will be rewriten away when you compile it
2021-10-30 17:31:54 +0200 <davean> (they're there until you do though, and you can use them - hence the plan)
2021-10-30 17:32:00 +0200 <zincy_> awesome
2021-10-30 17:32:11 +0200kjak_(~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 245 seconds)
2021-10-30 17:32:29 +0200 <zincy_> So if multiple plans feed off each other is that one machine?
2021-10-30 17:32:32 +0200Inst(~Inst@2601:6c4:4080:3f80:6122:580e:b697:71e1) (Remote host closed the connection)
2021-10-30 17:32:49 +0200 <zincy_> Say one plan relies on two different inputs of other plans
2021-10-30 17:32:57 +0200 <zincy_> (I guess that is a common use case)
2021-10-30 17:33:29 +0200 <davean> So yes because you can compose machines.
2021-10-30 17:34:03 +0200 <zincy_> So compile each plan to a machine then compose machines.
2021-10-30 17:34:19 +0200 <davean> generally thats the way I'd do it, there are special complicated cases
2021-10-30 17:34:24 +0200 <davean> but you don't care about complications :)
2021-10-30 17:34:44 +0200 <zincy_> Okay thank you so much!
2021-10-30 17:34:52 +0200 <zincy_> This has been tremendously helpful
2021-10-30 17:35:01 +0200 <zincy_> Do you have any code examples btw?
2021-10-30 17:35:13 +0200 <zincy_> I found the one on the hackage readme obviously :)
2021-10-30 17:36:23 +0200 <davean> Haha yes I have examples but my examples are mostly complicated! They mostly exist because I'm using the power
2021-10-30 17:36:31 +0200 <davean> they're PROBABLY not what you want to look at yet
2021-10-30 17:37:23 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 17:37:29 +0200hippoid(~idris@184.105.6.88)
2021-10-30 17:38:14 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 17:38:38 +0200 <zincy_> davean: Okay I'll save them till I am ready :)
2021-10-30 17:38:44 +0200 <zincy_> Time to make some machines
2021-10-30 17:38:49 +0200 <zincy_> Thanks again!
2021-10-30 17:38:51 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 245 seconds)
2021-10-30 17:38:56 +0200 <davean> No problem
2021-10-30 17:39:35 +0200 <hippoid> @free x::a->b->c
2021-10-30 17:39:35 +0200 <lambdabot> h . x y = x (f y) . g
2021-10-30 17:39:50 +0200 <davean> zincy_: you probably want to look at https://hackage.haskell.org/package/machines-0.7.2/docs/Data-Machine-Process.html it has the "simple cases" for normal stream processing
2021-10-30 17:39:57 +0200 <davean> and things like ~> for composing
2021-10-30 17:40:40 +0200 <davean> (~> feeds one machine's output into another's input)
2021-10-30 17:40:56 +0200 <zincy_> ah yes
2021-10-30 17:40:59 +0200 <hippoid> in '@free x::a->b->c', how do I know what terms 'f, g, h, x, y' correspond to which types 'a, b, c'?
2021-10-30 17:42:00 +0200 <hippoid> or in this simpler example
2021-10-30 17:42:14 +0200 <hippoid> @free x::a->a
2021-10-30 17:42:14 +0200 <lambdabot> f . x = x . f
2021-10-30 17:42:23 +0200 <hippoid> where did f come from?
2021-10-30 17:46:51 +0200 <c_wraith> f is any function that will type-check there
2021-10-30 17:47:06 +0200 <c_wraith> which is, in fact, any function
2021-10-30 17:48:10 +0200 <c_wraith> maerwald: I do not have an account there
2021-10-30 17:48:16 +0200 <hippoid> c_wraith: ok that makes sense. Thanks!
2021-10-30 17:50:07 +0200Farzad(~FarzadBek@178.131.28.251) (Quit: Leaving)
2021-10-30 17:50:44 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 17:50:58 +0200max22-(~maxime@2a01cb0883359800e36f11616f1a350a.ipv6.abo.wanadoo.fr)
2021-10-30 17:52:36 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 17:53:16 +0200fendor_(~fendor@178.115.79.50.wireless.dyn.drei.com)
2021-10-30 17:55:18 +0200kspalaiologos(~kspalaiol@user/kspalaiologos) (Quit: Leaving)
2021-10-30 17:55:32 +0200fendor(~fendor@178.115.69.81.wireless.dyn.drei.com) (Ping timeout: 246 seconds)
2021-10-30 17:56:22 +0200 <davean> c_wraith: is that strictly true? Its been almost a year since I played in the scary areas so I'm out of practice
2021-10-30 17:57:58 +0200 <c_wraith> in the general case, it's any function that will type-check. id is a special case in that it will work with any function at all.
2021-10-30 17:58:15 +0200fendor_fendor
2021-10-30 17:58:51 +0200 <davean> right
2021-10-30 17:58:58 +0200 <davean> Levity and such
2021-10-30 17:59:26 +0200jollygood2(~bc8165b6@217.29.117.252)
2021-10-30 17:59:42 +0200 <monochrom> Ah, right. Suppose f::X->Y, then the equation says (x::Y->Y) . f = f . (x::X->X)
2021-10-30 18:00:29 +0200 <c_wraith> yeah. you do have to instantiate it at different types
2021-10-30 18:00:55 +0200 <davean> details!
2021-10-30 18:01:22 +0200 <davean> Turns out they exist, now what are we going to do?
2021-10-30 18:01:24 +0200zmt00(~zmt00@user/zmt00)
2021-10-30 18:02:18 +0200 <monochrom> exorcise? "the devil is in the details" therefore exorcise the devil i.e. the details!
2021-10-30 18:02:43 +0200 <monochrom> the details are coming back to haunt you tomorrow ooooooooo....
2021-10-30 18:03:38 +0200 <monochrom> alternatively I heard that if you offer candies, they'll offer a truce...
2021-10-30 18:04:24 +0200 <davean> I think in good mathematical tradition I'm going to hide behind a sturdy defense of axiom selection
2021-10-30 18:11:04 +0200 <jollygood2> hi. excuse me for being completely offtopic, but what browser/specialized program can I use to download page from subscription website for offline browsing? I have a month long subscription to some site that expires in a few days, and I did not have time to access it at all due to some unforeseen circumstances. chrome doesn't even save all simple images, it just links them to the original site
2021-10-30 18:11:46 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2021-10-30 18:20:27 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-10-30 18:21:59 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 18:22:35 +0200zer0bitz(~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 264 seconds)
2021-10-30 18:25:04 +0200 <ksu> /part/part
2021-10-30 18:25:09 +0200 <ksu> sorry
2021-10-30 18:28:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 18:28:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 18:28:06 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 18:31:17 +0200sagax(~sagax_nb@user/sagax) (Ping timeout: 264 seconds)
2021-10-30 18:33:05 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 264 seconds)
2021-10-30 18:40:53 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds)
2021-10-30 18:41:07 +0200zmt01(~zmt00@user/zmt00)
2021-10-30 18:42:23 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 264 seconds)
2021-10-30 18:42:38 +0200Farzad(~FarzadBek@5.234.230.191)
2021-10-30 18:46:01 +0200sagax(~sagax_nb@user/sagax)
2021-10-30 18:46:33 +0200peterhil(~peterhil@dsl-hkibng32-54fb56-2.dhcp.inet.fi)
2021-10-30 18:46:44 +0200zmt00(~zmt00@user/zmt00)
2021-10-30 18:48:12 +0200zmt01(~zmt00@user/zmt00) (Ping timeout: 268 seconds)
2021-10-30 18:56:14 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 18:58:12 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-10-30 18:58:15 +0200zmt01(~zmt00@user/zmt00)
2021-10-30 18:59:01 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 252 seconds)
2021-10-30 18:59:14 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 18:59:15 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 18:59:15 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 19:00:56 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 268 seconds)
2021-10-30 19:08:35 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net)
2021-10-30 19:13:17 +0200dariof4(~dariof4@134.0.0.51) (Ping timeout: 264 seconds)
2021-10-30 19:14:37 +0200dajoer(~david@user/gvx) (Quit: leaving)
2021-10-30 19:14:37 +0200Null_A(~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3)
2021-10-30 19:15:13 +0200dariof4(~dariof4@5.179.181.91)
2021-10-30 19:15:20 +0200Farzad(~FarzadBek@5.234.230.191) (Ping timeout: 246 seconds)
2021-10-30 19:18:01 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 19:20:36 +0200JimL(~quassel@89-162-2-132.fiber.signal.no) (Ping timeout: 260 seconds)
2021-10-30 19:21:47 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 19:23:56 +0200JimL(~quassel@89-162-2-132.fiber.signal.no)
2021-10-30 19:24:27 +0200econo(uid147250@user/econo)
2021-10-30 19:25:38 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-10-30 19:27:07 +0200aga(~a@p200300ef973db1e74086f0a6a24fc4dd.dip0.t-ipconnect.de) (Quit: WeeChat 3.0.1)
2021-10-30 19:27:12 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net)
2021-10-30 19:32:23 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
2021-10-30 19:34:18 +0200 <maerwald> is there a way to hide certain exports with `module Foo ( module Foo ) where`?
2021-10-30 19:34:18 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-10-30 19:35:26 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-10-30 19:36:02 +0200fendor(~fendor@178.115.79.50.wireless.dyn.drei.com) (Remote host closed the connection)
2021-10-30 19:36:21 +0200 <monochrom> Unfortunately no.
2021-10-30 19:41:45 +0200ubert(~Thunderbi@178.115.67.5.wireless.dyn.drei.com)
2021-10-30 19:42:36 +0200fendor(~fendor@178.115.79.50.wireless.dyn.drei.com)
2021-10-30 19:42:38 +0200Null_A(~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Remote host closed the connection)
2021-10-30 19:44:11 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk) (Remote host closed the connection)
2021-10-30 19:44:42 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk)
2021-10-30 19:45:47 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 19:48:42 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-10-30 19:48:53 +0200 <dsal> Is `( module Foo )` the same as not having that there?
2021-10-30 19:49:04 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 252 seconds)
2021-10-30 19:49:09 +0200Vajb(~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi)
2021-10-30 19:51:17 +0200 <maerwald> in my case no
2021-10-30 19:51:27 +0200 <maerwald> there are several re-exports
2021-10-30 19:51:52 +0200 <maerwald> some of those export the same things, it's easier to have an exclude list
2021-10-30 19:52:24 +0200Sgeo(~Sgeo@user/sgeo)
2021-10-30 19:52:30 +0200 <boxscape_> do you actually have the module itself in its own export list or did you just choose "Foo" as example name twice?
2021-10-30 19:52:54 +0200 <maerwald> yes
2021-10-30 19:53:30 +0200Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving)
2021-10-30 19:53:47 +0200aegon(~mike@174.127.249.180)
2021-10-30 19:55:47 +0200 <boxscape_> okay right I just read up on what a module exporting itself does, interesting
2021-10-30 19:56:06 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 19:56:08 +0200Vajb(~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) (Ping timeout: 265 seconds)
2021-10-30 19:56:39 +0200dariof4(~dariof4@5.179.181.91) (Ping timeout: 268 seconds)
2021-10-30 19:57:00 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-10-30 19:57:04 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 19:58:34 +0200dariof4(~dariof4@5.77.103.193)
2021-10-30 20:01:07 +0200machinedgod(~machinedg@24.105.81.50) (Remote host closed the connection)
2021-10-30 20:02:12 +0200hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-10-30 20:02:14 +0200machinedgod(~machinedg@24.105.81.50)
2021-10-30 20:02:44 +0200hendursaga(~weechat@user/hendursaga)
2021-10-30 20:02:49 +0200max22-(~maxime@2a01cb0883359800e36f11616f1a350a.ipv6.abo.wanadoo.fr) (Ping timeout: 252 seconds)
2021-10-30 20:03:26 +0200Nachtgespenst(~user@user/siracusa)
2021-10-30 20:04:35 +0200chomwitt(~chomwitt@2a02:587:dc12:b600:12c3:7bff:fe6d:d374) (Ping timeout: 264 seconds)
2021-10-30 20:07:58 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Read error: Connection reset by peer)
2021-10-30 20:09:39 +0200 <maerwald> is there a way to compile windows code without starting a VM?
2021-10-30 20:10:44 +0200 <maerwald> maybe via wine? :p
2021-10-30 20:12:51 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 20:13:20 +0200zebrag(~chris@user/zebrag)
2021-10-30 20:13:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection)
2021-10-30 20:14:10 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be)
2021-10-30 20:14:24 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net)
2021-10-30 20:14:41 +0200 <maerwald> https://wiki.haskell.org/GHC_under_Wine
2021-10-30 20:14:48 +0200 <maerwald> 10 years old stuff on the wiko, as always
2021-10-30 20:15:08 +0200 <maerwald> "grab the latest windows version of haskell platform: wine HaskellPlatform-2012.4.0.0-setup.exe"
2021-10-30 20:15:10 +0200 <maerwald> right
2021-10-30 20:15:51 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 20:16:33 +0200 <maerwald> apparently, installing powershell in wine isn't easy
2021-10-30 20:17:26 +0200kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net)
2021-10-30 20:17:54 +0200 <Nachtgespenst> Is the Haskell platform still a thing?
2021-10-30 20:18:06 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 20:18:27 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 20:18:42 +0200 <maerwald> the solution was to execute a random binary from the internet (as usual on windows)
2021-10-30 20:19:10 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-10-30 20:20:10 +0200 <geekosaur> apparently it still is, although it's not recommended any more
2021-10-30 20:20:27 +0200 <geekosaur> stack and cabal both provide much more flexible and better solutions
2021-10-30 20:20:45 +0200mvk(~mvk@2607:fea8:5cc1:300::d3fb)
2021-10-30 20:20:47 +0200ubert(~Thunderbi@178.115.67.5.wireless.dyn.drei.com) (Ping timeout: 264 seconds)
2021-10-30 20:21:54 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-10-30 20:21:55 +0200 <maerwald> alright, running ghcup windows installer under wine installed powershell didn't work very well
2021-10-30 20:22:06 +0200 <shapr> sm: yes, I've recently tried ghc on monterey
2021-10-30 20:22:33 +0200 <sm> hey shapr, everything working as expected ?
2021-10-30 20:22:38 +0200 <shapr> didn't see any difference from big sur
2021-10-30 20:22:51 +0200 <sm> thanks
2021-10-30 20:23:08 +0200 <shapr> For whatever reason my work mac kernel panics after about 45 minutes of compiling, but that was true with big sur, and monterey didn't make a differenc.
2021-10-30 20:23:38 +0200 <sclv> the haskell platform is _not_ still a thing. or rather, the webpage exists but it simply recommends using ghcup
2021-10-30 20:23:39 +0200 <sm> yikes
2021-10-30 20:24:20 +0200 <shapr> sm: I've tried a bunch of things, but low power mode is the only fix I've found. Everything takes about 1.5 times as long, but at least it finishes.
2021-10-30 20:24:21 +0200 <sm> shapr: is there an open issue for that ?
2021-10-30 20:24:32 +0200 <shapr> sm: I don't think it's haskell related.
2021-10-30 20:24:57 +0200 <sm> ah.. still yikes, but not quite so much
2021-10-30 20:26:43 +0200 <geekosaur> sclv, haskell.org/platform is still there and does not recommend ghcup
2021-10-30 20:26:56 +0200 <geekosaur> maybe it's just not reachable these days unless you know the url?
2021-10-30 20:26:56 +0200 <sclv> geekosaur: yes it does i just checked
2021-10-30 20:27:12 +0200 <maerwald> https://www.haskell.org/platform/#linux-generic
2021-10-30 20:27:41 +0200 <sclv> the only exception is windows where it still recommends chocolatey.
2021-10-30 20:27:55 +0200 <aegon> whoa
2021-10-30 20:27:58 +0200 <sclv> at this point i think we should make the whole platform page redirect to ghcup since it now handles windows and stack both
2021-10-30 20:28:04 +0200 <geekosaur> oh, I was looking at from source
2021-10-30 20:28:13 +0200 <geekosaur> but yes, probably it should just go away
2021-10-30 20:28:23 +0200 <aegon> [a, b, c, d, e, f, g] <- replicateM 6 $ newMVar 0
2021-10-30 20:28:26 +0200 <aegon> compiled
2021-10-30 20:28:33 +0200 <maerwald> apparently, there's powershell via snap?
2021-10-30 20:28:44 +0200 <aegon> but then as it should be totally failed at runtime
2021-10-30 20:28:50 +0200 <aegon> is the type checker taking a day off here?
2021-10-30 20:31:28 +0200 <maerwald> first running arbitrary windows executables, now running snap as root... great
2021-10-30 20:32:28 +0200 <ski> aegon : length of list is not a part of its type
2021-10-30 20:32:33 +0200Farzad(~FarzadBek@5.234.230.191)
2021-10-30 20:33:07 +0200 <aegon> yeah, i guess i thought the pattern matcher would know how many replicate produces but its probaly just [MVar Int)
2021-10-30 20:33:20 +0200 <aegon> *[MVar Int]
2021-10-30 20:33:21 +0200 <ski> (a dependently typed programming language might fare better here)
2021-10-30 20:33:59 +0200 <ski> yes, the command would have type `IO [MVar Int]' there
2021-10-30 20:34:40 +0200 <aegon> well, thats the first time haskell let me write a malformed program when not interacting with system calls
2021-10-30 20:35:05 +0200max22-(~maxime@2a01cb08833598001f901fd4ac72f6bc.ipv6.abo.wanadoo.fr)
2021-10-30 20:35:07 +0200 <ski> let me introduce you to `head'
2021-10-30 20:35:14 +0200 <awpr> `-Werror=incomplete-uni-patterns`
2021-10-30 20:35:28 +0200 <boxscape_> does that trigger on pattern matches in a do block?
2021-10-30 20:35:39 +0200 <ski> might
2021-10-30 20:35:41 +0200 <awpr> hmm, not sure actually
2021-10-30 20:35:52 +0200DNH(~DNH@8.43.122.53)
2021-10-30 20:35:52 +0200 <boxscape_> (they could be totally valid if it's in the List monad for instance)
2021-10-30 20:36:38 +0200 <awpr> yeah, and it's not really possible for GHC to know whether a MonadFail instance is "desirable" or "undesirable"
2021-10-30 20:36:46 +0200 <ski> hm, unfortunately, it seems like it doesn't ..
2021-10-30 20:37:24 +0200 <boxscape_> there's a proposal for this https://github.com/ghc-proposals/ghc-proposals/pull/319
2021-10-30 20:38:53 +0200 <boxscape_> (well, not this exactly, but this general topic)
2021-10-30 20:39:59 +0200 <aegon> i need to be a *little* more careful
2021-10-30 20:43:10 +0200unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving)
2021-10-30 20:43:21 +0200 <boxscape_> okay actually the proposal *is* about exactly this "When the -Wincomplete-uni-patterns warning flag is enabled alongside NoFallibleDo, we will warn about the incomplete pattern match."
2021-10-30 20:43:48 +0200 <maerwald> https://hub.docker.com/r/avalverde/ghc-cross-compiler-windows-x86
2021-10-30 20:43:49 +0200 <maerwald> uh-oh
2021-10-30 20:44:34 +0200unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291)
2021-10-30 20:48:01 +0200 <johnjay> when i search on google for haskell tutorials top result is... learnyouahaskell
2021-10-30 20:48:41 +0200 <johnjay> next few in order are tutorialspoint, a wiki, and learn.hfm.io. are these good?
2021-10-30 20:49:11 +0200 <maerwald> I liked https://www.cis.upenn.edu/~cis194/spring13/
2021-10-30 20:49:16 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-10-30 20:49:26 +0200 <boxscape_> tutorialspoint is bad, never heard of learn.hfm.io, if you mean the HaskellWiki, there's probably too many links there to figure out which one to go with
2021-10-30 20:50:09 +0200trillp(~trillp@69.233.98.238)
2021-10-30 20:50:13 +0200 <boxscape_> learnyouahaskell has mixed reviews, it has a lighthearted approachable tone but is maybe a bit outdated at this point and doesn't teach as much as many other resources
2021-10-30 20:51:02 +0200 <maerwald> what do you mean with outdated? I'd say 90% of the basics didn't change in the last 10 years
2021-10-30 20:51:34 +0200 <aegon> learnyouahaskell is a good first step but needs some diligent supplimental material to get you to writing a practical bit of haskell
2021-10-30 20:51:37 +0200 <aegon> imo
2021-10-30 20:51:49 +0200 <aegon> i usually give people learnyouahaskell because its very approachable in tone
2021-10-30 20:51:59 +0200 <boxscape_> yeah most of it is probably fine but since it hasn't been touched in many years I suspect there's a few things here and there that don't quite work the same way in modern ghc as they did at the time? To be fair I don't actually know, hence the "maybe"
2021-10-30 20:51:59 +0200 <maerwald> it doesn't have exercises, so is rather useless
2021-10-30 20:52:03 +0200 <johnjay> sounds like google wins again this time
2021-10-30 20:52:08 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 20:52:12 +0200dariof4(~dariof4@5.77.103.193) (Ping timeout: 265 seconds)
2021-10-30 20:52:15 +0200 <johnjay> if top result is passable but not great, next 3 are bad
2021-10-30 20:52:25 +0200 <maerwald> johnjay: did you check my link?
2021-10-30 20:52:37 +0200 <johnjay> no because i can't copy in my tmux atm
2021-10-30 20:52:41 +0200 <johnjay> sec
2021-10-30 20:52:53 +0200 <geekosaur> @where books
2021-10-30 20:52:53 +0200 <lambdabot> https://www.extrema.is/articles/haskell-books, see also @where LYAH, RWH, YAHT, SOE, HR, PIH, TFwH, wikibook, PCPH, HPFFP, HTAC, TwT, FoP, PFAD, WYAH, non-haskell-books
2021-10-30 20:53:35 +0200 <hpc> https://www.haskell.org/documentation/ - the official big list :P
2021-10-30 20:53:55 +0200dariof4(~dariof4@5.11.107.11)
2021-10-30 20:53:57 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk)
2021-10-30 20:54:16 +0200 <boxscape_> maerwald example I can think of: learnyouahaskell teaches you to use "let a = ..." in ghci, which isn't necessary anymore. Still works of course, but I wouldn't put it into a modern tutorial
2021-10-30 20:54:53 +0200 <aegon> learnyouahaskell got me close enough to be able to go grok random fpcomplete posts and some hackage docs. Did a good job of making the syntax / paradigm jump not a barrier to parsing deeper
2021-10-30 20:54:57 +0200f-a(f2a@f2a.jujube.ircnow.org)
2021-10-30 20:55:11 +0200 <maerwald> fpcomplete posts aren't for beginners usually
2021-10-30 20:55:23 +0200skistill always does the `let' in the interactor
2021-10-30 20:55:41 +0200 <boxscape_> understandable if you've been used to it for years
2021-10-30 20:55:44 +0200 <ski> (if i could, i would disable being able to let it out)
2021-10-30 20:55:59 +0200 <boxscape_> what benefit would that give you?
2021-10-30 20:56:12 +0200 <ski> not being annoyed by it being enabled ?
2021-10-30 20:56:17 +0200 <boxscape_> I guess that's fair
2021-10-30 20:56:26 +0200kritzefitz_(~kritzefit@picard.host.weltraumschlangen.de)
2021-10-30 20:56:40 +0200kritzefitz_(~kritzefit@picard.host.weltraumschlangen.de) ()
2021-10-30 20:58:14 +0200 <johnjay> fpcomplete looks like any other generic corporate landing page
2021-10-30 20:58:19 +0200 <johnjay> where are the posts
2021-10-30 20:58:21 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 20:58:41 +0200 <boxscape_> they have a learn haskell page here https://www.fpcomplete.com/haskell/learn/
2021-10-30 20:59:11 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
2021-10-30 20:59:15 +0200 <maerwald> they're doing more rust these days (and typescript I think)
2021-10-30 20:59:20 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection)
2021-10-30 20:59:21 +0200 <boxscape_> I don't actually know how to find that link on the website but google offered it when I searched for fpcomplete
2021-10-30 20:59:39 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 21:00:01 +0200 <johnjay> boxscape_: i would never have found that on my own.
2021-10-30 21:00:04 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 21:00:11 +0200 <boxscape_> yep not very discoverable
2021-10-30 21:00:37 +0200 <johnjay> reminds me of a time someone asked me how to read the cdrom on a unix machine
2021-10-30 21:00:49 +0200 <johnjay> i told him it's "volcheck". that was his response
2021-10-30 21:00:50 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2021-10-30 21:00:59 +0200burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 264 seconds)
2021-10-30 21:01:05 +0200 <boxscape_> :D
2021-10-30 21:01:10 +0200 <sm> fpcomplete has always had some of the best beginner content, I would say
2021-10-30 21:02:02 +0200 <sm> they tried to make it more discoverable but half the community rejected them
2021-10-30 21:02:08 +0200 <johnjay> (by the way not necessarily true in this case. fpcomplete is on the 2nd page of google results)
2021-10-30 21:04:32 +0200 <maerwald> sm: huh?
2021-10-30 21:04:46 +0200 <maerwald> you mean when they tried to fork haskell.org?
2021-10-30 21:05:07 +0200mrckndt4(~mrckndt@user/mrckndt)
2021-10-30 21:05:26 +0200 <geekosaur> you know, there's a difference between "make it more discoverable" and "be obnoxious about it"
2021-10-30 21:05:30 +0200 <maerwald> I'd say that was a faux pas
2021-10-30 21:05:46 +0200 <sm> I think that's a divisive and negative way of seeing it, but I won't get into it with you, sorry maerwald
2021-10-30 21:05:46 +0200 <johnjay> what do you mean fork
2021-10-30 21:05:52 +0200 <johnjay> like make a website that competes with it?
2021-10-30 21:05:54 +0200vicfred(~vicfred@user/vicfred)
2021-10-30 21:05:56 +0200 <maerwald> yeah
2021-10-30 21:05:58 +0200 <johnjay> you can't literally take someone's website
2021-10-30 21:06:10 +0200 <geekosaur> haskell-lang.org
2021-10-30 21:06:14 +0200 <geekosaur> which may still be there
2021-10-30 21:06:29 +0200 <geekosaur> half the links rewritten to point to fpcomplete-approved versions, etc.
2021-10-30 21:06:36 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 21:06:46 +0200 <sm> they removed it in the interest of community harmony
2021-10-30 21:06:59 +0200 <maerwald> I think they removed it because it didn't work
2021-10-30 21:07:11 +0200mrckndt(~mrckndt@user/mrckndt) (Ping timeout: 245 seconds)
2021-10-30 21:07:11 +0200mrckndt4mrckndt
2021-10-30 21:07:12 +0200 <lechner> ouch
2021-10-30 21:07:20 +0200 <f-a> I have got a haddock/hackage question
2021-10-30 21:07:50 +0200 <geekosaur> that said, imo HF made similar mistakes early on. at least they listened to community input
2021-10-30 21:07:57 +0200 <f-a> when I reexport functions from another library, the documentation — of course — gets reexported as well, like this https://hackage.haskell.org/package/ansi-terminal-game-1.4.0.0/docs/Terminal-Game.html#t:Hyphenator
2021-10-30 21:08:04 +0200 <maerwald> geekosaur: yes they did
2021-10-30 21:08:39 +0200 <f-a> but some times — as in this case — it is a bit wordy or unhelpful, since the setting is another library
2021-10-30 21:09:10 +0200 <f-a> is there a haddock way to rewrite that specific doc?
2021-10-30 21:09:32 +0200 <f-a> I thought of defining a function/type with the same name and export that, but it seems a bit cumbersome
2021-10-30 21:09:36 +0200 <f-a> and lots of work
2021-10-30 21:09:53 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 21:10:14 +0200 <johnjay> geekosaur: well is that really a big deal?
2021-10-30 21:10:21 +0200 <Franciman> lol maerwald
2021-10-30 21:10:31 +0200 <johnjay> i can fork ubuntu on github but nobody gets mad at me for copying it
2021-10-30 21:11:14 +0200 <maerwald> johnjay: have you seen any language community that has two competing landing pages? It's pretty confusing for everyone, especially newcomers
2021-10-30 21:11:26 +0200 <aegon> johnjay: imo fpcomplete has some strong opinions in their articles that seem wrong sometimes
2021-10-30 21:11:36 +0200 <Franciman> trying to impose yourself as the true source of haskell is something you think about before doing it, if you care about the harmony of the community
2021-10-30 21:11:42 +0200 <johnjay> oh ok so it's more about SEO
2021-10-30 21:11:50 +0200 <johnjay> whoever appears first in google is the "real" community
2021-10-30 21:11:54 +0200 <geekosaur> yeh, it's very much not a way to help newcomers, it just looks like the community is fractured
2021-10-30 21:12:18 +0200 <geekosaur> which is about the last message you want to send
2021-10-30 21:12:21 +0200 <Franciman> but fpcomplete puts money in things, they want a return
2021-10-30 21:12:21 +0200 <aegon> their article on safe exception handling is a great overview, but the tone of it makes excedptions in haskell out to be silly and broken but on the other end of it, it seems complicated but not any of the other two things and not needlessly so
2021-10-30 21:12:24 +0200 <Franciman> that's what you get from companies
2021-10-30 21:12:43 +0200 <maerwald> wrt tooling, there's an argument to be made for diversity... but competing landing pages are not
2021-10-30 21:13:05 +0200 <johnjay> i guess there are some projects like ubuntu that have a company backing it
2021-10-30 21:13:12 +0200 <lechner> maybe they lost confidence in the community?
2021-10-30 21:13:13 +0200 <johnjay> but haskell doesn't sound like that
2021-10-30 21:13:15 +0200 <sclv> hf made absolutely no remotely similar "mistakes"
2021-10-30 21:13:32 +0200 <Franciman> thanks for the daily source of absolutism
2021-10-30 21:13:50 +0200 <unit73e> da tru sauce of haskell
2021-10-30 21:13:51 +0200 <sclv> well its hard being right about everything all the time but i do my best
2021-10-30 21:14:19 +0200 <johnjay> is hf the main haskell landing page?
2021-10-30 21:14:22 +0200 <maerwald> sclv: I disagree somewhat, but I don't think it's worthwhile to reiterate it publicly. I think HF has the right intentions, at least.
2021-10-30 21:14:29 +0200 <sclv> no, thats controlled by the haskell.org committee
2021-10-30 21:14:53 +0200 <sclv> i don't disagree that hf has been going through a learning process and has a long way to go, and didn't get everything right
2021-10-30 21:15:03 +0200 <maerwald> and given it's basically bootstrapping itself, maybe one shouldn't be too harsh about communication issues etc
2021-10-30 21:15:05 +0200 <sclv> i'm just saying there's nothing similar in those issues to fpco
2021-10-30 21:16:59 +0200 <maerwald> I think we're mostly past the historical drama though
2021-10-30 21:17:25 +0200 <sclv> rather than just fragmenting everything, hf's problem has, if anything, been mostly paralysis in the face of trying to get too much input from everyone and bend over backwards to reach full consensus on everything, which has meant it just gets stuck or sometimes is totally contradictory
2021-10-30 21:18:40 +0200 <maerwald> although drama also hat its beauty, does it not?
2021-10-30 21:18:48 +0200 <Franciman> damn yeah
2021-10-30 21:18:56 +0200 <geekosaur> only from a distance
2021-10-30 21:18:57 +0200 <aegon> Haskell: There's a powerfull set of tools in there somewhere
2021-10-30 21:19:00 +0200 <aegon> :P
2021-10-30 21:19:17 +0200 <unit73e> linus torlvalds brought some hilarious drama
2021-10-30 21:19:26 +0200 <unit73e> nowadays not so much
2021-10-30 21:19:49 +0200 <aegon> when did linus engage with haskell talk, that would be fun to hear
2021-10-30 21:20:05 +0200 <maerwald> he only mentioned it briefly in one interview I think
2021-10-30 21:20:09 +0200 <Franciman> he would probably say that it is shit + other shitty shits
2021-10-30 21:20:16 +0200 <maerwald> and considered it a hype or so
2021-10-30 21:20:21 +0200 <Franciman> ofc
2021-10-30 21:20:26 +0200 <aegon> yeah, he's never light in his thoughts
2021-10-30 21:20:38 +0200 <aegon> i expect some bashing, i think he would bash himself just as easily though
2021-10-30 21:20:39 +0200 <Franciman> linus' line of thought: can I write a kernel with it?
2021-10-30 21:20:51 +0200 <Franciman> would it suck?
2021-10-30 21:21:05 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net)
2021-10-30 21:21:37 +0200 <unit73e> linus doesn't care much about functional programming
2021-10-30 21:21:54 +0200 <unit73e> john carmack did speak about it and it was positive
2021-10-30 21:22:07 +0200 <Franciman> git to me means: let's write a kernel
2021-10-30 21:22:09 +0200 <Franciman> it is awful
2021-10-30 21:22:14 +0200 <Franciman> but DAMN FAST
2021-10-30 21:22:18 +0200 <Franciman> and DAMN POWERFUL
2021-10-30 21:22:30 +0200 <Franciman> linus -> do kernel
2021-10-30 21:22:38 +0200 <lechner> you curse too much
2021-10-30 21:23:26 +0200 <aegon> yeah i've heard carmacks talk, sweeney also has been public about doing some experiments in it
2021-10-30 21:23:46 +0200 <johnjay> this course makes haskell sound pretty interesting. a bunch of academics wanted a functional language so they made on in the 80s
2021-10-30 21:24:44 +0200 <unit73e> I found out what linus said about it, to sum up he said haskell is nice and but it's not for him because he works on kernels
2021-10-30 21:25:04 +0200 <unit73e> so nothing unusual there
2021-10-30 21:25:20 +0200 <johnjay> unit73e: that sounds a lot less good for SEO
2021-10-30 21:25:58 +0200yauhsien(~yauhsien@61-231-43-13.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-10-30 21:27:39 +0200 <aegon> linus wants to write assembly with better syntax
2021-10-30 21:28:24 +0200 <johnjay> let's just have an operating system written in C. then right on topic of it is some hyper functional langauge like haskell or scheme
2021-10-30 21:28:31 +0200 <johnjay> could be anything as long as it's functional
2021-10-30 21:29:42 +0200 <maerwald> aegon: carmack mentioning haskell has been over-hyped a lot. It doesn't seem he really followed up on it :p
2021-10-30 21:31:34 +0200 <aegon> yeah from the talk he's not enthusiastic about haskell but more respects that functional styled code is more re-usable over time
2021-10-30 21:31:55 +0200 <Rembane_> Wasn't the idea that he could use the ideas from Haskell in his C++ code?
2021-10-30 21:32:09 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 21:36:38 +0200 <ldlework> could he really though
2021-10-30 21:37:15 +0200 <ldlework> I've tried to take lessons learned from my time with Haskell back to Typescript and it just seems like a pointless struggle
2021-10-30 21:38:30 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 21:38:47 +0200dariof4(~dariof4@5.11.107.11) (Ping timeout: 264 seconds)
2021-10-30 21:39:16 +0200 <boxscape_> things like learning to separate pure and impure code are things you can easily apply to other languages as well
2021-10-30 21:39:26 +0200 <boxscape_> the type system just doesn't enforce it
2021-10-30 21:40:18 +0200 <johnjay> you could name functions with hungarian notation
2021-10-30 21:40:20 +0200dariof4(~dariof4@95.131.44.100)
2021-10-30 21:40:23 +0200 <johnjay> pfunc is a pure function func
2021-10-30 21:40:38 +0200benin(~benin@183.82.30.38) (Quit: The Lounge - https://thelounge.chat)
2021-10-30 21:42:09 +0200 <zincy_> boxscape_: Is that a good general practice outside of Haskell?
2021-10-30 21:42:28 +0200 <zincy_> I've heard people saying in Haskell it doesn't really matter separating IO from non IO.
2021-10-30 21:43:05 +0200 <boxscape_> personally I would say so but idk maybe it depends on what your workflow is or something
2021-10-30 21:43:39 +0200 <boxscape_> I certainly would appreciate if library designers learned to do it
2021-10-30 21:44:12 +0200 <boxscape_> I still remember getting stuck for an hour or more not understanding why javascripts string replace function doesn't do what I expected because it's stateful, for some reason
2021-10-30 21:44:23 +0200 <ikke> Functional core, imperative shell
2021-10-30 21:44:34 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 260 seconds)
2021-10-30 21:44:38 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 21:45:06 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 21:45:06 +0200MQ-17J(~MQ-17J@8.6.144.203) (Read error: Connection reset by peer)
2021-10-30 21:45:25 +0200MQ-17J(~MQ-17J@8.6.144.203)
2021-10-30 21:46:02 +0200 <maerwald> zincy_: I also don't think the IO vs non-IO thing is what matters. What matters is that you think about shared mutable state explicitly.
2021-10-30 21:46:15 +0200 <maerwald> because that's the root of all evil
2021-10-30 21:46:50 +0200 <maerwald> Java made it popular to not think about it.
2021-10-30 21:47:07 +0200 <zincy_> So when it comes to other languages isolating non pure code equates mostly to push shared mutable state into the corner of the room
2021-10-30 21:47:09 +0200 <johnjay> isn't making shared mutable state kind of the point of java?
2021-10-30 21:47:17 +0200 <maerwald> yeah, it's scary
2021-10-30 21:48:00 +0200 <johnjay> boxscape_: i think the curse of knowledge is real
2021-10-30 21:48:18 +0200 <johnjay> once you learn a system, any system, then its weirdness and contradictions seem so normal and matter-of-fact to you
2021-10-30 21:48:24 +0200 <boxscape_> that's fair
2021-10-30 21:48:30 +0200 <johnjay> that when someone asks you why something is the case, you literally don't even understand what they're talking about
2021-10-30 21:49:09 +0200Farzad(~FarzadBek@5.234.230.191) (Quit: Leaving)
2021-10-30 21:49:17 +0200 <johnjay> "Why does 2+2 not equal 4 in this case?" "Well duh,that's common sense!"
2021-10-30 21:49:30 +0200guniberas(~guniberas@42.191.188.121) (Ping timeout: 268 seconds)
2021-10-30 21:49:31 +0200Farzad(~FarzadBek@5.234.230.191)
2021-10-30 21:49:43 +0200 <johnjay> boxscape_: i had a scary convo like that last week when i was writing a script for a game
2021-10-30 21:49:58 +0200 <geekosaur> flatland. or that variant that was hyperbolic, that I forget the name of now?
2021-10-30 21:50:08 +0200 <zincy_> Is this the curse of knowledge?
2021-10-30 21:50:16 +0200 <johnjay> basically i was trying to use a custom ability based its ID. which the game editor displays. but apparently some unrelated string called the order ID is what actually matters
2021-10-30 21:50:20 +0200 <zincy_> I thought that was I understand the concept but I cannot explain it.
2021-10-30 21:50:30 +0200 <johnjay> and the 2 people i was talking to didn't even understand why i was confused.
2021-10-30 21:50:35 +0200 <johnjay> it was like talking to an insane person
2021-10-30 21:50:50 +0200cross_(~cross@spitfire.i.gajendra.net) (Remote host closed the connection)
2021-10-30 21:51:06 +0200 <johnjay> zincy_: yes exactly. but like. imagine you're in wonderland and asking someone why this drink makes you 10 feet tall. they don't really know
2021-10-30 21:51:10 +0200 <zincy_> I think you are talking about a lack of knowledge :)
2021-10-30 21:51:24 +0200 <johnjay> what's scary about is more the pretending to know but not really knowing
2021-10-30 21:51:47 +0200 <zincy_> Yeah that is a weird place to be.
2021-10-30 21:51:58 +0200 <johnjay> at least humpty dumpty is honest that he makes up weird definitions with no regard to anybody else
2021-10-30 21:52:49 +0200 <monochrom> A better reference is emperor's new cloth.
2021-10-30 21:55:09 +0200 <maerwald> I remember reading quake3 engine code I think and they did annotate side effects in the function documentation.
2021-10-30 21:55:42 +0200 <maerwald> or maybe it was RtCW
2021-10-30 21:55:59 +0200 <maerwald> Well, ID had great coders
2021-10-30 21:56:13 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-10-30 21:56:58 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-10-30 21:57:41 +0200acidjnk_new(~acidjnk@p5487db6d.dip0.t-ipconnect.de)
2021-10-30 21:59:41 +0200 <zincy_> maerwald: "What matters is that you think about shared mutable state explicitly."
2021-10-30 21:59:45 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 22:00:05 +0200 <zincy_> So does this mean basically segregate that nasty stuff from the rest?
2021-10-30 22:00:39 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-10-30 22:01:21 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 245 seconds)
2021-10-30 22:01:21 +0200 <maerwald> start with not using the filesystem for anything
2021-10-30 22:02:08 +0200 <maerwald> well, windows solved it... the virus scanner will just lock your files and your program will have to wait :D
2021-10-30 22:02:34 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection)
2021-10-30 22:02:42 +0200 <zincy_> haha
2021-10-30 22:02:43 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 22:03:29 +0200acidjnk_new3(~acidjnk@p200300d0c7441135e59462474fdf3062.dip0.t-ipconnect.de)
2021-10-30 22:03:31 +0200 <maerwald> now you need retry strategies and algorithms to delete files (did you know you can always *move* a file, even if it's locked, but not delete it?)
2021-10-30 22:04:59 +0200 <maerwald> guess why the recycle bin exists
2021-10-30 22:05:19 +0200juhp(~juhp@128.106.188.220) (Ping timeout: 260 seconds)
2021-10-30 22:05:59 +0200 <maerwald> does Haskell help you with that? No :p
2021-10-30 22:06:23 +0200mvk(~mvk@2607:fea8:5cc1:300::d3fb) (Ping timeout: 264 seconds)
2021-10-30 22:06:34 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2021-10-30 22:06:58 +0200acidjnk_new(~acidjnk@p5487db6d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-10-30 22:07:09 +0200Skyfire(~pyon@user/pyon) (Quit: br)
2021-10-30 22:07:28 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 22:07:28 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 22:07:28 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 22:07:41 +0200juhp(~juhp@128.106.188.220)
2021-10-30 22:09:28 +0200Skyfire(~pyon@user/pyon)
2021-10-30 22:09:46 +0200 <maerwald> I worry less about avoiding IO and more about means to make my IO code correct
2021-10-30 22:10:41 +0200Guest27(~Guest27@188.64.207.100)
2021-10-30 22:11:01 +0200 <maerwald> a syscall filter embedded into the RTS would for example be a start
2021-10-30 22:11:33 +0200 <maerwald> that can throw runtime exceptions if constraints aren't met (because a library misbehaves)
2021-10-30 22:12:46 +0200fendor(~fendor@178.115.79.50.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-10-30 22:14:03 +0200 <monochrom> Hrm, a shadow state automaton that simulates the OS's state automaton to predict what the OS would dislike.
2021-10-30 22:14:17 +0200 <remexre> am I missing something, or is the 9.2.1 manual missing the "Included libraries" section
2021-10-30 22:14:20 +0200 <remexre> a la https://downloads.haskell.org/ghc/latest/docs/html/users_guide/9.0.1-notes.html#included-libraries
2021-10-30 22:14:54 +0200 <monochrom> And you need like 6 of them, one for linsucks, one for winblows, one for slowaris, 3 for fragmentedbsd...
2021-10-30 22:15:16 +0200 <johnjay> you left about malbatrosx
2021-10-30 22:16:30 +0200fendor(~fendor@178.115.79.50.wireless.dyn.drei.com)
2021-10-30 22:21:16 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2)
2021-10-30 22:21:23 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 264 seconds)
2021-10-30 22:23:28 +0200chomwitt(~chomwitt@ppp-94-68-249-8.home.otenet.gr)
2021-10-30 22:27:55 +0200lavaman(~lavaman@98.38.249.169)
2021-10-30 22:28:21 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 22:28:22 +0200 <hpc> but not temple os
2021-10-30 22:28:26 +0200 <hpc> that's written 100% in the holy C
2021-10-30 22:29:21 +0200ski. o O ( isn't that in ROM ? )
2021-10-30 22:32:26 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection)
2021-10-30 22:34:55 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds)
2021-10-30 22:35:30 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2021-10-30 22:36:06 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2)
2021-10-30 22:36:13 +0200zincy_(~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection)
2021-10-30 22:36:55 +0200brainfreeze(~brainfree@2a03:1b20:4:f011::20d)
2021-10-30 22:42:52 +0200proboscis(~proboscis@115-189-81-94.mobile.spark.co.nz) (Ping timeout: 252 seconds)
2021-10-30 22:43:11 +0200proboscis(~proboscis@115-189-129-187.mobile.spark.co.nz)
2021-10-30 22:52:33 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net)
2021-10-30 22:54:02 +0200ss4(~wootehfoo@user/wootehfoot)
2021-10-30 22:56:58 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2021-10-30 22:56:59 +0200ss4(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2021-10-30 22:57:22 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-10-30 22:58:29 +0200ss4(~wootehfoo@user/wootehfoot)
2021-10-30 23:01:26 +0200mikoto-chan(~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 246 seconds)
2021-10-30 23:02:22 +0200unit73e(~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving)
2021-10-30 23:02:31 +0200metabulation(~wootehfoo@user/wootehfoot)
2021-10-30 23:04:01 +0200metabulation(~wootehfoo@user/wootehfoot) (Remote host closed the connection)
2021-10-30 23:06:28 +0200ss4(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2021-10-30 23:08:41 +0200Farzad(~FarzadBek@5.234.230.191) (Quit: Leaving)
2021-10-30 23:15:30 +0200yrlnry(~mjd@pool-74-109-22-90.phlapa.fios.verizon.net)
2021-10-30 23:22:23 +0200son0p(~ff@181.136.122.143) (Remote host closed the connection)
2021-10-30 23:23:38 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-10-30 23:24:28 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-10-30 23:25:19 +0200jollygood2(~bc8165b6@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
2021-10-30 23:28:14 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2021-10-30 23:28:47 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net)
2021-10-30 23:29:16 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 245 seconds)
2021-10-30 23:29:49 +0200fendor(~fendor@178.115.79.50.wireless.dyn.drei.com) (Remote host closed the connection)
2021-10-30 23:32:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894)
2021-10-30 23:33:01 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 245 seconds)
2021-10-30 23:33:47 +0200Alleria(~textual@user/alleria)
2021-10-30 23:34:02 +0200nitrix(~nitrix@user/nitrix) (Quit: Genius is one percent inspiration and ninety-nine percent perspiration)
2021-10-30 23:35:17 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net)
2021-10-30 23:37:11 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds)
2021-10-30 23:39:54 +0200yauhsien(~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2021-10-30 23:42:36 +0200nitrix(~nitrix@user/nitrix)
2021-10-30 23:44:27 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-10-30 23:44:27 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-10-30 23:44:27 +0200wroathe(~wroathe@user/wroathe)
2021-10-30 23:46:19 +0200FragByte(~christian@user/fragbyte) (Quit: Quit)
2021-10-30 23:48:06 +0200FragByte(~christian@user/fragbyte)
2021-10-30 23:49:14 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2021-10-30 23:49:33 +0200machinedgod(~machinedg@24.105.81.50)
2021-10-30 23:49:35 +0200yrlnry(~mjd@pool-74-109-22-90.phlapa.fios.verizon.net) (Ping timeout: 264 seconds)
2021-10-30 23:50:33 +0200peterhil(~peterhil@dsl-hkibng32-54fb56-2.dhcp.inet.fi) (Ping timeout: 265 seconds)
2021-10-30 23:58:25 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-10-30 23:58:26 +0200proboscis(~proboscis@115-189-129-187.mobile.spark.co.nz) (Ping timeout: 245 seconds)