2021-10-30 00:02:04 +0200 | zincy_ | (~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 +0200 | xff0x | (~xff0x@2001:1a81:529e:f300:b22f:69e6:aa77:fd2f) (Ping timeout: 268 seconds) |
2021-10-30 00:09:43 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-30 00:10:18 +0200 | xff0x | (~xff0x@2001:1a81:529e:f300:d3c7:e134:91d9:4541) |
2021-10-30 00:11:40 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds) |
2021-10-30 00:16:51 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-10-30 00:17:31 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-30 00:19:01 +0200 | kn07_ | (~kn07_@86.121.23.168) (Quit: Leaving) |
2021-10-30 00:19:04 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 00:19:04 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 00:19:04 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 00:19:56 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-10-30 00:22:54 +0200 | mcglk_ | (~mcglk@131.191.49.120) |
2021-10-30 00:23:32 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-10-30 00:23:47 +0200 | mcglk | (~mcglk@131.191.49.120) (Ping timeout: 260 seconds) |
2021-10-30 00:24:05 +0200 | jespada | (~jespada@181.28.253.200) |
2021-10-30 00:26:45 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds) |
2021-10-30 00:29:47 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 258 seconds) |
2021-10-30 00:30:27 +0200 | jil | (~user@160.155.45.49) (ERC (IRC client for Emacs 27.2)) |
2021-10-30 00:31:09 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) (Read error: Connection reset by peer) |
2021-10-30 00:31:22 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) |
2021-10-30 00:32:50 +0200 | hyiltiz | (~quassel@31.220.5.250) (Quit: hyiltiz) |
2021-10-30 00:33:41 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-30 00:35:22 +0200 | jespada | (~jespada@181.28.253.200) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-30 00:37:18 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) (Read error: Connection reset by peer) |
2021-10-30 00:37:27 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) |
2021-10-30 00:39:01 +0200 | f-a | (f2a@f2a.jujube.ircnow.org) |
2021-10-30 00:39:56 +0200 | harveypwca | (~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 +0200 | ubert | (~Thunderbi@178.115.53.120.wireless.dyn.drei.com) |
2021-10-30 00:42:50 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Lost terminal) |
2021-10-30 00:45:59 +0200 | mc47 | (~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 +0200 | kupi | (uid212005@id-212005.hampstead.irccloud.com) |
2021-10-30 00:59:33 +0200 | hyiltiz | (~quassel@31.220.5.250) (Quit: hyiltiz) |
2021-10-30 01:06:05 +0200 | fluffyballoon | (~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 +0200 | zincy_ | (~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 +0200 | Farzad | (~FarzadBek@37.49.150.10) |
2021-10-30 01:13:35 +0200 | burnsidesLlama | (~burnsides@dhcp168-040.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-10-30 01:14:07 +0200 | burnsidesLlama | (~burnsides@dhcp168-040.wadham.ox.ac.uk) |
2021-10-30 01:14:12 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) (Ping timeout: 260 seconds) |
2021-10-30 01:14:23 +0200 | proboscis | (~proboscis@115-189-132-172.mobile.spark.co.nz) |
2021-10-30 01:17:07 +0200 | max22- | (~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 +0200 | MQ-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 +0200 | burnsidesLlama | (~burnsides@dhcp168-040.wadham.ox.ac.uk) (Ping timeout: 264 seconds) |
2021-10-30 01:19:36 +0200 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Remote host closed the connection) |
2021-10-30 01:19:59 +0200 | MQ-17J | (~MQ-17J@8.6.144.203) |
2021-10-30 01:21:40 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 260 seconds) |
2021-10-30 01:22:50 +0200 | tomboy64 | (~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 +0200 | proboscis | (~proboscis@115-189-132-172.mobile.spark.co.nz) (Ping timeout: 260 seconds) |
2021-10-30 01:35:14 +0200 | Domino[m] | (~dominothe@2001:470:69fc:105::1:271b) |
2021-10-30 01:35:40 +0200 | proboscis | (~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 +0200 | wrengr | (~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 +0200 | wrengr | (~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 +0200 | shailangsa | (~shailangs@host217-39-45-200.range217-39.btcentralplus.com) |
2021-10-30 01:39:55 +0200 | ubert | (~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 +0200 | fef | (~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 +0200 | MQ-17J | (~MQ-17J@8.6.144.203) (Ping timeout: 264 seconds) |
2021-10-30 01:48:42 +0200 | MQ-17J | (~MQ-17J@8.6.144.203) |
2021-10-30 01:48:50 +0200 | cads | (~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 +0200 | acidjnk_new | (~acidjnk@p200300d0c7238d89cc95ba723fa3afc9.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2021-10-30 02:00:03 +0200 | mcglk_ | (~mcglk@131.191.49.120) (*.net *.split) |
2021-10-30 02:00:03 +0200 | nehsou^ | (~nehsou@wsip-98-188-242-6.mc.at.cox.net) (*.net *.split) |
2021-10-30 02:00:03 +0200 | Kaiepi | (~Kaiepi@156.34.44.192) (*.net *.split) |
2021-10-30 02:00:03 +0200 | JSharp | (sid4580@id-4580.lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:03 +0200 | bradparker | (sid262931@id-262931.uxbridge.irccloud.com) (*.net *.split) |
2021-10-30 02:00:03 +0200 | hendi | (sid489601@id-489601.lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:03 +0200 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split) |
2021-10-30 02:00:03 +0200 | Sgeo | (~Sgeo@user/sgeo) (*.net *.split) |
2021-10-30 02:00:03 +0200 | AlexNoo | (~AlexNoo@178.34.163.209) (*.net *.split) |
2021-10-30 02:00:03 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (*.net *.split) |
2021-10-30 02:00:03 +0200 | neurocyte0132889 | (~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 +0200 | terrorjack | (~terrorjac@static.3.200.12.49.clients.your-server.de) (*.net *.split) |
2021-10-30 02:00:03 +0200 | pavonia | (~user@user/siracusa) (*.net *.split) |
2021-10-30 02:00:04 +0200 | carter | (sid14827@id-14827.helmsley.irccloud.com) (*.net *.split) |
2021-10-30 02:00:04 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (*.net *.split) |
2021-10-30 02:00:04 +0200 | pieguy128_ | (~pieguy128@bras-base-mtrlpq5031w-grc-48-67-70-102-17.dsl.bell.ca) (*.net *.split) |
2021-10-30 02:00:04 +0200 | AndrewYu | (~andrew@user/andrewyu) (*.net *.split) |
2021-10-30 02:00:04 +0200 | sander | (~sander@user/sander) (*.net *.split) |
2021-10-30 02:00:04 +0200 | philpax_ | (sid516926@id-516926.lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:04 +0200 | dsal | (sid13060@id-13060.lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:04 +0200 | Gestotterd | (~Stotteren@pool-108-20-79-41.bstnma.fios.verizon.net) (*.net *.split) |
2021-10-30 02:00:04 +0200 | slowtype- | (~slowtyper@2a02:214c:8630:300:654c:f501:742f:b8e4) (*.net *.split) |
2021-10-30 02:00:04 +0200 | d34df00d | (~d34df00d@2600:1700:8c60:3a10::48) (*.net *.split) |
2021-10-30 02:00:04 +0200 | martin02 | (~silas@emasq.stusta.mhn.de) (*.net *.split) |
2021-10-30 02:00:04 +0200 | jneira[m] | (~jneiramat@2001:470:69fc:105::d729) (*.net *.split) |
2021-10-30 02:00:04 +0200 | nonzen | (~nonzen@user/nonzen) (*.net *.split) |
2021-10-30 02:00:04 +0200 | Taneb | (~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split) |
2021-10-30 02:00:04 +0200 | nurupo | (~nurupo.ga@user/nurupo) (*.net *.split) |
2021-10-30 02:00:04 +0200 | farn | (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (*.net *.split) |
2021-10-30 02:00:04 +0200 | jocke-l | (jocke-l@a.x0.is) (*.net *.split) |
2021-10-30 02:00:04 +0200 | oxytocat | (~alloca@user/suppi) (*.net *.split) |
2021-10-30 02:00:04 +0200 | defanor | (~defanor@tart.uberspace.net) (*.net *.split) |
2021-10-30 02:00:04 +0200 | xerox | (~edi@user/edi) (*.net *.split) |
2021-10-30 02:00:04 +0200 | lstor | (~lstor@user/lstor) (*.net *.split) |
2021-10-30 02:00:04 +0200 | dolio | (~dolio@130.44.130.54) (*.net *.split) |
2021-10-30 02:00:04 +0200 | n3t | (n3t@user/n3t) (*.net *.split) |
2021-10-30 02:00:04 +0200 | unmanbearpig | (~unmanbear@user/unmanbearpig) (*.net *.split) |
2021-10-30 02:00:04 +0200 | NemesisD | (sid24071@lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | kristjansson_ | (sid126207@tinside.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | sa | (sid1055@tinside.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | grfn | (sid449115@helmsley.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | teehemkay | (sid14792@lymington.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | mcfilib | (sid302703@user/mcfilib) (*.net *.split) |
2021-10-30 02:00:05 +0200 | haasn | (~nand@haasn.dev) (*.net *.split) |
2021-10-30 02:00:05 +0200 | mniip | (~mniip@libera/staff/mniip) (*.net *.split) |
2021-10-30 02:00:05 +0200 | ggVGc | (~ggVGc@a.lowtech.earth) (*.net *.split) |
2021-10-30 02:00:05 +0200 | tinwood | (~tinwood@canonical/tinwood) (*.net *.split) |
2021-10-30 02:00:05 +0200 | truckasaurus | (sid457088@helmsley.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | urdh | (~urdh@user/urdh) (*.net *.split) |
2021-10-30 02:00:05 +0200 | ehamberg | (sid18208@hampstead.irccloud.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | tritlo | (sid58727@user/tritlo) (*.net *.split) |
2021-10-30 02:00:05 +0200 | tomku | (~tomku@user/tomku) (*.net *.split) |
2021-10-30 02:00:05 +0200 | Teacup | (~teacup@user/teacup) (*.net *.split) |
2021-10-30 02:00:05 +0200 | absence | (torgeihe@hildring.pvv.ntnu.no) (*.net *.split) |
2021-10-30 02:00:05 +0200 | kevin[m]1 | (~pnotequal@2001:470:69fc:105::a54) (*.net *.split) |
2021-10-30 02:00:05 +0200 | sudden | (~cat@user/sudden) (*.net *.split) |
2021-10-30 02:00:05 +0200 | opqdonut | (opqdonut@pseudo.fixme.fi) (*.net *.split) |
2021-10-30 02:00:05 +0200 | rembo10 | (~rembo10@remulis.com) (*.net *.split) |
2021-10-30 02:00:05 +0200 | sayola | (~vekto@dslb-002-201-085-156.002.201.pools.vodafone-ip.de) (*.net *.split) |
2021-10-30 02:00:05 +0200 | Trattue | (~Trattue@152.70.182.158) (*.net *.split) |
2021-10-30 02:00:05 +0200 | eL_Bart0 | (eL_Bart0@dietunichtguten.org) (*.net *.split) |
2021-10-30 02:00:05 +0200 | thaumavorio | (~thaumavor@thaumavor.io) (*.net *.split) |
2021-10-30 02:00:05 +0200 | Sqaure | (~a@178.62.91.8) (*.net *.split) |
2021-10-30 02:00:13 +0200 | absence | (~absence@hildring.pvv.ntnu.no) |
2021-10-30 02:00:15 +0200 | tinwood | (~tinwood@general.default.akavanagh.uk0.bigv.io) |
2021-10-30 02:00:17 +0200 | tomku | (~tomku@user/tomku) |
2021-10-30 02:00:17 +0200 | sudden | (~cat@h-98-128-128-173.A351.priv.bahnhof.se) |
2021-10-30 02:00:18 +0200 | defanor | (~defanor@tart.uberspace.net) |
2021-10-30 02:00:19 +0200 | rembo10 | (~rembo10@remulis.com) |
2021-10-30 02:00:22 +0200 | nehsou^ | (~nehsou@wsip-98-188-242-6.mc.at.cox.net) |
2021-10-30 02:00:23 +0200 | sayola | (~vekto@dslb-002-201-085-156.002.201.pools.vodafone-ip.de) |
2021-10-30 02:00:24 +0200 | Trattue | (~Trattue@152.70.182.158) |
2021-10-30 02:00:24 +0200 | Feuermagier | (~Feuermagi@2a02:2488:4211:3400:6419:933b:46e0:8942) |
2021-10-30 02:00:25 +0200 | ggVGc | (~ggVGc@a.lowtech.earth) |
2021-10-30 02:00:26 +0200 | Kaiepi | (~Kaiepi@156.34.44.192) |
2021-10-30 02:00:31 +0200 | pavonia | (~user@ip5f5bf406.dynamic.kabel-deutschland.de) |
2021-10-30 02:00:32 +0200 | NemesisD | (sid24071@id-24071.lymington.irccloud.com) |
2021-10-30 02:00:33 +0200 | teehemkay | (sid14792@lymington.irccloud.com) |
2021-10-30 02:00:36 +0200 | farn | (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) |
2021-10-30 02:00:37 +0200 | dsal | (sid13060@id-13060.lymington.irccloud.com) |
2021-10-30 02:00:38 +0200 | tinwood | (~tinwood@general.default.akavanagh.uk0.bigv.io) (Changing host) |
2021-10-30 02:00:38 +0200 | tinwood | (~tinwood@canonical/tinwood) |
2021-10-30 02:00:38 +0200 | truckasaurus | (sid457088@id-457088.helmsley.irccloud.com) |
2021-10-30 02:00:38 +0200 | mcfilib | (sid302703@id-302703.helmsley.irccloud.com) |
2021-10-30 02:00:39 +0200 | oxytocat | (~alloca@2a03:4000:f:7ca:7407:d1ff:fe34:8cd0) |
2021-10-30 02:00:43 +0200 | sudden | Guest4382 |
2021-10-30 02:00:44 +0200 | mniip | (mniip@libera/staff/mniip) |
2021-10-30 02:00:44 +0200 | AndrewYu | (~andrew@andrewyu.org) |
2021-10-30 02:00:45 +0200 | Feuermagier | (~Feuermagi@2a02:2488:4211:3400:6419:933b:46e0:8942) (Changing host) |
2021-10-30 02:00:45 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) |
2021-10-30 02:00:46 +0200 | bradparker | (sid262931@uxbridge.irccloud.com) |
2021-10-30 02:00:46 +0200 | philpax_ | (sid516926@lymington.irccloud.com) |
2021-10-30 02:00:46 +0200 | Raito_Bezarius | (~Raito@2a01:e0a:5f9:9681:a0a0:bb76:611f:9da7) |
2021-10-30 02:00:47 +0200 | JSharp | (sid4580@id-4580.lymington.irccloud.com) |
2021-10-30 02:00:47 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 02:00:48 +0200 | dolio | (~dolio@130.44.130.54) |
2021-10-30 02:00:50 +0200 | slowtyper | (~slowtyper@2a02:214c:8630:300:225:64ff:feb7:4668) |
2021-10-30 02:00:54 +0200 | hendi | (sid489601@id-489601.lymington.irccloud.com) |
2021-10-30 02:00:54 +0200 | pavonia | (~user@ip5f5bf406.dynamic.kabel-deutschland.de) (Changing host) |
2021-10-30 02:00:55 +0200 | pavonia | (~user@user/siracusa) |
2021-10-30 02:00:55 +0200 | sa | (sid1055@id-1055.tinside.irccloud.com) |
2021-10-30 02:00:59 +0200 | neurocyte0132889 | (~neurocyte@46.243.81.22) |
2021-10-30 02:01:00 +0200 | jocke-l | (jocke-l@a.x0.is) |
2021-10-30 02:01:00 +0200 | ehamberg | (sid18208@id-18208.hampstead.irccloud.com) |
2021-10-30 02:01:05 +0200 | unmanbearpig | (~unmanbear@45.76.95.141) |
2021-10-30 02:01:09 +0200 | n3t | (n3t@s45.mydevil.net) |
2021-10-30 02:01:11 +0200 | opqdonut | (opqdonut@pseudo.fixme.fi) |
2021-10-30 02:01:13 +0200 | grfn | (sid449115@helmsley.irccloud.com) |
2021-10-30 02:01:15 +0200 | mcfilib | (sid302703@id-302703.helmsley.irccloud.com) (Changing host) |
2021-10-30 02:01:15 +0200 | mcfilib | (sid302703@user/mcfilib) |
2021-10-30 02:01:16 +0200 | tritlo | (sid58727@id-58727.hampstead.irccloud.com) |
2021-10-30 02:01:16 +0200 | eL_Bart0 | (eL_Bart0@dietunichtguten.org) |
2021-10-30 02:01:22 +0200 | AndrewYu | (~andrew@andrewyu.org) (Changing host) |
2021-10-30 02:01:22 +0200 | AndrewYu | (~andrew@user/andrewyu) |
2021-10-30 02:01:24 +0200 | carter | (sid14827@id-14827.helmsley.irccloud.com) |
2021-10-30 02:01:26 +0200 | slowtyper | (~slowtyper@2a02:214c:8630:300:225:64ff:feb7:4668) (Changing host) |
2021-10-30 02:01:26 +0200 | slowtyper | (~slowtyper@user/slowtyper) |
2021-10-30 02:01:28 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 02:01:28 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 02:01:35 +0200 | _xor | (~xor@72.49.199.147) |
2021-10-30 02:01:37 +0200 | neurocyte0132889 | (~neurocyte@46.243.81.22) (Changing host) |
2021-10-30 02:01:37 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-10-30 02:01:43 +0200 | tritlo | (sid58727@id-58727.hampstead.irccloud.com) (Changing host) |
2021-10-30 02:01:43 +0200 | tritlo | (sid58727@user/tritlo) |
2021-10-30 02:01:53 +0200 | pieguy128 | (~pieguy128@bas1-quebec14-67-70-102-17.dsl.bell.ca) |
2021-10-30 02:01:53 +0200 | onion | yin |
2021-10-30 02:02:12 +0200 | nurupo | (~nurupo.ga@user/nurupo) |
2021-10-30 02:02:18 +0200 | jneira[m] | (~jneiramat@2001:470:69fc:105::d729) |
2021-10-30 02:02:20 +0200 | sander | (~sander@user/sander) |
2021-10-30 02:02:30 +0200 | Taneb | (~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) |
2021-10-30 02:02:35 +0200 | haasn | (~nand@haasn.dev) |
2021-10-30 02:02:41 +0200 | kristjansson_ | (sid126207@tinside.irccloud.com) |
2021-10-30 02:02:43 +0200 | nonzen | (~nonzen@user/nonzen) |
2021-10-30 02:02:47 +0200 | martin02 | (~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1) |
2021-10-30 02:03:00 +0200 | OscarH | (~OscarH@90.201.86.195) |
2021-10-30 02:03:03 +0200 | Teacup | (~teacup@user/teacup) |
2021-10-30 02:03:09 +0200 | urdh | (~urdh@user/urdh) |
2021-10-30 02:03:11 +0200 | terrorjack | (~terrorjac@static.3.200.12.49.clients.your-server.de) |
2021-10-30 02:03:31 +0200 | thaumavorio | (~thaumavor@thaumavor.io) |
2021-10-30 02:05:11 +0200 | lstor | (~lstor@user/lstor) |
2021-10-30 02:05:11 +0200 | mcglk | (~mcglk@131.191.49.120) |
2021-10-30 02:05:11 +0200 | xerox | (~edi@user/edi) |
2021-10-30 02:05:11 +0200 | kevin[m]1 | (~pnotequal@2001:470:69fc:105::a54) |
2021-10-30 02:05:28 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-10-30 02:07:30 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-10-30 02:08:20 +0200 | xsperry | (~xs@user/xsperry) |
2021-10-30 02:08:22 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2021-10-30 02:10:01 +0200 | fendor | (~fendor@178.115.69.81.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-10-30 02:18:33 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-10-30 02:19:28 +0200 | guniberas | (~guniberas@42.191.188.121) |
2021-10-30 02:20:00 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
2021-10-30 02:21:30 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-10-30 02:22:05 +0200 | trillp | (~trillp@69.233.98.238) |
2021-10-30 02:29:31 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-10-30 02:31:23 +0200 | Square | (~a@178.62.91.8) |
2021-10-30 02:33:30 +0200 | dustee | (~dustee@63.81.59.158) |
2021-10-30 02:35:16 +0200 | dajoer | (~david@user/gvx) |
2021-10-30 02:37:42 +0200 | n3t | (n3t@s45.mydevil.net) (Changing host) |
2021-10-30 02:37:42 +0200 | n3t | (n3t@user/n3t) |
2021-10-30 02:42:07 +0200 | Null_A | (~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Remote host closed the connection) |
2021-10-30 02:42:13 +0200 | dustee | (~dustee@63.81.59.158) () |
2021-10-30 02:42:42 +0200 | Null_A | (~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) |
2021-10-30 02:47:11 +0200 | Null_A | (~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Ping timeout: 264 seconds) |
2021-10-30 02:49:11 +0200 | alx741 | (~alx741@181.196.69.253) (Quit: alx741) |
2021-10-30 02:49:58 +0200 | iqubic | (~user@2601:602:9502:c70:367a:1ecd:9a9a:53e8) |
2021-10-30 02:52:00 +0200 | Farzad | (~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 +0200 | lbseale | (~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 +0200 | proboscis | (~proboscis@115-189-83-58.mobile.spark.co.nz) (Ping timeout: 264 seconds) |
2021-10-30 03:02:51 +0200 | machinedgod | (~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 +0200 | artemis | (~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 +0200 | kupi | (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 +0200 | proboscis | (~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 +0200 | artemis | (~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 +0200 | proboscis | (~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 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 268 seconds) |
2021-10-30 03:15:14 +0200 | proboscis | (~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 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-30 03:19:32 +0200 | mmhat | (~mmh@55d4be4b.access.ecotel.net) (Quit: WeeChat 3.3) |
2021-10-30 03:19:35 +0200 | proboscis | (~proboscis@115-189-129-63.mobile.spark.co.nz) (Ping timeout: 264 seconds) |
2021-10-30 03:20:39 +0200 | proboscis | (~proboscis@115-189-134-103.mobile.spark.co.nz) |
2021-10-30 03:22:54 +0200 | betelgeuse | (~betelgeus@94-225-47-8.access.telenet.be) |
2021-10-30 03:23:47 +0200 | yrlnry | (~mjd@pool-74-109-22-90.phlapa.fios.verizon.net) (Ping timeout: 264 seconds) |
2021-10-30 03:24:03 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-10-30 03:24:13 +0200 | brettgilio | (~brettgili@x-node.gq) (Quit: Leaving...) |
2021-10-30 03:27:25 +0200 | brettgilio | (~brettgili@x-node.gq) |
2021-10-30 03:31:19 +0200 | trillp | (~trillp@69.233.98.238) (Quit: nyaa~) |
2021-10-30 03:33:01 +0200 | proboscis | (~proboscis@115-189-134-103.mobile.spark.co.nz) (Ping timeout: 245 seconds) |
2021-10-30 03:33:40 +0200 | ceedon | (~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) |
2021-10-30 03:33:54 +0200 | proboscis | (~proboscis@115-189-134-232.mobile.spark.co.nz) |
2021-10-30 03:35:59 +0200 | yin | onion |
2021-10-30 03:37:41 +0200 | ceedon | (~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) (Remote host closed the connection) |
2021-10-30 03:39:37 +0200 | ceedon | (~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) |
2021-10-30 03:43:59 +0200 | xff0x | (~xff0x@2001:1a81:529e:f300:d3c7:e134:91d9:4541) (Ping timeout: 260 seconds) |
2021-10-30 03:44:02 +0200 | onion | yin |
2021-10-30 03:44:16 +0200 | ceedon | (~ceedon@172-11-250-42.lightspeed.tukrga.sbcglobal.net) (Ping timeout: 245 seconds) |
2021-10-30 03:45:39 +0200 | xff0x | (~xff0x@2001:1a81:52e0:c000:6019:bb95:26f0:c29b) |
2021-10-30 03:47:46 +0200 | yin | onion |
2021-10-30 03:49:05 +0200 | onion | oion |
2021-10-30 03:49:17 +0200 | oion | onion |
2021-10-30 03:50:47 +0200 | proboscis | (~proboscis@115-189-134-232.mobile.spark.co.nz) (Ping timeout: 264 seconds) |
2021-10-30 03:52:05 +0200 | proboscis | (~proboscis@115-189-86-19.mobile.spark.co.nz) |
2021-10-30 04:04:53 +0200 | onion | yin |
2021-10-30 04:06:05 +0200 | proboscis | (~proboscis@115-189-86-19.mobile.spark.co.nz) (Ping timeout: 264 seconds) |
2021-10-30 04:06:43 +0200 | proboscis | (~proboscis@115-189-85-1.mobile.spark.co.nz) |
2021-10-30 04:06:43 +0200 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Quit: Leaving) |
2021-10-30 04:06:51 +0200 | yin | zzz |
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 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Quit: Leaving) |
2021-10-30 04:15:43 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) |
2021-10-30 04:17:14 +0200 | proboscis | (~proboscis@115-189-85-1.mobile.spark.co.nz) (Ping timeout: 246 seconds) |
2021-10-30 04:17:45 +0200 | proboscis | (~proboscis@115-189-81-242.mobile.spark.co.nz) |
2021-10-30 04:28:26 +0200 | proboscis | (~proboscis@115-189-81-242.mobile.spark.co.nz) (Ping timeout: 246 seconds) |
2021-10-30 04:29:12 +0200 | proboscis | (~proboscis@115-189-86-194.mobile.spark.co.nz) |
2021-10-30 04:29:29 +0200 | artemis | (~artemis@user/artemis) (Ping timeout: 264 seconds) |
2021-10-30 04:30:15 +0200 | artemis | (~artemis@user/artemis) |
2021-10-30 04:36:15 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
2021-10-30 04:36:59 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
2021-10-30 04:37:36 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 245 seconds) |
2021-10-30 04:38:43 +0200 | tungki | (~tungki@subs31-116-206-15-39.three.co.id) |
2021-10-30 04:39:44 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-10-30 04:45:56 +0200 | proboscis | (~proboscis@115-189-86-194.mobile.spark.co.nz) (Ping timeout: 245 seconds) |
2021-10-30 04:46:46 +0200 | proboscis | (~proboscis@115-189-81-196.mobile.spark.co.nz) |
2021-10-30 04:48:05 +0200 | aplainzetakind | (~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 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-10-30 04:53:04 +0200 | td_ | (~td@muedsl-82-207-238-132.citykom.de) (Ping timeout: 260 seconds) |
2021-10-30 04:54:23 +0200 | xff0x | (~xff0x@2001:1a81:52e0:c000:6019:bb95:26f0:c29b) (Ping timeout: 264 seconds) |
2021-10-30 04:54:40 +0200 | td_ | (~td@muedsl-82-207-238-253.citykom.de) |
2021-10-30 04:56:00 +0200 | xff0x | (~xff0x@2001:1a81:52f0:9300:e3ac:46aa:98d2:36ad) |
2021-10-30 04:56:15 +0200 | yushyin | (0Ujx9gMz8O@karif.server-speed.net) (Quit: WeeChat 3.3) |
2021-10-30 04:56:27 +0200 | yushyin | (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 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 04:58:35 +0200 | proboscis | (~proboscis@115-189-81-196.mobile.spark.co.nz) (Ping timeout: 265 seconds) |
2021-10-30 04:59:13 +0200 | proboscis | (~proboscis@115-189-82-114.mobile.spark.co.nz) |
2021-10-30 04:59:51 +0200 | fef | (~thedawn@user/thedawn) (Quit: Leaving) |
2021-10-30 05:06:06 +0200 | proboscis | (~proboscis@115-189-82-114.mobile.spark.co.nz) (Read error: Connection reset by peer) |
2021-10-30 05:06:23 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) |
2021-10-30 05:15:50 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 268 seconds) |
2021-10-30 05:16:09 +0200 | ishutin | (~ishutin@92-249-141-159.pool.digikabel.hu) (Read error: Connection reset by peer) |
2021-10-30 05:16:32 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-10-30 05:16:53 +0200 | td_ | (~td@muedsl-82-207-238-253.citykom.de) (Ping timeout: 264 seconds) |
2021-10-30 05:18:09 +0200 | td_ | (~td@muedsl-82-207-238-113.citykom.de) |
2021-10-30 05:18:32 +0200 | ishutin | (~ishutin@62-165-208-189.pool.digikabel.hu) |
2021-10-30 05:20:14 +0200 | betelgeuse | (~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 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 265 seconds) |
2021-10-30 05:50:05 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-10-30 06:02:19 +0200 | burakcank | (burakcank@has.arrived.and.is.ready-to.party) (Ping timeout: 252 seconds) |
2021-10-30 06:07:29 +0200 | tungki | (~tungki@subs31-116-206-15-39.three.co.id) (Remote host closed the connection) |
2021-10-30 06:08:03 +0200 | tungki | (~tungki@subs20-114-142-172-14.three.co.id) |
2021-10-30 06:09:38 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 06:09:38 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 06:09:38 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 06:11:43 +0200 | hendursaga | (~weechat@user/hendursaga) (Remote host closed the connection) |
2021-10-30 06:14:05 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-10-30 06:16:15 +0200 | LiaoTao | (~LiaoTao@gateway/tor-sasl/liaotao) (Ping timeout: 276 seconds) |
2021-10-30 06:16:29 +0200 | zebrag | (~chris@user/zebrag) |
2021-10-30 06:16:53 +0200 | LiaoTao | (~LiaoTao@gateway/tor-sasl/liaotao) |
2021-10-30 06:31:43 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-10-30 06:31:52 +0200 | zzz | yin |
2021-10-30 06:35:07 +0200 | yin | (~z@user/zero) () |
2021-10-30 06:35:50 +0200 | hueso | (~root@user/hueso) (Quit: No Ping reply in 180 seconds.) |
2021-10-30 06:36:23 +0200 | Skyfire | (~pyon@user/pyon) (Quit: WeeChat 3.3) |
2021-10-30 06:37:00 +0200 | hueso | (~root@user/hueso) |
2021-10-30 06:52:59 +0200 | mikoto-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 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-10-30 07:10:26 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-10-30 07:40:10 +0200 | faultline | (~christian@193.27.14.21) (Ping timeout: 260 seconds) |
2021-10-30 07:57:48 +0200 | Farzad | (~FarzadBek@109.203.185.154) |
2021-10-30 07:57:51 +0200 | Farzad | (~FarzadBek@109.203.185.154) (Client Quit) |
2021-10-30 08:00:49 +0200 | awth13 | (~awth13@user/awth13) (Remote host closed the connection) |
2021-10-30 08:03:49 +0200 | tungki | (~tungki@subs20-114-142-172-14.three.co.id) (Ping timeout: 256 seconds) |
2021-10-30 08:11:24 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-10-30 08:13:33 +0200 | mikoto-chan | (~mikoto-ch@185.237.102.119) (Read error: Connection reset by peer) |
2021-10-30 08:19:15 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-30 08:19:56 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-10-30 08:20:02 +0200 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) |
2021-10-30 08:20:51 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-10-30 08:22:54 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-10-30 08:24:58 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 265 seconds) |
2021-10-30 08:32:35 +0200 | cheater1__ | (~Username@user/cheater) |
2021-10-30 08:32:46 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 268 seconds) |
2021-10-30 08:32:49 +0200 | cheater1__ | cheater |
2021-10-30 08:34:13 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-30 08:44:08 +0200 | Hero | (~E-Kolay@212.108.153.129) |
2021-10-30 08:44:11 +0200 | Hero | (~E-Kolay@212.108.153.129) () |
2021-10-30 08:47:01 +0200 | zangi | (~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 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-10-30 08:50:51 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 08:50:51 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 08:50:52 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 08:55:20 +0200 | tungki | (~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 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 264 seconds) |
2021-10-30 08:55:36 +0200 | <c_wraith> | *shouldn't |
2021-10-30 08:59:16 +0200 | guniberas | (~guniberas@42.191.188.121) (Ping timeout: 245 seconds) |
2021-10-30 09:00:02 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2021-10-30 09:00:45 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2021-10-30 09:02:00 +0200 | chomwitt | (~chomwitt@2a02:587:dc12:b600:12c3:7bff:fe6d:d374) |
2021-10-30 09:02:34 +0200 | tungki | (~tungki@subs31-116-206-15-21.three.co.id) (Remote host closed the connection) |
2021-10-30 09:03:11 +0200 | aegon | (~mike@174.127.249.180) (Remote host closed the connection) |
2021-10-30 09:12:16 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 09:16:46 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
2021-10-30 09:18:23 +0200 | Farzad | (~FarzadBek@178.131.28.251) |
2021-10-30 09:23:55 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e) |
2021-10-30 09:24:39 +0200 | zincy__ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 09:26:09 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-10-30 09:28:01 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:45df:961b:bdc0:266e) (Ping timeout: 245 seconds) |
2021-10-30 09:41:46 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 245 seconds) |
2021-10-30 09:43:42 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-30 09:49:07 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection) |
2021-10-30 09:54:23 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 264 seconds) |
2021-10-30 09:55:13 +0200 | zaquest | (~notzaques@5.128.210.178) (Remote host closed the connection) |
2021-10-30 09:56:04 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-30 10:03:19 +0200 | zincy__ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 10:05:51 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-10-30 10:05:54 +0200 | acidjnk_new | (~acidjnk@p200300d0c7238d89cc95ba723fa3afc9.dip0.t-ipconnect.de) |
2021-10-30 10:08:05 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-10-30 10:08:57 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 276 seconds) |
2021-10-30 10:16:30 +0200 | zangi | (~zangi@103.154.230.133) (Quit: zangi) |
2021-10-30 10:19:30 +0200 | AlexNoo | (~AlexNoo@178.34.163.209) |
2021-10-30 10:20:35 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-10-30 10:26:12 +0200 | Inst__ | (~Inst@2601:6c4:4080:3f80:9dd3:1e99:a750:2941) |
2021-10-30 10:27:43 +0200 | Inst__ | Inst |
2021-10-30 10:31:47 +0200 | ikke | (~kevin@alpine/developer/ikke) |
2021-10-30 10:32:25 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Quit: mikoto-chan) |
2021-10-30 10:43:48 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 10:48:26 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
2021-10-30 10:49:02 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3) |
2021-10-30 10:49:30 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 10:49:49 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 10:53:02 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-10-30 10:54:23 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 264 seconds) |
2021-10-30 10:55:34 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-10-30 10:59:04 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-10-30 10:59:04 +0200 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
2021-10-30 10:59:22 +0200 | gentauro | (~gentauro@user/gentauro) |
2021-10-30 11:03:10 +0200 | hendursa1 | (~weechat@user/hendursaga) (Remote host closed the connection) |
2021-10-30 11:04:31 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-10-30 11:04:50 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-10-30 11:10:25 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2021-10-30 11:10:58 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2021-10-30 11:17:23 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-10-30 11:23:15 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-10-30 11:24:34 +0200 | ksu | (~ksu@user/prtr) |
2021-10-30 11:24:59 +0200 | Inst | (~Inst@2601:6c4:4080:3f80:9dd3:1e99:a750:2941) (Ping timeout: 264 seconds) |
2021-10-30 11:32:28 +0200 | unit73e | (~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 +0200 | themc47 | (~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 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Ping timeout: 245 seconds) |
2021-10-30 11:50:07 +0200 | themc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-10-30 11:53:06 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3) |
2021-10-30 11:53:53 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 12:05:47 +0200 | jlamothe | (~jlamothe@198.251.61.229) (Ping timeout: 264 seconds) |
2021-10-30 12:13:05 +0200 | fendor | (~fendor@178.115.69.81.wireless.dyn.drei.com) |
2021-10-30 12:17:31 +0200 | trainlag1602 | (~saroa@user/trainlag1602) |
2021-10-30 12:23:27 +0200 | LiaoTao | (~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection) |
2021-10-30 12:25:34 +0200 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection) |
2021-10-30 12:26:21 +0200 | LiaoTao | (~LiaoTao@gateway/tor-sasl/liaotao) |
2021-10-30 12:28:18 +0200 | wootehfoot | (~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 +0200 | zer0bitz | (~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 +0200 | viluon | (uid453725@id-453725.helmsley.irccloud.com) |
2021-10-30 12:38:56 +0200 | xff0x | (~xff0x@2001:1a81:52f0:9300:e3ac:46aa:98d2:36ad) (Remote host closed the connection) |
2021-10-30 12:39:13 +0200 | xff0x | (~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 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 12:45:19 +0200 | guniberas | (~guniberas@42.191.188.121) |
2021-10-30 12:49:35 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 264 seconds) |
2021-10-30 12:49:48 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-30 12:51:34 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 12:52:20 +0200 | mmhat | (~mmh@55d4bc38.access.ecotel.net) |
2021-10-30 12:53:49 +0200 | acidjnk_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 +0200 | xff0x | (~xff0x@2001:1a81:52f0:9300:56a6:e6bc:62c4:b7e4) (Ping timeout: 264 seconds) |
2021-10-30 12:55:56 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds) |
2021-10-30 12:56:23 +0200 | xff0x | (~xff0x@2001:1a81:52f0:9300:48ef:5b4a:4ac:bf95) |
2021-10-30 13:07:16 +0200 | burakcank | (~burakcank@has.arrived.and.is.ready-to.party) |
2021-10-30 13:08:27 +0200 | aga | (~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 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2021-10-30 13:17:49 +0200 | zer0bitz_ | (~zer0bitz@2a0b:dbc1:2:81c1:dd79:459d:8214:30ba) |
2021-10-30 13:17:59 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2021-10-30 13:18:25 +0200 | Midjak | (~Midjak@82-65-111-221.subs.proxad.net) |
2021-10-30 13:20:45 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 268 seconds) |
2021-10-30 13:22:00 +0200 | zer0bitz | (~zer0bitz@2a0b:dbc1:2:81c1:55ef:5d0:c1e8:90b) |
2021-10-30 13:24:59 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 264 seconds) |
2021-10-30 13:25:17 +0200 | zer0bitz_ | (~zer0bitz@2a0b:dbc1:2:81c1:dd79:459d:8214:30ba) (Ping timeout: 264 seconds) |
2021-10-30 13:39:02 +0200 | zer0bitz_ | (~zer0bitz@2a0b:dbc1:2:81c1:30bc:a359:39b5:99ae) |
2021-10-30 13:41:43 +0200 | zer0bitz | (~zer0bitz@2a0b:dbc1:2:81c1:55ef:5d0:c1e8:90b) (Ping timeout: 268 seconds) |
2021-10-30 13:42:20 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-10-30 13:43:03 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3) |
2021-10-30 13:43:52 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 13:45:23 +0200 | zer0bitz | (~zer0bitz@2a0b:dbc1:2:81c1:d418:453f:8e01:9edf) |
2021-10-30 13:48:05 +0200 | zer0bitz_ | (~zer0bitz@2a0b:dbc1:2:81c1:30bc:a359:39b5:99ae) (Ping timeout: 246 seconds) |
2021-10-30 13:48:06 +0200 | chisui | (~chisui@95.33.35.0) |
2021-10-30 13:49:36 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3) |
2021-10-30 13:50:22 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 13:54:49 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-10-30 13:57:57 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Quit: WeeChat 3.3) |
2021-10-30 13:58:44 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 14:00:47 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Client Quit) |
2021-10-30 14:01:33 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-30 14:03:18 +0200 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 268 seconds) |
2021-10-30 14:03:44 +0200 | Lycurgus | (~juan@98.4.112.204) |
2021-10-30 14:08:45 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.3) |
2021-10-30 14:10:24 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-10-30 14:11:08 +0200 | zer0bitz | (~zer0bitz@2a0b:dbc1:2:81c1:d418:453f:8e01:9edf) (Read error: Connection reset by peer) |
2021-10-30 14:20:54 +0200 | chisui | (~chisui@95.33.35.0) (Quit: Client closed) |
2021-10-30 14:27:18 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-30 14:28:44 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-30 14:32:18 +0200 | proboscis | (~proboscis@115-189-129-117.mobile.spark.co.nz) (Ping timeout: 265 seconds) |
2021-10-30 14:37:37 +0200 | proboscis | (~proboscis@115-189-81-94.mobile.spark.co.nz) |
2021-10-30 14:38:57 +0200 | Lycurgus | (~juan@98.4.112.204) (Quit: Exeunt) |
2021-10-30 14:39:19 +0200 | __monty__ | (~toonn@user/toonn) |
2021-10-30 14:43:27 +0200 | benin | (~benin@183.82.30.38) |
2021-10-30 14:45:31 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 245 seconds) |
2021-10-30 14:52:54 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-10-30 14:53:08 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 14:53:54 +0200 | Raito_Bezarius | (~Raito@2a01:e0a:5f9:9681:a0a0:bb76:611f:9da7) (Changing host) |
2021-10-30 14:53:54 +0200 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) |
2021-10-30 14:57:12 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2021-10-30 14:57:36 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds) |
2021-10-30 14:59:05 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 14:59:24 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 14:59:28 +0200 | betelgeuse | (~betelgeus@94-225-47-8.access.telenet.be) |
2021-10-30 14:59:46 +0200 | max22- | (~maxime@2a01cb0883359800f7ab1f6aa3293843.ipv6.abo.wanadoo.fr) |
2021-10-30 15:01:54 +0200 | dariof4 | (~dariof4@134.0.0.51) |
2021-10-30 15:02:23 +0200 | Alex_test | (~al_test@178.34.163.209) (Quit: ;-) |
2021-10-30 15:02:28 +0200 | AlexZenon | (~alzenon@178.34.163.209) (Quit: ;-) |
2021-10-30 15:03:01 +0200 | AlexNoo | (~AlexNoo@178.34.163.209) (Quit: Leaving) |
2021-10-30 15:03:41 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 264 seconds) |
2021-10-30 15:04:05 +0200 | asm | (~alexander@burner.asm89.io) (Changing host) |
2021-10-30 15:04:05 +0200 | asm | (~alexander@user/asm) |
2021-10-30 15:05:35 +0200 | kn07_ | (~kn07_@86.121.23.168) |
2021-10-30 15:06:02 +0200 | kn07_ | (~kn07_@86.121.23.168) (Remote host closed the connection) |
2021-10-30 15:07:21 +0200 | trainlag1602 | (~saroa@user/trainlag1602) () |
2021-10-30 15:17:43 +0200 | AlexZenon | (~alzenon@178.34.163.209) |
2021-10-30 15:18:22 +0200 | jespada | (~jespada@181.28.253.200) |
2021-10-30 15:18:31 +0200 | jespada | (~jespada@181.28.253.200) (Client Quit) |
2021-10-30 15:18:54 +0200 | Alex_test | (~al_test@178.34.163.209) |
2021-10-30 15:20:57 +0200 | AlexNoo | (~AlexNoo@178.34.163.209) |
2021-10-30 15:26:06 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-10-30 15:31:53 +0200 | max22- | (~maxime@2a01cb0883359800f7ab1f6aa3293843.ipv6.abo.wanadoo.fr) (Ping timeout: 264 seconds) |
2021-10-30 15:32:27 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
2021-10-30 15:44:02 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-10-30 15:44:40 +0200 | nehsou^ | (~nehsou@wsip-98-188-242-6.mc.at.cox.net) (Remote host closed the connection) |
2021-10-30 15:46:05 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-30 15:47:23 +0200 | jlamothe | (~jlamothe@198.251.61.229) |
2021-10-30 16:00:02 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-10-30 16:00:22 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) |
2021-10-30 16:07:19 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-10-30 16:11:55 +0200 | Lycurgus | (~juan@98.4.112.204) |
2021-10-30 16:14:37 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 16:14:58 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 16:17:00 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 16:30:46 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-30 16:30:52 +0200 | dsrt^ | (~dsrt@wsip-98-188-242-6.mc.at.cox.net) |
2021-10-30 16:35:41 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) |
2021-10-30 16:39:25 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 265 seconds) |
2021-10-30 16:41:10 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-10-30 16:45:55 +0200 | boxscape_ | (~boxscape_@i577BCB53.versanet.de) |
2021-10-30 16:47:29 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 16:50:51 +0200 | floridmarshmallo | (~quickspin@pool-100-19-29-41.phlapa.fios.verizon.net) |
2021-10-30 16:50:59 +0200 | burnsidesLlama | (~burnsides@client-8-89.eduroam.oxuni.org.uk) |
2021-10-30 16:51:17 +0200 | burnsidesLlama | (~burnsides@client-8-89.eduroam.oxuni.org.uk) (Read error: Connection reset by peer) |
2021-10-30 16:51:29 +0200 | burnsidesLlama | (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
2021-10-30 16:52:18 +0200 | floridmarshmallo | (~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 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 16:54:57 +0200 | f-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 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) |
2021-10-30 16:57:28 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 252 seconds) |
2021-10-30 16:58:35 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Ping timeout: 264 seconds) |
2021-10-30 16:58:51 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds) |
2021-10-30 16:59:02 +0200 | son0p | (~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 +0200 | zer0bitz | (~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 +0200 | neurocyte0132889 | (~neurocyte@185.117.69.128) |
2021-10-30 17:09:36 +0200 | neurocyte0132889 | (~neurocyte@185.117.69.128) (Changing host) |
2021-10-30 17:09:36 +0200 | neurocyte0132889 | (~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 +0200 | waleee | (~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 +0200 | kritzefitz | (~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 +0200 | Skyfire | (~pyon@user/pyon) |
2021-10-30 17:11:47 +0200 | zer0bitz_ | (~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 +0200 | kritzefitz | (~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 +0200 | xff0x | (~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 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Remote host closed the connection) |
2021-10-30 17:18:10 +0200 | kritzefitz | (~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 +0200 | xff0x | (~xff0x@2001:1a81:52f0:9300:c38e:4fda:aa4c:3e21) |
2021-10-30 17:18:34 +0200 | <davean> | Yes |
2021-10-30 17:18:37 +0200 | Inst | (~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 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Remote host closed the connection) |
2021-10-30 17:19:34 +0200 | kritzefitz | (~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 +0200 | waleee | (~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 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Remote host closed the connection) |
2021-10-30 17:21:05 +0200 | aga | (~a@p200300ef973db19d4086f0a6a24fc4dd.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2021-10-30 17:21:08 +0200 | kspalaiologos | (~kspalaiol@user/kspalaiologos) |
2021-10-30 17:21:09 +0200 | kritzefitz | (~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 +0200 | aga | (~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 +0200 | Lycurgus | (~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 +0200 | kspalaiologos | (~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 +0200 | kspalaiologos | (~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 +0200 | alx741 | (~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 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 17:28:41 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 17:28:41 +0200 | wroathe | (~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 +0200 | sm2n | (~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 +0200 | sm2n | (~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 +0200 | kjak_ | (~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 +0200 | Inst | (~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 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 17:37:29 +0200 | hippoid | (~idris@184.105.6.88) |
2021-10-30 17:38:14 +0200 | zincy_ | (~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 +0200 | zmt00 | (~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 +0200 | Farzad | (~FarzadBek@178.131.28.251) (Quit: Leaving) |
2021-10-30 17:50:44 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 17:50:58 +0200 | max22- | (~maxime@2a01cb0883359800e36f11616f1a350a.ipv6.abo.wanadoo.fr) |
2021-10-30 17:52:36 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-30 17:53:16 +0200 | fendor_ | (~fendor@178.115.79.50.wireless.dyn.drei.com) |
2021-10-30 17:55:18 +0200 | kspalaiologos | (~kspalaiol@user/kspalaiologos) (Quit: Leaving) |
2021-10-30 17:55:32 +0200 | fendor | (~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 +0200 | fendor_ | 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 +0200 | jollygood2 | (~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 +0200 | zmt00 | (~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 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
2021-10-30 18:20:27 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds) |
2021-10-30 18:21:59 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-30 18:22:35 +0200 | zer0bitz | (~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 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 18:28:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 18:28:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 18:31:17 +0200 | sagax | (~sagax_nb@user/sagax) (Ping timeout: 264 seconds) |
2021-10-30 18:33:05 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 264 seconds) |
2021-10-30 18:40:53 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds) |
2021-10-30 18:41:07 +0200 | zmt01 | (~zmt00@user/zmt00) |
2021-10-30 18:42:23 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 264 seconds) |
2021-10-30 18:42:38 +0200 | Farzad | (~FarzadBek@5.234.230.191) |
2021-10-30 18:46:01 +0200 | sagax | (~sagax_nb@user/sagax) |
2021-10-30 18:46:33 +0200 | peterhil | (~peterhil@dsl-hkibng32-54fb56-2.dhcp.inet.fi) |
2021-10-30 18:46:44 +0200 | zmt00 | (~zmt00@user/zmt00) |
2021-10-30 18:48:12 +0200 | zmt01 | (~zmt00@user/zmt00) (Ping timeout: 268 seconds) |
2021-10-30 18:56:14 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 18:58:12 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-10-30 18:58:15 +0200 | zmt01 | (~zmt00@user/zmt00) |
2021-10-30 18:59:01 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 252 seconds) |
2021-10-30 18:59:14 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 18:59:15 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 18:59:15 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 19:00:56 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 268 seconds) |
2021-10-30 19:08:35 +0200 | yauhsien | (~yauhsien@61-231-43-13.dynamic-ip.hinet.net) |
2021-10-30 19:13:17 +0200 | dariof4 | (~dariof4@134.0.0.51) (Ping timeout: 264 seconds) |
2021-10-30 19:14:37 +0200 | dajoer | (~david@user/gvx) (Quit: leaving) |
2021-10-30 19:14:37 +0200 | Null_A | (~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) |
2021-10-30 19:15:13 +0200 | dariof4 | (~dariof4@5.179.181.91) |
2021-10-30 19:15:20 +0200 | Farzad | (~FarzadBek@5.234.230.191) (Ping timeout: 246 seconds) |
2021-10-30 19:18:01 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 19:20:36 +0200 | JimL | (~quassel@89-162-2-132.fiber.signal.no) (Ping timeout: 260 seconds) |
2021-10-30 19:21:47 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 19:23:56 +0200 | JimL | (~quassel@89-162-2-132.fiber.signal.no) |
2021-10-30 19:24:27 +0200 | econo | (uid147250@user/econo) |
2021-10-30 19:25:38 +0200 | yauhsien | (~yauhsien@61-231-43-13.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-10-30 19:27:07 +0200 | aga | (~a@p200300ef973db1e74086f0a6a24fc4dd.dip0.t-ipconnect.de) (Quit: WeeChat 3.0.1) |
2021-10-30 19:27:12 +0200 | yauhsien | (~yauhsien@61-231-43-13.dynamic-ip.hinet.net) |
2021-10-30 19:32:23 +0200 | yauhsien | (~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 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-30 19:35:26 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-30 19:36:02 +0200 | fendor | (~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 +0200 | ubert | (~Thunderbi@178.115.67.5.wireless.dyn.drei.com) |
2021-10-30 19:42:36 +0200 | fendor | (~fendor@178.115.79.50.wireless.dyn.drei.com) |
2021-10-30 19:42:38 +0200 | Null_A | (~null_a@2601:645:8700:2290:19ff:7d99:67c6:79e3) (Remote host closed the connection) |
2021-10-30 19:44:11 +0200 | burnsidesLlama | (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-10-30 19:44:42 +0200 | burnsidesLlama | (~burnsides@dhcp168-017.wadham.ox.ac.uk) |
2021-10-30 19:45:47 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 19:48:42 +0200 | Vajb | (~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 +0200 | burnsidesLlama | (~burnsides@dhcp168-017.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-10-30 19:49:09 +0200 | Vajb | (~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 +0200 | Sgeo | (~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 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving) |
2021-10-30 19:53:47 +0200 | aegon | (~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 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 19:56:08 +0200 | Vajb | (~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) (Ping timeout: 265 seconds) |
2021-10-30 19:56:39 +0200 | dariof4 | (~dariof4@5.179.181.91) (Ping timeout: 268 seconds) |
2021-10-30 19:57:00 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-30 19:57:04 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 19:58:34 +0200 | dariof4 | (~dariof4@5.77.103.193) |
2021-10-30 20:01:07 +0200 | machinedgod | (~machinedg@24.105.81.50) (Remote host closed the connection) |
2021-10-30 20:02:12 +0200 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
2021-10-30 20:02:14 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-10-30 20:02:44 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-10-30 20:02:49 +0200 | max22- | (~maxime@2a01cb0883359800e36f11616f1a350a.ipv6.abo.wanadoo.fr) (Ping timeout: 252 seconds) |
2021-10-30 20:03:26 +0200 | Nachtgespenst | (~user@user/siracusa) |
2021-10-30 20:04:35 +0200 | chomwitt | (~chomwitt@2a02:587:dc12:b600:12c3:7bff:fe6d:d374) (Ping timeout: 264 seconds) |
2021-10-30 20:07:58 +0200 | mikoto-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 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-30 20:13:20 +0200 | zebrag | (~chris@user/zebrag) |
2021-10-30 20:13:44 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection) |
2021-10-30 20:14:10 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-30 20:14:24 +0200 | yauhsien | (~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 +0200 | zincy_ | (~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 +0200 | kjak | (~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 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 20:18:27 +0200 | eggplantade | (~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 +0200 | yauhsien | (~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 +0200 | mvk | (~mvk@2607:fea8:5cc1:300::d3fb) |
2021-10-30 20:20:47 +0200 | ubert | (~Thunderbi@178.115.67.5.wireless.dyn.drei.com) (Ping timeout: 264 seconds) |
2021-10-30 20:21:54 +0200 | shapr | (~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 +0200 | Farzad | (~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 +0200 | max22- | (~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 +0200 | DNH | (~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 +0200 | unit73e | (~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 +0200 | unit73e | (~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 +0200 | lavaman | (~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 +0200 | trillp | (~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 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 20:52:12 +0200 | dariof4 | (~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 +0200 | dariof4 | (~dariof4@5.11.107.11) |
2021-10-30 20:53:57 +0200 | burnsidesLlama | (~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 +0200 | f-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 +0200 | ski | still 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 +0200 | kritzefitz_ | (~kritzefit@picard.host.weltraumschlangen.de) |
2021-10-30 20:56:40 +0200 | kritzefitz_ | (~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 +0200 | zincy_ | (~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 +0200 | raehik | (~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 +0200 | eggplantade | (~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 +0200 | zincy_ | (~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 +0200 | zincy_ | (~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 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-10-30 21:00:59 +0200 | burnsidesLlama | (~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 +0200 | mrckndt4 | (~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 +0200 | vicfred | (~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 +0200 | zincy_ | (~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 +0200 | mrckndt | (~mrckndt@user/mrckndt) (Ping timeout: 245 seconds) |
2021-10-30 21:07:11 +0200 | mrckndt4 | mrckndt |
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 +0200 | zincy_ | (~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 +0200 | yauhsien | (~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 +0200 | yauhsien | (~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 +0200 | zincy_ | (~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 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 21:38:47 +0200 | dariof4 | (~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 +0200 | dariof4 | (~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 +0200 | benin | (~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 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 260 seconds) |
2021-10-30 21:44:38 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 21:45:06 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 21:45:06 +0200 | MQ-17J | (~MQ-17J@8.6.144.203) (Read error: Connection reset by peer) |
2021-10-30 21:45:25 +0200 | MQ-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 +0200 | Farzad | (~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 +0200 | guniberas | (~guniberas@42.191.188.121) (Ping timeout: 268 seconds) |
2021-10-30 21:49:31 +0200 | Farzad | (~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 +0200 | cross_ | (~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 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-10-30 21:56:58 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-10-30 21:57:41 +0200 | acidjnk_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 +0200 | eggplantade | (~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 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-30 22:01:21 +0200 | waleee | (~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 +0200 | eggplantade | (~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 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 22:03:29 +0200 | acidjnk_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 +0200 | juhp | (~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 +0200 | mvk | (~mvk@2607:fea8:5cc1:300::d3fb) (Ping timeout: 264 seconds) |
2021-10-30 22:06:34 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-30 22:06:58 +0200 | acidjnk_new | (~acidjnk@p5487db6d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2021-10-30 22:07:09 +0200 | Skyfire | (~pyon@user/pyon) (Quit: br) |
2021-10-30 22:07:28 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 22:07:28 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 22:07:28 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 22:07:41 +0200 | juhp | (~juhp@128.106.188.220) |
2021-10-30 22:09:28 +0200 | Skyfire | (~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 +0200 | Guest27 | (~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 +0200 | fendor | (~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 +0200 | fendor | (~fendor@178.115.79.50.wireless.dyn.drei.com) |
2021-10-30 22:21:16 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-10-30 22:21:23 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 264 seconds) |
2021-10-30 22:23:28 +0200 | chomwitt | (~chomwitt@ppp-94-68-249-8.home.otenet.gr) |
2021-10-30 22:27:55 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-30 22:28:21 +0200 | zincy_ | (~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 +0200 | ski | . o O ( isn't that in ROM ? ) |
2021-10-30 22:32:26 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Remote host closed the connection) |
2021-10-30 22:34:55 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds) |
2021-10-30 22:35:30 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2021-10-30 22:36:06 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) |
2021-10-30 22:36:13 +0200 | zincy_ | (~zincy@2a00:23c8:970c:4801:e5fe:6e8c:c240:1bb2) (Remote host closed the connection) |
2021-10-30 22:36:55 +0200 | brainfreeze | (~brainfree@2a03:1b20:4:f011::20d) |
2021-10-30 22:42:52 +0200 | proboscis | (~proboscis@115-189-81-94.mobile.spark.co.nz) (Ping timeout: 252 seconds) |
2021-10-30 22:43:11 +0200 | proboscis | (~proboscis@115-189-129-187.mobile.spark.co.nz) |
2021-10-30 22:52:33 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) |
2021-10-30 22:54:02 +0200 | ss4 | (~wootehfoo@user/wootehfoot) |
2021-10-30 22:56:58 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds) |
2021-10-30 22:56:59 +0200 | ss4 | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2021-10-30 22:57:22 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 260 seconds) |
2021-10-30 22:58:29 +0200 | ss4 | (~wootehfoo@user/wootehfoot) |
2021-10-30 23:01:26 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 246 seconds) |
2021-10-30 23:02:22 +0200 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving) |
2021-10-30 23:02:31 +0200 | metabulation | (~wootehfoo@user/wootehfoot) |
2021-10-30 23:04:01 +0200 | metabulation | (~wootehfoo@user/wootehfoot) (Remote host closed the connection) |
2021-10-30 23:06:28 +0200 | ss4 | (~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds) |
2021-10-30 23:08:41 +0200 | Farzad | (~FarzadBek@5.234.230.191) (Quit: Leaving) |
2021-10-30 23:15:30 +0200 | yrlnry | (~mjd@pool-74-109-22-90.phlapa.fios.verizon.net) |
2021-10-30 23:22:23 +0200 | son0p | (~ff@181.136.122.143) (Remote host closed the connection) |
2021-10-30 23:23:38 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-30 23:24:28 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-10-30 23:25:19 +0200 | jollygood2 | (~bc8165b6@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
2021-10-30 23:28:14 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 260 seconds) |
2021-10-30 23:28:47 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) |
2021-10-30 23:29:16 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 245 seconds) |
2021-10-30 23:29:49 +0200 | fendor | (~fendor@178.115.79.50.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-10-30 23:32:50 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) |
2021-10-30 23:33:01 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 245 seconds) |
2021-10-30 23:33:47 +0200 | Alleria | (~textual@user/alleria) |
2021-10-30 23:34:02 +0200 | nitrix | (~nitrix@user/nitrix) (Quit: Genius is one percent inspiration and ninety-nine percent perspiration) |
2021-10-30 23:35:17 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) |
2021-10-30 23:37:11 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:d4e:dbb8:1851:3894) (Ping timeout: 245 seconds) |
2021-10-30 23:39:54 +0200 | yauhsien | (~yauhsien@61-231-61-245.dynamic-ip.hinet.net) (Ping timeout: 260 seconds) |
2021-10-30 23:42:36 +0200 | nitrix | (~nitrix@user/nitrix) |
2021-10-30 23:44:27 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-30 23:44:27 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-30 23:44:27 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-30 23:46:19 +0200 | FragByte | (~christian@user/fragbyte) (Quit: Quit) |
2021-10-30 23:48:06 +0200 | FragByte | (~christian@user/fragbyte) |
2021-10-30 23:49:14 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 260 seconds) |
2021-10-30 23:49:33 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-10-30 23:49:35 +0200 | yrlnry | (~mjd@pool-74-109-22-90.phlapa.fios.verizon.net) (Ping timeout: 264 seconds) |
2021-10-30 23:50:33 +0200 | peterhil | (~peterhil@dsl-hkibng32-54fb56-2.dhcp.inet.fi) (Ping timeout: 265 seconds) |
2021-10-30 23:58:25 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-10-30 23:58:26 +0200 | proboscis | (~proboscis@115-189-129-187.mobile.spark.co.nz) (Ping timeout: 245 seconds) |