2021-06-13 00:00:01 +0200 | <Hecate> | lenses are pretty cool indeed |
2021-06-13 00:00:48 +0200 | <DigitalKiwi> | if dibblego ever gets bit by a sneke and i cannot ask him questions anymore i think i can replace him with a bot that says 'use lens' |
2021-06-13 00:00:50 +0200 | <qrpnxz> | they are kind of like arrows but for records |
2021-06-13 00:01:05 +0200 | <qrpnxz> | DigitalKiwi, hahaha |
2021-06-13 00:01:30 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 264 seconds) |
2021-06-13 00:01:40 +0200 | <DigitalKiwi> | dibblego: <3 |
2021-06-13 00:01:56 +0200 | <aerkenemesis> | the dependency list is a bit discouraging though :S |
2021-06-13 00:02:09 +0200 | <geekosaur> | there's always microlens |
2021-06-13 00:02:50 +0200 | <Rembane_> | Or use other dependencies directly that lens depends on. |
2021-06-13 00:03:10 +0200 | <DigitalKiwi> | you mean "code that someone else wrote so i don't have to" |
2021-06-13 00:03:54 +0200 | <maerwald> | optics > lens |
2021-06-13 00:04:10 +0200 | <c_wraith> | optics doesn't have any of the cool stuff |
2021-06-13 00:04:56 +0200 | <Rembane_> | DigitalKiwi: That's the best code! |
2021-06-13 00:05:02 +0200 | <Rembane_> | c_wraith: What cool stuff is optics lacking? |
2021-06-13 00:06:01 +0200 | <aerkenemesis> | DigitalKiwi yes indeed, but haskell binaries tend to blow up astronomically in size so I usually pick libraries very carefully. "Many a mickle makes a little" |
2021-06-13 00:06:15 +0200 | <c_wraith> | holesOf, everything in Control.Lens.Plated |
2021-06-13 00:06:31 +0200 | <maerwald> | never heard of any of that |
2021-06-13 00:06:39 +0200 | <maerwald> | so my guess is I don't need it |
2021-06-13 00:06:49 +0200 | <c_wraith> | Or you just don't realize that you missed it |
2021-06-13 00:07:00 +0200 | <DigitalKiwi> | https://mostlyabsurd.com/files/stackage-shell.nix gee i wonder why i never got this to work ;_; |
2021-06-13 00:07:09 +0200 | <maerwald> | most of the time, I avoid both lens and optics... but when I can't, I use optics |
2021-06-13 00:07:23 +0200 | <Rembane_> | c_wraith: Cool, I've got some reading to do. :) |
2021-06-13 00:08:00 +0200 | <c_wraith> | like... https://hackage.haskell.org/package/lens-5.0.1/docs/Control-Lens-Plated.html#v:cosmosOf cosmosOf is amazing for any sort of "apply this everywhere" transformation |
2021-06-13 00:09:17 +0200 | <c_wraith> | err. it's good for extraction, not transformation. But still. |
2021-06-13 00:10:10 +0200 | <c_wraith> | like, the Plated class is actually the least useful thing in Control.Lens.Plated :) |
2021-06-13 00:12:58 +0200 | jneira | (~jneira@166.red-81-39-172.dynamicip.rima-tde.net) |
2021-06-13 00:13:27 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds) |
2021-06-13 00:13:27 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 00:14:51 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 272 seconds) |
2021-06-13 00:14:53 +0200 | <DigitalKiwi> | Rembane_: yes |
2021-06-13 00:16:55 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 00:18:18 +0200 | johnw | (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
2021-06-13 00:20:24 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 00:21:09 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 252 seconds) |
2021-06-13 00:23:19 +0200 | thyriaen | (~thyriaen@45.178.75.13) (Remote host closed the connection) |
2021-06-13 00:24:03 +0200 | benin036 | (~benin@183.82.205.218) |
2021-06-13 00:24:16 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 00:25:01 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-06-13 00:29:12 +0200 | jaevanko | (~jaevanko@2600:1700:1330:2bef:5548:773a:cf10:a3a1) (Quit: Leaving) |
2021-06-13 00:31:10 +0200 | bpalmer | (~user@user/bpalmer) |
2021-06-13 00:33:25 +0200 | tremon | (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in) |
2021-06-13 00:34:04 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Remote host closed the connection) |
2021-06-13 00:34:40 +0200 | pdxleif | (~leif@75.164.44.108) (Quit: leaving) |
2021-06-13 00:35:42 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 00:38:25 +0200 | MorrowM | (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-13 00:44:28 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 00:54:54 +0200 | MQ-17J | (~MQ-17J@8.21.10.116) (Ping timeout: 264 seconds) |
2021-06-13 00:56:34 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 01:00:36 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-06-13 01:02:20 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 01:05:02 +0200 | dudebbn_ | (~dudebbn_@31.134.191.84) |
2021-06-13 01:05:02 +0200 | <dudebbn_> | /﹗\ ΤHІЅ CⲎᎪΝΝΕⅬ HAЅ ᎷOᏙΕᎠ ΤO ΙᏒC.LⅠBᎬRA.CΗAT #HᎪMRADⅠO /!\ |
2021-06-13 01:05:03 +0200 | <dudebbn_> | /ǃ\ THΕ JEᎳS ⲎАᏙᎬ TᎪKЕΝ ΟᏙER ᖴᎡEEⲚODEᛧ CHᎪTЅ HAᏙЕ MOᏙED ΤO IRC.ᏞⅠBΕRA.ⲤHΑТ /!\ |
2021-06-13 01:05:03 +0200 | dudebbn_ | (~dudebbn_@31.134.191.84) (Killed (ozone (No Spam))) |
2021-06-13 01:06:48 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-06-13 01:13:57 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 252 seconds) |
2021-06-13 01:16:46 +0200 | <DigitalKiwi> | wh- what |
2021-06-13 01:17:00 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
2021-06-13 01:17:12 +0200 | <geekosaur> | "enjoy" some spam |
2021-06-13 01:17:26 +0200 | <geekosaur> | they're still hitting libera, sadly |
2021-06-13 01:17:39 +0200 | <geekosaur> | more of it shows up in -beginners than here for some reason |
2021-06-13 01:18:24 +0200 | <DigitalKiwi> | couldn't they do something better like fixing PIA ;( |
2021-06-13 01:20:18 +0200 | <geekosaur> | ? |
2021-06-13 01:21:57 +0200 | <janus> | Private Internet Access (PIA) is the company that owns Freenode |
2021-06-13 01:22:13 +0200 | <DigitalKiwi> | In 2010, he founded Private Internet Access (PIA),[2] a virtual private network service for anonymizing Internet traffic. |
2021-06-13 01:22:40 +0200 | <janus> | but these spammers aren't promoting Freenode, so it makes little sense to assert that they have the power to "fix PIA"? |
2021-06-13 01:22:54 +0200 | <geekosaur> | so you assime Andrew is behind the spam? when they're hitting freenode even harder --- and also other networks? |
2021-06-13 01:24:09 +0200 | <janus> | i don't really understand what they stand to gain from it. but it is interesting that apparently the cost of spamming is so low that you don't need to make money doing it? |
2021-06-13 01:24:34 +0200 | <janus> | or maybe it is just meant as a "proof of spamming" and could potentially be monetized ? |
2021-06-13 01:24:57 +0200 | <DigitalKiwi> | i don't know that andrew is or is not responsible for the spam; but he very clearly destroyed freenode |
2021-06-13 01:25:19 +0200 | <geekosaur> | oh, it's trivial these days. botnets are nearly free and these days all they're doing is keeping them warm |
2021-06-13 01:26:38 +0200 | <janus> | but it just seems like they're targeting IRC specifically... does matrix have the same problem? |
2021-06-13 01:27:26 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 01:28:01 +0200 | <janus> | i guess matrix requires an account , but it just seems odd if that is the only thing stopping them |
2021-06-13 01:28:54 +0200 | chisui | (~chisui@200116b8666c8300b41cb8c96969b3fb.dip.versatel-1u1.de) (Quit: Client closed) |
2021-06-13 01:29:08 +0200 | chisui | (~chisui@200116b8666c8300147e1d1a4c512cff.dip.versatel-1u1.de) |
2021-06-13 01:29:11 +0200 | <DigitalKiwi> | janus: ah this must be the proof of work i hear so much about ;D |
2021-06-13 01:29:45 +0200 | <DigitalKiwi> | "see? (the botnet) it works!" |
2021-06-13 01:29:56 +0200 | <janus> | right, i got coloured by that pattern of terminology, sorry for triggering you ;) |
2021-06-13 01:30:46 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) |
2021-06-13 01:31:16 +0200 | theproffesor | (~theproffe@2601:282:847f:8010::3a29) |
2021-06-13 01:31:52 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-06-13 01:31:56 +0200 | Deide | (~Deide@user/deide) (Quit: Seeee yaaaa) |
2021-06-13 01:33:43 +0200 | <janus> | it does suggest a difficult hobby project: OCR-based spam filter :P |
2021-06-13 01:34:59 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-13 01:36:05 +0200 | <Cale> | If I were a young script kiddie with a botnet right now, I'd be using it to attempt routing table attacks on the p2p layer of cryptocurrency networks. Seems way more fun than messing with IRC, haha. |
2021-06-13 01:38:05 +0200 | <DigitalKiwi> | ohi cale haven't seen you in while. so tell us cale what have you been working on lately? ;p |
2021-06-13 01:38:16 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) |
2021-06-13 01:38:22 +0200 | <Cale> | In my spare time, mostly music |
2021-06-13 01:38:35 +0200 | <Cale> | I've got a Lumatone (lumatone.io) |
2021-06-13 01:38:50 +0200 | <janus> | but most of them do not have overlay networks, so why would they need a routing table? bitcoin can use torv3, but then if you're attacking tor, that is not really specific to cryptocurrency |
2021-06-13 01:39:04 +0200 | <DigitalKiwi> | is music the codename for your botnet that attacks p2p networks |
2021-06-13 01:40:04 +0200 | <Cale> | janus: I mean like the Kademlia stuff that nodes use to connect themselves to other nodes |
2021-06-13 01:40:15 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-06-13 01:40:52 +0200 | <DigitalKiwi> | "no of course not you idiot bird (whispers "lumatone is the codename")" |
2021-06-13 01:40:55 +0200 | <janus> | but is Kademlia/DHT used in cryptocurrency? i thought it only really made sense for long-time immutable data that isn't replicated across the network |
2021-06-13 01:41:27 +0200 | <janus> | in bitcoin, everybody syncs the whole thing, so you don't need a DHT to find where the pieces are, because they will be with almost all your peers |
2021-06-13 01:42:19 +0200 | <Cale> | janus: For many networks, yeah. Bitcoin is mostly ad-hoc configurations that can't be gamed, but a lot of networks use a DHT to make it easy to find peers to get connected to. |
2021-06-13 01:42:46 +0200 | <Cale> | I believe Ethereum still does, unless something has changed. |
2021-06-13 01:43:28 +0200 | <janus> | ok, so sounds like you'll be helping to establish Bitcoin-hegemony. A crypto-bitcoin-maximalist, i see ;) |
2021-06-13 01:43:48 +0200 | <Cale> | Bitcoin, we'll have to find some other solution to |
2021-06-13 01:44:28 +0200 | <Cale> | I want it all gone ;D |
2021-06-13 01:45:16 +0200 | <janus> | the bitcoin blockchain contains links to child porn. so you just need a few million to establish court precedence for that constituting child porn possetion |
2021-06-13 01:45:59 +0200 | <janus> | sadly, i can't tell you where they are, that would be criminal ;) |
2021-06-13 01:46:26 +0200 | <janus> | hmm , but then again, i already did... damn |
2021-06-13 01:47:39 +0200 | <DigitalKiwi> | very sus |
2021-06-13 01:48:17 +0200 | <Cale> | amogus |
2021-06-13 01:50:02 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-13 01:52:35 +0200 | yoctocell | (~yoctocell@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 268 seconds) |
2021-06-13 01:52:43 +0200 | kluk | (~kluk@2603-7000-9b3f-6934-65d8-64d7-b633-c7a9.res6.spectrum.com) |
2021-06-13 01:54:31 +0200 | kluk | (~kluk@2603-7000-9b3f-6934-65d8-64d7-b633-c7a9.res6.spectrum.com) (Read error: Connection reset by peer) |
2021-06-13 01:55:18 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 01:56:24 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-06-13 02:02:11 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-13 02:11:58 +0200 | pkkm | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) (Ping timeout: 272 seconds) |
2021-06-13 02:13:53 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 02:14:01 +0200 | DigitalKiwi | trolls ethereum twitter https://twitter.com/ArchKiwi/status/1403867746635558914?s=20 |
2021-06-13 02:14:43 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: leaving) |
2021-06-13 02:14:58 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-06-13 02:29:04 +0200 | Kaipi | (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) |
2021-06-13 02:29:05 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-06-13 02:29:14 +0200 | Kaipi | (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection) |
2021-06-13 02:35:31 +0200 | pe200012_ | (~pe200012@183.63.73.36) (Read error: Connection reset by peer) |
2021-06-13 02:35:37 +0200 | pe200012 | (~pe200012@183.63.73.36) |
2021-06-13 02:37:26 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 245 seconds) |
2021-06-13 02:38:13 +0200 | sekun | (~sekun@180.190.155.195) |
2021-06-13 02:40:23 +0200 | swistak | (~swistak@185.21.216.141) (Ping timeout: 252 seconds) |
2021-06-13 02:41:00 +0200 | hololeap | (hololeap@user/hololeap) (Quit: Bye) |
2021-06-13 02:41:32 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Remote host closed the connection) |
2021-06-13 02:50:20 +0200 | sciencentistguy | (~sciencent@hacksoc/ordinary-member) (Ping timeout: 245 seconds) |
2021-06-13 02:58:24 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-13 02:58:40 +0200 | dhil | (~dhil@195.213.192.47) (Ping timeout: 245 seconds) |
2021-06-13 02:59:26 +0200 | chisui | (~chisui@200116b8666c8300147e1d1a4c512cff.dip.versatel-1u1.de) (Ping timeout: 250 seconds) |
2021-06-13 03:00:28 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
2021-06-13 03:04:44 +0200 | killsushi | (~killsushi@user/killsushi) (Quit: Leaving) |
2021-06-13 03:08:01 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-06-13 03:10:24 +0200 | kw | (~user@152.1.137.158) (Remote host closed the connection) |
2021-06-13 03:11:59 +0200 | xff0x | (~xff0x@2001:1a81:5382:9400:bf95:26e2:74b9:5674) (Ping timeout: 272 seconds) |
2021-06-13 03:13:30 +0200 | xff0x | (~xff0x@2001:1a81:53bf:ae00:b6fb:e579:3973:61d4) |
2021-06-13 03:15:19 +0200 | johnw_ | (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
2021-06-13 03:15:46 +0200 | dcoutts__ | (~duncan@94.186.125.91.dyn.plus.net) |
2021-06-13 03:15:55 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-06-13 03:16:01 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Remote host closed the connection) |
2021-06-13 03:16:01 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Read error: Connection reset by peer) |
2021-06-13 03:16:01 +0200 | dcoutts_ | (~duncan@94.186.125.91.dyn.plus.net) (Remote host closed the connection) |
2021-06-13 03:16:09 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-13 03:16:24 +0200 | justBull | (~justache@user/justache) (Remote host closed the connection) |
2021-06-13 03:17:13 +0200 | justBull | (~justache@user/justache) |
2021-06-13 03:17:16 +0200 | <janus> | i am looking at http://www.vex.net/~trebla/haskell/cont.xhtml and it defines `fmap = liftM` |
2021-06-13 03:18:15 +0200 | johnw | (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Ping timeout: 252 seconds) |
2021-06-13 03:18:40 +0200 | <geekosaur> | historically Monad didn't require Functor, so it was common to get the Functor instance that way |
2021-06-13 03:19:00 +0200 | <janus> | right! but let's say i wanted to define fmap myself, i could take the solution for monadic bind, and substitute that into the law "fmap f xs = xs >>= return . f" from Control.Monad |
2021-06-13 03:19:13 +0200 | <janus> | then i would have an fmap implementation that didn't rely on Monad, right? |
2021-06-13 03:19:27 +0200 | <geekosaur> | yes |
2021-06-13 03:19:37 +0200 | <janus> | i feel a bit dirty defining Functor in terms of Monad, since i feel like it is the wrong way around |
2021-06-13 03:19:41 +0200 | <geekosaur> | you're looking at a historical accident, basically |
2021-06-13 03:20:40 +0200 | <janus> | but there is another problem: that line also uses `return`. so i'd have to find a law on Control.Applicative that defines fmap in terms of "pure", right? |
2021-06-13 03:21:32 +0200 | <geekosaur> | pure is the same as return |
2021-06-13 03:21:43 +0200 | <janus> | right, that's why i mention it |
2021-06-13 03:21:48 +0200 | <geekosaur> | you should be able to use them interchangeably |
2021-06-13 03:21:57 +0200 | theproffesor | (~theproffe@2601:282:847f:8010::3a29) (Changing host) |
2021-06-13 03:21:57 +0200 | theproffesor | (~theproffe@user/theproffesor) |
2021-06-13 03:22:15 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 272 seconds) |
2021-06-13 03:22:48 +0200 | <janus> | right, so i showed the law that defines fmap in terms of bind and return. but i can't find a law that defines fmap in terms of applicative's pure, and surely there can't be |
2021-06-13 03:23:30 +0200 | <geekosaur> | right, Applicative relies on having Functor as a superclass |
2021-06-13 03:23:39 +0200 | pfurla | (~pfurla@ool-182ed2e2.dyn.optonline.net) (Quit: Textual IRC Client: www.textualapp.com) |
2021-06-13 03:24:07 +0200 | <janus> | but then how do i do this, is it better if i just start from scratch with the fmap laws and my Cont definition? |
2021-06-13 03:24:16 +0200 | <geekosaur> | probably yes |
2021-06-13 03:24:35 +0200 | <janus> | ok lemme try, thanks :) |
2021-06-13 03:25:17 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 03:26:30 +0200 | <DigitalKiwi> | for some reason i'm remembering a slide dibblego had where he (ab)used return lol |
2021-06-13 03:27:09 +0200 | <DigitalKiwi> | yes i could be more vague ;( |
2021-06-13 03:27:35 +0200 | pfurla | (~pfurla@ool-182ed2e2.dyn.optonline.net) |
2021-06-13 03:29:16 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 03:38:03 +0200 | benin036 | (~benin@183.82.205.218) (Ping timeout: 252 seconds) |
2021-06-13 03:39:54 +0200 | benin036 | (~benin@183.82.176.84) |
2021-06-13 03:43:17 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
2021-06-13 03:45:55 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 03:46:56 +0200 | unyu | (~pyon@user/pyon) (Quit: WeeChat 3.1) |
2021-06-13 03:50:30 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:6149:a9e8:86ec:e649) (Quit: Leaving) |
2021-06-13 03:51:36 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) (Ping timeout: 268 seconds) |
2021-06-13 03:51:57 +0200 | <DigitalKiwi> | now i have to watch all of his videos on youtube until i find it ;( |
2021-06-13 03:52:11 +0200 | <Henson> | Cale: the lumatone looks interesting |
2021-06-13 03:53:16 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-06-13 03:53:54 +0200 | <DigitalKiwi> | if only i could limit it to the subset of videos i have watched before that would reduce the search space... |
2021-06-13 03:54:44 +0200 | <DigitalKiwi> | oh wait that's all of them LOL <3 |
2021-06-13 03:58:26 +0200 | iridescent | (~iridescen@41337027.cst.lightpath.net) |
2021-06-13 03:58:34 +0200 | <iridescent> | what does the line "class Randomizable spec f | spec -> f" mean? |
2021-06-13 03:58:46 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 03:58:46 +0200 | <iridescent> | i'm not sure what the syntax here is |
2021-06-13 03:59:13 +0200 | <geekosaur> | it's a class with a functional dependency saying that for any spec there can be only one f |
2021-06-13 03:59:30 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 252 seconds) |
2021-06-13 04:00:00 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-06-13 04:00:21 +0200 | jespada | (~jespada@90.254.242.55) (Ping timeout: 264 seconds) |
2021-06-13 04:00:33 +0200 | <geekosaur> | this helps with type resolution in the presence of multiparameter typeclasses |
2021-06-13 04:01:06 +0200 | sander | (~sander@user/sander) |
2021-06-13 04:01:26 +0200 | jespada | (~jespada@90.254.242.55) |
2021-06-13 04:02:16 +0200 | <iridescent> | what do you mean by that second statement? |
2021-06-13 04:03:19 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 268 seconds) |
2021-06-13 04:03:42 +0200 | <geekosaur> | without the functional dependency, the typeclass could mean nearly anything and you would have to annotate all uses with their types. with the fundep ghc knows that if it knows spec, there's only one possible f instead of just about anything |
2021-06-13 04:05:23 +0200 | <geekosaur> | https://downloads.haskell.org/ghc/latest/docs/html/users_guide/exts/functional_dependencies.html |
2021-06-13 04:07:02 +0200 | td_ | (~td@94.134.91.54) (Ping timeout: 244 seconds) |
2021-06-13 04:08:53 +0200 | td_ | (~td@94.134.91.38) |
2021-06-13 04:09:24 +0200 | sh9 | (~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 3.0.1) |
2021-06-13 04:10:23 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 272 seconds) |
2021-06-13 04:11:22 +0200 | iridescent | (~iridescen@41337027.cst.lightpath.net) (Ping timeout: 250 seconds) |
2021-06-13 04:11:35 +0200 | abhixec | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving) |
2021-06-13 04:13:05 +0200 | phma_ | (phma@2001:5b0:215d:8f48:bacd:d5e3:1440:7006) |
2021-06-13 04:16:01 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.204.25) (Ping timeout: 244 seconds) |
2021-06-13 04:16:26 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.204.25) |
2021-06-13 04:16:32 +0200 | phma | (~phma@host-67-44-209-1.hnremote.net) (Ping timeout: 244 seconds) |
2021-06-13 04:17:06 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 252 seconds) |
2021-06-13 04:18:27 +0200 | phma_ | phma |
2021-06-13 04:19:27 +0200 | qrpnxz | (~qrpnxz@user/qrpnxz) (Disconnected: closed) |
2021-06-13 04:20:11 +0200 | curiousgay | (~quassel@178.217.208.8) |
2021-06-13 04:21:57 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1) |
2021-06-13 04:25:41 +0200 | qrpnxz | (~qrpnxz@user/qrpnxz) |
2021-06-13 04:25:56 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 04:29:26 +0200 | <Cale> | Henson: It's fantastic. It's actually way easier to learn than the usual piano keyboard layout, since you generally arrange it so that musical intervals and spatial intervals coincide. |
2021-06-13 04:30:36 +0200 | <Cale> | and then you get to generalise to larger tuning systems in a natural way, but play them similarly regardless (provided they support whatever temperament is implied by your layout) |
2021-06-13 04:32:38 +0200 | <Cale> | https://imgur.com/a/91xHTjS -- 31 equal divisions of the octave Wicki-Hayden schematic and on the keyboard :) |
2021-06-13 04:33:22 +0200 | <theproffesor> | I love microtonal keyboards.. I think that one looks pretty sweet. Has there been any good updates software wise yet? I know that there is an ethernet port among other future planned upgrades |
2021-06-13 04:33:28 +0200 | <Cale> | That type of layout, with perfect fifths on the / axis and perfect fourths on the \ axis so that whole tones go across is my favourite |
2021-06-13 04:34:52 +0200 | <Cale> | There was one firmware update almost immediately after shipping with some hotfixes, but yeah, there should be a lot of potential cool stuff |
2021-06-13 04:35:15 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:f1c5:68ee:212f:e12f) |
2021-06-13 04:35:17 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:f1c5:68ee:212f:e12f) (Client Quit) |
2021-06-13 04:35:18 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-06-13 04:35:45 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 264 seconds) |
2021-06-13 04:36:01 +0200 | curiousgay_ | (~quassel@178.217.208.8) |
2021-06-13 04:36:10 +0200 | curiousgay_ | (~quassel@178.217.208.8) (Client Quit) |
2021-06-13 04:36:55 +0200 | <qrpnxz> | anything in particular that made the devs go from ghc 8 to 9? (got a changelog?) |
2021-06-13 04:37:02 +0200 | <Cale> | I also have to try to convince them to open source the firmware... for the sake of convenience it would be really nice to have an MPE mode, which I'd write myself if I could (I ended up writing a Lua script for moony.lv2 to convert channel-per-octave into MPE, but it's not as good as building it in would be) |
2021-06-13 04:37:15 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-06-13 04:37:17 +0200 | <Cale> | qrpnxz: I guess LinearHaskell? |
2021-06-13 04:37:31 +0200 | <qrpnxz> | what's that |
2021-06-13 04:38:16 +0200 | <Cale> | It lets you restrict the number of times functions are allowed to use their arguments based on their type. |
2021-06-13 04:38:41 +0200 | smokey991 | (sid369395@id-369395.brockwell.irccloud.com) () |
2021-06-13 04:39:03 +0200 | <qrpnxz> | so for example, does sum a = a + a use the argument twice? |
2021-06-13 04:39:08 +0200 | <Cale> | yeah |
2021-06-13 04:39:22 +0200 | <qrpnxz> | ohhhh, that's pretty nice, you can optimize a lot of it's only one use |
2021-06-13 04:39:39 +0200 | <Cale> | Yeah, except that at least at present, it doesn't give you any additional optimisation. |
2021-06-13 04:39:40 +0200 | <qrpnxz> | well, idk why you'd want it as part of the type |
2021-06-13 04:40:00 +0200 | <qrpnxz> | alright thx i'll look more into it |
2021-06-13 04:40:39 +0200 | <Cale> | I personally don't think it'll turn out to be very useful, and gives a fair amount of rope with which to hang yourself, but people are interested in the potential regardless. |
2021-06-13 04:42:23 +0200 | <Henson> | Cale: cool, thanks for the info on the keyboard! |
2021-06-13 04:42:27 +0200 | <Cale> | The most interesting example usages I've seen have all involved making various uses of unsafePerformIO safe, but they don't really buy you much more than the ST monad would. |
2021-06-13 04:42:33 +0200 | unyu | (~pyon@user/pyon) |
2021-06-13 04:44:02 +0200 | <Cale> | (but slightly more terse syntax usually, you get to avoid do notation I guess) |
2021-06-13 04:44:49 +0200 | da39a3ee5e6b4b0d | (~textual@171.6.243.223) |
2021-06-13 04:46:53 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 04:47:25 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 245 seconds) |
2021-06-13 04:49:30 +0200 | Henson | (~kvirc@23-233-1-122.cpe.pppoe.ca) (Quit: goodnight) |
2021-06-13 04:49:43 +0200 | zebrag | (~chris@user/zebrag) (Remote host closed the connection) |
2021-06-13 04:50:14 +0200 | <qrpnxz> | i'm reading an article on this (https://blog.acolyer.org/2018/01/24/linear-haskell-practical-linearity-in-a-higher-order-polymorph… for reference), and it feels a LOT like ownership tbh. Because when you use a value multiple times essentially you are making an implicit copy of that value, so these types are essentially restricting your ability to copy the value, which is indeed rather useful in |
2021-06-13 04:50:14 +0200 | <qrpnxz> | determining who has to (or can) destruct,drop,close,free,unlock,mutate etc. that value. |
2021-06-13 04:50:19 +0200 | <qrpnxz> | I wonder if haskell just had something like Rust's Copy and Clone traits that you'd be able to do basically the same thing in many cases idk. |
2021-06-13 04:53:59 +0200 | <Cale> | Yeah, they kind of picked... not the substructural set of operations that I'd be most interested in. Personally, I'm quite interested in stuff like Conal's "constrained categories", which translate pretty-much-arbitrary Haskell expressions into operations involving a bunch of subclasses of Category, and just leaving out constraints for the subclasses that let you duplicate values (and/or discard them, etc.) would then |
2021-06-13 04:53:59 +0200 | <Cale> | be a better way to express substructural stuff like linearity/affineness/etc. |
2021-06-13 04:55:47 +0200 | <Cale> | I'm not even sure it would have been much more complicated than LinearHaskell to build something like that into GHC, and I feel like it would in any case have gotten much more bang for the buck. |
2021-06-13 04:55:59 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
2021-06-13 04:56:10 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-13 04:57:22 +0200 | <Cale> | There are not a lot of practical combinator libraries that are exactly linear, but there's a lot of stuff which is somewhere in that direction, but perhaps more constrained, or a bit less. |
2021-06-13 04:59:02 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-13 04:59:39 +0200 | <Cale> | and the way they've rigged it up in LinearHaskell also kind of forces you into using unsafePerformIO to do anything really interesting, which is also kind of gross. They're trying too hard to overlap with the usual (->) type and that results in something which is less useful than you'd perhaps hope for. |
2021-06-13 04:59:55 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-06-13 05:00:52 +0200 | <Cale> | (Usually I'd think you'd prefer to have a totally separate type from the type of ordinary Haskell functions, and just overload lambda to be able to produce values of your new type) |
2021-06-13 05:01:44 +0200 | hiruji | (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6) (Ping timeout: 252 seconds) |
2021-06-13 05:02:08 +0200 | <Cale> | But we'll see, maybe someone will find some sort of killer app for LinearHaskell |
2021-06-13 05:04:44 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-06-13 05:07:59 +0200 | hiruji | (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6) |
2021-06-13 05:13:51 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 05:14:09 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-06-13 05:14:31 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Client Quit) |
2021-06-13 05:14:45 +0200 | <arahael> | Given a date time, how do I format it given a particular format string and locale? |
2021-06-13 05:14:55 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 05:15:10 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 05:15:16 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 05:15:33 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 05:15:40 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 05:16:16 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Ping timeout: 244 seconds) |
2021-06-13 05:17:01 +0200 | ubikium | (~ubikium@2400:2200:3f7:6d04:f545:ef78:6130:411e) |
2021-06-13 05:17:54 +0200 | <janus> | arahael: did you see https://hackage.haskell.org/package/time-1.12/docs/Data-Time-Format-ISO8601.html ? |
2021-06-13 05:19:05 +0200 | <arahael> | janus: That's mostly biased towards parsing, I think? I want to produce a human-friendly time, such as: "Saturday 12th June". |
2021-06-13 05:21:28 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) |
2021-06-13 05:22:21 +0200 | <arahael> | I think what I need is something like formatCalendarTime in `old-time`, but that's a deprecated module. |
2021-06-13 05:23:26 +0200 | <janus> | araheal well i think it shouldn't be hard to make the serialization, you can use e.g. https://hackage.haskell.org/package/time-1.12/docs/Data-Time-Calendar-OrdinalDate.html#v:mondaySta… |
2021-06-13 05:23:37 +0200 | <janus> | and the month name surely must also be easy to get |
2021-06-13 05:23:51 +0200 | <janus> | dunno if it is worse to make it yourself or use old-time... |
2021-06-13 05:24:39 +0200 | <janus> | maybe easiest just to use https://hackage.haskell.org/package/time-1.12/docs/Data-Time-Format.html#v:formatTime |
2021-06-13 05:24:42 +0200 | <arahael> | Yeah, it shouldn't be that much work, I wonder how most people deal with time formatting. |
2021-06-13 05:24:53 +0200 | <janus> | i just use iso8601 for everything ;) |
2021-06-13 05:24:56 +0200 | <arahael> | Yeah, I looked at formatTime, but... How do you do the '12th"? |
2021-06-13 05:26:26 +0200 | <janus> | that is so english-centric, i am kinda happy it isn't in 'time' ;) i see there is https://hackage.haskell.org/package/ordinal |
2021-06-13 05:27:03 +0200 | <arahael> | janus: Yeah, so we're going back to "Manually, painstakingly, format it yourself, by hand". :( |
2021-06-13 05:28:25 +0200 | <janus> | but are you sure your users would even appreciate the ordinal form? i know i always turn it off if i can |
2021-06-13 05:28:52 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1) |
2021-06-13 05:29:05 +0200 | <janus> | it's not even available with strftime |
2021-06-13 05:29:07 +0200 | <arahael> | janus: This is going to go into the string: "Come and meet us at <location> on Saturday 12th June at 11 AM!" |
2021-06-13 05:29:30 +0200 | kiweun | (~sheepduck@2607:fea8:2a61:4800::ea20) |
2021-06-13 05:29:41 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) (Read error: Connection reset by peer) |
2021-06-13 05:29:52 +0200 | <arahael> | So I was wanting to format the latter part of that string. |
2021-06-13 05:30:32 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving) |
2021-06-13 05:31:29 +0200 | <qrpnxz> | rfc3339 gang |
2021-06-13 05:31:30 +0200 | ubikium | (~ubikium@2400:2200:3f7:6d04:f545:ef78:6130:411e) (Ping timeout: 268 seconds) |
2021-06-13 05:31:36 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-06-13 05:32:19 +0200 | <arahael> | qrpnxz: That's not exactly "conversational", though. |
2021-06-13 05:32:19 +0200 | <qrpnxz> | format you want looks like rfc1123 |
2021-06-13 05:32:31 +0200 | <qrpnxz> | see rfc1123 :) |
2021-06-13 05:32:35 +0200 | <janus> | qrpnxz: is rfc3339 a subset of iso8601? |
2021-06-13 05:32:46 +0200 | <janus> | looks good |
2021-06-13 05:32:49 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds) |
2021-06-13 05:32:50 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-06-13 05:33:18 +0200 | <qrpnxz> | i think it's supposed to be the same, there's a good SO answer on a comparison between the two. I'm team rfc because ofc that's a std i can actually read xD |
2021-06-13 05:33:23 +0200 | <arahael> | qrpnxz: Similar, except I want full names, and no year. :) |
2021-06-13 05:33:41 +0200 | <qrpnxz> | sounds like a custom format |
2021-06-13 05:33:42 +0200 | <qrpnxz> | gl |
2021-06-13 05:33:55 +0200 | <arahael> | qrpnxz: Of course, trivially supported using the likes of strftime. |
2021-06-13 05:34:18 +0200 | <janus> | qrpnxz: looks like neither of these have the ordinal ending https://hackage.haskell.org/package/time-http |
2021-06-13 05:34:20 +0200 | <qrpnxz> | janus, from SO: "RFC 3339 is listed as a profile of ISO 8601" :) https://stackoverflow.com/questions/522251/whats-the-difference-between-iso-8601-and-rfc-3339-date… |
2021-06-13 05:34:23 +0200 | <janus> | and that package includes 1123 |
2021-06-13 05:34:39 +0200 | <janus> | qrpnxz: right , that's what the rfc text says. dunno what a profile is |
2021-06-13 05:34:57 +0200 | <janus> | but i guess it is better to use that name for it since it looks like iso8601 is way too big |
2021-06-13 05:34:58 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) |
2021-06-13 05:35:02 +0200 | <qrpnxz> | probably effectively a subset |
2021-06-13 05:35:24 +0200 | <qrpnxz> | or an instanciation |
2021-06-13 05:36:47 +0200 | <qrpnxz> | another area go shines is time https://golang.org/pkg/time/#pkg-constants |
2021-06-13 05:37:56 +0200 | <janus> | qrpnxz: is it really shining or is it just cutting the right corners ? ;) i see a problem already when saying "MST is -07:00" like they do there |
2021-06-13 05:38:13 +0200 | <qrpnxz> | two different formats |
2021-06-13 05:38:34 +0200 | <qrpnxz> | you pick |
2021-06-13 05:39:25 +0200 | <janus> | right, but timezone names can change, and where does "MST" come from? what if it changes , and i give it a timestamp in a period where it had the old definition? |
2021-06-13 05:39:48 +0200 | <qrpnxz> | MST just marks where the timezone goes in the format |
2021-06-13 05:39:55 +0200 | <qrpnxz> | like Jan marks where the month goes |
2021-06-13 05:40:10 +0200 | <qrpnxz> | and 02 marks the day and so on |
2021-06-13 05:40:18 +0200 | ec_ | (~ec@gateway/tor-sasl/ec) |
2021-06-13 05:40:31 +0200 | <qrpnxz> | you can make your own custom format string quite easily |
2021-06-13 05:40:37 +0200 | <janus> | ok, where does the mapping MST -> -07:00 take place? if it doesn't take place, why is MST mentioned in the docs? |
2021-06-13 05:41:31 +0200 | <janus> | i understand that it works in 90% of the cases, probably comes from your local olson db |
2021-06-13 05:41:32 +0200 | <qrpnxz> | maybe i don't understand the question. MST is GMT-0700, that's just what it is. Not sure what you are asking now |
2021-06-13 05:42:05 +0200 | <janus> | i am saying that it is effectively not a "pure computation" because it comes from a database that is outside of go's control |
2021-06-13 05:42:16 +0200 | <qrpnxz> | no it's in the lib |
2021-06-13 05:42:31 +0200 | <qrpnxz> | you don't have to fetch it anywhere, it's not changing |
2021-06-13 05:42:51 +0200 | <janus> | ok, so it can't handle DST changes then? |
2021-06-13 05:43:19 +0200 | <qrpnxz> | i think it does, but DST produces different timezone codes |
2021-06-13 05:43:36 +0200 | <qrpnxz> | like CST <-> CDT |
2021-06-13 05:43:48 +0200 | <qrpnxz> | both central time, but one is DST and the other isnt |
2021-06-13 05:44:24 +0200 | <qrpnxz> | 1:00 CST doesn't change meaning on what time of year you are in |
2021-06-13 05:47:27 +0200 | <arahael> | So I'm using formatTime with the format string "%d", to get the day of the month, which I then convert to an integer, so that I can then get the Ordinal suffix for it and concat it. |
2021-06-13 05:47:33 +0200 | <arahael> | Seems quite a lot. |
2021-06-13 05:48:44 +0200 | <arahael> | Oh, and stripping spaces from it... |
2021-06-13 05:48:52 +0200 | <arahael> | A bit of a mess. |
2021-06-13 05:50:02 +0200 | <arahael> | I might as well just split my input string by '-' for the date parts. |
2021-06-13 05:52:20 +0200 | <arahael> | Heh, Data.DateTime from datetime has this comment in the code: -- the craziness of the Haskell standard library date and time functions. |
2021-06-13 05:52:42 +0200 | <Cale> | arahael: That sounds crazy, why not just go directly? |
2021-06-13 05:52:50 +0200 | <Cale> | What are you starting with? |
2021-06-13 05:54:06 +0200 | <arahael> | Cale: Unbelievably, just an ISO 8601 date. |
2021-06-13 05:54:06 +0200 | <davean> | Yah, I mean you can just ask for the month |
2021-06-13 05:54:10 +0200 | <Cale> | Usually you'll want to convert your UTCTime into a LocalTime in order to get the (local) Day from it, and then you can take that apart in various ways |
2021-06-13 05:54:18 +0200 | da39a3ee_ | (~textual@171.6.243.223) |
2021-06-13 05:54:36 +0200 | <Cale> | You'll need to specify which TimeZone you want to know the day in though, since otherwise it'd be ambiguous. |
2021-06-13 05:54:38 +0200 | <arahael> | davean: But I don't want to ask for the date, the month, the day, the name of the day, the ordinal suffix of the day, etc, when I can just infer it all from the date itself. |
2021-06-13 05:54:43 +0200 | <arahael> | Cale: Yeah, always local. |
2021-06-13 05:55:06 +0200 | <arahael> | Cale: Taking it apart seems to be the *insane* bit in Haskell, though maybe I'm looking at the wrong module. |
2021-06-13 05:55:13 +0200 | <davean> | arahael: except you're formating it out! |
2021-06-13 05:55:23 +0200 | <davean> | arahael: I think you're totally confused |
2021-06-13 05:55:23 +0200 | <arahael> | davean: In this particular instance, yes. |
2021-06-13 05:55:30 +0200 | <janus> | arahael: what do you mean by "taking it apart" ? surely the iso8601 parsing is easy since it has already been written |
2021-06-13 05:55:42 +0200 | <Cale> | toGregorian :: Day -> (Year, MonthOfYear, DayOfMonth) |
2021-06-13 05:55:52 +0200 | <Cale> | is probably what you wanted? |
2021-06-13 05:56:19 +0200 | <Cale> | Assuming that you're starting with a Day |
2021-06-13 05:56:21 +0200 | <arahael> | Cale: I completely missed that since it's already in Gregorian... Yes, that's what I want. |
2021-06-13 05:56:34 +0200 | <arahael> | Cale: Well, LocalTime has a Day. |
2021-06-13 05:56:39 +0200 | <Cale> | yeah |
2021-06-13 05:57:14 +0200 | <arahael> | That works nicely. :) |
2021-06-13 05:57:50 +0200 | da39a3ee5e6b4b0d | (~textual@171.6.243.223) (Ping timeout: 245 seconds) |
2021-06-13 05:57:55 +0200 | <Cale> | A Day is meant to be an abstract notion of a day, and it's internally stored as the number of days since a particular day in 1858 :D |
2021-06-13 05:59:30 +0200 | <arahael> | Makes sense. :) But... Does it support anything other than Gregorian (or Julian, even?) |
2021-06-13 06:00:02 +0200 | <davean> | arahael: if you looked at how format was doing it you'd have found: |
2021-06-13 06:00:06 +0200 | <davean> | mapGregorian :: Format (Integer, (Int, Int)) -> Format Day |
2021-06-13 06:00:07 +0200 | <Cale> | There's the WeekDate stuff |
2021-06-13 06:00:12 +0200 | <davean> | mapGregorian = mapMFormat (\(y, (m, d)) -> fromGregorianValid y m d) (\day -> (\(y, m, d) -> Just (y, (m, d))) $ toGregorian day) |
2021-06-13 06:00:14 +0200 | <Cale> | which counts weeks of the year |
2021-06-13 06:00:27 +0200 | <janus> | toModifiedJulianDay in https://hackage.haskell.org/package/time-1.12/docs/Data-Time-Calendar.html#t:Day |
2021-06-13 06:00:29 +0200 | <pavonia> | What happened o that particular day? |
2021-06-13 06:00:34 +0200 | <pavonia> | *on |
2021-06-13 06:00:35 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 06:01:05 +0200 | <arahael> | davean: Where's mapGregorian? (And again, I dismissed all the 'gregorian' stuff as I didn't realise I had to convert calendarws) |
2021-06-13 06:01:40 +0200 | <janus> | arahael: you don't have to "convert" calendars afaik, because the iso8601 parser will know that it is parsing a gregorian date |
2021-06-13 06:02:02 +0200 | <Cale> | pavonia: https://groups.google.com/g/comp.os.vms/c/IMWn2Fg46VA has an answer of sorts for why it's that particular day |
2021-06-13 06:02:05 +0200 | <davean> | arahael: the Format Day implimentation |
2021-06-13 06:02:06 +0200 | <janus> | when you get the DayOfMonth and such, that is an integer that is also using the gregorian calendar |
2021-06-13 06:02:13 +0200 | <arahael> | janus: Yes, that's what i was saying... |
2021-06-13 06:02:15 +0200 | <davean> | arahael: which is how you were printing IOS8601 |
2021-06-13 06:02:42 +0200 | <arahael> | davean: I'm printing ISO 8601 by physically typing the characters in! |
2021-06-13 06:02:51 +0200 | <janus> | arahael: but there is no conversion necessarily taking place. haskell is just abstracting the internal representation which isn't necessarily gregorian. for example a unix time isn't really gregorian |
2021-06-13 06:03:26 +0200 | <pavonia> | Cale: Thanks. Was already reading about https://en.wikipedia.org/wiki/Great_Stink :D |
2021-06-13 06:03:33 +0200 | <janus> | arahael: but there is no conversion necessarily taking place. haskell is just abstracting the internal representation which isn't necessarily gregorian. for example a unix time isn't really gregorian know what it means? |
2021-06-13 06:03:36 +0200 | <arahael> | janus: I think we got our signals mixed up. Cale brought up 'toGregorgian", which turned out to be exactly what I wanted... I was saying I only dismissed that when reading the docs the first time because... I was *already* using gregorian! |
2021-06-13 06:03:53 +0200 | <monochrom> | Haha I should have become an astronomer. My day starts at noon. |
2021-06-13 06:04:15 +0200 | <janus> | araheal: but how do you know you were already using gregorian? the Day doesn't say that it is using that internally |
2021-06-13 06:04:27 +0200 | <monochrom> | But I can be talked into "you were right to join computer science instead, CS grad student day starts at 4PM" |
2021-06-13 06:04:27 +0200 | <arahael> | janus: Because I'm typing in the ****'ing date myself in gregorigan! :) |
2021-06-13 06:04:47 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 06:04:59 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 252 seconds) |
2021-06-13 06:05:22 +0200 | <janus> | arahael: but how? the Day constructor takes a ModifiedJulianDay |
2021-06-13 06:05:40 +0200 | pe200012 | (~pe200012@183.63.73.36) (Ping timeout: 272 seconds) |
2021-06-13 06:05:44 +0200 | <arahael> | janus: Yes. Perhaps I should have just ignored hackage and read the source code myself. |
2021-06-13 06:06:01 +0200 | <janus> | so if you're typing a iso8601 and parsing that, you're only using gregorian because that is what iso8601 uses. but when you got your Day, you forgot about the fact that it was ever a gregorian |
2021-06-13 06:06:47 +0200 | <arahael> | janus: Yeah, well, I didn't have my Day, I had a LocalTime. |
2021-06-13 06:07:25 +0200 | derelict | (~derelict@user/derelict) (Ping timeout: 272 seconds) |
2021-06-13 06:08:18 +0200 | <arahael> | janus: And Day is documented in a completely different place. :) I was wondering: "Do I need to convert this to a UnixTime?". |
2021-06-13 06:09:38 +0200 | <arahael> | janus: I also checked stackoverflow and other places, look at how much *code* is in https://stackoverflow.com/questions/4174372/haskell-date-parsing-and-formatting |
2021-06-13 06:11:17 +0200 | <arahael> | Do we have a wiki or something where we consolidate all this documentation so that it's clearer to navigate/ |
2021-06-13 06:11:19 +0200 | <arahael> | ? |
2021-06-13 06:11:41 +0200 | <janus> | there is wiki, it is easy to get a user |
2021-06-13 06:11:49 +0200 | <janus> | or you can just send me some content and i can make a page for you |
2021-06-13 06:12:26 +0200 | <janus> | you can also ask an SO question and answer it yourself, i kinda like that model |
2021-06-13 06:14:23 +0200 | <arahael> | Perhaps I should think about doing a decent tutorial on the wiki. |
2021-06-13 06:14:31 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Ping timeout: 272 seconds) |
2021-06-13 06:15:02 +0200 | ubikium | (~ubikium@2400:2200:3f1:982e:b73d:c88d:7f8e:831b) |
2021-06-13 06:16:02 +0200 | <Cale> | arahael: Yeah, the time library is actually really good and has most of what you'd ever need, but it takes a moment to get used to :) |
2021-06-13 06:16:28 +0200 | <janus> | arahael: there is also a wikibook on haskell, you could add a chapter |
2021-06-13 06:16:40 +0200 | <arahael> | janus: Another possibility. |
2021-06-13 06:16:53 +0200 | <arahael> | Cale: Yeah, it's definitely not easy to dive in and see everything. |
2021-06-13 06:17:50 +0200 | <janus> | check out this diagram https://wiki.haskell.org/File:Time-diagram.png |
2021-06-13 06:17:59 +0200 | reumeth | (~reumeth@user/reumeth) |
2021-06-13 06:18:49 +0200 | <davean> | I don't think that diagram is quite right |
2021-06-13 06:19:07 +0200 | <janus> | looks weird with "Day - Day" not being Void :P |
2021-06-13 06:19:21 +0200 | <arahael> | janus: The best thing about that particular diagram is the "The following pages link to this file:", bringing up the Time docs. |
2021-06-13 06:19:31 +0200 | thelounge92 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) |
2021-06-13 06:19:34 +0200 | <arahael> | janus: All my searching was focused on either date, or datetime! |
2021-06-13 06:19:42 +0200 | <arahael> | Those time docs are quite good. |
2021-06-13 06:19:58 +0200 | <davean> | Pretty sure that diagram screws up the relation between AbsoluteTime and UTCTime janus |
2021-06-13 06:20:18 +0200 | <janus> | i wouldn't call them docs on the wiki :P i mean, the diagram is on there |
2021-06-13 06:20:40 +0200 | <janus> | would suck to make a library only for someone to make a bad diagram , put it on the wiki page, and now people tell you that your docs suck :P |
2021-06-13 06:21:14 +0200 | <janus> | davean: thanks for the pointers! a shame, i like diagrams :P |
2021-06-13 06:21:22 +0200 | <arahael> | janus: The back link is docs. :) |
2021-06-13 06:21:37 +0200 | <arahael> | janus: https://wiki.haskell.org/Time |
2021-06-13 06:22:18 +0200 | <davean> | janus: there is a function AbsoluteTime -> UTCTime but no map UTCTime -> AbsoluteTime specificly |
2021-06-13 06:22:24 +0200 | <janus> | but documentation written mostly by Russell O'Connor in 2013. when people say "docs" don't they usually talk about the official ones? |
2021-06-13 06:22:42 +0200 | tomsmeding | (~tomsmedin@2a03:b0c0:0:1010::767:3001) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-06-13 06:23:20 +0200 | <davean> | janus: Some UTCTimes map to multiple AbsoluteTimes |
2021-06-13 06:23:29 +0200 | <davean> | since UTCTime isn't monotonic |
2021-06-13 06:24:24 +0200 | <janus> | why is UTC not monotonic? because of leap seconds? |
2021-06-13 06:24:27 +0200 | Morrow_ | (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-13 06:24:29 +0200 | <davean> | janus: yes |
2021-06-13 06:24:41 +0200 | <davean> | which can go forward or backwards, so UTCTime repeats |
2021-06-13 06:25:00 +0200 | <janus> | i wish there was a name for UTC-with-time-smearing? |
2021-06-13 06:25:10 +0200 | <davean> | I mean just use AbsoluteTime |
2021-06-13 06:25:13 +0200 | <davean> | TAI is pretty easy |
2021-06-13 06:25:21 +0200 | <davean> | And its far more correct |
2021-06-13 06:25:37 +0200 | <davean> | UTCTime is for display to humans |
2021-06-13 06:25:45 +0200 | <davean> | computers should always just use time in TAI |
2021-06-13 06:26:09 +0200 | <arahael> | janus: At this point, I'd have been happy with *any* docs. The hackage modules barely refer to each other except when they happen to use a type in another module. |
2021-06-13 06:26:49 +0200 | <janus> | davean: ok, but in practice, if they don't use TAI , and they use UTC with time smearing, wouldn't it be easier to invent a new correct name for this variant, instead of rewriting everything to use TAI? |
2021-06-13 06:27:03 +0200 | <davean> | janus: smearing varies |
2021-06-13 06:27:06 +0200 | <davean> | so no, it wouldn't |
2021-06-13 06:27:12 +0200 | MorrowM | (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 272 seconds) |
2021-06-13 06:27:12 +0200 | <davean> | smearing is a huge mess |
2021-06-13 06:27:21 +0200 | <davean> | So I just check the time at the time, and convert into TAI |
2021-06-13 06:27:30 +0200 | <davean> | computers DO keep a monotonic clock |
2021-06-13 06:27:35 +0200 | <davean> | since they can't possibly keep UTC correctly |
2021-06-13 06:27:43 +0200 | <davean> | so I just access the monotonic clock, and get TAI out |
2021-06-13 06:28:43 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-13 06:28:54 +0200 | <janus> | "TAI clock, if it exists. Note that it is unlikely to be set correctly, without due care and attention." |
2021-06-13 06:28:57 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 272 seconds) |
2021-06-13 06:28:58 +0200 | <janus> | from https://hackage.haskell.org/package/time-1.12/docs/Data-Time-Clock-TAI.html |
2021-06-13 06:29:18 +0200 | <davean> | sure, which is why I use https://hackage.haskell.org/package/tai instead of time |
2021-06-13 06:29:33 +0200 | <janus> | oh my |
2021-06-13 06:29:39 +0200 | <davean> | That deals with the system details |
2021-06-13 06:29:51 +0200 | <janus> | oh it's your own library :D |
2021-06-13 06:29:54 +0200 | <davean> | Yes |
2021-06-13 06:29:59 +0200 | <davean> | I've dealt with the time issues a lot |
2021-06-13 06:30:16 +0200 | <janus> | space traveller? |
2021-06-13 06:30:34 +0200 | <glguy> | aren't we all? |
2021-06-13 06:30:35 +0200 | <davean> | as I said, the systems use mononic time, rarely TAI |
2021-06-13 06:30:42 +0200 | <davean> | they present UTCTime |
2021-06-13 06:30:57 +0200 | <davean> | You just have to align them |
2021-06-13 06:31:07 +0200 | <davean> | janus: a second is a huge amount of time |
2021-06-13 06:31:17 +0200 | <davean> | a smeared second causes a TON of issues |
2021-06-13 06:31:34 +0200 | <arahael> | A second is long enough to crash all the eftpos terminals in my state. :) |
2021-06-13 06:31:49 +0200 | <davean> | it might be mononic and continuous but it either drops a second or packs two times as much in |
2021-06-13 06:31:56 +0200 | justBull | (~justache@user/justache) (Excess Flood) |
2021-06-13 06:31:59 +0200 | <davean> | arahael: right, a second is a big deal :) |
2021-06-13 06:32:42 +0200 | <janus> | but isn't the whole point of time smearing that it is smeared out over such a long period that the delta will never grow close to a second? |
2021-06-13 06:32:45 +0200 | justBull | (~justache@user/justache) |
2021-06-13 06:32:49 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 06:32:52 +0200 | <davean> | janus: depends on the smearing |
2021-06-13 06:32:56 +0200 | <davean> | so ... no |
2021-06-13 06:33:04 +0200 | <davean> | as I said, theres no specific smearing |
2021-06-13 06:33:05 +0200 | <arahael> | davean: Yep, I just get sad at how it comes as a huge surprise even now, if the system depends on sub-second precision, why don't they do it properly? :( |
2021-06-13 06:33:17 +0200 | <arahael> | janus: Sometimes it's smeared over "two" seconds |
2021-06-13 06:33:39 +0200 | <davean> | janus: and even a second smeared over a day is pretty fucking obvious to anyone looking |
2021-06-13 06:33:50 +0200 | <davean> | which isn't want anything does in practice |
2021-06-13 06:34:12 +0200 | <davean> | so yah, mostly you get rediculous errors if you deal with UTCTime |
2021-06-13 06:34:49 +0200 | arahael | now finally has 'the xth day". |
2021-06-13 06:34:58 +0200 | <arahael> | So... Now for the month! Another timesink! |
2021-06-13 06:35:25 +0200 | <arahael> | Of course, I could simply write a 12-case switch, but blegh. This has surely been done. |
2021-06-13 06:35:57 +0200 | <davean> | arahael: most people don't care to do their jobs well? I mean thats how people got in this situation in the first place |
2021-06-13 06:36:13 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-13 06:36:56 +0200 | <arahael> | davean: The big problem is when responsibilities overlap or are split out. Collobrating with other components in your organisation about some technical issue that only happens maybe for a *second* once or twice every other year is a pretty big ask for many businesses. |
2021-06-13 06:38:10 +0200 | HarveyPwca | (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) (Quit: Leaving) |
2021-06-13 06:38:34 +0200 | <davean> | arahael: I mean they had to have a pretty big fundimental flaw to get there in the first place |
2021-06-13 06:38:39 +0200 | <davean> | arahael: sure its hard to fix AFTER |
2021-06-13 06:39:22 +0200 | <arahael> | davean: I'm convinced it's related to not only being a bit lazy, but also due to how software systems are partitioned today. |
2021-06-13 06:39:35 +0200 | <arahael> | (In the organisations) |
2021-06-13 06:39:47 +0200 | <arahael> | Ie, this is not just a technical issue, but also a social one. |
2021-06-13 06:40:00 +0200 | <janus> | davean: your library needs a base bump to work on ghc 9, btw |
2021-06-13 06:40:26 +0200 | <davean> | janus: lol, so I can't actually verify it on GHC 9 ATM because of package issues with GHC 9! |
2021-06-13 06:40:36 +0200 | <davean> | janus: so uh, no, it doesn't need a bump :( |
2021-06-13 06:40:48 +0200 | <janus> | :( |
2021-06-13 06:40:50 +0200 | <davean> | I have to wait for the ecosystem to percolate |
2021-06-13 06:41:01 +0200 | davean | shakes fist at sky |
2021-06-13 06:41:25 +0200 | <janus> | huge amount of broken packages, just submitted 4 bump requests last week on the trustees tracker |
2021-06-13 06:41:50 +0200 | <davean> | yah, there were a few issues, unrelated to GHC, that made the 9 transition difficult |
2021-06-13 06:41:51 +0200 | arahael | uses formatTime to get the month name out. |
2021-06-13 06:42:26 +0200 | <davean> | janus: for MOST configurations I think jail breaking it is fine |
2021-06-13 06:42:47 +0200 | <davean> | janus: I just wasn't going to bump it until it was actually passing tests properly |
2021-06-13 06:42:54 +0200 | <davean> | (across all targets, etc) |
2021-06-13 06:48:54 +0200 | kiweun | (~sheepduck@2607:fea8:2a61:4800::ea20) (Ping timeout: 264 seconds) |
2021-06-13 06:50:12 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) (Remote host closed the connection) |
2021-06-13 06:53:58 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 06:55:06 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Client Quit) |
2021-06-13 06:56:33 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 07:04:15 +0200 | alx741 | (~alx741@181.196.69.243) (Quit: alx741) |
2021-06-13 07:07:42 +0200 | da39a3ee_ | (~textual@171.6.243.223) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 07:09:48 +0200 | renzhi | (~xp@modemcable070.17-177-173.mc.videotron.ca) (Ping timeout: 252 seconds) |
2021-06-13 07:14:46 +0200 | MQ-17J | (~MQ-17J@8.21.10.116) |
2021-06-13 07:15:27 +0200 | nerdypepper | (~nerdypepp@152.67.162.71) |
2021-06-13 07:27:13 +0200 | ec_ | (~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds) |
2021-06-13 07:30:42 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-13 07:44:18 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) |
2021-06-13 07:47:34 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) |
2021-06-13 07:47:53 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2021-06-13 07:48:51 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) |
2021-06-13 07:49:18 +0200 | aerona | (~aerona@2600:6c54:4600:f300:6de7:8f27:ad87:4107) (Quit: Leaving) |
2021-06-13 07:51:36 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
2021-06-13 07:52:03 +0200 | Morrow_ | (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 272 seconds) |
2021-06-13 07:52:25 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 245 seconds) |
2021-06-13 07:53:42 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) (Ping timeout: 264 seconds) |
2021-06-13 07:54:18 +0200 | haskl | (~haskeller@2601:643:897f:561d::af3) (Ping timeout: 264 seconds) |
2021-06-13 07:55:50 +0200 | anandprabhu | (~anandprab@87.201.97.214) |
2021-06-13 08:01:44 +0200 | Bartosz | (~textual@24.35.90.211) |
2021-06-13 08:03:40 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-06-13 08:04:07 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 08:05:00 +0200 | Adran | (adran@botters/adran) (Quit: Este é o fim.) |
2021-06-13 08:11:10 +0200 | benin036 | (~benin@183.82.176.84) (Ping timeout: 245 seconds) |
2021-06-13 08:11:29 +0200 | benin036 | (~benin@183.82.176.166) |
2021-06-13 08:12:00 +0200 | MQ-17J | (~MQ-17J@8.21.10.116) (Remote host closed the connection) |
2021-06-13 08:12:16 +0200 | Adran | (~adran@botters/adran) |
2021-06-13 08:12:16 +0200 | MQ-17J | (~MQ-17J@8.21.10.116) |
2021-06-13 08:15:21 +0200 | haskl | (~haskeller@2601:643:897f:561d::af3) |
2021-06-13 08:16:12 +0200 | adios | (~adios@244.92.151.186.static.intelnet.net.gt) |
2021-06-13 08:21:56 +0200 | bontaq | (~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 252 seconds) |
2021-06-13 08:27:12 +0200 | Bartosz | (~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 08:31:09 +0200 | amahl | (~amahl@dxv5skyhc49fswhfjlcpy-3.rev.dnainternet.fi) |
2021-06-13 08:34:22 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) () |
2021-06-13 08:34:33 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) |
2021-06-13 08:37:49 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) |
2021-06-13 08:40:25 +0200 | qbt | (~edun@user/edun) |
2021-06-13 08:40:25 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-13 08:40:38 +0200 | xff0x | (~xff0x@2001:1a81:53bf:ae00:b6fb:e579:3973:61d4) (Ping timeout: 252 seconds) |
2021-06-13 08:40:58 +0200 | zmt00 | (~zmt00@user/zmt00) (Quit: Gone.) |
2021-06-13 08:42:38 +0200 | xff0x | (~xff0x@2001:1a81:53da:9800:7857:139c:679e:1591) |
2021-06-13 08:47:47 +0200 | sheepduck | (~sheepduck@2607:fea8:2a61:4800::ea20) (Ping timeout: 252 seconds) |
2021-06-13 08:48:44 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) |
2021-06-13 08:49:58 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2021-06-13 08:50:23 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) |
2021-06-13 08:54:02 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2021-06-13 08:54:22 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) |
2021-06-13 08:58:42 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Ping timeout: 252 seconds) |
2021-06-13 09:00:07 +0200 | matsurago | (~matsurago@nttkyo1618187.tkyo.nt.ngn.ppp.infoweb.ne.jp) |
2021-06-13 09:01:05 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) |
2021-06-13 09:02:00 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
2021-06-13 09:02:57 +0200 | sheepduck | (~sheepduck@cpe98524a8cef7c-cm98524a8cef7a.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2021-06-13 09:03:01 +0200 | xff0x | (~xff0x@2001:1a81:53da:9800:7857:139c:679e:1591) (Ping timeout: 268 seconds) |
2021-06-13 09:04:49 +0200 | xff0x | (~xff0x@2001:1a81:53da:f000:a10f:4223:ab2e:3175) |
2021-06-13 09:05:06 +0200 | ubikium | (~ubikium@2400:2200:3f1:982e:b73d:c88d:7f8e:831b) (Ping timeout: 264 seconds) |
2021-06-13 09:05:21 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) |
2021-06-13 09:09:09 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 09:11:33 +0200 | haskl | (~haskeller@2601:643:897f:561d::af3) (Remote host closed the connection) |
2021-06-13 09:11:50 +0200 | haskl | (~haskeller@2601:643:897f:561d::af3) |
2021-06-13 09:13:32 +0200 | haskl | (~haskeller@2601:643:897f:561d::af3) (Remote host closed the connection) |
2021-06-13 09:13:49 +0200 | haskl | (~haskeller@2601:643:897f:561d:f1b9:73f1:b827:9693) |
2021-06-13 09:14:29 +0200 | nerdypepper | (~nerdypepp@152.67.162.71) (Changing host) |
2021-06-13 09:14:29 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) |
2021-06-13 09:19:22 +0200 | notzmv | (~zmv@user/notzmv) |
2021-06-13 09:21:56 +0200 | <maerwald> | is there a function to get a temporary filename (without creating it)? |
2021-06-13 09:22:11 +0200 | wonko | (~wjc@62.115.229.50) |
2021-06-13 09:27:11 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 09:30:43 +0200 | xff0x | (~xff0x@2001:1a81:53da:f000:a10f:4223:ab2e:3175) (Ping timeout: 272 seconds) |
2021-06-13 09:32:01 +0200 | xff0x | (~xff0x@2001:1a81:53db:5a00:806f:9a3:56a7:aca6) |
2021-06-13 09:35:50 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) (Remote host closed the connection) |
2021-06-13 09:36:19 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) |
2021-06-13 09:41:45 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) (Remote host closed the connection) |
2021-06-13 09:42:39 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) |
2021-06-13 09:42:42 +0200 | amahl | (~amahl@dxv5skyhc49fswhfjlcpy-3.rev.dnainternet.fi) (Remote host closed the connection) |
2021-06-13 09:44:25 +0200 | xff0x | (~xff0x@2001:1a81:53db:5a00:806f:9a3:56a7:aca6) (Ping timeout: 244 seconds) |
2021-06-13 09:45:12 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 09:45:37 +0200 | zaquest | (~notzaques@5.128.210.178) (Quit: Leaving) |
2021-06-13 09:46:13 +0200 | xff0x | (~xff0x@2001:1a81:53db:9400:2ec8:4cb:1537:c74) |
2021-06-13 09:46:53 +0200 | Peng7 | (~Peng@188.233.111.108) |
2021-06-13 09:46:53 +0200 | <Peng7> | /!\ THΙЅ СΗANΝEⅬ ᎻAS МⲞVΕⅮ ТO IRϹ.LIBEᎡА.CዘAᎢ #HᎪΜᖇΑᎠIⲞ ⁄!\ |
2021-06-13 09:46:53 +0200 | Peng7 | (~Peng@188.233.111.108) (K-Lined) |
2021-06-13 09:48:04 +0200 | <Rembane_> | maerwald: Do you want the name but not the file? |
2021-06-13 09:48:36 +0200 | <maerwald> | Rembane_: yeah |
2021-06-13 09:48:58 +0200 | <maerwald> | I want the juice, not the fruit |
2021-06-13 09:49:06 +0200 | <Rembane_> | maerwald: Do you care at all about the shape of the name? Can it be ugly? |
2021-06-13 09:49:21 +0200 | <maerwald> | it has to be *valid* |
2021-06-13 09:49:28 +0200 | <maerwald> | which isn't that easy on windows |
2021-06-13 09:49:41 +0200 | <maerwald> | otherwise you run it through `makeValid` |
2021-06-13 09:50:03 +0200 | <Rembane_> | Are dashes valid in file names on Windows? Because if they are, you could generate an UUID that's a function of time. |
2021-06-13 09:50:18 +0200 | <Rembane_> | And if they aren't, you could still use an UUID but remove the dashes. |
2021-06-13 09:50:58 +0200 | poljar1 | (~poljar@93-139-36-109.adsl.net.t-com.hr) |
2021-06-13 09:51:01 +0200 | <Vq> | Is going beyond 8+3 filenames still an extension? Could be tricky with so short filenames. |
2021-06-13 09:52:22 +0200 | poljar | (~poljar@93-139-68-198.adsl.net.t-com.hr) (Ping timeout: 265 seconds) |
2021-06-13 09:56:50 +0200 | <maerwald> | filename length is a problem on windows |
2021-06-13 09:57:36 +0200 | <Rembane_> | Is 8+3 still the max length? |
2021-06-13 09:57:54 +0200 | <maerwald> | that depends on the path length of the temporary system directory |
2021-06-13 09:59:32 +0200 | <Rembane_> | That's way too exciting. |
2021-06-13 10:02:02 +0200 | <xsperry> | Rembane_, 260 should be safe (IIRC there's a way to go beyond that, but it requires registry tweaks). https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-vds/9d39e835-514b-4308-a3f9-d4a6cb… |
2021-06-13 10:02:19 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 10:04:39 +0200 | <xsperry> | of course that's the whole path, there's no specific length limit for filename alone AFAIK |
2021-06-13 10:05:04 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-06-13 10:06:16 +0200 | jasonm | (~bc817c21@217.29.117.252) |
2021-06-13 10:06:38 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 244 seconds) |
2021-06-13 10:07:03 +0200 | fendor_ | fendor |
2021-06-13 10:07:39 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-06-13 10:07:40 +0200 | BosonCollider | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 10:08:00 +0200 | <jasonm> | hi. is there a scanf equivalent for haskell? that takes an actual string. there's scanf, but it works with template haskell |
2021-06-13 10:08:27 +0200 | <jasonm> | (I'm working with config files that, among other things, includes user supplied scanf string) |
2021-06-13 10:08:30 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 10:08:54 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 10:08:55 +0200 | <Rembane_> | jasonm: There's a bad one because you throw all type safety out of the window. |
2021-06-13 10:08:55 +0200 | mikoto-c1 | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-13 10:09:28 +0200 | <Rembane_> | jasonm: Nevermind, I mixed it up with printf. |
2021-06-13 10:09:40 +0200 | <[exa]> | jasonm: using attoparsec is usually faster and much more convenient |
2021-06-13 10:10:04 +0200 | <jasonm> | [exa], but I'd have to rewrite scanf basically |
2021-06-13 10:10:23 +0200 | <[exa]> | do you have user-specified format strings or something? |
2021-06-13 10:10:33 +0200 | <jasonm> | yes, I actually said that above :) |
2021-06-13 10:10:34 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 252 seconds) |
2021-06-13 10:10:41 +0200 | <[exa]> | ah sorry I just kinda arrived :D |
2021-06-13 10:11:38 +0200 | <[exa]> | hm, like, okay, that's hard |
2021-06-13 10:12:18 +0200 | <[exa]> | what would be the higher purpose? |
2021-06-13 10:12:21 +0200 | <jasonm> | np. can scanf package work with strings? this is an example from their page: scanf [fmt|Hello %s|] "Hello world!" :: Maybe (String :+ ()) |
2021-06-13 10:12:40 +0200 | <nshepperd> | you might need to write your own scanf |
2021-06-13 10:12:42 +0200 | <jasonm> | I am working with a config file that, among other things, includes scanf string |
2021-06-13 10:12:43 +0200 | <Rembane_> | How much work is it to map the scanf "commands" to some series of attoparsec combinators? |
2021-06-13 10:12:55 +0200 | <nshepperd> | either that or call out to C. if you need compatibility |
2021-06-13 10:14:12 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 10:15:01 +0200 | <[exa]> | jasonm: what would happen if the user attempts buffer overflow by specifying "%d%d%d%d%d%d.........." ? |
2021-06-13 10:16:47 +0200 | <jasonm> | bad things.. they assume cooperation of the user. that's why it be better if there was a pure haskell version, i'd get a nice error instead of memory corruption or segfault |
2021-06-13 10:18:43 +0200 | <aerkenemesis> | jasonm I would use FFI for that |
2021-06-13 10:19:07 +0200 | <maerwald> | Can you tell stack to use a different msys2? |
2021-06-13 10:19:17 +0200 | tomsmeding | (~tomsmedin@tomsmeding.com) |
2021-06-13 10:21:08 +0200 | <siers> | how do people usually represent that only As are present in a list if you have data D = A | B? |
2021-06-13 10:22:03 +0200 | <siers> | ah, there's even no A type like in scala, so you can't use that for a phantom type. so perhaps this is not a good question then |
2021-06-13 10:22:04 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-06-13 10:22:23 +0200 | <Rembane_> | siers: What's the problem you really are trying to solve? |
2021-06-13 10:22:47 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-06-13 10:23:08 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-06-13 10:23:16 +0200 | <jasonm> | D is a type, A is one of two possible values of D |
2021-06-13 10:23:17 +0200 | <siers> | Rembane_, I have history with two entries and I want to filter and store only "A"s. If I use the D type, I will later have to make a function that handles the two cases though I care only about one. |
2021-06-13 10:23:45 +0200 | <siers> | I guess I can move all of A's data into its own data and then D will only represent the discrimination |
2021-06-13 10:24:02 +0200 | <jasonm> | your type is equivalent to data Bool = True | False |
2021-06-13 10:24:12 +0200 | <Rembane_> | siers: Something like: filter (\case; A -> True; _ -> False) [{- list of As and Bs -}] |
2021-06-13 10:24:55 +0200 | <siers> | I'd never seen an inline case, cool |
2021-06-13 10:25:18 +0200 | <tomsmeding> | if you want type-level evidence of having only A's in a list, you need to reflect the information of "being A" on the type level |
2021-06-13 10:25:21 +0200 | <Rembane_> | You need to activate LambdaCase, but it's worth it imo |
2021-06-13 10:25:40 +0200 | TheRAt | TheRAt_AWAY |
2021-06-13 10:25:42 +0200 | TheRAt_AWAY | TheRAt |
2021-06-13 10:25:57 +0200 | <tomsmeding> | e.g. data D a where A :: D 'True ; B :: D 'False -- where I'm using DataKinds so that 'a' has kind Bool |
2021-06-13 10:26:29 +0200 | <tomsmeding> | then a list of D 'True can contain only As, but you can't have a list of whatevers anymore |
2021-06-13 10:26:35 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 10:26:37 +0200 | <maerwald> | tomsmeding: yes... and in the end you'll still write your own filter function that just happens to then manipulate the types, which is one of those instances where I find type level programming pointless |
2021-06-13 10:26:42 +0200 | <maerwald> | because you can still mess up |
2021-06-13 10:26:52 +0200 | <tomsmeding> | but you can't mess up here? |
2021-06-13 10:26:58 +0200 | <tomsmeding> | you can't stuff a B in a list of D 'True |
2021-06-13 10:27:51 +0200 | <siers> | maerwald, and also you won't have to handle the cases when consuming |
2021-06-13 10:28:08 +0200 | <tomsmeding> | you do still have to write your own filter function, but aside from skipping items / putting them in the wrong order (which the types do not prohibit), you can't put items in the wrong list |
2021-06-13 10:28:18 +0200 | <maerwald> | siers: you convert to a different type then |
2021-06-13 10:28:44 +0200 | <siers> | tomsmeding, pretty cool, that was kind of what I was looking for |
2021-06-13 10:28:49 +0200 | <tomsmeding> | which is equivalent, I guess? having my GADT or instead two data types is kind of the same thing with different syntax |
2021-06-13 10:29:19 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-06-13 10:29:26 +0200 | <siers> | maerwald, I was thinking that is the saner of options |
2021-06-13 10:29:30 +0200 | <tomsmeding> | siers: if you want a list of "either A or B", with my GADT you now have to do wrap them though |
2021-06-13 10:29:55 +0200 | <siers> | maerwald, I still want to know what's the alternative, crazier solution :) |
2021-06-13 10:30:00 +0200 | <tomsmeding> | data Some f where Some :: f a -> Some f -- or alternatively, same meaning different syntax: data Some f = forall a. Some (f a) |
2021-06-13 10:30:04 +0200 | <tomsmeding> | or use: |
2021-06-13 10:30:05 +0200 | <tomsmeding> | @hackage some |
2021-06-13 10:30:05 +0200 | <lambdabot> | https://hackage.haskell.org/package/some |
2021-06-13 10:31:03 +0200 | __monty__ | (~toonn@user/toonn) |
2021-06-13 10:31:33 +0200 | <tomsmeding> | which makes Some a newtype using some unsafeCoerce magic |
2021-06-13 10:32:46 +0200 | <tomsmeding> | siers: to answer your original question, I guess: for most people that's making two datatypes, data A = A and data B = B, and having a function splitD :: [D] -> ([A], [B]) |
2021-06-13 10:32:58 +0200 | <jasonm> | can Some be used to have a list of types that implement some typeclass? |
2021-06-13 10:32:59 +0200 | <tomsmeding> | and for the people that like type-level trickery, the GADT solution that I described |
2021-06-13 10:33:07 +0200 | Rembane_ | Rembane |
2021-06-13 10:33:21 +0200 | <tomsmeding> | jasonm: do you have an example? |
2021-06-13 10:33:47 +0200 | <siers> | "mkSome" :D funny... is Some like a Proxy? I don't yet understand what it does |
2021-06-13 10:34:05 +0200 | MQ-17J | (~MQ-17J@8.21.10.116) (Ping timeout: 245 seconds) |
2021-06-13 10:34:06 +0200 | <tomsmeding> | siers: 'Some Maybe' is a type that contains a 'Maybe a' for some existential 'a' |
2021-06-13 10:34:07 +0200 | <jasonm> | tomsmeding, having a list of Show a => [a], for example. existential types can be used for this |
2021-06-13 10:34:40 +0200 | <tomsmeding> | siers: in this case, with my GADT-based D, you can have a list of 'Some D' where each item is a 'D a' for some existential 'a' -- i.e. either 'True or 'False in this case |
2021-06-13 10:34:45 +0200 | matsurago | (~matsurago@nttkyo1618187.tkyo.nt.ngn.ppp.infoweb.ne.jp) (Quit: Leaving) |
2021-06-13 10:35:06 +0200 | <siers> | tomsmeding, it's starting to make sense |
2021-06-13 10:35:15 +0200 | <siers> | the some part // the D a part is clear |
2021-06-13 10:35:23 +0200 | hmmmas | (~chenqisu1@183.217.200.246) |
2021-06-13 10:35:31 +0200 | <tomsmeding> | it's not like a Proxy in that a Proxy has only a phantom type variable; Some carries data but hides one type variable behind an existential |
2021-06-13 10:37:09 +0200 | <tomsmeding> | but you don't have to use Some for your D; you can also directly write: data SomeD where SomeD :: D a -> SomeD -- or equivalently: data SomeD = forall a. SomeD (D a) |
2021-06-13 10:37:14 +0200 | <siers> | but if TagInt :: Tag Int, then shouldn't Some TagInt be Some Tag? |
2021-06-13 10:37:16 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Remote host closed the connection) |
2021-06-13 10:37:30 +0200 | <tomsmeding> | siers: is TagInt a constructor of a GADT named Tag? |
2021-06-13 10:37:39 +0200 | <maerwald> | tomsmeding: your example requires using a different type... I was thinking of type families |
2021-06-13 10:37:44 +0200 | <tomsmeding> | then yes Some TagInt :: Some Tag |
2021-06-13 10:37:45 +0200 | <siers> | tomsmeding, ah, gotcha |
2021-06-13 10:38:06 +0200 | <siers> | I'm not used to data .. where syntax |
2021-06-13 10:38:40 +0200 | <tomsmeding> | jasonm: (sorry missed your message) no for that you have to write a custom GADT |
2021-06-13 10:39:06 +0200 | <jasonm> | ok |
2021-06-13 10:39:39 +0200 | <tomsmeding> | or, I guess, Some (Product (Has Show) []), where Product is from Data.Functor.Product, and data Has c a where Has :: c a => Has c a |
2021-06-13 10:39:54 +0200 | <tomsmeding> | (using ConstraintKinds to pass a constraint to the type variable 'c' of Has) |
2021-06-13 10:40:06 +0200 | <tomsmeding> | but at that point just write a custom GADT :p |
2021-06-13 10:40:11 +0200 | yoctocell | (~yoctocell@h87-96-130-155.cust.a3fiber.se) |
2021-06-13 10:40:45 +0200 | <tomsmeding> | siers: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/gadt.html?highlight=gadts |
2021-06-13 10:40:51 +0200 | <tomsmeding> | maerwald: I'm not sure I see how? |
2021-06-13 10:42:59 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Remote host closed the connection) |
2021-06-13 10:43:04 +0200 | <siers> | tomsmeding, cool link |
2021-06-13 10:43:17 +0200 | <tomsmeding> | siers: the ghc user's guide is underappreciated |
2021-06-13 10:43:35 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 10:44:42 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:b19b:35e2:2fd0:444d) |
2021-06-13 10:44:46 +0200 | tomsmeding | (~tomsmedin@tomsmeding.com) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-06-13 10:46:06 +0200 | tomsmeding | (~tomsmedin@tomsmeding.com) |
2021-06-13 10:48:09 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-06-13 10:48:09 +0200 | jneira | (~jneira@166.red-81-39-172.dynamicip.rima-tde.net) (Ping timeout: 252 seconds) |
2021-06-13 10:48:28 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Ping timeout: 268 seconds) |
2021-06-13 10:49:31 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 245 seconds) |
2021-06-13 10:50:34 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-06-13 10:53:14 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-06-13 10:54:58 +0200 | fendor_ | (~fendor@77.119.131.227.wireless.dyn.drei.com) |
2021-06-13 10:57:57 +0200 | fendor | (~fendor@91.141.0.106.wireless.dyn.drei.com) (Ping timeout: 264 seconds) |
2021-06-13 11:00:07 +0200 | berberman | (~berberman@user/berberman) |
2021-06-13 11:00:42 +0200 | <maerwald> | tomsmeding: yeah, on second thought... me neither |
2021-06-13 11:01:02 +0200 | <tomsmeding> | :) |
2021-06-13 11:01:30 +0200 | berberman_ | (~berberman@user/berberman) (Ping timeout: 264 seconds) |
2021-06-13 11:02:43 +0200 | neceve | (~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) |
2021-06-13 11:03:06 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 11:06:54 +0200 | xff0x | (~xff0x@2001:1a81:53db:9400:2ec8:4cb:1537:c74) (Ping timeout: 264 seconds) |
2021-06-13 11:07:50 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
2021-06-13 11:08:22 +0200 | xff0x | (~xff0x@2001:1a81:53dc:de00:96fb:36f9:fddc:a0cb) |
2021-06-13 11:08:26 +0200 | hseg | (~gesh@185.120.126.41) |
2021-06-13 11:10:28 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:1da4:ecb3:1c84:7a5a) |
2021-06-13 11:11:07 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-06-13 11:14:00 +0200 | <hseg> | Hi. I want a function :: Semigroup v => (k -> v -> [l]) -> Map k v -> Map l v that replaces all (k,v) pairs in the map by their image, then collects them all, sconcat'ing if there are duplicate keys |
2021-06-13 11:14:13 +0200 | <hseg> | The current way I have of doing this is fromListWith (<>) . toList . traverseWithKey f |
2021-06-13 11:14:50 +0200 | <hseg> | but a) am unsure whether this will fuse away the intermediate list and b) seems like an awkward way of doing things |
2021-06-13 11:14:56 +0200 | <hseg> | am I missing something? |
2021-06-13 11:15:21 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 272 seconds) |
2021-06-13 11:15:46 +0200 | <hseg> | (in fact, this is the unary case of what is actually a parametrized binary op on Maps in my use case) |
2021-06-13 11:16:31 +0200 | <hseg> | (ie convolveF :: (_, Foldable f, Semigroup v) => (i -> j -> f k) -> Map i v -> Map j v -> Map k v |
2021-06-13 11:16:59 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-06-13 11:18:25 +0200 | <tomsmeding> | hseg: that function doesn't seem to typecheck |
2021-06-13 11:18:48 +0200 | <hseg> | bc of the hole in the context? |
2021-06-13 11:19:05 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 245 seconds) |
2021-06-13 11:19:06 +0200 | <c_wraith> | because traverseWithKey is returning a list of maps |
2021-06-13 11:19:43 +0200 | <hseg> | ah oops |
2021-06-13 11:20:52 +0200 | <hseg> | yeah, ig that intermediate toList should be map toList ? |
2021-06-13 11:21:51 +0200 | <hseg> | ... foldMap toList |
2021-06-13 11:21:54 +0200 | <c_wraith> | maybe concatMap? |
2021-06-13 11:22:01 +0200 | <hseg> | concatMap, right |
2021-06-13 11:22:15 +0200 | <hseg> | (though for lists those coincide, right? |
2021-06-13 11:22:24 +0200 | <c_wraith> | yeah, those two are the same in that case |
2021-06-13 11:23:24 +0200 | <c_wraith> | in that case, I can basically guarantee the intermediate lists are not getting fused away |
2021-06-13 11:23:30 +0200 | <hseg> | hrm... a moment, I made a mistake in my type tetris |
2021-06-13 11:23:33 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-06-13 11:23:45 +0200 | <hseg> | (the traversal is modifying the values, not the keys) |
2021-06-13 11:23:58 +0200 | <hseg> | but the general point is clear |
2021-06-13 11:24:31 +0200 | <hseg> | ig that containers doesn't provide a clean, quick way of doing this then? |
2021-06-13 11:24:55 +0200 | <hseg> | and that i need to use monoidal-containers instead? |
2021-06-13 11:24:57 +0200 | <c_wraith> | Not clean, but foldlWithKey' would be efficient. |
2021-06-13 11:25:22 +0200 | <c_wraith> | though it doesn't do a thing for your binary case |
2021-06-13 11:25:48 +0200 | <hseg> | oh well. it's what I get for abusing a container outside its intended use case |
2021-06-13 11:26:25 +0200 | <hseg> | Map k v is meant to be "v-valued container keyed by k", not "v-valuation on k values" |
2021-06-13 11:28:14 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 11:28:25 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-13 11:29:19 +0200 | <hseg> | ... actually, instead of destructing+reconstructing, could just unionsWith (<>) |
2021-06-13 11:29:28 +0200 | <hseg> | so at least there's that |
2021-06-13 11:29:56 +0200 | <tomsmeding> | which is, then, probably the best you'll get |
2021-06-13 11:30:06 +0200 | <hseg> | ... and that's yet another thing Map has that HashMap doesn't *frustration* |
2021-06-13 11:30:12 +0200 | <hseg> | yeah, ig |
2021-06-13 11:31:30 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Ping timeout: 264 seconds) |
2021-06-13 11:32:14 +0200 | azeem | (~azeem@176.201.21.98) |
2021-06-13 11:33:32 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 11:33:45 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-06-13 11:35:17 +0200 | cheater | (~Username@user/cheater) (Quit: (BitchX) A gentleman is one who knows how to play the bagpipes, but chooses not to.) |
2021-06-13 11:38:08 +0200 | <hseg> | ... ok, so the "solution" I began with doesn't even work, since it modifies the values, not the keys |
2021-06-13 11:38:09 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 272 seconds) |
2021-06-13 11:38:29 +0200 | <hseg> | and indeed, I don't see a traversal in containers that permits altering the keys |
2021-06-13 11:38:49 +0200 | <hseg> | like, except mapKeys |
2021-06-13 11:41:10 +0200 | <hseg> | and even with that, I can end up with a Map (f k) v, but with no way of distributing that f over Map |
2021-06-13 11:42:31 +0200 | <tomsmeding> | because in terms of a tree data structure, that operation makes no sense anywah |
2021-06-13 11:42:33 +0200 | <tomsmeding> | *anyway |
2021-06-13 11:43:05 +0200 | <tomsmeding> | you basically can't do better than iterating over the tree and building a new one, which is exactly what the approach that goes via a list does |
2021-06-13 11:43:08 +0200 | <c_wraith> | the binary version is a cartesian product anyway. might as well perform it on lists |
2021-06-13 11:43:33 +0200 | <hseg> | fair. am being myopic |
2021-06-13 11:43:58 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 11:47:29 +0200 | L29Ah | L29Ah[XMPP] |
2021-06-13 11:47:30 +0200 | cheater | (~Username@user/cheater) |
2021-06-13 11:48:44 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Ping timeout: 252 seconds) |
2021-06-13 11:50:03 +0200 | rusua | (uid124537@id-124537.highgate.irccloud.com) |
2021-06-13 11:50:34 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-06-13 11:51:17 +0200 | PotatoGim | (sid99505@id-99505.tooting.irccloud.com) |
2021-06-13 11:51:31 +0200 | azeem | (~azeem@176.201.21.98) (Read error: Connection reset by peer) |
2021-06-13 11:52:35 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) |
2021-06-13 11:53:28 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 11:53:50 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 11:55:14 +0200 | bfrk | (~bfrk@200116b845b21700ca15fbad8d1b9d07.dip.versatel-1u1.de) |
2021-06-13 11:55:49 +0200 | jneira | (~jneira@166.red-81-39-172.dynamicip.rima-tde.net) |
2021-06-13 11:58:33 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-06-13 12:00:21 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 12:00:30 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-06-13 12:01:20 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 12:04:46 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-06-13 12:07:25 +0200 | hulo | (~hulo@182.18.206.5) |
2021-06-13 12:08:26 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 12:08:47 +0200 | hulo | (~hulo@182.18.206.5) () |
2021-06-13 12:14:05 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) (Ping timeout: 245 seconds) |
2021-06-13 12:17:29 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-06-13 12:22:39 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 12:25:10 +0200 | sudden | (~cat@h-98-128-128-173.A351.priv.bahnhof.se) (Quit: Lost terminal) |
2021-06-13 12:25:33 +0200 | sudden | (~cat@h-98-128-128-173.A351.priv.bahnhof.se) |
2021-06-13 12:27:26 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 12:28:45 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 12:30:54 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 265 seconds) |
2021-06-13 12:32:07 +0200 | blankhart | (~blankhart@pool-72-88-174-206.nwrknj.fios.verizon.net) |
2021-06-13 12:35:47 +0200 | gedda | (~gedda@user/gedda) |
2021-06-13 12:36:31 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:1da4:ecb3:1c84:7a5a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 12:36:47 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) |
2021-06-13 12:37:38 +0200 | <gedda> | is there a difference in lazyness in `f foo = case foo of ...` vs pattern matching on foo directly? |
2021-06-13 12:37:53 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 12:38:44 +0200 | <gedda> | oh wow first result on google gave me the answer smh |
2021-06-13 12:40:10 +0200 | <maerwald> | gedda: I don't think so (in this case) |
2021-06-13 12:40:49 +0200 | <aerkenemesis> | I'm looking to discuss CI using nix flakes, so step forward if that's something that floats your boat |
2021-06-13 12:41:12 +0200 | <maerwald> | gedda: but if you're using -XStrict, then yes |
2021-06-13 12:41:30 +0200 | <gedda> | maerwald, apparently pattern matching gets transformed into cases in core, just like if's |
2021-06-13 12:41:39 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-06-13 12:41:48 +0200 | <gedda> | maerwald, interesting, but not -XStrictData i presume? |
2021-06-13 12:42:05 +0200 | <maerwald> | StrictData is something entirely different |
2021-06-13 12:42:33 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 268 seconds) |
2021-06-13 12:42:58 +0200 | <gedda> | Yep, I'm just mixing things up sorry |
2021-06-13 12:43:08 +0200 | <maerwald> | oh wait, no I misread... it's the same for Strict too |
2021-06-13 12:43:25 +0200 | <maerwald> | I was thinking of f = \foo -> case foo of |
2021-06-13 12:43:40 +0200 | <maerwald> | I think that's different under -XStrict than f foo |
2021-06-13 12:44:19 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 12:44:54 +0200 | <gedda> | is -XStrict actually useful in production somewhere? feels like more of a flag for testing purposes |
2021-06-13 12:45:29 +0200 | xkuru | (~xkuru@user/xkuru) |
2021-06-13 12:46:11 +0200 | <maerwald> | gedda: https://github.com/yesodweb/wai/pull/752#issuecomment-501531386 |
2021-06-13 12:49:29 +0200 | bor0 | (~boro@user/bor0) |
2021-06-13 12:50:01 +0200 | <maerwald> | I've started using it in my own projects too... the times it causes problems are rather obvious ones |
2021-06-13 12:50:12 +0200 | <maerwald> | e.g. some monadic combinators |
2021-06-13 12:50:17 +0200 | hmmmas | (~chenqisu1@183.217.200.246) (Quit: Leaving.) |
2021-06-13 12:50:35 +0200 | <maerwald> | and when you want fusion etc. you also don't want it |
2021-06-13 12:51:26 +0200 | <gedda> | yeah i would believe the performance angle is the one that allows for XStrict |
2021-06-13 12:51:38 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Ping timeout: 272 seconds) |
2021-06-13 12:52:27 +0200 | <maerwald> | well, it can worsen performance too |
2021-06-13 12:53:14 +0200 | <maerwald> | but I feel... if you rely on huge performance gain based on the fact that a function argument hides a huge computation... either it's a "combinator" library (like lens) or you're doing something odd |
2021-06-13 12:54:39 +0200 | ubikium | (~ubikium@2400:2200:3f7:8d39:b162:d489:71fa:a323) |
2021-06-13 12:55:06 +0200 | <maerwald> | it might blow up sooner or later anyway |
2021-06-13 12:55:37 +0200 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Quit: brb) |
2021-06-13 12:55:46 +0200 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2021-06-13 12:58:08 +0200 | pe200012 | (~pe200012@120.236.162.19) |
2021-06-13 12:58:29 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-06-13 12:59:12 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) (Quit: bye) |
2021-06-13 13:00:10 +0200 | pkkm | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) |
2021-06-13 13:00:55 +0200 | <maerwald> | anything non-trivial doesn't fuse easily anyway (look at what lengths libraries like streamly have to go to make fusion work... and then it easily breaks with a new GHC version) |
2021-06-13 13:01:38 +0200 | <maerwald> | so I don't buy the "better performance with laziness" argument, because you have to specifically engineer for it |
2021-06-13 13:07:51 +0200 | nf | (~n@monade.li) (Quit: Fairfarren.) |
2021-06-13 13:09:26 +0200 | anandprabhu | (~anandprab@87.201.97.214) (Quit: Leaving) |
2021-06-13 13:10:16 +0200 | nf | (~n@monade.li) |
2021-06-13 13:13:15 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 245 seconds) |
2021-06-13 13:16:21 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 13:18:38 +0200 | sailboat | (uid503239@id-503239.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2021-06-13 13:18:52 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
2021-06-13 13:21:45 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 13:23:15 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) (Ping timeout: 245 seconds) |
2021-06-13 13:24:33 +0200 | xkuru | (~xkuru@user/xkuru) (Ping timeout: 272 seconds) |
2021-06-13 13:24:43 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 13:26:49 +0200 | xkuru | (~xkuru@user/xkuru) |
2021-06-13 13:27:11 +0200 | mjs2600_ | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 252 seconds) |
2021-06-13 13:28:17 +0200 | <int-e> | so @more should no longer produce that embarrassing `init` error... but it's still broken, because it keeps forgetting the history that it is supposed to be replaying |
2021-06-13 13:28:59 +0200 | bramhaag | (~bramhaag@134.195.121.39) (The Lounge - https://thelounge.chat) |
2021-06-13 13:29:05 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
2021-06-13 13:35:45 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 264 seconds) |
2021-06-13 13:41:52 +0200 | bor0 | (~boro@user/bor0) (Quit: Leaving) |
2021-06-13 13:44:29 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 13:45:22 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 13:45:31 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 13:47:57 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 13:49:21 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 13:49:57 +0200 | zebrag | (~chris@user/zebrag) |
2021-06-13 13:50:06 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Ping timeout: 264 seconds) |
2021-06-13 13:51:05 +0200 | Deide | (~Deide@user/deide) |
2021-06-13 13:51:21 +0200 | hseg | (~gesh@185.120.126.41) (Ping timeout: 264 seconds) |
2021-06-13 13:53:32 +0200 | <nitrix> | glguy, Do I have to go through you for the cloak on Libera or the staff? |
2021-06-13 13:53:50 +0200 | <[exa]> | nitrix: join #libera or maybe #libera-cloak |
2021-06-13 13:56:01 +0200 | <nitrix> | I can't join #libera-cloak as I'm already cloak with the user unaffiliated one. |
2021-06-13 13:57:23 +0200 | <nitrix> | Yeah, Libera just confirmed the affiliated cloaks go through the respective groups. |
2021-06-13 13:59:09 +0200 | TheRAt | (~TheRAt@user/therat) (Ping timeout: 264 seconds) |
2021-06-13 14:00:32 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-13 14:00:40 +0200 | <nitrix> | Oh, I just checked my emails, it isn't glguy, sorry for the noise :] |
2021-06-13 14:01:51 +0200 | TheRAt | (~TheRAt@user/therat) |
2021-06-13 14:02:21 +0200 | dhil | (~dhil@195.213.192.47) |
2021-06-13 14:07:37 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
2021-06-13 14:08:33 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-06-13 14:10:33 +0200 | dhil | (~dhil@195.213.192.47) (Ping timeout: 252 seconds) |
2021-06-13 14:12:21 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) |
2021-06-13 14:12:31 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-06-13 14:12:51 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 14:13:26 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:1da4:ecb3:1c84:7a5a) |
2021-06-13 14:14:01 +0200 | Morrow | (~MorrowM_@147.161.8.134) |
2021-06-13 14:15:19 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-06-13 14:15:44 +0200 | Ranhir | (~Ranhir@157.97.53.139) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
2021-06-13 14:15:49 +0200 | mikoto-c1 | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-c1) |
2021-06-13 14:16:04 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-13 14:16:38 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-13 14:16:56 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-06-13 14:19:21 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-13 14:19:46 +0200 | P1RATEZ | (piratez@user/p1ratez) |
2021-06-13 14:22:22 +0200 | Ranhir | (~Ranhir@157.97.53.139) |
2021-06-13 14:23:44 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Quit: leaving) |
2021-06-13 14:24:11 +0200 | wennefer0 | (~wennefer0@c-73-69-143-60.hsd1.ma.comcast.net) |
2021-06-13 14:24:27 +0200 | dhil | (~dhil@80.208.56.181) |
2021-06-13 14:25:48 +0200 | wennefer0 | (~wennefer0@c-73-69-143-60.hsd1.ma.comcast.net) (Client Quit) |
2021-06-13 14:27:14 +0200 | Ranhir | (~Ranhir@157.97.53.139) (Client Quit) |
2021-06-13 14:27:39 +0200 | tremon | (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) |
2021-06-13 14:27:39 +0200 | tremon | tremon_ |
2021-06-13 14:29:27 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) |
2021-06-13 14:31:43 +0200 | Ranhir | (~Ranhir@157.97.53.139) |
2021-06-13 14:32:14 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-13 14:33:33 +0200 | Morrow | (~MorrowM_@147.161.8.134) (Remote host closed the connection) |
2021-06-13 14:33:50 +0200 | Morrow | (~MorrowM_@147.161.8.134) |
2021-06-13 14:37:10 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) |
2021-06-13 14:38:18 +0200 | haltux | (~haltux@a89-154-181-47.cpe.netcabo.pt) (Remote host closed the connection) |
2021-06-13 14:42:12 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2021-06-13 14:46:18 +0200 | Morrow | (~MorrowM_@147.161.8.134) (Ping timeout: 252 seconds) |
2021-06-13 14:46:22 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-06-13 14:46:48 +0200 | leah2 | (~leah@vuxu.org) (Remote host closed the connection) |
2021-06-13 14:46:52 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 14:47:12 +0200 | leah2 | (~leah@vuxu.org) |
2021-06-13 14:51:19 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Ping timeout: 244 seconds) |
2021-06-13 14:51:29 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-06-13 14:58:17 +0200 | sekun | (~sekun@180.190.155.195) (Ping timeout: 272 seconds) |
2021-06-13 14:58:32 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 15:01:16 +0200 | alx741 | (~alx741@181.196.69.243) |
2021-06-13 15:02:04 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
2021-06-13 15:02:53 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 252 seconds) |
2021-06-13 15:04:19 +0200 | delYsid | (~user@62-178-101-151.cable.dynamic.surfer.at) |
2021-06-13 15:04:55 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 245 seconds) |
2021-06-13 15:05:48 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 15:08:00 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 15:09:35 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) |
2021-06-13 15:09:57 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 15:11:26 +0200 | benin0364 | (~benin@183.82.205.8) |
2021-06-13 15:13:29 +0200 | benin036 | (~benin@183.82.176.166) (Ping timeout: 272 seconds) |
2021-06-13 15:13:30 +0200 | benin0364 | benin036 |
2021-06-13 15:13:46 +0200 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
2021-06-13 15:14:43 +0200 | delYsid | (~user@62-178-101-151.cable.dynamic.surfer.at) (Remote host closed the connection) |
2021-06-13 15:14:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 15:15:13 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-06-13 15:26:01 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-13 15:26:06 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 15:26:13 +0200 | xff0x | (~xff0x@2001:1a81:53dc:de00:96fb:36f9:fddc:a0cb) (Ping timeout: 272 seconds) |
2021-06-13 15:27:34 +0200 | xff0x | (~xff0x@2001:1a81:53e1:ab00:45af:7b21:1d2b:3d2e) |
2021-06-13 15:31:13 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 272 seconds) |
2021-06-13 15:33:36 +0200 | pe200012 | (~pe200012@120.236.162.19) (Ping timeout: 252 seconds) |
2021-06-13 15:33:37 +0200 | pe200012_ | (~pe200012@58.248.179.150) |
2021-06-13 15:34:24 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 15:36:50 +0200 | mirko1 | (~mirko@ip1f115d03.dynamic.kabel-deutschland.de) |
2021-06-13 15:37:20 +0200 | mirko1 | (~mirko@ip1f115d03.dynamic.kabel-deutschland.de) () |
2021-06-13 15:38:39 +0200 | Hafydd | (~Hafydd@2001:41d0:305:2100::31aa) (Changing host) |
2021-06-13 15:38:39 +0200 | Hafydd | (~Hafydd@user/hafydd) |
2021-06-13 15:46:54 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-13 15:48:45 +0200 | hseg | (~gesh@185.120.126.41) |
2021-06-13 15:49:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
2021-06-13 15:54:56 +0200 | dhil | (~dhil@80.208.56.181) (Ping timeout: 245 seconds) |
2021-06-13 15:56:40 +0200 | matsurago | (~matsurago@nttkyo1618187.tkyo.nt.ngn.ppp.infoweb.ne.jp) |
2021-06-13 16:00:33 +0200 | jespada | (~jespada@90.254.242.55) (Ping timeout: 252 seconds) |
2021-06-13 16:02:51 +0200 | jespada | (~jespada@90.254.242.55) |
2021-06-13 16:04:36 +0200 | taeaad | (~taeaad@user/taeaad) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
2021-06-13 16:07:11 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) |
2021-06-13 16:11:01 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 16:12:26 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Read error: Connection reset by peer) |
2021-06-13 16:14:09 +0200 | Solarion_ | Solarion |
2021-06-13 16:14:23 +0200 | iridescent | (~iridescen@41337027.cst.lightpath.net) |
2021-06-13 16:14:26 +0200 | <iridescent> | has anyone seen this? https://bitemyapp.com/blog/grokking-sums-and-constructors/ |
2021-06-13 16:14:40 +0200 | <iridescent> | i'm having trouble understanding the point of all of this |
2021-06-13 16:14:56 +0200 | <iridescent> | they're wrapping things with value constructors, but can't you just do the exact same thing without them? |
2021-06-13 16:15:07 +0200 | <iridescent> | definitely missing something, but not sure what it is |
2021-06-13 16:20:03 +0200 | xkuru | (~xkuru@user/xkuru) (Remote host closed the connection) |
2021-06-13 16:20:40 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-06-13 16:23:10 +0200 | thelounge92 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) (Ping timeout: 272 seconds) |
2021-06-13 16:24:30 +0200 | <nitrix> | The article seems to try to introduce some core concepts of the language; it's not really trying to achieve anything special. |
2021-06-13 16:25:19 +0200 | <nitrix> | What is the wrapping you think of and what confuses you? |
2021-06-13 16:26:43 +0200 | <iridescent> | oh hm |
2021-06-13 16:26:46 +0200 | <iridescent> | just like |
2021-06-13 16:26:53 +0200 | <iridescent> | if you don't actually need names for fruits |
2021-06-13 16:27:08 +0200 | <iridescent> | why would you want to have data Apple and data Orange over data Fruit = Apple | Orange |
2021-06-13 16:27:57 +0200 | <nitrix> | Right. I see the confusion now. |
2021-06-13 16:28:05 +0200 | da39a3ee5e6b4b0d | (~textual@2403:6200:8876:2955:1da4:ecb3:1c84:7a5a) (Quit: Textual IRC Client: www.textualapp.com) |
2021-06-13 16:28:52 +0200 | <janus> | if you have them separate, you can use them to parametrize other types |
2021-06-13 16:29:26 +0200 | <janus> | essentially, do you want the distinction at runtime or compile time? |
2021-06-13 16:29:30 +0200 | oxide | (~lambda@user/oxide) |
2021-06-13 16:29:31 +0200 | <nitrix> | iridescent, If you allow me, I think I have an example that makes more sense then theirs to build your intuition. |
2021-06-13 16:29:39 +0200 | <iridescent> | sure why not :) |
2021-06-13 16:29:40 +0200 | adanwan_ | (~adanwan@gateway/tor-sasl/adanwan) |
2021-06-13 16:29:53 +0200 | <iridescent> | also how is this different from dependent types? |
2021-06-13 16:30:03 +0200 | <iridescent> | or is it just a specific instance of that |
2021-06-13 16:30:04 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 252 seconds) |
2021-06-13 16:30:25 +0200 | <nitrix> | iridescent, Haskell has two data types, you can have either product types or sum types. I can explain why they're named this way later, but they conceptually are very close to a struct and a tagged union if you're familiar with those. |
2021-06-13 16:30:26 +0200 | jaevanko | (~jaevanko@2600:1700:1330:2bef:d2ba:7480:75b7:9b34) |
2021-06-13 16:30:40 +0200 | Nixkernal | (~Nixkernal@2a02:1205:34ed:fa00:a5f7:ad7:30d5:9688) |
2021-06-13 16:30:40 +0200 | pe200012_ | (~pe200012@58.248.179.150) (Remote host closed the connection) |
2021-06-13 16:30:44 +0200 | <iridescent> | yeah i get the concept of sum and product types |
2021-06-13 16:31:07 +0200 | pe200012_ | (~pe200012@58.248.179.150) |
2021-06-13 16:31:18 +0200 | <nitrix> | iridescent, So, starting with the product types, a couple examples would be: data Circle = MkCircle Float and data Rectangle = MkRectangle Int Int |
2021-06-13 16:31:49 +0200 | <iridescent> | yep |
2021-06-13 16:32:14 +0200 | <nitrix> | Here, `Circle` and `Rectangle` are the type names, while `MkCircle` and `MkRectangle` are the constructors. They are functions that will accept either a `Float` or two `Int` to eventually create a Circle or a Rectangle. |
2021-06-13 16:32:37 +0200 | hemlock | (~hemlock@ip72-203-188-10.tu.ok.cox.net) |
2021-06-13 16:32:57 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 16:33:19 +0200 | <iridescent> | got it |
2021-06-13 16:33:40 +0200 | <nitrix> | Similarly, you can also have sum types. The syntax is a bit different, the different possible options are separated by a | character. An example would be: data Weekday = Monday | Tuesday | Wednesday | Thirday | Friday. |
2021-06-13 16:34:30 +0200 | <nitrix> | Here, `Monday` is also a constructor, but it doesn't take any argument. Using it immediately creates a `Weekday`. |
2021-06-13 16:35:49 +0200 | <nitrix> | Haskell is said to have algebraic data types, and so, to showcase a bit that "algebra" (which I think is what the article was trying to do), you would combine sum types with product types into a new type. |
2021-06-13 16:35:51 +0200 | ubikium | (~ubikium@2400:2200:3f7:8d39:b162:d489:71fa:a323) (Read error: Connection reset by peer) |
2021-06-13 16:37:13 +0200 | <nitrix> | iridescent, Something like data Shape = TheCircle Circle | TheSquare Square, where `Shape` can be constructed with two different ways, either TheCircle or TheSquare, which accepts a Circle and a Square respectively. |
2021-06-13 16:37:27 +0200 | ubikium | (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) |
2021-06-13 16:37:42 +0200 | bmo | (~bmo@185.254.75.34) |
2021-06-13 16:38:09 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) |
2021-06-13 16:38:40 +0200 | <nitrix> | Does that make sense or I lost you :P ? |
2021-06-13 16:40:47 +0200 | hemlock | (~hemlock@ip72-203-188-10.tu.ok.cox.net) (Quit: Quit) |
2021-06-13 16:41:44 +0200 | bleloch_ | (bleloch@gateway/vpn/protonvpn/bleloch) |
2021-06-13 16:41:50 +0200 | hemlock | (~hemlock@ip72-203-188-10.tu.ok.cox.net) |
2021-06-13 16:42:14 +0200 | <bmo> | What are currently the "best" frameworks (non-static) to write web-applications? It's been a while I used yesod before and servant as well but I wasn't necessarily too convinced of either. |
2021-06-13 16:42:36 +0200 | <bmo> | yesod felt like a very over-kill solution and pretty heavy-weight. |
2021-06-13 16:43:24 +0200 | <bmo> | servant was nice and I liked it quite a bit sometimes, however I recall having to write my own authentication layer which felt wrong |
2021-06-13 16:43:40 +0200 | <bmo> | What do people use nowadays? |
2021-06-13 16:44:39 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-06-13 16:45:20 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 16:46:31 +0200 | pavonia | (~user@user/siracusa) |
2021-06-13 16:47:41 +0200 | derelict | (~derelict@user/derelict) |
2021-06-13 16:48:04 +0200 | <janus> | bmo: i am not sure people that like advanced typing stuff ever stopped using servant |
2021-06-13 16:48:15 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 16:48:37 +0200 | gedda | (~gedda@user/gedda) (Quit: Lost terminal) |
2021-06-13 16:49:26 +0200 | Bartosz | (~textual@24.35.90.211) |
2021-06-13 16:53:41 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-06-13 16:56:37 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 17:01:51 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-13 17:03:04 +0200 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
2021-06-13 17:03:25 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-06-13 17:07:29 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 272 seconds) |
2021-06-13 17:07:32 +0200 | <iridescent> | nitrix: think it makes sense, so basically your last example is like <constructor 1 which can take in a lot of arguments> OR <constructor 2 which can take a lot of argumnets>, and the lots of arguments is the product type |
2021-06-13 17:08:37 +0200 | gentauro | (~gentauro@user/gentauro) |
2021-06-13 17:09:24 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 17:09:33 +0200 | rk04 | (~rk04@user/rajk) |
2021-06-13 17:09:40 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
2021-06-13 17:11:11 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 17:11:29 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
2021-06-13 17:11:33 +0200 | <nitrix> | iridescent, The sum type gives you a choice between multiple values to construct the type. data Foo = A | B | C, there are 3 possible values of type Foo, the A, B and C. |
2021-06-13 17:12:53 +0200 | <nitrix> | iridescent, Product types combines existing types, so data Bar = F Foo Foo, would construct a Bar with two Foo, that's 9 possible values, F A A, F A B, F A C, F B A, F B B, F B C, F C A, F C B, F C C. |
2021-06-13 17:13:34 +0200 | <nitrix> | I guess that's a little hint as to why they're called sum versus product. |
2021-06-13 17:14:09 +0200 | <nitrix> | Sorry, 6 values x] |
2021-06-13 17:14:14 +0200 | <nitrix> | Two Foo with 3 values each, 2 * 3 = 6. |
2021-06-13 17:16:28 +0200 | <nitrix> | As for the sum, if I did data Bar = F1 Foo | F2 Foo, the possible values would be F1 A, F1 B, F1 C, F2 A, F2 B, F2 C, aka sum type, 3 + 3 = 6. |
2021-06-13 17:17:00 +0200 | <nitrix> | I chose a bad example that both arrives to 6, but you can see how the arithmetic is different :P |
2021-06-13 17:17:08 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 17:18:04 +0200 | <iridescent> | yeah |
2021-06-13 17:18:05 +0200 | <iridescent> | i see |
2021-06-13 17:19:15 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) |
2021-06-13 17:19:40 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 17:22:49 +0200 | bhrgunatha | (~bhrgunath@2001-b011-8011-27f4-086a-6ad6-9ae6-0f90.dynamic-ip6.hinet.net) |
2021-06-13 17:23:09 +0200 | fendor_ | fendor |
2021-06-13 17:24:22 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 17:24:34 +0200 | <pavonia> | nitrix: 9 values was correct, it's Foo x Foo |
2021-06-13 17:25:48 +0200 | <nitrix> | Oh, thank god. I was wondering if I was losing it while explaining that, haha. |
2021-06-13 17:25:48 +0200 | tv | (~tv@user/tv) (Read error: Connection reset by peer) |
2021-06-13 17:26:44 +0200 | <nitrix> | So yeah, 3x3=9 vs 3+3=6, as an example of why the product `F Foo Foo` differs from the sum `F1 Foo | F2 Foo`. |
2021-06-13 17:26:53 +0200 | <iridescent> | got it |
2021-06-13 17:27:00 +0200 | <iridescent> | i guess product is like taking combinations |
2021-06-13 17:27:04 +0200 | <nitrix> | Yep. |
2021-06-13 17:27:29 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 17:27:55 +0200 | bleloch_ | (bleloch@gateway/vpn/protonvpn/bleloch) (Remote host closed the connection) |
2021-06-13 17:28:40 +0200 | rk04 | (~rk04@user/rajk) (Ping timeout: 245 seconds) |
2021-06-13 17:28:50 +0200 | <bmo> | janus, thanks for the response. guess I'll stick to servant then, the auth "issue" might turn out to be none as I am free of requirements there |
2021-06-13 17:29:02 +0200 | <nitrix> | And sum would be enumerating things (which could themselves be combinations). |
2021-06-13 17:29:48 +0200 | <nitrix> | It's all very layman, just to give an intuition. |
2021-06-13 17:29:52 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1) |
2021-06-13 17:30:24 +0200 | <iridescent> | yeah i see |
2021-06-13 17:31:15 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
2021-06-13 17:32:12 +0200 | rk04 | (~rk04@user/rajk) |
2021-06-13 17:32:28 +0200 | rk04 | (~rk04@user/rajk) (Client Quit) |
2021-06-13 17:35:02 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) |
2021-06-13 17:35:53 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 17:36:11 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 17:37:04 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-13 17:38:11 +0200 | pe200012_ | (~pe200012@58.248.179.150) (Remote host closed the connection) |
2021-06-13 17:38:37 +0200 | pe200012_ | (~pe200012@120.236.162.19) |
2021-06-13 17:39:43 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 17:39:47 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:d58e:2782:3061:3fa3) (Ping timeout: 268 seconds) |
2021-06-13 17:40:30 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Client Quit) |
2021-06-13 17:40:46 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 17:40:58 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Client Quit) |
2021-06-13 17:41:55 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 17:42:00 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 17:42:10 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Client Quit) |
2021-06-13 17:43:51 +0200 | tv | (~tv@user/tv) |
2021-06-13 17:43:57 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-13 17:45:29 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 17:45:49 +0200 | Guest9 | (~Guest9@103.240.169.98) |
2021-06-13 17:46:33 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 264 seconds) |
2021-06-13 17:47:15 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Ping timeout: 252 seconds) |
2021-06-13 17:49:21 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-06-13 17:50:39 +0200 | aerona | (~aerona@2600:6c54:4600:f300:dd2b:2b3b:fbbd:f67) |
2021-06-13 17:51:29 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 17:52:50 +0200 | zmt00 | (~zmt00@user/zmt00) |
2021-06-13 17:54:21 +0200 | <kaol> | "cabal build all" tells me that things are up to date even though I did changes to a source file. How can I give it a nudge? (Short of rm -rf dist-newstyle.) |
2021-06-13 17:55:08 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) |
2021-06-13 17:56:13 +0200 | <quintasan> | Did anyone manage to produce fully static binary of Scotty + PostgreSQL web app? |
2021-06-13 17:56:53 +0200 | <kaol> | With cabal-install 3.0.0.0. |
2021-06-13 17:57:21 +0200 | Katarushisu | (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Ping timeout: 264 seconds) |
2021-06-13 17:57:23 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer) |
2021-06-13 17:57:44 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 17:57:49 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 17:58:28 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Remote host closed the connection) |
2021-06-13 17:58:43 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-06-13 17:59:02 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 17:59:21 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 17:59:43 +0200 | <quintasan> | kaol: hmm, any details on how to do this? I tried doing that in an alpine container but never managed to get it working due to missing symbols when linking |
2021-06-13 18:00:41 +0200 | Guest9 | (~Guest9@103.240.169.98) (Ping timeout: 272 seconds) |
2021-06-13 18:01:03 +0200 | <kaol> | quintasan: Sorry for the confusion, I wasn't responding you but adding details to my own question. |
2021-06-13 18:01:07 +0200 | Bartosz | (~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 18:01:20 +0200 | <quintasan> | bah, silly me |
2021-06-13 18:01:33 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 252 seconds) |
2021-06-13 18:01:55 +0200 | <quintasan> | kaol: wouldn't touching the file make cabal think it's time to rebuild? |
2021-06-13 18:02:30 +0200 | <geekosaur> | I've found bugs in cabal < 3.4, might want to upgrade it |
2021-06-13 18:02:31 +0200 | <kaol> | Yes, but it's not happening and I'm trying to figure out why. |
2021-06-13 18:03:26 +0200 | Bartosz | (~textual@24.35.90.211) |
2021-06-13 18:07:00 +0200 | BosonCollider | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 245 seconds) |
2021-06-13 18:09:05 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) (Remote host closed the connection) |
2021-06-13 18:09:21 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-13 18:10:00 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-13 18:10:53 +0200 | BosonCollider | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 18:12:01 +0200 | <kaol> | Does new style cabal even look into source files or does it do checking by package versions only? |
2021-06-13 18:12:37 +0200 | bartavelle | (~bartavell@2001:41d0:1:744c::1) () |
2021-06-13 18:13:00 +0200 | alx741 | (~alx741@181.196.69.243) (Quit: alx741) |
2021-06-13 18:13:12 +0200 | <geekosaur> | it looks at source files associated with your project, package versions only for dependencies outside of your project |
2021-06-13 18:13:39 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:4587:6292:4bfd:4d24) |
2021-06-13 18:14:40 +0200 | alx741 | (~alx741@181.196.69.243) |
2021-06-13 18:14:58 +0200 | <kaol> | If I have a cabal.project file at the project root and the change is to a package in a subdirectory, does it see changes to its sources? Is it considered "outside of project" for this? |
2021-06-13 18:16:30 +0200 | <geekosaur> | I think it won't look if it's listed as a dependency, as opposed to being directly part of your project |
2021-06-13 18:18:45 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-06-13 18:18:59 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-06-13 18:19:37 +0200 | <kaol> | I guess I'll just have to reorganize my project and not use packages internally. If that's what it takes to make incremental builds work. |
2021-06-13 18:20:09 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
2021-06-13 18:22:28 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-06-13 18:22:33 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 18:24:50 +0200 | <kaol> | This feels like a step down from using sandboxes. |
2021-06-13 18:28:10 +0200 | <maerwald> | I liked them too |
2021-06-13 18:28:17 +0200 | <maerwald> | it's a clean API |
2021-06-13 18:28:35 +0200 | Guest9 | (~Guest9@103.240.169.98) |
2021-06-13 18:28:37 +0200 | <maerwald> | well... s/API/user interface/ |
2021-06-13 18:28:44 +0200 | allbery_b | (~geekosaur@069-135-003-034.biz.spectrum.com) |
2021-06-13 18:28:54 +0200 | <maerwald> | doesn't cargo do the same still? |
2021-06-13 18:29:50 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds) |
2021-06-13 18:31:30 +0200 | ozataman | (~ozataman@71.190.112.58) |
2021-06-13 18:31:33 +0200 | allbery_b | geekosaur |
2021-06-13 18:31:41 +0200 | <kaol> | I think I'll go with v1 commands for now. I may have to start sending patches if I want to stick to my workflow in a few years. |
2021-06-13 18:33:52 +0200 | econo | (uid147250@user/econo) |
2021-06-13 18:35:17 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-chan) |
2021-06-13 18:35:34 +0200 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) |
2021-06-13 18:35:55 +0200 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) |
2021-06-13 18:43:07 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 272 seconds) |
2021-06-13 18:43:43 +0200 | alanz__ | (~user@host86-135-160-135.range86-135.btcentralplus.com) |
2021-06-13 18:45:33 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 18:47:18 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 18:47:32 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 18:50:14 +0200 | <teaSlurper> | hey |
2021-06-13 18:53:15 +0200 | pe200012_ | (~pe200012@120.236.162.19) (Ping timeout: 272 seconds) |
2021-06-13 18:53:32 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 18:53:47 +0200 | derelict | (~derelict@user/derelict) (Ping timeout: 268 seconds) |
2021-06-13 18:55:38 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-06-13 18:57:07 +0200 | <teaSlurper> | in a haskel, cabal project, what's best way to execute/run individual files? |
2021-06-13 18:57:21 +0200 | <teaSlurper> | right now i have 1 main file under exe folder |
2021-06-13 18:57:32 +0200 | <teaSlurper> | and i used cabal run to execute that |
2021-06-13 18:58:35 +0200 | <Rembane> | teaSlurper: Add another executable section to your cabal file |
2021-06-13 19:00:03 +0200 | Guest71 | (~Guest71@176.232.106.148) |
2021-06-13 19:01:38 +0200 | grepcake | (~artyom@77.234.203.54) |
2021-06-13 19:02:58 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 19:03:15 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2021-06-13 19:05:22 +0200 | Guest71 | (~Guest71@176.232.106.148) () |
2021-06-13 19:06:03 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) |
2021-06-13 19:07:34 +0200 | grepcake | (~artyom@77.234.203.54) (Quit: Konversation terminated!) |
2021-06-13 19:12:25 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 245 seconds) |
2021-06-13 19:13:11 +0200 | carr | (~user@2601:645:4000:db:5c42:3046:45d6:af66) |
2021-06-13 19:13:29 +0200 | iridescent | (~iridescen@41337027.cst.lightpath.net) (Quit: Client closed) |
2021-06-13 19:13:59 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-06-13 19:14:40 +0200 | carr | (~user@2601:645:4000:db:5c42:3046:45d6:af66) () |
2021-06-13 19:15:06 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 19:15:15 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Client Quit) |
2021-06-13 19:15:34 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 19:16:30 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 19:18:21 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: leaving) |
2021-06-13 19:18:29 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 19:18:38 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 19:23:55 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 19:24:08 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
2021-06-13 19:24:28 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: leaving) |
2021-06-13 19:24:34 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 19:24:44 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 19:26:51 +0200 | jasonm | (~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
2021-06-13 19:26:54 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (WeeChat 2.8) |
2021-06-13 19:27:20 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 19:27:23 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 19:27:28 +0200 | fjmorazan_ | fjmorazan |
2021-06-13 19:28:00 +0200 | <sm[m]> | bmo: yesod and servant are still the most popular and probably the best out there - one or the other will be a better fit depending on your needs. |
2021-06-13 19:28:03 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 19:28:03 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 19:28:18 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 19:28:52 +0200 | jumper149 | (~jumper149@80.240.31.34) |
2021-06-13 19:29:17 +0200 | <sm[m]> | though, what do you mean by "non-static" ? If you are building largely client-side apps, miso might be a candidate |
2021-06-13 19:30:01 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-13 19:30:27 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 19:30:28 +0200 | <jumper149> | Hi, is it possible to somehow derive MonadTrans for a newtype over 2 transformers, for example: `newtype MyT m a = MyT (ExceptT String (ReaderT Int m) a) deriving stock (...) deriving MonadTrans via ???` |
2021-06-13 19:32:11 +0200 | aerkenemesis | (~aerkeneme@c83-252-164-58.bredband.tele2.se) (Quit: Client closed) |
2021-06-13 19:32:31 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 272 seconds) |
2021-06-13 19:33:01 +0200 | <geekosaur> | what goes wrong if you just derive it normally with GND? |
2021-06-13 19:33:05 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-06-13 19:33:58 +0200 | <c_wraith> | I don't think you can GND it, because it's two layers |
2021-06-13 19:34:22 +0200 | <c_wraith> | But you can just write the instance by hand, it's literally lift = MyT . lift . lift |
2021-06-13 19:34:32 +0200 | <jumper149> | yeah GND doesn't work here |
2021-06-13 19:34:45 +0200 | <jumper149> | c_wraith: Surely I can, but it would be neet :p |
2021-06-13 19:35:26 +0200 | <jumper149> | I have it in mind for MonadTransControl too. |
2021-06-13 19:35:38 +0200 | <jumper149> | There it's a bit more cumbersome to write instances |
2021-06-13 19:35:55 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-06-13 19:36:04 +0200 | <jumper149> | And this https://hackage.haskell.org/package/monad-control-1.0.2.3/docs/Control-Monad-Trans-Control.html#v:… |
2021-06-13 19:36:11 +0200 | <jumper149> | ^ doesn't work anymore with GHC 9 |
2021-06-13 19:36:16 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 19:36:20 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Client Quit) |
2021-06-13 19:36:21 +0200 | hemlock | (~hemlock@ip72-203-188-10.tu.ok.cox.net) (Ping timeout: 264 seconds) |
2021-06-13 19:36:43 +0200 | <jumper149> | So I was thinking, maybe it's worth to use deriving via |
2021-06-13 19:37:05 +0200 | hemlock | (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) |
2021-06-13 19:40:28 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 19:41:43 +0200 | bhrgunatha | (~bhrgunath@2001-b011-8011-27f4-086a-6ad6-9ae6-0f90.dynamic-ip6.hinet.net) (Quit: Leaving) |
2021-06-13 19:42:01 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 272 seconds) |
2021-06-13 19:42:31 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 19:46:29 +0200 | <jumper149> | I actually just came up with this: http://ix.io/3pQs |
2021-06-13 19:47:13 +0200 | <jumper149> | Would enjoy seeing some opinion on that :) |
2021-06-13 19:47:32 +0200 | ent | (entgod@kapsi.fi) |
2021-06-13 19:49:20 +0200 | derelict | (~derelict@user/derelict) |
2021-06-13 19:50:11 +0200 | matsurago | (~matsurago@nttkyo1618187.tkyo.nt.ngn.ppp.infoweb.ne.jp) (Quit: Leaving) |
2021-06-13 19:52:03 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-13 19:53:11 +0200 | <jumper149> | and it even works for MonadTransControl http://ix.io/3pQu |
2021-06-13 19:54:37 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 19:55:37 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-06-13 19:56:09 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 19:56:10 +0200 | shapr | (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 245 seconds) |
2021-06-13 19:57:44 +0200 | beka | (~beka@104.193.170-244.PUBLIC.monkeybrains.net) |
2021-06-13 19:59:02 +0200 | jaevanko | (~jaevanko@2600:1700:1330:2bef:d2ba:7480:75b7:9b34) (Quit: Leaving) |
2021-06-13 20:03:34 +0200 | evie1 | (~evie@188.27.66.89) (Quit: WeeChat 2.7.1) |
2021-06-13 20:08:37 +0200 | qbt | (~edun@user/edun) (Ping timeout: 272 seconds) |
2021-06-13 20:09:04 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 20:09:19 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 20:12:46 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
2021-06-13 20:13:22 +0200 | Guest9 | (~Guest9@103.240.169.98) (Quit: Connection closed) |
2021-06-13 20:13:53 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-06-13 20:14:17 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-06-13 20:14:36 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-06-13 20:16:23 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 20:20:00 +0200 | charukiewicz_ | charukiewicz |
2021-06-13 20:20:09 +0200 | teaSlurper | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-06-13 20:20:48 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 20:20:54 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 20:24:33 +0200 | wonko | (~wjc@62.115.229.50) |
2021-06-13 20:25:06 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 252 seconds) |
2021-06-13 20:25:11 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-06-13 20:25:11 +0200 | Bartosz | (~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 20:28:02 +0200 | <dminuoso> | jumper149: Why wouldn't it work with GHC 9 anymor |
2021-06-13 20:28:04 +0200 | P1RATEZ | (piratez@user/p1ratez) () |
2021-06-13 20:28:40 +0200 | <dminuoso> | jumper149: Is that even worth it? What are you saving? |
2021-06-13 20:28:43 +0200 | abhixec | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
2021-06-13 20:29:05 +0200 | <dminuoso> | It seems to me handrolling the MonadTrans/MonadTransControl instance is less code and clearer. |
2021-06-13 20:29:24 +0200 | chaosite | (~chaosite@user/chaosite) |
2021-06-13 20:30:46 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 20:30:53 +0200 | <jumper149> | https://github.com/basvandijk/monad-control/issues/52 |
2021-06-13 20:31:30 +0200 | <jumper149> | dminuoso: The reason is simplified subsumption: https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#simplified-subsumption |
2021-06-13 20:31:35 +0200 | <dminuoso> | jumper149: You should be fine with eta-extending it. |
2021-06-13 20:31:54 +0200 | <dminuoso> | The first two arguments, that is. |
2021-06-13 20:32:01 +0200 | <jumper149> | I tried |
2021-06-13 20:32:05 +0200 | <dminuoso> | Both? |
2021-06-13 20:32:12 +0200 | <dminuoso> | Or.. the third actually. Sorry |
2021-06-13 20:32:24 +0200 | <jumper149> | Say exactly what you mean and I'll test it |
2021-06-13 20:32:35 +0200 | <dminuoso> | Try eta-extending each argument. |
2021-06-13 20:33:19 +0200 | <jumper149> | I think the problem lies in the `Run` type alias, which can't be unified with `RunDefault2` |
2021-06-13 20:34:06 +0200 | <jumper149> | dminuoso: I tried pretty hard. But I am not absolutely sure, whether it's really not possible |
2021-06-13 20:34:17 +0200 | <dminuoso> | jumper149: So Im a bit fuzzy on the details, but with the new simplified subsumption, you can make stuff compile again when you eta-expend |
2021-06-13 20:34:26 +0200 | <dminuoso> | I think something along the lines of": |
2021-06-13 20:34:33 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 264 seconds) |
2021-06-13 20:34:40 +0200 | <dminuoso> | liftWith f = defaultLiftWith2 RecolorXT unRecolorXT (\x -> f x) |
2021-06-13 20:36:07 +0200 | jao | (jao@gateway/vpn/protonvpn/jao) |
2021-06-13 20:36:25 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Quit: Leaving) |
2021-06-13 20:37:22 +0200 | <jumper149> | dminuoso: Wow, that actually seems to work |
2021-06-13 20:37:57 +0200 | dan | (~AdminUser@host86-167-185-202.range86-167.btcentralplus.com) |
2021-06-13 20:41:38 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) |
2021-06-13 20:42:58 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 20:43:15 +0200 | dan | (~AdminUser@host86-167-185-202.range86-167.btcentralplus.com) (Ping timeout: 252 seconds) |
2021-06-13 20:43:52 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: leaving) |
2021-06-13 20:43:54 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
2021-06-13 20:44:08 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 20:44:19 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 20:44:44 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 20:44:44 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 20:44:52 +0200 | <jumper149> | dminuoso: Can you explain to me, how you knew, that is the exact place which needed eta-expansion? |
2021-06-13 20:46:32 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:3d39:470:d12f:3be6) |
2021-06-13 20:46:41 +0200 | <dminuoso> | You told me, I just guessed. |
2021-06-13 20:46:49 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 20:47:06 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 20:48:43 +0200 | dhil | (~dhil@80.208.56.181) |
2021-06-13 20:50:20 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-06-13 20:50:46 +0200 | <dminuoso> | jumper149: I actually wonder whether `liftWith f = defaultWithWith2 RecolorXT unRecolorXT f` is even enough |
2021-06-13 20:51:18 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:3d39:470:d12f:3be6) (Ping timeout: 264 seconds) |
2021-06-13 20:51:43 +0200 | <jumper149> | dminuoso: http://ix.io/3pQS |
2021-06-13 20:51:51 +0200 | <jumper149> | ^ That's what you get then |
2021-06-13 20:52:01 +0200 | <dminuoso> | Ah hold on I found the relevant part |
2021-06-13 20:52:11 +0200 | <dminuoso> | https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#simplified-subsumption |
2021-06-13 20:52:15 +0200 | <dminuoso> | This seems to be the second example |
2021-06-13 20:52:20 +0200 | <dminuoso> | f' :: (Eq a, Eq b) => a -> b -> b |
2021-06-13 20:52:23 +0200 | <dminuoso> | g' :: (Eq p => p -> Eq q => q -> q) -> Int |
2021-06-13 20:52:25 +0200 | <dminuoso> | etc |
2021-06-13 20:52:36 +0200 | <jumper149> | hm |
2021-06-13 20:52:38 +0200 | <jumper149> | ? |
2021-06-13 20:53:07 +0200 | <dminuoso> | Like I said, Im a bit fuzzy on the details. I have a very sketchy understanding what deep-skolemnization even is. |
2021-06-13 20:54:02 +0200 | dustingetz | (~textual@pool-173-49-123-198.phlapa.fios.verizon.net) (Quit: Textual IRC Client: www.textualapp.com) |
2021-06-13 20:54:44 +0200 | <jumper149> | Ah yeah, I see why you think the second example fits right here. Basically the type alias `Run` brings this additional context. |
2021-06-13 20:54:46 +0200 | <jumper149> | @Run |
2021-06-13 20:54:48 +0200 | <lambdabot> | <no location info>: error: not an expression: ‘’ |
2021-06-13 20:55:00 +0200 | <jumper149> | https://hackage.haskell.org/package/monad-control-1.0.2.3/docs/Control-Monad-Trans-Control.html#t:… |
2021-06-13 20:55:30 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
2021-06-13 20:56:09 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-06-13 20:57:08 +0200 | <dminuoso> | I guess the confusion is just based on not even understanding how higher rank type inference works. It almost seems as if you have to read SPJs `Practical Type Inference for Arbitrary-Rank Types` |
2021-06-13 20:57:21 +0200 | <dminuoso> | That paper is outside of my reach. |
2021-06-13 20:58:15 +0200 | <dminuoso> | I find it a bit sad that the GHC manual does not elaborate on what "relies on deep skolemization" even means. |
2021-06-13 20:58:55 +0200 | Patrick | (~Patrick@pool-100-36-167-42.washdc.fios.verizon.net) |
2021-06-13 20:59:18 +0200 | <Rembane> | Could that be considered a bug? |
2021-06-13 20:59:45 +0200 | <dminuoso> | A documentation bug, yes. |
2021-06-13 21:00:31 +0200 | Patrick | Patrick157 |
2021-06-13 21:01:51 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:02:11 +0200 | <dminuoso> | jumper149: https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0#deep-instantiation |
2021-06-13 21:02:13 +0200 | <dminuoso> | Mmm |
2021-06-13 21:02:34 +0200 | <dminuoso> | jumper149: Or is this a case of deep instantiation? Im beginning to suspect this is the case |
2021-06-13 21:03:31 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:03:45 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:03:50 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 21:04:19 +0200 | <shapr> | OH SURE |
2021-06-13 21:04:26 +0200 | <shapr> | dmwit: hi, how's life? |
2021-06-13 21:05:46 +0200 | <dmwit> | hi shapr! |
2021-06-13 21:05:51 +0200 | <jumper149> | dminuoso: That may be right. I honestly don't understand it enough to argue for one or the other. |
2021-06-13 21:06:03 +0200 | <dmwit> | Recently I've been being bad at computer vision! It's great. |
2021-06-13 21:06:13 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:06:17 +0200 | <dmwit> | What's life like in shapr-land? |
2021-06-13 21:06:28 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:07:04 +0200 | <shapr> | dmwit: that sounds exciting, are you building some fun projects with computer vision? |
2021-06-13 21:07:14 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:07:28 +0200 | <shapr> | dmwit: just got the second moderna shot, so I can spend time with people again |
2021-06-13 21:07:29 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:08:00 +0200 | <dmwit> | grats! |
2021-06-13 21:08:17 +0200 | dispater | (~dispater@mail.brprice.uk) |
2021-06-13 21:09:30 +0200 | dispater | (~dispater@mail.brprice.uk) (Client Quit) |
2021-06-13 21:09:35 +0200 | <dmwit> | I've been staying quarantined-ish even though I'm vax'd. But I'm hopeful that we get to a point where I feel like we've solved it as a country rather than just personally having solved it. |
2021-06-13 21:10:45 +0200 | <dmwit> | I'm excited for people that are choosing to rejoin society, too. ^_^ |
2021-06-13 21:10:51 +0200 | dispater | (~dispater@mail.brprice.uk) |
2021-06-13 21:10:57 +0200 | <shapr> | yeah, I agree |
2021-06-13 21:11:23 +0200 | <shapr> | last weekend (or the one before?) I learned how to package a simple C application with nix, and then how to add that as an overlay to my system |
2021-06-13 21:11:34 +0200 | <shapr> | this weekend I'm trying to learn how to write a plugin for haskell-language-server |
2021-06-13 21:11:55 +0200 | <dmwit> | oh, I should learn HLS at some point |
2021-06-13 21:12:01 +0200 | <dmwit> | I have like three bookmarks. =P |
2021-06-13 21:12:07 +0200 | <shapr> | at my job it's easy to lose track of which language pragmas are in scope, so I figured I'd try to make a code lens that displays all implicit pragmas at the top of the file |
2021-06-13 21:12:14 +0200 | <maerwald> | dmwit: new hls release is on the way |
2021-06-13 21:12:17 +0200 | <dminuoso> | jumper149: My rough understanding of the change is: GHC used to do this eta-expansion implicitly in order to elaborate said programs into Core. But eta-expansion changes semantics (because in WHNF `\x -> undefined x` will not bottom out, while `undefined` will) |
2021-06-13 21:12:33 +0200 | <shapr> | dmwit: oh if you're not using it, my example file may help some: https://github.com/shapr/hlsexamples/blob/main/src/Examples.hs#L38 |
2021-06-13 21:12:45 +0200 | hseg | (~gesh@185.120.126.41) (Quit: WeeChat 3.1) |
2021-06-13 21:12:55 +0200 | <shapr> | I need to update that example file for hls 1.1 |
2021-06-13 21:13:09 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds) |
2021-06-13 21:13:19 +0200 | <shapr> | cdsmith and I were pairing on something yesterday and I got to demonstrate some of the amazing wingman features. |
2021-06-13 21:13:31 +0200 | polyphem | (~polyphem@2a02:810d:640:776c:12c4:e67d:3560:5ad7) |
2021-06-13 21:13:41 +0200 | <dminuoso> | jumper149: So GHC changed the RankNTypes type inference that this would not happen again (avoiding implicitly changing program semantics, and simplifying implementation) - but that means if you still want these things that automatically inferred, you have to do this eta-expansion explicitly (and thus there's no change in semantics anymore) |
2021-06-13 21:14:11 +0200 | <shapr> | anyway, I'm slowly working my way through the hls plugin tutorial, happily a code lens is the first example. |
2021-06-13 21:14:23 +0200 | sm2n | (~sm2n@user/sm2n) (Ping timeout: 268 seconds) |
2021-06-13 21:14:28 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-06-13 21:14:29 +0200 | <shapr> | my mvp is "show all enabled language pragmas" |
2021-06-13 21:14:53 +0200 | <dminuoso> | I admit, this is all very handwaving. |
2021-06-13 21:15:41 +0200 | <shapr> | I have a bunch of other plugin/feature ideas, like "rewrite all imports to implicit on load, rewrite all imports to explicit on save" |
2021-06-13 21:15:43 +0200 | <maerwald> | shapr: I wanted to do a code lens that shows function arity on hover (bc that is important for inlining and can be relevant for memory leaks as well)0000000 |
2021-06-13 21:15:55 +0200 | <shapr> | maerwald: oh that's a cool idea! |
2021-06-13 21:15:56 +0200 | <maerwald> | oops, my qmk config needs fixing |
2021-06-13 21:16:34 +0200 | <jumper149> | dminuoso: The `undefined` example and the fact that it's a change to the type inference with RankNTypes is already quite a bit eye-opening to me :) |
2021-06-13 21:17:57 +0200 | <dminuoso> | jumper149: type system wise, it was exactly 4 parts (covariante of function types, contravariance of function types, deep skolemisation and deep instanstation) that caused this implicit eta-extension. In the GHC proposal these things were just yanked without replacement. |
2021-06-13 21:18:11 +0200 | <shapr> | another idea I have is to use the "find references" feature to look only in the thisproject:test section to run tests that reference a function after the file is saved, and add some kind of syntax highlighting to show the test status. |
2021-06-13 21:18:20 +0200 | <dminuoso> | It's just that I cant match what these exactly mean or when GHC would use them. You'd have to read the paper I cited earlier. |
2021-06-13 21:19:16 +0200 | dispater | (~dispater@mail.brprice.uk) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-06-13 21:19:38 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: leaving) |
2021-06-13 21:19:39 +0200 | dispater | (~dispater@user/brprice) |
2021-06-13 21:19:46 +0200 | <maerwald> | shapr: I'd want it for right-click->run-tests... "on save" might be a bit excessive, depending on the tests |
2021-06-13 21:19:53 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:20:09 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:20:24 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:20:31 +0200 | <maerwald> | I think some IDEs have visual buttons for "you can run a test here" |
2021-06-13 21:20:36 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:20:38 +0200 | <maerwald> | not sure if that's integratable with hls |
2021-06-13 21:21:08 +0200 | <dminuoso> | jumper149: Luckily, all of this means: Without contra/covariance of function types, deep skolemisation and instanation - you can still make all programs type check if you apply the eta-extension manually in the exact place that GHC would have done it implicitly. Because once you eta-expand, you dont need these 4 things anyhow. |
2021-06-13 21:21:19 +0200 | <maerwald> | first, you'd need *file locations* that can run tests, I guess |
2021-06-13 21:21:22 +0200 | dispater | (~dispater@user/brprice) (Client Quit) |
2021-06-13 21:21:43 +0200 | dispater | (~dispater@user/brprice) |
2021-06-13 21:21:43 +0200 | <maerwald> | and then a way to tell HLS: "run test for this file location" |
2021-06-13 21:22:18 +0200 | esclear | esclear[m] |
2021-06-13 21:22:36 +0200 | <maerwald> | this might very well be outside of LSP protocol scope... |
2021-06-13 21:22:45 +0200 | esclear[m] | esclear[i] |
2021-06-13 21:22:58 +0200 | <maerwald> | so clients would need to support it manually |
2021-06-13 21:23:36 +0200 | <janus> | when was (<>) added to prelude? i am having little log googling it |
2021-06-13 21:24:16 +0200 | <janus> | *luck |
2021-06-13 21:24:43 +0200 | <Clint> | was it part of AMP? |
2021-06-13 21:24:48 +0200 | <janus> | the ghc wiki says it was added to base in ghc 8, but that doesn't mean it went directly into the prelude, i imagine |
2021-06-13 21:24:50 +0200 | <davean> | https://hackage.haskell.org/package/base-4.15.0.0/changelog see? |
2021-06-13 21:25:00 +0200 | <davean> | Theres a changelog that lists this specificly |
2021-06-13 21:25:10 +0200 | <janus> | aaah right! i thought it would be older |
2021-06-13 21:25:30 +0200 | <janus> | wait, it says 4.11 from March 2018. so it is quite old |
2021-06-13 21:25:37 +0200 | dispater | (~dispater@user/brprice) (Client Quit) |
2021-06-13 21:25:55 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:25:55 +0200 | <janus> | weird how i am just getting this error now with ghc 9 |
2021-06-13 21:26:07 +0200 | <maerwald> | means you're getting older as well |
2021-06-13 21:26:58 +0200 | dispater | (~dispater@user/brprice) |
2021-06-13 21:29:13 +0200 | <shapr> | maerwald: it'd be interesting to try |
2021-06-13 21:29:21 +0200 | <shapr> | maerwald: certainly blog post worthy |
2021-06-13 21:29:32 +0200 | <shapr> | I still don't understand enough lsp details to know what might not work |
2021-06-13 21:29:55 +0200 | <maerwald> | there are many things where you need to go beyond lsp protocol |
2021-06-13 21:30:06 +0200 | <maerwald> | e.g. "type of expression" isn't currently supported by the protocol |
2021-06-13 21:30:11 +0200 | <maerwald> | but we really want it, right? |
2021-06-13 21:30:43 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-06-13 21:31:10 +0200 | <maerwald> | https://github.com/microsoft/language-server-protocol/issues/377 |
2021-06-13 21:31:35 +0200 | xsperry | (~as@user/xsperry) (Remote host closed the connection) |
2021-06-13 21:32:28 +0200 | xsperry | (~as@user/xsperry) |
2021-06-13 21:33:03 +0200 | <maerwald> | I think the main thing would be: make it work in VSCode |
2021-06-13 21:33:43 +0200 | <shapr> | I would certainly want to be able to select part of my buffer and get the type of that selection |
2021-06-13 21:34:08 +0200 | <shapr> | I do that manually by factoring out that chunk to its own name and looking at that. |
2021-06-13 21:34:27 +0200 | <shapr> | but most people I've seen try to hover over the end parentheses to get the type of the parens. |
2021-06-13 21:34:38 +0200 | <maerwald> | right, because type computation is hard... I might know what `fmap` is, but not `fmap . fmap . fmap . fmap` :) |
2021-06-13 21:35:29 +0200 | <shapr> | yeah, I have that question often |
2021-06-13 21:36:57 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: Lost terminal) |
2021-06-13 21:37:27 +0200 | <shapr> | I like that so many things in Haskell are compositional, I just wish laziness weren't the big exception |
2021-06-13 21:39:32 +0200 | alanz__ | (~user@host86-135-160-135.range86-135.btcentralplus.com) (Remote host closed the connection) |
2021-06-13 21:40:27 +0200 | <maerwald> | I haven't made up my mind... I think having Laziness on type level is interesting, but I can't say that I've tried enough Idris to judge the ergonomics |
2021-06-13 21:40:32 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) (Quit: Reconnecting) |
2021-06-13 21:40:39 +0200 | <davean> | shapr: I'm confused by that statement - it seems laziness is the most compositional |
2021-06-13 21:40:47 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) |
2021-06-13 21:40:49 +0200 | <maerwald> | davean: you never know when it breaks |
2021-06-13 21:41:34 +0200 | <maerwald> | oh, you accidentially kept a reference for later, now it doesn't fuse and blows up your ram |
2021-06-13 21:42:30 +0200 | <dminuoso> | Before I sketch it out, tyfam application disappear in generics right? |
2021-06-13 21:42:33 +0200 | <dmwit> | Is strict superior there? |
2021-06-13 21:42:36 +0200 | <shapr> | Haskell is still my favorite language by far, but it's good to be aware of the scary bits. |
2021-06-13 21:42:39 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 252 seconds) |
2021-06-13 21:42:49 +0200 | <maerwald> | dmwit: no, but what if you had proof of laziness? |
2021-06-13 21:43:04 +0200 | <davean> | maerwald: I think you just explained it as compositional to say it wasn't. I'm confused - what composition rule do you expect? |
2021-06-13 21:43:07 +0200 | <shapr> | I wish the type could somehow describe the laziness of a function. |
2021-06-13 21:43:28 +0200 | <janus> | shapr: did you see how it works in idris? |
2021-06-13 21:43:33 +0200 | <shapr> | janus: I have not! |
2021-06-13 21:43:45 +0200 | <shapr> | does idris express laziness or strictness on the type level? |
2021-06-13 21:43:46 +0200 | <Rembane> | Or that there was some part of compilation or some other static tooling that automatically helped with it. |
2021-06-13 21:43:49 +0200 | <davean> | shapr: the type does, the function is lazy. The question is what will be pulled through when you force it. |
2021-06-13 21:43:50 +0200 | <dminuoso> | shapr: `A -> B` with A having some fields as strict, others not. How would you expect this to be communicated? |
2021-06-13 21:43:53 +0200 | <janus> | shapr: http://docs.idris-lang.org/en/latest/tutorial/typesfuns.html#laziness |
2021-06-13 21:43:57 +0200 | P1RATEZ | (piratez@user/p1ratez) |
2021-06-13 21:44:13 +0200 | <shapr> | hello P1RATEZ, are you learning Haskell? |
2021-06-13 21:44:23 +0200 | <maerwald> | davean: if you combine two lazy functions, they should *generally* fuse. That's not a very formal description, but is easily violated in haskell... very easily. |
2021-06-13 21:44:25 +0200 | <P1RATEZ> | i was a long time ago |
2021-06-13 21:44:37 +0200 | <davean> | maerwald: fusion and laziness are seperate |
2021-06-13 21:44:38 +0200 | <maerwald> | davean: depending on code and even GHC version |
2021-06-13 21:44:39 +0200 | <shapr> | P1RATEZ: aha! so you're back to try the lambda lifestyle again? |
2021-06-13 21:44:41 +0200 | <maerwald> | davean: yes |
2021-06-13 21:44:48 +0200 | <davean> | maerwald: so why are you talking about fusion? |
2021-06-13 21:44:58 +0200 | <maerwald> | davean: it's a way to describe when you broke laziness |
2021-06-13 21:45:18 +0200 | <davean> | I think of fusion as a way of talking about code optimization by replacement |
2021-06-13 21:45:19 +0200 | <shapr> | P1RATEZ: are you using ghcup to install the latest version of the compiler and the lsp plugin? |
2021-06-13 21:45:31 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 272 seconds) |
2021-06-13 21:45:48 +0200 | <P1RATEZ> | i don't have it installed at the moment but i could give it a shot |
2021-06-13 21:45:56 +0200 | <P1RATEZ> | having troubles? |
2021-06-13 21:46:16 +0200 | <shapr> | P1RATEZ: no, just wanting to help someone who's jumping into the lambda lifestyle again |
2021-06-13 21:46:17 +0200 | teddyc | (theodorc@cassarossa.samfundet.no) (Quit: WeeChat 2.3) |
2021-06-13 21:46:20 +0200 | <davean> | maerwald: the problem with fusion is it implicitly runs functions on your code, but thats true of strict *or* lazy |
2021-06-13 21:46:22 +0200 | <maerwald> | davean: well... "purity" was also defined in terms of evaluation strategy equivalence... so I think defining laziness semantics in terms of fusion could be a reasonable attempt |
2021-06-13 21:46:28 +0200 | teddyc | (theodorc@cassarossa.samfundet.no) |
2021-06-13 21:46:30 +0200 | <davean> | maerwald: the fusion issue is entirely independent |
2021-06-13 21:46:40 +0200 | <maerwald> | not independent |
2021-06-13 21:46:48 +0200 | <maerwald> | but there are more problems to fusion than laziness |
2021-06-13 21:47:34 +0200 | <maerwald> | I'm not writing a paper about it :) |
2021-06-13 21:47:44 +0200 | <shapr> | maerwald, davean : perhaps we can make up "Big L notation" that describes the space usage per number of inputs? |
2021-06-13 21:47:52 +0200 | <shapr> | L for laziness? :-) |
2021-06-13 21:48:31 +0200 | <davean> | shapr: so in the worst case you're talking about something the size of computability - but few sane functions will hit that really. |
2021-06-13 21:49:10 +0200 | <davean> | maerwald: So fusion can cause you to force *less* stuff than the non-fused code, but shouldn't allow you to force more for correctly implimented fusion |
2021-06-13 21:49:54 +0200 | <maerwald> | My point is that rules for maintaining laziness are similarly obscure as rules for triggering fusion |
2021-06-13 21:50:07 +0200 | <davean> | But not in terms of bounds |
2021-06-13 21:50:34 +0200 | yoctocell | (~yoctocell@h87-96-130-155.cust.a3fiber.se) (Quit: C-x C-c, Shutting down OS...) |
2021-06-13 21:50:46 +0200 | <maerwald> | Most ppl, I'm certain, have no intuition about which of their functions are really properly lazy... and the only time you really develop this intuition is... when you deal with fusion |
2021-06-13 21:50:59 +0200 | <davean> | I do not deal with fusion and I do |
2021-06-13 21:51:08 +0200 | <davean> | so you're very much clearly showing some bias I'm unfamiliar with |
2021-06-13 21:51:18 +0200 | <shapr> | davean: we could run a poll |
2021-06-13 21:51:31 +0200 | Xnuk | (~xnuk@45.76.202.58) (Quit: ZNC - https://znc.in) |
2021-06-13 21:51:42 +0200 | <shapr> | or we could put up a quiz where people see the source code and then say which variables are strict or lazy or whatnot. |
2021-06-13 21:51:48 +0200 | Xnuk | (~xnuk@vultr.xnu.kr) |
2021-06-13 21:51:49 +0200 | <davean> | mmm |
2021-06-13 21:51:52 +0200 | <maerwald> | "understanding laziness" is an effort of fixing memory leaks in your haskell code :p |
2021-06-13 21:51:56 +0200 | remedan | (~remedan@balak.me) |
2021-06-13 21:51:59 +0200 | <davean> | maerwald: no it isn't |
2021-06-13 21:52:06 +0200 | <davean> | maerwald: its an effort to extract performance |
2021-06-13 21:52:09 +0200 | <maerwald> | well, I have very different experience |
2021-06-13 21:52:10 +0200 | <dmwit> | One thing to keep in mind is that if you are using Haskell professionally, there may well be people on the project who are not as intimately familiar with Haskell as we are. |
2021-06-13 21:52:30 +0200 | <shapr> | true that |
2021-06-13 21:52:41 +0200 | <dmwit> | So I agree that there is something to be said for programming in a way that leaves things robust, even if that means you don't use cool language features. |
2021-06-13 21:52:42 +0200 | <davean> | maerwald: laziness lets us do better than the general performance bounds. |
2021-06-13 21:52:55 +0200 | <maerwald> | when you've been paying for 64GB ram amazon instances, because you didn't use StrictData in the right places... then you start to have a somewhat different opinion |
2021-06-13 21:53:31 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:53:31 +0200 | <maerwald> | (and that after you hired expensive haskell consultants, who couldn't find it either) |
2021-06-13 21:53:38 +0200 | <shapr> | I bought a laptop with 128GB ram, so much easier! |
2021-06-13 21:53:38 +0200 | <davean> | I think the largest Haskell programs I have are ~12GiB and thats because I load the entire dataset into memory of a few million node graph for performance. |
2021-06-13 21:53:45 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 272 seconds) |
2021-06-13 21:54:03 +0200 | allbery_b | (~geekosaur@069-135-003-034.biz.spectrum.com) |
2021-06-13 21:54:31 +0200 | <davean> | and even then about 2GiB of it is a cache |
2021-06-13 21:54:36 +0200 | kayprish_ | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:54:42 +0200 | <shapr> | I've still eaten far more than 128gb when I wrote a space leak. It took twenty seconds to eat my ram, and ten seconds to wait for the kill command to stop the problem. |
2021-06-13 21:54:45 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 252 seconds) |
2021-06-13 21:54:48 +0200 | kayprish1 | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 21:55:07 +0200 | allbery_b | geekosaur |
2021-06-13 21:55:26 +0200 | <maerwald> | however... I can't say if that platform would have been truly better with "strict by default"... but I can say that debugging laziness issues is very non-trivial in haskell, and I'm wondering if the Idris approach would have helped |
2021-06-13 21:55:30 +0200 | <maerwald> | I'm not sure |
2021-06-13 21:55:54 +0200 | <davean> | maerwald: your experience doesn't at all match mine |
2021-06-13 21:56:43 +0200 | <davean> | But your perspective and take on the problem doesn't either |
2021-06-13 21:56:50 +0200 | <davean> | we clearly come at this from very different directions |
2021-06-13 21:57:24 +0200 | <maerwald> | davean: https://github.com/yesodweb/wai/pull/752#issuecomment-501531386 |
2021-06-13 21:57:28 +0200 | <maerwald> | I agree with Kazu |
2021-06-13 21:57:47 +0200 | <shapr> | I really enjoy laziness for many solutions |
2021-06-13 21:57:55 +0200 | <shapr> | I just wish it were somehow more compositional |
2021-06-13 21:57:57 +0200 | <davean> | maerwald: yah well, lets talk about warp ... |
2021-06-13 21:58:01 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:58:01 +0200 | kayprish_ | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:58:01 +0200 | kayprish1 | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Client Quit) |
2021-06-13 21:58:06 +0200 | <davean> | maerwald: that code base is a mess and I had to fork it |
2021-06-13 21:58:12 +0200 | <maerwald> | :p |
2021-06-13 21:58:20 +0200 | <davean> | It doesn't even manage exceptions! |
2021-06-13 21:58:27 +0200 | <davean> | It doesn't work in production IME |
2021-06-13 21:58:32 +0200 | <maerwald> | davean: guess what... I had to fork `tar`, because it's a broken mess and even after forking doesn't work correctly |
2021-06-13 21:58:33 +0200 | <davean> | but it didn't take long to fix |
2021-06-13 21:58:41 +0200 | <maerwald> | part of it being over-use of "lazy patterns" |
2021-06-13 21:58:44 +0200 | <davean> | maerwald: right, its a mostly-rewrite |
2021-06-13 21:58:50 +0200 | <davean> | maerwald: yes, that is a problem in tar |
2021-06-13 21:59:00 +0200 | <maerwald> | while it should use a proper streaming library |
2021-06-13 21:59:01 +0200 | <davean> | maerwald: thats actually ... yah, tar is a fuckfest |
2021-06-13 21:59:08 +0200 | <davean> | yes, I have a version thatstarts to |
2021-06-13 21:59:10 +0200 | <maerwald> | see, we finally agree :D |
2021-06-13 21:59:14 +0200 | <davean> | this is actually a security bug |
2021-06-13 21:59:24 +0200 | <davean> | tar uses laziness for a dumb reason |
2021-06-13 21:59:27 +0200 | <davean> | and they wouldn't fix it |
2021-06-13 21:59:30 +0200 | <davean> | so now I get to |
2021-06-13 21:59:39 +0200 | <davean> | its better than maintaining my own warp! |
2021-06-13 21:59:44 +0200 | <maerwald> | yes... if you have a 200mb file in the tar archive, you'll get that 200mb file loaded into memory |
2021-06-13 21:59:50 +0200 | <davean> | no, no |
2021-06-13 21:59:58 +0200 | <davean> | you can use tar in constant space for arbitrary files |
2021-06-13 21:59:58 +0200 | <maerwald> | yes |
2021-06-13 22:00:01 +0200 | <davean> | I've done that a lot |
2021-06-13 22:00:01 +0200 | <maerwald> | no |
2021-06-13 22:00:05 +0200 | <davean> | No, I have |
2021-06-13 22:00:09 +0200 | <maerwald> | I don't believe you! |
2021-06-13 22:00:14 +0200 | <davean> | I've streameed tape through it |
2021-06-13 22:00:24 +0200 | <maerwald> | (I'm talking about unpack) |
2021-06-13 22:00:25 +0200 | <davean> | but you can force it to load all the data |
2021-06-13 22:00:50 +0200 | <davean> | Oh unpack? |
2021-06-13 22:00:51 +0200 | <maerwald> | https://github.com/haskell/tar/issues/57 |
2021-06-13 22:00:55 +0200 | <davean> | No you have to use the base combinators |
2021-06-13 22:00:56 +0200 | <maerwald> | yes, it leaks file size |
2021-06-13 22:01:05 +0200 | <davean> | Right |
2021-06-13 22:01:07 +0200 | <davean> | unpack is broken |
2021-06-13 22:01:14 +0200 | <maerwald> | yeah... I fixed it with streamly |
2021-06-13 22:01:15 +0200 | <davean> | You need to use the folds |
2021-06-13 22:01:29 +0200 | <maerwald> | but then I thought... why use tar at all, I'm gonna re-implement it in streamly |
2021-06-13 22:01:46 +0200 | <maerwald> | but then I was too lazy and used `libarchive` |
2021-06-13 22:02:00 +0200 | <maerwald> | which now exposed me to tons of c2hs errors |
2021-06-13 22:02:10 +0200 | <maerwald> | you can't win :) |
2021-06-13 22:02:31 +0200 | <davean> | So you can use the folds interface just fine of tar |
2021-06-13 22:02:42 +0200 | <shapr> | I kinda want to start a hackathon to add more tests to the most used libraries on hackage |
2021-06-13 22:02:49 +0200 | <shapr> | too bad I won't be at zurihac :-( |
2021-06-13 22:03:04 +0200 | <maerwald> | shapr: why not? |
2021-06-13 22:03:07 +0200 | <davean> | shapr: Yah, we actually signed up for the UNIX tests as an OSS project to run the ACTUAL standards tests on tar |
2021-06-13 22:03:28 +0200 | <Rembane> | shapr: If you start a distancehackathon wtih that purpose I'm in! |
2021-06-13 22:03:55 +0200 | <davean> | shapr: you've seen my test coverage :-p |
2021-06-13 22:03:58 +0200 | <shapr> | maerwald: I'm driving to see my family this weekend, emergency things that have to be done |
2021-06-13 22:04:10 +0200 | <davean> | shapr: I tend to give up when I start finding bugs in the linux kernel via my unit tests |
2021-06-13 22:04:15 +0200 | <shapr> | cdsmith showed me hpc yesterday, somehow I've never seen it before! |
2021-06-13 22:04:28 +0200 | <shapr> | I'd like to see hpc coverage for all the libraries, in reverse dependcy order. |
2021-06-13 22:04:30 +0200 | <davean> | shapr: wait, really? No you have |
2021-06-13 22:04:40 +0200 | <davean> | shapr: because you've seen my coverage |
2021-06-13 22:04:51 +0200 | <shapr> | davean: might have been years ago? |
2021-06-13 22:04:55 +0200 | juhp | (~juhp@128.106.188.66) (Ping timeout: 245 seconds) |
2021-06-13 22:04:56 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-06-13 22:04:58 +0200 | <davean> | Sure, it was in like 2018 |
2021-06-13 22:05:09 +0200 | <shapr> | I must have forgotten |
2021-06-13 22:05:40 +0200 | <davean> | I've done coverage with you though when we paired |
2021-06-13 22:05:48 +0200 | shapr | shrugs |
2021-06-13 22:06:09 +0200 | <davean> | shapr: cabal wants hpc to be something it isn't :( |
2021-06-13 22:06:19 +0200 | <davean> | That entire tree is such a mess |
2021-06-13 22:06:32 +0200 | <shapr> | I think it'd be nice to have a tests hackathon |
2021-06-13 22:07:01 +0200 | <davean> | shapr: I know I specificly went over how I did the tests in 'miss' with you BTW |
2021-06-13 22:07:21 +0200 | <davean> | getting a fast test suite with high coverage |
2021-06-13 22:07:25 +0200 | <davean> | I remember that specificly |
2021-06-13 22:07:36 +0200 | juhp | (~juhp@128.106.188.66) |
2021-06-13 22:07:40 +0200 | <davean> | talking about testing methedologies in Haskell |
2021-06-13 22:07:55 +0200 | <davean> | shapr: you know theres laziness testing libraries, right? |
2021-06-13 22:08:16 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
2021-06-13 22:08:25 +0200 | <shapr> | davean: I think I've heard of such |
2021-06-13 22:08:28 +0200 | <davean> | actually, maerwald and dminuoso - if you do work with people who don't understand the details, have you tried specifying and using inspection testing? |
2021-06-13 22:09:08 +0200 | hemlock | (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) (Ping timeout: 252 seconds) |
2021-06-13 22:10:26 +0200 | hemlock | (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) |
2021-06-13 22:10:50 +0200 | <maerwald> | I've not used hpc that extensively |
2021-06-13 22:11:44 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-13 22:13:01 +0200 | <maerwald> | my real world problem are IO probles (e.g. in ghcup... some file operation blowing up on windows 7, bc some registry key is not set) |
2021-06-13 22:13:04 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 22:13:11 +0200 | <davean> | maerwald: its not very loved. |
2021-06-13 22:13:17 +0200 | <davean> | maerwald: well, thats what hpc is good for though |
2021-06-13 22:13:33 +0200 | <maerwald> | given that you HAVE a windows 7 machine :p |
2021-06-13 22:13:37 +0200 | <davean> | maerwald: I think you may not have read closely enough? hpc is coverage, it tells you what code is used. inspection testing is entirely seperate |
2021-06-13 22:13:47 +0200 | <davean> | maerwald: I mean thats what CI is for? |
2021-06-13 22:14:02 +0200 | <davean> | maerwald: but thats actually not the problem |
2021-06-13 22:14:07 +0200 | <maerwald> | davean: yeah, except half of our runners are broken due to docker right now |
2021-06-13 22:14:10 +0200 | <davean> | not having a W7 machine is what hpc helps with |
2021-06-13 22:14:13 +0200 | <maerwald> | but I'm going offtrack |
2021-06-13 22:14:19 +0200 | <davean> | it shows you *haven't checked that code path on any machine* |
2021-06-13 22:14:38 +0200 | <maerwald> | davean: I'm not sure that would catch it... bc I do run that codepath on Windows 10 |
2021-06-13 22:14:42 +0200 | <maerwald> | it just behaves different there |
2021-06-13 22:14:56 +0200 | <davean> | maerwald: you sure? you sure there isn't a branch not taken on W10? |
2021-06-13 22:15:30 +0200 | <maerwald> | in MY code all paths are taken |
2021-06-13 22:15:35 +0200 | <maerwald> | dependencies, ffi etc, I dunno |
2021-06-13 22:15:47 +0200 | <davean> | Yah well how far you push coverage down is a thing |
2021-06-13 22:16:01 +0200 | <maerwald> | So what I'm more interested in is testing behavior |
2021-06-13 22:16:03 +0200 | <davean> | I've been pushing coverage into the kernel for some of my more important projects, but thats hard with Haskell |
2021-06-13 22:16:10 +0200 | dunkeln | (~dunkeln@94.129.65.28) |
2021-06-13 22:16:23 +0200 | <davean> | If I ever figure out a useful setup for that, I should write it up ... |
2021-06-13 22:16:26 +0200 | <davean> | everything I've got is shit |
2021-06-13 22:16:28 +0200 | <maerwald> | when half your code is about IO and file operations, behavior matters more than anything else |
2021-06-13 22:16:33 +0200 | alex3 | (~alex3@BSN-77-82-41.static.siol.net) (Ping timeout: 272 seconds) |
2021-06-13 22:16:37 +0200 | ajarmst | (~user@S01066032b134d205.ed.shawcable.net) |
2021-06-13 22:16:56 +0200 | thelounge92 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) |
2021-06-13 22:17:20 +0200 | alex3 | (~alex3@BSN-77-82-41.static.siol.net) |
2021-06-13 22:17:31 +0200 | <maerwald> | I thought about using freer or whatnot to define all these operations in a DSL, which may give me more flexibility... but this might just be "cool", but not help in any way |
2021-06-13 22:17:56 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 22:18:05 +0200 | <maerwald> | however, you could write interpreters, that simulate e.g. windows 7 |
2021-06-13 22:18:06 +0200 | <davean> | I've used that (with free, not freer) to get cleaner code and faster testing before |
2021-06-13 22:18:22 +0200 | <maerwald> | like simulate file locking, right? |
2021-06-13 22:18:25 +0200 | <maerwald> | that would be cool |
2021-06-13 22:18:29 +0200 | reumeth | (~reumeth@user/reumeth) (Remote host closed the connection) |
2021-06-13 22:18:34 +0200 | <davean> | I actually worked on a FS crash simulator |
2021-06-13 22:18:40 +0200 | <davean> | Need to restart that project |
2021-06-13 22:18:53 +0200 | reumeth | (~reumeth@user/reumeth) |
2021-06-13 22:18:57 +0200 | <davean> | but it cuts off at the FS access level, and produces all legal FS behaviors as a tree |
2021-06-13 22:18:58 +0200 | <maerwald> | linux vs windows is a HUGE difference... mainly due to file locking |
2021-06-13 22:19:09 +0200 | <davean> | File locking was a reason for it |
2021-06-13 22:19:17 +0200 | <davean> | git is ... hard to get right with respect to locks |
2021-06-13 22:19:37 +0200 | <davean> | the design is highly inconsistent |
2021-06-13 22:19:50 +0200 | <davean> | maerwald: why would you choose freer? |
2021-06-13 22:19:54 +0200 | <maerwald> | like... self-updating an exe on linux: just remove it... on windows: 1. uh, try file rename, 2. but oh wait... needs to be atomic... so 3. are we on the same device and 4. make sure it really is atomic |
2021-06-13 22:20:11 +0200 | <maerwald> | davean: becase `eff` isn't ready yet |
2021-06-13 22:20:18 +0200 | <maerwald> | not sure it ever will |
2021-06-13 22:20:31 +0200 | <davean> | You're happy with the freer design though? |
2021-06-13 22:21:06 +0200 | <davean> | I'm much more comfortable with the 'free' approach |
2021-06-13 22:21:49 +0200 | benin0366 | (~benin@183.82.205.8) |
2021-06-13 22:21:50 +0200 | <maerwald> | I dunno... I also looked at polysemy and it wasn't that bad either. But from what I understand they're all slow and may even be unsound |
2021-06-13 22:22:03 +0200 | <davean> | Right, this is why I lean to 'free' over any of them |
2021-06-13 22:22:15 +0200 | benin036 | (~benin@183.82.205.8) (Ping timeout: 272 seconds) |
2021-06-13 22:22:16 +0200 | benin0366 | benin036 |
2021-06-13 22:22:26 +0200 | <davean> | so I'm curious what your selection approach was |
2021-06-13 22:22:36 +0200 | <maerwald> | "ergonomics", less technical |
2021-06-13 22:22:52 +0200 | <davean> | Hum, the technicalities were critical to me, interesting |
2021-06-13 22:22:53 +0200 | <maerwald> | my code is IO-bound |
2021-06-13 22:23:04 +0200 | <davean> | Its nto about performance |
2021-06-13 22:23:10 +0200 | <davean> | infact, its harder to get performance with 'free' |
2021-06-13 22:23:15 +0200 | dhil | (~dhil@80.208.56.181) (Ping timeout: 245 seconds) |
2021-06-13 22:23:16 +0200 | <davean> | (though totally possible) |
2021-06-13 22:23:36 +0200 | <maerwald> | Well, this sounds like a good project for zurihac |
2021-06-13 22:24:07 +0200 | <davean> | but things like bracketing and how they behave in 'freer' |
2021-06-13 22:24:14 +0200 | <kayprish> | [A[A |
2021-06-13 22:24:23 +0200 | <kayprish> | [A[A[A |
2021-06-13 22:24:38 +0200 | <kayprish> | trx |
2021-06-13 22:24:43 +0200 | <kayprish> | sat |
2021-06-13 22:24:49 +0200 | <maerwald> | davean: I never went that deep... I just wrote some small stuff... testing it on a real program will surely be more insightful |
2021-06-13 22:24:59 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 22:25:17 +0200 | <davean> | maerwald: Ah, did you not take time to understand the implimentation before using it? |
2021-06-13 22:25:32 +0200 | <maerwald> | hell no |
2021-06-13 22:25:36 +0200 | <davean> | Seriously? |
2021-06-13 22:26:04 +0200 | <kayprish> | apologies guys, my client started messing with me |
2021-06-13 22:26:16 +0200 | <davean> | kayprish: we'll never forgive you but quickly forget |
2021-06-13 22:26:34 +0200 | <maerwald> | davean: from what I read, sometimes the authors don't understand their own implementation ;) |
2021-06-13 22:26:51 +0200 | <davean> | maerwald: yah, which is why I take time to consider them ... |
2021-06-13 22:27:01 +0200 | <davean> | like when reading a paper - redo the proofs |
2021-06-13 22:27:09 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 22:27:09 +0200 | <davean> | satisfy YOURSELF they're right, don't take the author's word |
2021-06-13 22:27:19 +0200 | <davean> | saves a bunch of time |
2021-06-13 22:27:20 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
2021-06-13 22:27:33 +0200 | <maerwald> | that's way too serious for a "lemme see if I can improve this real quick" :) |
2021-06-13 22:28:24 +0200 | <shapr> | davean: have you considered writing blog posts about these not so well known tools? |
2021-06-13 22:28:24 +0200 | safinaskar | (~safinaska@109.252.90.89) |
2021-06-13 22:28:42 +0200 | zeenk | (~zeenk@188.26.30.39) |
2021-06-13 22:28:51 +0200 | <safinaskar> | is there some online haskell compiler with relatively new ghc? |
2021-06-13 22:29:01 +0200 | <davean> | shapr: Yes, though I'd NEVER think hpc wasn't well known. There the performance book over at HF thats comeing together. We had a long debate about how to handle tools. |
2021-06-13 22:29:07 +0200 | <safinaskar> | i tried repl.it and godbolt.org, but they have old ghc versions |
2021-06-13 22:29:23 +0200 | <safinaskar> | for example, -XGHC2021 seems not supported |
2021-06-13 22:29:38 +0200 | <maerwald> | safinaskar: I think repl.it is indeed one of the more updated ones |
2021-06-13 22:30:53 +0200 | <safinaskar> | maerwald: i just checked, -XGHC2021 still gives error there |
2021-06-13 22:34:05 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
2021-06-13 22:34:34 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) (Quit: leaving) |
2021-06-13 22:34:46 +0200 | reumeth | (~reumeth@user/reumeth) (Ping timeout: 244 seconds) |
2021-06-13 22:34:53 +0200 | kayprish | (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
2021-06-13 22:34:59 +0200 | <maerwald> | safinaskar: offline is not an option? |
2021-06-13 22:35:50 +0200 | <safinaskar> | maerwald: of course, it is. i am simply curious whether such site exists. it would speed up my productivity |
2021-06-13 22:36:24 +0200 | hemlock | (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) (Ping timeout: 268 seconds) |
2021-06-13 22:36:48 +0200 | hemlock | (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) |
2021-06-13 22:36:51 +0200 | <maerwald> | Could be another topic for the HF... |
2021-06-13 22:37:00 +0200 | dhil | (~dhil@195.213.192.47) |
2021-06-13 22:38:22 +0200 | jakefromstatefar | (~jakefroms@2001:470:69fc:105::15ef) |
2021-06-13 22:39:35 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) |
2021-06-13 22:41:09 +0200 | ddellacosta | (~ddellacos@89.45.224.48) |
2021-06-13 22:41:53 +0200 | beka | (~beka@104.193.170-244.PUBLIC.monkeybrains.net) (Ping timeout: 272 seconds) |
2021-06-13 22:42:52 +0200 | ddellacosta | (~ddellacos@89.45.224.48) (Remote host closed the connection) |
2021-06-13 22:43:21 +0200 | ddellacosta | (~ddellacos@89.45.224.48) |
2021-06-13 22:45:30 +0200 | ddellaco_ | (~ddellacos@89.45.224.243) |
2021-06-13 22:46:46 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 22:47:50 +0200 | ddellacosta | (~ddellacos@89.45.224.48) (Ping timeout: 245 seconds) |
2021-06-13 22:51:03 +0200 | Guest2 | (~Guest2@154.21.21.108) |
2021-06-13 22:51:51 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-06-13 22:52:10 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) |
2021-06-13 22:56:31 +0200 | Obo | (~roberto@h-46-59-103-134.A498.priv.bahnhof.se) (Quit: WeeChat 2.8) |
2021-06-13 22:56:45 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-06-13 22:57:33 +0200 | hrnz | hrnz[m] |
2021-06-13 22:57:50 +0200 | hrnz[m] | hrnz |
2021-06-13 22:58:44 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 23:01:30 +0200 | haskl | (~haskeller@2601:643:897f:561d:f1b9:73f1:b827:9693) (Ping timeout: 264 seconds) |
2021-06-13 23:01:35 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Ping timeout: 245 seconds) |
2021-06-13 23:02:20 +0200 | haskl | (~haskeller@2601:643:897f:561d:f1b9:73f1:b827:9693) |
2021-06-13 23:03:22 +0200 | bmo_ | (~bmo@185.254.75.34) |
2021-06-13 23:03:30 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:3d39:470:d12f:3be6) |
2021-06-13 23:03:36 +0200 | allbery_b | (~geekosaur@069-135-003-034.biz.spectrum.com) |
2021-06-13 23:03:59 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-06-13 23:04:32 +0200 | curiousgay_ | (~quassel@178.217.208.8) |
2021-06-13 23:04:36 +0200 | Scotty_Trees2 | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-13 23:04:37 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) (Read error: Connection reset by peer) |
2021-06-13 23:04:37 +0200 | carmysilna | (~brightly-@2001:470:69fc:105::2190) (Read error: Connection reset by peer) |
2021-06-13 23:04:37 +0200 | bb010g | (~bb010gmat@2001:470:69fc:105::9a5) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | oak- | (~oakuniver@2001:470:69fc:105::fcd) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | kadoban | (~kadoban@user/kadoban) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | wallymathieu[m] | (~wallymath@2001:470:69fc:105::16ae) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | ru0mad[m] | (~ru0madmat@2001:470:69fc:105::9b2) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | unrooted | (~unrooted@2001:470:69fc:105::a4a) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | siraben | (~siraben@user/siraben) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | MatrixTravelerbo | (~voyagert2@2001:470:69fc:105::22) (Write error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | jaror[m] | (~jaror@2001:470:69fc:105::265) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | vaibhavsagar[m] | (~vaibhavsa@2001:470:69fc:105::ffe) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | autrim64[m] | (~autrim64m@2001:470:69fc:105::16a1) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | bitonic | (~bitonic@2001:470:69fc:105::1812) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | fgaz | (~fgaz@2001:470:69fc:105::842) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | fabfianda[m] | (~fabfianda@2001:470:69fc:105::6db) (Read error: Connection reset by peer) |
2021-06-13 23:04:38 +0200 | tomferon[m] | (~tomferon@2001:470:69fc:105::268) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | Soft | (~soft-matr@2001:470:69fc:105::c75) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | Morrow[m] | (~morrowmma@2001:470:69fc:105::1d0) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | maerwald[m] | (~maerwaldm@2001:470:69fc:105::1ee) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | jakefromstatefar | (~jakefroms@2001:470:69fc:105::15ef) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | cdepillabout[m] | (~cdepillab@2001:470:69fc:105::3d3) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | dualinverter[m] | (~dualinver@2001:470:69fc:105::16a7) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | RohitGoswami[m] | (~rgoswamim@2001:470:69fc:105::16cc) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | yin[m] | (~zwromatri@2001:470:69fc:105::1d4) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | bryan[m] | (~bchreekat@2001:470:69fc:105::16b5) (Read error: Connection reset by peer) |
2021-06-13 23:04:39 +0200 | Artem[m] | (~artemtype@2001:470:69fc:105::75b) (Read error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | ac | (~aloiscoch@2001:470:69fc:105::65) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | sm[m] | (~sm@plaintextaccounting/sm) (Read error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | peddie | (~peddie@2001:470:69fc:105::25d) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | jophish | (~jophish@2001:470:69fc:105::670) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | adziahel[m] | (~adziahelm@2001:470:69fc:105::b4d) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | kosmikus[m] | (~andresloe@2001:470:69fc:105::95d) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | srid[m] | (~sridmatri@2001:470:69fc:105::1c2) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | Drezil | (~drezilkif@2001:470:69fc:105::7f8) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | amesgen[m] | (~amesgenam@2001:470:69fc:105::82b) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | Las[m] | (~lasmatrix@2001:470:69fc:105::74e) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | thedward[m] | (~thedwardm@2001:470:69fc:105::f79) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | eddiemundo | (~eddiemund@2001:470:69fc:105::a9c) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | hjulle[m] | (~hjullemat@2001:470:69fc:105::1dd) (Write error: Connection reset by peer) |
2021-06-13 23:04:40 +0200 | cdsmith | (~cdsmithma@2001:470:69fc:105::284) (Write error: Connection reset by peer) |
2021-06-13 23:04:42 +0200 | ServerStatsDisco | (~serversta@2001:470:69fc:105::1a) (Read error: Connection reset by peer) |
2021-06-13 23:04:42 +0200 | maralorn | (~maralorn@2001:470:69fc:105::251) (Read error: Connection reset by peer) |
2021-06-13 23:04:42 +0200 | the-coot[m] | (~the-cootm@2001:470:69fc:105::95f) (Read error: Connection reset by peer) |
2021-06-13 23:04:42 +0200 | psydroid | (~psydroidm@user/psydroid) (Read error: Connection reset by peer) |
2021-06-13 23:04:48 +0200 | poljar | (~poljar@93-139-36-109.adsl.net.t-com.hr) |
2021-06-13 23:04:55 +0200 | comerijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 23:05:00 +0200 | ralu7 | (~ralu@static.211.245.203.116.clients.your-server.de) |
2021-06-13 23:05:01 +0200 | lambdap2 | (~lambdap@static.167.190.119.168.clients.your-server.de) |
2021-06-13 23:05:15 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
2021-06-13 23:05:18 +0200 | thedward[m] | (~thedwardm@2001:470:69fc:105::f79) |
2021-06-13 23:05:21 +0200 | waleee-cl | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-06-13 23:05:22 +0200 | bmo__ | (~bmo@185.254.75.34) |
2021-06-13 23:05:24 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 23:05:57 +0200 | jao | (jao@gateway/vpn/protonvpn/jao) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | pkkm | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | Techcable | (~Techcable@168.235.93.147) (Read error: Connection reset by peer) |
2021-06-13 23:05:57 +0200 | ajarmst | (~user@S01066032b134d205.ed.shawcable.net) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | dispater | (~dispater@user/brprice) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | bmo | (~bmo@185.254.75.34) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | td_ | (~td@94.134.91.38) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | dcoutts__ | (~duncan@94.186.125.91.dyn.plus.net) (Ping timeout: 245 seconds) |
2021-06-13 23:05:57 +0200 | beka_ | (~beka@104-244-27-23.static.monkeybrains.net) |
2021-06-13 23:06:00 +0200 | teaSlurp_ | (~chris@81.96.113.213) |
2021-06-13 23:06:06 +0200 | ac | (~aloiscoch@2001:470:69fc:105::65) |
2021-06-13 23:06:06 +0200 | siraben | (~siraben@user/siraben) |
2021-06-13 23:06:06 +0200 | sm[m] | (~sm@plaintextaccounting/sm) |
2021-06-13 23:06:06 +0200 | maralorn | (~maralorn@2001:470:69fc:105::251) |
2021-06-13 23:06:07 +0200 | peddie | (~peddie@2001:470:69fc:105::25d) |
2021-06-13 23:06:07 +0200 | fgaz | (~fgaz@2001:470:69fc:105::842) |
2021-06-13 23:06:07 +0200 | fabfianda[m] | (~fabfianda@2001:470:69fc:105::6db) |
2021-06-13 23:06:07 +0200 | bb010g | (~bb010gmat@2001:470:69fc:105::9a5) |
2021-06-13 23:06:07 +0200 | psydroid | (~psydroidm@2001:470:69fc:105::165) |
2021-06-13 23:06:07 +0200 | MatrixTravelerbo | (~voyagert2@2001:470:69fc:105::22) |
2021-06-13 23:06:07 +0200 | Las[m] | (~lasmatrix@2001:470:69fc:105::74e) |
2021-06-13 23:06:07 +0200 | ServerStatsDisco | (~serversta@2001:470:69fc:105::1a) |
2021-06-13 23:06:07 +0200 | the-coot[m] | (~the-cootm@2001:470:69fc:105::95f) |
2021-06-13 23:06:07 +0200 | vaibhavsagar[m] | (~vaibhavsa@2001:470:69fc:105::ffe) |
2021-06-13 23:06:07 +0200 | kadoban | (~kadoban@user/kadoban) |
2021-06-13 23:06:07 +0200 | jophish | (~jophish@2001:470:69fc:105::670) |
2021-06-13 23:06:08 +0200 | thelounge923 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) |
2021-06-13 23:06:10 +0200 | beka | (~beka@104-244-27-23.static.monkeybrains.net) (Ping timeout: 245 seconds) |
2021-06-13 23:06:10 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 245 seconds) |
2021-06-13 23:06:11 +0200 | zebrag | (~chris@user/zebrag) (Ping timeout: 245 seconds) |
2021-06-13 23:06:11 +0200 | shapr` | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-06-13 23:06:14 +0200 | pkkm | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) |
2021-06-13 23:06:16 +0200 | pavonia_ | (~user@user/siracusa) |
2021-06-13 23:06:18 +0200 | srid[m] | (~sridmatri@2001:470:69fc:105::1c2) |
2021-06-13 23:06:18 +0200 | Morrow[m] | (~morrowmma@2001:470:69fc:105::1d0) |
2021-06-13 23:06:18 +0200 | maerwald[m] | (~maerwaldm@2001:470:69fc:105::1ee) |
2021-06-13 23:06:18 +0200 | dualinverter[m] | (~dualinver@2001:470:69fc:105::16a7) |
2021-06-13 23:06:18 +0200 | hjulle[m] | (~hjullemat@2001:470:69fc:105::1dd) |
2021-06-13 23:06:19 +0200 | cdepillabout[m] | (~cdepillab@2001:470:69fc:105::3d3) |
2021-06-13 23:06:19 +0200 | unrooted | (~unrooted@2001:470:69fc:105::a4a) |
2021-06-13 23:06:19 +0200 | tomferon[m] | (~tomferon@2001:470:69fc:105::268) |
2021-06-13 23:06:19 +0200 | wallymathieu[m] | (~wallymath@2001:470:69fc:105::16ae) |
2021-06-13 23:06:19 +0200 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) |
2021-06-13 23:06:19 +0200 | Drezil | (~drezilkif@2001:470:69fc:105::7f8) |
2021-06-13 23:06:19 +0200 | Soft | (~soft-matr@2001:470:69fc:105::c75) |
2021-06-13 23:06:19 +0200 | kosmikus[m] | (~andresloe@2001:470:69fc:105::95d) |
2021-06-13 23:06:19 +0200 | bryan[m] | (~bchreekat@2001:470:69fc:105::16b5) |
2021-06-13 23:06:19 +0200 | autrim64[m] | (~autrim64m@2001:470:69fc:105::16a1) |
2021-06-13 23:06:19 +0200 | Artem[m] | (~artemtype@2001:470:69fc:105::75b) |
2021-06-13 23:06:19 +0200 | amesgen[m] | (~amesgenam@2001:470:69fc:105::82b) |
2021-06-13 23:06:19 +0200 | eddiemundo | (~eddiemund@2001:470:69fc:105::a9c) |
2021-06-13 23:06:19 +0200 | adziahel[m] | (~adziahelm@2001:470:69fc:105::b4d) |
2021-06-13 23:06:19 +0200 | RohitGoswami[m] | (~rgoswamim@2001:470:69fc:105::16cc) |
2021-06-13 23:06:19 +0200 | yin[m] | (~zwromatri@2001:470:69fc:105::1d4) |
2021-06-13 23:06:19 +0200 | jakefromstatefar | (~jakefroms@2001:470:69fc:105::15ef) |
2021-06-13 23:06:23 +0200 | carmysilna | (~brightly-@2001:470:69fc:105::2190) |
2021-06-13 23:06:27 +0200 | Techcable | (~Techcable@168.235.93.147) |
2021-06-13 23:06:27 +0200 | cheater | (~Username@user/cheater) |
2021-06-13 23:06:34 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) |
2021-06-13 23:06:34 +0200 | jaror[m] | (~jaror@2001:470:69fc:105::265) |
2021-06-13 23:06:35 +0200 | cdsmith | (~cdsmithma@2001:470:69fc:105::284) |
2021-06-13 23:06:35 +0200 | oak- | (~oakuniver@2001:470:69fc:105::fcd) |
2021-06-13 23:06:35 +0200 | bitonic | (~bitonic@2001:470:69fc:105::1812) |
2021-06-13 23:06:35 +0200 | ru0mad[m] | (~ru0madmat@2001:470:69fc:105::9b2) |
2021-06-13 23:06:36 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) (Ping timeout: 245 seconds) |
2021-06-13 23:06:40 +0200 | benin0367 | (~benin@183.82.205.8) |
2021-06-13 23:06:41 +0200 | ralu | (~ralu@static.211.245.203.116.clients.your-server.de) (Read error: Connection reset by peer) |
2021-06-13 23:06:41 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 252 seconds) |
2021-06-13 23:06:41 +0200 | jneira | (~jneira@166.red-81-39-172.dynamicip.rima-tde.net) (Quit: Ping timeout (120 seconds)) |
2021-06-13 23:06:41 +0200 | dtman34_ | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (Quit: ZNC 1.7.2+deb3 - https://znc.in) |
2021-06-13 23:06:41 +0200 | P1RATEZ | (piratez@user/p1ratez) (Ping timeout: 252 seconds) |
2021-06-13 23:06:41 +0200 | lechner | (~lechner@letbox-vps.us-core.com) (Ping timeout: 252 seconds) |
2021-06-13 23:06:42 +0200 | sshine | (~simon@hubris.eta.solutions) (Ping timeout: 252 seconds) |
2021-06-13 23:06:43 +0200 | dispater | (~dispater@user/brprice) |
2021-06-13 23:06:48 +0200 | juhp | (~juhp@128.106.188.66) (Ping timeout: 252 seconds) |
2021-06-13 23:06:48 +0200 | ozataman | (~ozataman@71.190.112.58) (Ping timeout: 252 seconds) |
2021-06-13 23:06:48 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
2021-06-13 23:06:48 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | justBull | (~justache@user/justache) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | awth13 | (~user@user/awth13) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | Square | (~a@178.62.91.8) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | asm | (~alexander@user/asm) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | meejah | (~meejah@rutas.meejah.ca) (Ping timeout: 252 seconds) |
2021-06-13 23:06:49 +0200 | urdh | (~urdh@h88-129-148-132.cust.a3fiber.se) (Ping timeout: 252 seconds) |
2021-06-13 23:07:03 +0200 | justBull | (~justache@user/justache) |
2021-06-13 23:07:05 +0200 | awth13 | (~user@user/awth13) |
2021-06-13 23:07:21 +0200 | teaSlurper | (~chris@81.96.113.213) (Ping timeout: 252 seconds) |
2021-06-13 23:07:21 +0200 | thelounge92 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) (Ping timeout: 252 seconds) |
2021-06-13 23:07:21 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Ping timeout: 252 seconds) |
2021-06-13 23:07:22 +0200 | stefan-_ | (~cri@42dots.de) (Ping timeout: 252 seconds) |
2021-06-13 23:07:22 +0200 | lambdap | (~lambdap@static.167.190.119.168.clients.your-server.de) (Ping timeout: 252 seconds) |
2021-06-13 23:07:22 +0200 | xsarnik | (xsarnik@lounge.fi.muni.cz) (Ping timeout: 252 seconds) |
2021-06-13 23:07:25 +0200 | fendor | (~fendor@77.119.131.227.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
2021-06-13 23:07:26 +0200 | sndr | (~sander@user/sander) |
2021-06-13 23:07:32 +0200 | asm | (~alexander@burner.asm89.io) |
2021-06-13 23:07:34 +0200 | xsarnik | (xsarnik@lounge.fi.muni.cz) |
2021-06-13 23:07:34 +0200 | chaosite_ | (~chaosite@user/chaosite) |
2021-06-13 23:07:39 +0200 | poljar_ | (~poljar@93-139-36-109.adsl.net.t-com.hr) |
2021-06-13 23:07:43 +0200 | lechner | (~lechner@letbox-vps.us-core.com) |
2021-06-13 23:08:10 +0200 | stefan-_ | (~cri@42dots.de) |
2021-06-13 23:08:13 +0200 | saolof | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 23:08:21 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-13 23:08:28 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) |
2021-06-13 23:08:29 +0200 | nshepperd29 | (~nshepperd@li364-218.members.linode.com) |
2021-06-13 23:08:54 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
2021-06-13 23:09:08 +0200 | GIANTWORLDKEEPR_ | (~pjetcetal@2.95.204.25) |
2021-06-13 23:09:09 +0200 | slowButP1esent | (~slowButPr@user/slowbutpresent) |
2021-06-13 23:09:25 +0200 | gabiruh_ | (~gabiruh@vps19177.publiccloud.com.br) |
2021-06-13 23:09:55 +0200 | seeg- | (~seeg@2a05:f480:1400:311:5400:1ff:feff:256) |
2021-06-13 23:10:03 +0200 | jespada_ | (~jespada@90.254.242.55) |
2021-06-13 23:10:12 +0200 | zeenk2 | (~zeenk@188.26.30.39) |
2021-06-13 23:10:18 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-06-13 23:10:21 +0200 | Scotty_Trees | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) |
2021-06-13 23:10:21 +0200 | aighearach_ | (~paris@c-71-63-160-210.hsd1.or.comcast.net) |
2021-06-13 23:10:23 +0200 | zaquest_ | (~notzaques@5.128.210.178) |
2021-06-13 23:10:23 +0200 | Square | (~a@178.62.91.8) |
2021-06-13 23:10:24 +0200 | sshine | (~simon@hubris.eta.solutions) |
2021-06-13 23:10:35 +0200 | curiousgay__ | (~quassel@178.217.208.8) |
2021-06-13 23:10:36 +0200 | dtman34 | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) |
2021-06-13 23:10:58 +0200 | td_ | (~td@94.134.91.38) |
2021-06-13 23:10:58 +0200 | Aighearach | (~paris@c-71-63-160-210.hsd1.or.comcast.net) (Killed (NickServ (GHOST command used by aighearach_))) |
2021-06-13 23:11:02 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-06-13 23:11:03 +0200 | charukiewicz_ | (~quassel@irouteince04.i.subnet.rcn.com) |
2021-06-13 23:11:05 +0200 | ralu | (~ralu@static.211.245.203.116.clients.your-server.de) |
2021-06-13 23:11:06 +0200 | aighearach_ | Aighearach |
2021-06-13 23:11:07 +0200 | ell2 | (~ellie@user/ellie) |
2021-06-13 23:11:19 +0200 | np | (~nerdypepp@user/nerdypepper) |
2021-06-13 23:11:21 +0200 | MidAutumnMoon2 | (~MidAutumn@user/midautumnmoon) |
2021-06-13 23:11:22 +0200 | lambdap | (~lambdap@static.167.190.119.168.clients.your-server.de) |
2021-06-13 23:11:27 +0200 | pierrot_ | (~pi@user/pierrot) |
2021-06-13 23:11:31 +0200 | abhixec_ | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
2021-06-13 23:11:37 +0200 | urdh | (~urdh@h88-129-148-132.cust.a3fiber.se) |
2021-06-13 23:11:38 +0200 | wolfshappen_ | (~waff@irc.furworks.de) |
2021-06-13 23:11:51 +0200 | LambdaDu1k | (~anka@ksit.fixme.fi) |
2021-06-13 23:11:51 +0200 | barrucad1 | (~barrucadu@carcosa.barrucadu.co.uk) |
2021-06-13 23:12:01 +0200 | thaumavorio_ | (~thaumavor@thaumavor.io) |
2021-06-13 23:12:10 +0200 | xerox_ | (~edi@user/edi) |
2021-06-13 23:12:14 +0200 | mjrosenb | (~mrosenbe@nyc.schrodinger.com) |
2021-06-13 23:12:18 +0200 | Shards | (~Scraeling@user/scraeling) |
2021-06-13 23:12:23 +0200 | hpc_ | (~juzz@ip98-169-35-13.dc.dc.cox.net) |
2021-06-13 23:12:24 +0200 | comerijn_ | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-06-13 23:12:25 +0200 | int-e_ | (~noone@int-e.eu) |
2021-06-13 23:12:26 +0200 | ubuntu_ | (~ubuntu@ec2-13-49-142-87.eu-north-1.compute.amazonaws.com) |
2021-06-13 23:12:33 +0200 | ptrcmd_ | (~ptrcmd@user/ptrcmd) |
2021-06-13 23:12:34 +0200 | Bartosz | (~textual@24.35.90.211) |
2021-06-13 23:12:34 +0200 | Bartosz | (~textual@24.35.90.211) (Client Quit) |
2021-06-13 23:12:35 +0200 | jneira_ | (~jneira_@166.red-81-39-172.dynamicip.rima-tde.net) |
2021-06-13 23:12:48 +0200 | dunkeln | (~dunkeln@94.129.65.28) (Ping timeout: 272 seconds) |
2021-06-13 23:12:48 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) |
2021-06-13 23:12:49 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.204.25) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | ajarmst` | (~user@S01066032b134d205.ed.shawcable.net) |
2021-06-13 23:12:49 +0200 | jespada | (~jespada@90.254.242.55) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | pavonia | (~user@user/siracusa) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | zaquest | (~notzaques@5.128.210.178) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | poljar1 | (~poljar@93-139-36-109.adsl.net.t-com.hr) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | allbery_b | (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | bmo_ | (~bmo@185.254.75.34) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | benin036 | (~benin@183.82.205.8) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | BosonCollider | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | curiousgay | (~quassel@178.217.208.8) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | sander | (~sander@user/sander) (Ping timeout: 272 seconds) |
2021-06-13 23:12:49 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Ping timeout: 272 seconds) |
2021-06-13 23:12:50 +0200 | sndr | sander |
2021-06-13 23:12:50 +0200 | benin0367 | benin036 |
2021-06-13 23:12:54 +0200 | dixie_ | (~dixie@real.wilbury.sk) |
2021-06-13 23:13:00 +0200 | slowButP1esent | slowButPresent |
2021-06-13 23:13:08 +0200 | dy` | (~dy@user/dy) |
2021-06-13 23:13:09 +0200 | jneira_ | jneira |
2021-06-13 23:13:22 +0200 | meridion_ | (~meridion@punt.hetgrotebos.org) |
2021-06-13 23:13:47 +0200 | xlei_ | (znc@pool-68-129-84-118.nycmny.fios.verizon.net) |
2021-06-13 23:13:50 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-06-13 23:14:01 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-06-13 23:14:03 +0200 | chkno | (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) |
2021-06-13 23:14:11 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 272 seconds) |
2021-06-13 23:14:29 +0200 | forell_ | (~forell@host-178-216-90-220.sta.tvknaszapraca.pl) |
2021-06-13 23:14:37 +0200 | mniip_ | (mniip@libera/staff/mniip) |
2021-06-13 23:14:38 +0200 | chomwitt | (~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 268 seconds) |
2021-06-13 23:14:46 +0200 | chaosite | (~chaosite@user/chaosite) (Read error: Connection reset by peer) |
2021-06-13 23:14:46 +0200 | curiousgay_ | (~quassel@178.217.208.8) (Read error: Connection reset by peer) |
2021-06-13 23:14:46 +0200 | dy | (~dy@user/dy) (Ping timeout: 264 seconds) |
2021-06-13 23:14:46 +0200 | yahb | (xsbot@user/mniip/bot/yahb) (Ping timeout: 264 seconds) |
2021-06-13 23:14:46 +0200 | xerox | (~edi@user/edi) (Ping timeout: 264 seconds) |
2021-06-13 23:14:46 +0200 | Ekho | (~Ekho@user/ekho) (Ping timeout: 264 seconds) |
2021-06-13 23:14:46 +0200 | wolfshappen | (~waff@irc.furworks.de) (Read error: Connection reset by peer) |
2021-06-13 23:14:46 +0200 | pavonia_ | (~user@user/siracusa) (Ping timeout: 264 seconds) |
2021-06-13 23:14:46 +0200 | shapr` | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | bmo__ | (~bmo@185.254.75.34) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | poljar | (~poljar@93-139-36-109.adsl.net.t-com.hr) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | Scotty_Trees2 | (~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | abhixec | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | MidAutumnMoon | (~MidAutumn@user/midautumnmoon) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | ptrcmd | (~ptrcmd@user/ptrcmd) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | forell | (~forell@host-178-216-90-220.sta.tvknaszapraca.pl) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | LambdaDuck | (~anka@ksit.fixme.fi) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | nshepperd2 | (~nshepperd@li364-218.members.linode.com) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | barrucadu | (~barrucadu@carcosa.barrucadu.co.uk) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | superbil | (~superbil@1-34-176-171.HINET-IP.hinet.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | bjfs | (bart@kobayashi.com.pl) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | ralu7 | (~ralu@static.211.245.203.116.clients.your-server.de) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | comerijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | zeenk | (~zeenk@188.26.30.39) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | seeg_ | (~seeg@45.76.32.162) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | mjrosenb_ | (~mrosenbe@104.225.243.2) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | ell | (~ellie@user/ellie) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | Guest2041 | (~ubuntu@ec2-13-49-142-87.eu-north-1.compute.amazonaws.com) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | thaumavorio | (~thaumavor@thaumavor.io) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | int-e | (~noone@int-e.eu) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | gabiruh | (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | Scraeling | (~Scraeling@34.84.165.63) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | meridion | (~meridion@punt.hetgrotebos.org) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | lambdap2 | (~lambdap@static.167.190.119.168.clients.your-server.de) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | tcard | (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | pierrot | (~pi@user/pierrot) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | acarrico | (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | charukiewicz | (~quassel@irouteince04.i.subnet.rcn.com) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | hpc | (~juzz@98.169.35.13) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | dixie | (~dixie@real.wilbury.sk) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | nerdypepper | (~nerdypepp@user/nerdypepper) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | mniip | (mniip@libera/staff/mniip) (Ping timeout: 624 seconds) |
2021-06-13 23:14:47 +0200 | chkno_ | (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-06-13 23:14:47 +0200 | xlei | (znc@pool-68-129-84-118.nycmny.fios.verizon.net) (Ping timeout: 264 seconds) |
2021-06-13 23:14:47 +0200 | MidAutumnMoon2 | MidAutumnMoon |
2021-06-13 23:14:48 +0200 | ell2 | ell |
2021-06-13 23:14:58 +0200 | Sgeo_ | (~Sgeo@ool-18b9875e.dyn.optonline.net) |
2021-06-13 23:15:11 +0200 | meejah | (~meejah@rutas.meejah.ca) |
2021-06-13 23:15:13 +0200 | nilof | (~olofs@90-227-86-119-no542.tbcn.telia.com) |
2021-06-13 23:15:29 +0200 | poljar | (~poljar@93-139-36-109.adsl.net.t-com.hr) |
2021-06-13 23:15:33 +0200 | yahb | (xsbot@user/mniip/bot/yahb) |
2021-06-13 23:15:33 +0200 | notzmv | (~zmv@user/notzmv) |
2021-06-13 23:15:50 +0200 | acarrico | (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) |
2021-06-13 23:16:02 +0200 | teaSlurper | (~chris@81.96.113.213) |
2021-06-13 23:16:09 +0200 | waleee-cl | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds) |
2021-06-13 23:16:09 +0200 | beka__ | (~beka@104-244-27-23.static.monkeybrains.net) |
2021-06-13 23:16:16 +0200 | safinaskar | (~safinaska@109.252.90.89) () |
2021-06-13 23:16:34 +0200 | nshepperd2 | (~nshepperd@li364-218.members.linode.com) |
2021-06-13 23:17:05 +0200 | benin0362 | (~benin@183.82.205.8) |
2021-06-13 23:17:12 +0200 | awth13` | (~user@185.209.196.143) |
2021-06-13 23:17:18 +0200 | pavonia | (~user@user/siracusa) |
2021-06-13 23:17:22 +0200 | ham | (~ham4@user/ham) (Read error: Connection reset by peer) |
2021-06-13 23:17:40 +0200 | waleee-cl | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-06-13 23:18:02 +0200 | thelounge9230 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) |
2021-06-13 23:18:14 +0200 | oxide | (~lambda@user/oxide) |
2021-06-13 23:18:39 +0200 | pkkm2 | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) |
2021-06-13 23:18:42 +0200 | teehemkay_ | (sid14792@id-14792.tooting.irccloud.com) |
2021-06-13 23:18:43 +0200 | wroathe_ | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-06-13 23:18:58 +0200 | Tuplanolla1 | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
2021-06-13 23:19:16 +0200 | iphy_ | (sid67735@id-67735.tooting.irccloud.com) |
2021-06-13 23:19:21 +0200 | chaosite | (~chaosite@user/chaosite) |
2021-06-13 23:19:26 +0200 | ham | (~ham4@user/ham) |
2021-06-13 23:19:42 +0200 | NemesisD_ | (sid24071@id-24071.tooting.irccloud.com) |
2021-06-13 23:19:45 +0200 | teehemkay | (sid14792@id-14792.tooting.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | acid | (~acid@user/acid) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | iphy | (sid67735@2001:67c:2f08:4::1:897) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | jackhill | (~jackhill@kalessin.dragonsnail.net) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | kmein | (~weechat@user/kmein) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | dwt_ | (~dwt_@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | liskin | (~liskin@xmonad/liskin) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | NemesisD | (sid24071@2001:67c:2f08:4::5e07) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | esclear[i] | (~esclear@phobos.esclear.de) (Ping timeout: 265 seconds) |
2021-06-13 23:19:45 +0200 | koz | (~koz@121.99.240.58) (Ping timeout: 265 seconds) |
2021-06-13 23:19:46 +0200 | teehemkay_ | teehemkay |
2021-06-13 23:19:46 +0200 | iphy_ | iphy |
2021-06-13 23:19:46 +0200 | NemesisD_ | NemesisD |
2021-06-13 23:19:49 +0200 | Techcable_ | (~Techcable@168.235.93.147) |
2021-06-13 23:19:54 +0200 | lisk1n | (~liskin@xmonad/liskin) |
2021-06-13 23:19:55 +0200 | kmein | (~weechat@user/kmein) |
2021-06-13 23:20:00 +0200 | xsarnik3 | (xsarnik@lounge.fi.muni.cz) |
2021-06-13 23:20:00 +0200 | koz- | (~koz@121.99.240.58) |
2021-06-13 23:20:03 +0200 | koz- | koz |
2021-06-13 23:20:14 +0200 | sndr | (~sander@user/sander) |
2021-06-13 23:20:18 +0200 | slowButP1esent | (~slowButPr@user/slowbutpresent) |
2021-06-13 23:20:19 +0200 | asm_ | (~alexander@burner.asm89.io) |
2021-06-13 23:20:24 +0200 | bcoppens_ | (~bartcopp@vpn2.bartcoppens.be) |
2021-06-13 23:20:57 +0200 | comerijn_ | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds) |
2021-06-13 23:21:02 +0200 | Guest2 | (~Guest2@154.21.21.108) (Quit: Client closed) |
2021-06-13 23:21:07 +0200 | NieDzejkob_ | (~quassel@195.149.98.3) |
2021-06-13 23:21:11 +0200 | Unode_ | (~Unode@194.94.44.220) |
2021-06-13 23:21:13 +0200 | mekeor | (~user@2001:a61:34b6:5701:f8e2:383b:42a4:84ad) |
2021-06-13 23:21:22 +0200 | pie__bnc | (~pie_bnc@user/pie/x-2818909) |
2021-06-13 23:21:36 +0200 | acid | (~acid@user/acid) |
2021-06-13 23:21:40 +0200 | lisq_ | (~quassel@lis.moe) |
2021-06-13 23:21:44 +0200 | esclear[i] | (~esclear@phobos.esclear.de) |
2021-06-13 23:21:45 +0200 | Aleksejs_Home | (~Aleksejs@haskell.lv) |
2021-06-13 23:21:54 +0200 | neceve | (~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 264 seconds) |
2021-06-13 23:22:01 +0200 | NieDzejkob | (~quassel@195.149.98.3) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | fjmorazan | (~quassel@user/fjmorazan) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | bcoppens | (~bartcopp@vpn2.bartcoppens.be) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | Aleksejs | (~Aleksejs@haskell.lv) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | Unode | (~Unode@194.94.44.220) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | pie_bnc | (~pie_bnc@user/pie/x-2818909) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | amir | (sid22336@user/amir) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | c_wraith | (~c_wraith@adjoint.us) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | agander_m | (sid407952@id-407952.tinside.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | dexterfoo | (dexter@2a01:7e00::f03c:91ff:fe86:59ec) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | kaychaks_ | (sid236345@id-236345.brockwell.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:22:02 +0200 | Unode_ | Unode |
2021-06-13 23:22:04 +0200 | incertia | (~incertia@d4-50-26-103.nap.wideopenwest.com) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | lisq | (~quassel@lis.moe) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | bbhoss | (sid18216@id-18216.tinside.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | ski | (~ski@ed-3358-10.studat.chalmers.se) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | peutri | (~peutri@ns317027.ip-94-23-46.eu) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | T_S_ | (sid501726@id-501726.highgate.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:22:04 +0200 | integral | (sid296274@user/integral) (Ping timeout: 265 seconds) |
2021-06-13 23:22:06 +0200 | pieguy128 | (~pieguy128@bras-base-mtrlpq5031w-grc-57-65-92-163-194.dsl.bell.ca) |
2021-06-13 23:22:06 +0200 | fjmorazan_ | (~quassel@user/fjmorazan) |
2021-06-13 23:22:23 +0200 | ski | (~ski@ed-3358-10.studat.chalmers.se) |
2021-06-13 23:22:30 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Killed (NickServ (GHOST command used by Tuplanolla1))) |
2021-06-13 23:22:33 +0200 | kaychaks_ | (sid236345@brockwell.irccloud.com) |
2021-06-13 23:22:33 +0200 | Tuplanolla1 | Tuplanolla |
2021-06-13 23:22:33 +0200 | amir | (sid22336@user/amir) |
2021-06-13 23:22:42 +0200 | abrar | (~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (Ping timeout: 265 seconds) |
2021-06-13 23:22:42 +0200 | adamse | (sid72084@user/adamse) (Ping timeout: 265 seconds) |
2021-06-13 23:22:44 +0200 | dexterfoo | (dexter@2a01:7e00::f03c:91ff:fe86:59ec) |
2021-06-13 23:22:45 +0200 | cheater1__ | (~Username@user/cheater) |
2021-06-13 23:22:50 +0200 | abrar_ | (~abrar@static-108-2-152-54.phlapa.fios.verizon.net) |
2021-06-13 23:22:51 +0200 | peutri | (~peutri@ns317027.ip-94-23-46.eu) |
2021-06-13 23:23:00 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 23:23:02 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-06-13 23:23:08 +0200 | Natch | (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) (Ping timeout: 265 seconds) |
2021-06-13 23:23:08 +0200 | pieguy128_ | (~pieguy128@bas1-montreal02-65-92-163-194.dsl.bell.ca) (Ping timeout: 265 seconds) |
2021-06-13 23:23:31 +0200 | T_S_ | (sid501726@id-501726.highgate.irccloud.com) |
2021-06-13 23:23:34 +0200 | integral | (sid296274@user/integral) |
2021-06-13 23:23:38 +0200 | Patternm1ster | (~georg@li1192-118.members.linode.com) |
2021-06-13 23:23:40 +0200 | Ekho- | (~Ekho@user/ekho) |
2021-06-13 23:23:42 +0200 | agander_m | (sid407952@id-407952.tinside.irccloud.com) |
2021-06-13 23:23:44 +0200 | adamse | (sid72084@user/adamse) |
2021-06-13 23:23:49 +0200 | remexre | (~nathan@user/remexre) (Remote host closed the connection) |
2021-06-13 23:24:04 +0200 | remexre | (~nathan@user/remexre) |
2021-06-13 23:24:10 +0200 | meridion_ | meridion |
2021-06-13 23:24:22 +0200 | tcard | (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) |
2021-06-13 23:24:23 +0200 | bbhoss | (sid18216@id-18216.tinside.irccloud.com) |
2021-06-13 23:24:48 +0200 | jackhill | (~jackhill@kalessin.dragonsnail.net) |
2021-06-13 23:24:53 +0200 | zaquest_ | (~notzaques@5.128.210.178) (*.net *.split) |
2021-06-13 23:24:53 +0200 | xlei_ | (znc@pool-68-129-84-118.nycmny.fios.verizon.net) (*.net *.split) |
2021-06-13 23:24:53 +0200 | GIANTWORLDKEEPR_ | (~pjetcetal@2.95.204.25) (*.net *.split) |
2021-06-13 23:24:53 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (*.net *.split) |
2021-06-13 23:24:53 +0200 | nshepperd29 | (~nshepperd@li364-218.members.linode.com) (*.net *.split) |
2021-06-13 23:24:53 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (*.net *.split) |
2021-06-13 23:24:53 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (*.net *.split) |
2021-06-13 23:24:53 +0200 | saolof | (~olofs@90-227-86-119-no542.tbcn.telia.com) (*.net *.split) |
2021-06-13 23:24:53 +0200 | stefan-_ | (~cri@42dots.de) (*.net *.split) |
2021-06-13 23:24:53 +0200 | poljar_ | (~poljar@93-139-36-109.adsl.net.t-com.hr) (*.net *.split) |
2021-06-13 23:24:53 +0200 | chaosite_ | (~chaosite@user/chaosite) (*.net *.split) |
2021-06-13 23:24:53 +0200 | xsarnik | (xsarnik@lounge.fi.muni.cz) (*.net *.split) |
2021-06-13 23:24:53 +0200 | asm | (~alexander@burner.asm89.io) (*.net *.split) |
2021-06-13 23:24:53 +0200 | sander | (~sander@user/sander) (*.net *.split) |
2021-06-13 23:24:53 +0200 | awth13 | (~user@user/awth13) (*.net *.split) |
2021-06-13 23:24:53 +0200 | benin036 | (~benin@183.82.205.8) (*.net *.split) |
2021-06-13 23:24:53 +0200 | Techcable | (~Techcable@168.235.93.147) (*.net *.split) |
2021-06-13 23:24:53 +0200 | justBull | (~justache@user/justache) (*.net *.split) |
2021-06-13 23:24:53 +0200 | cheater | (~Username@user/cheater) (*.net *.split) |
2021-06-13 23:24:53 +0200 | pkkm | (~pkkm@dgs4.neoplus.adsl.tpnet.pl) (*.net *.split) |
2021-06-13 23:24:53 +0200 | thelounge923 | (~thelounge@cpe-23-240-28-18.socal.res.rr.com) (*.net *.split) |
2021-06-13 23:24:53 +0200 | teaSlurp_ | (~chris@81.96.113.213) (*.net *.split) |
2021-06-13 23:24:53 +0200 | beka_ | (~beka@104-244-27-23.static.monkeybrains.net) (*.net *.split) |
2021-06-13 23:24:53 +0200 | xsperry | (~as@user/xsperry) (*.net *.split) |
2021-06-13 23:24:53 +0200 | Sgeo | (~Sgeo@user/sgeo) (*.net *.split) |
2021-06-13 23:24:53 +0200 | tv | (~tv@user/tv) (*.net *.split) |
2021-06-13 23:24:53 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (*.net *.split) |
2021-06-13 23:24:54 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-06-13 23:24:55 +0200 | sndr | sander |
2021-06-13 23:24:55 +0200 | benin0362 | benin036 |
2021-06-13 23:24:55 +0200 | xsarnik3 | xsarnik |
2021-06-13 23:24:57 +0200 | cheater1__ | cheater |
2021-06-13 23:25:02 +0200 | stefan-__ | (~cri@42dots.de) |
2021-06-13 23:25:21 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) (Ping timeout: 265 seconds) |
2021-06-13 23:25:21 +0200 | tureba | (tureba@tureba.org) (Ping timeout: 265 seconds) |
2021-06-13 23:25:27 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) |
2021-06-13 23:25:34 +0200 | c_wraith | (~c_wraith@adjoint.us) |
2021-06-13 23:25:37 +0200 | justBull7 | (~justache@user/justache) |
2021-06-13 23:25:49 +0200 | V | (~v@anomalous.eu) (Ping timeout: 265 seconds) |
2021-06-13 23:25:49 +0200 | Patternmaster | (~georg@li1192-118.members.linode.com) (Ping timeout: 265 seconds) |
2021-06-13 23:26:00 +0200 | tv | (~tv@user/tv) |
2021-06-13 23:26:18 +0200 | zaquest_ | (~notzaques@5.128.210.178) |
2021-06-13 23:26:23 +0200 | incertia | (~incertia@d4-50-26-103.nap.wideopenwest.com) |
2021-06-13 23:26:25 +0200 | lisk1n | liskin |
2021-06-13 23:26:26 +0200 | slowButP1esent | slowButPresent |
2021-06-13 23:26:36 +0200 | V | (~v@anomalous.eu) |
2021-06-13 23:26:36 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) |
2021-06-13 23:27:27 +0200 | xlei | (znc@pool-68-129-84-118.nycmny.fios.verizon.net) |
2021-06-13 23:27:40 +0200 | wroathe_ | wroathe |
2021-06-13 23:27:44 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-06-13 23:27:46 +0200 | tureba | (~tureba@tureba.org) |
2021-06-13 23:27:52 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2021-06-13 23:28:15 +0200 | Natch | (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) |
2021-06-13 23:28:53 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-13 23:29:17 +0200 | xsperry | (~as@user/xsperry) |
2021-06-13 23:30:10 +0200 | Megant | (megant@user/megant) (Ping timeout: 265 seconds) |
2021-06-13 23:30:34 +0200 | geekosaur | (~geekosaur@069-135-003-034.biz.spectrum.com) (Changing host) |
2021-06-13 23:30:34 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-06-13 23:30:39 +0200 | Megant | (megant@user/megant) |
2021-06-13 23:30:53 +0200 | GIANTWORLDKEEPR_ | (~pjetcetal@2.95.204.25) |
2021-06-13 23:35:05 +0200 | Bartosz | (~textual@104.192.206.22) |
2021-06-13 23:35:15 +0200 | sm2n | (~sm2n@user/sm2n) |
2021-06-13 23:36:05 +0200 | justBull7 | justBull |
2021-06-13 23:36:35 +0200 | blackbar1 | (~sv@pool-173-63-177-191.nwrknj.fios.verizon.net) |
2021-06-13 23:36:43 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) |
2021-06-13 23:37:12 +0200 | haskl | (~haskeller@2601:643:897f:561d:f1b9:73f1:b827:9693) (Remote host closed the connection) |
2021-06-13 23:37:16 +0200 | haskller | (~haskeller@2601:643:897f:561d:f1b9:73f1:b827:9693) |
2021-06-13 23:37:20 +0200 | Ariakenom | (~Ariakenom@2001:9b1:efb:fc00:b19b:35e2:2fd0:444d) (Quit: Leaving) |
2021-06-13 23:37:42 +0200 | superbil | (~superbil@1-34-176-171.HINET-IP.hinet.net) |
2021-06-13 23:37:53 +0200 | bjfs | (bart@kobayashi.com.pl) |
2021-06-13 23:38:22 +0200 | barrucad1 | barrucadu |
2021-06-13 23:38:24 +0200 | zfnmxt | (~zfnmxt@user/zfnmxt) (Quit: Bye!) |
2021-06-13 23:41:55 +0200 | azeem | (~azeem@dynamic-adsl-78-13-238-239.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-06-13 23:43:31 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-06-13 23:44:35 +0200 | fizbin | (~fizbin@2601:8a:4080:1280:3d39:470:d12f:3be6) (Remote host closed the connection) |
2021-06-13 23:47:59 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
2021-06-13 23:50:43 +0200 | bfrk | (~bfrk@200116b845b21700ca15fbad8d1b9d07.dip.versatel-1u1.de) (Ping timeout: 244 seconds) |
2021-06-13 23:51:19 +0200 | forell_ | forell |
2021-06-13 23:53:07 +0200 | jmcarthur | (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
2021-06-13 23:53:57 +0200 | chaosite | (~chaosite@user/chaosite) (Ping timeout: 272 seconds) |
2021-06-13 23:54:48 +0200 | Bartosz | (~textual@104.192.206.22) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-06-13 23:54:52 +0200 | tcard | (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving) |
2021-06-13 23:57:07 +0200 | superbil | (~superbil@1-34-176-171.HINET-IP.hinet.net) (Ping timeout: 244 seconds) |
2021-06-13 23:57:20 +0200 | warnz | (~warnz@2600:1700:77c0:5610:210a:ba95:5325:60a6) |
2021-06-13 23:58:23 +0200 | tcard | (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) |
2021-06-13 23:59:22 +0200 | chaosite | (~chaosite@user/chaosite) |