2023-03-06 00:00:05 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-03-06 00:09:39 +0100 | gastus | (~gastus@185.6.123.155) (Ping timeout: 255 seconds) |
2023-03-06 00:09:47 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-03-06 00:09:47 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-03-06 00:09:47 +0100 | finn_elija | FinnElija |
2023-03-06 00:11:09 +0100 | azimut_ | (~azimut@gateway/tor-sasl/azimut) |
2023-03-06 00:11:26 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
2023-03-06 00:17:19 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
2023-03-06 00:20:17 +0100 | johnjaye | (~pi@173.209.64.74) |
2023-03-06 00:20:42 +0100 | <johnjaye> | i'm looking at the ghcup install script. as far as i can see it sets the prefix itself to $HOME/.ghcup correct? |
2023-03-06 00:20:46 +0100 | <johnjaye> | so there is no way to install somewhere else? |
2023-03-06 00:23:41 +0100 | michalz | (~michalz@185.246.204.105) (Remote host closed the connection) |
2023-03-06 00:24:44 +0100 | solzao | (~zelador@187.61.153.177) |
2023-03-06 00:25:05 +0100 | mrcsno | (~mrcsno@user/mrcsno) |
2023-03-06 00:25:42 +0100 | <monochrom> | See https://www.haskell.org/ghcup/guide/#env-variables GHCUP_INSTALL_BASE_PREFIX |
2023-03-06 00:25:57 +0100 | <monochrom> | or even GHCUP_USE_XDG_DIRS |
2023-03-06 00:27:06 +0100 | Tuplanolla | (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-03-06 00:27:21 +0100 | <mauke> | the relevant lines in the install script are 37-55 |
2023-03-06 00:29:53 +0100 | <mauke> | heh. "see XDG support above" (actual section is immediately below) |
2023-03-06 00:30:36 +0100 | <monochrom> | oh haha |
2023-03-06 00:34:31 +0100 | king_gs | (~Thunderbi@187.201.41.239) |
2023-03-06 00:39:53 +0100 | abhixec | (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Read error: Connection reset by peer) |
2023-03-06 00:39:59 +0100 | irrgit_ | (~irrgit@176.113.74.130) (Remote host closed the connection) |
2023-03-06 00:41:02 +0100 | irrgit_ | (~irrgit@146.70.27.218) |
2023-03-06 00:42:19 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Quit: WeeChat 3.8) |
2023-03-06 00:42:37 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-03-06 00:51:38 +0100 | <hammond> | so i'm learning haskell, and i saw this example init xs = reverse (tail(reverse xs)) and the lecturer says not to worry about how many functions you end up using the haskell compiler will make it effecient in the end. |
2023-03-06 00:51:45 +0100 | <johnjaye> | monochrom: ah so i need to just insert my own value for that variable after line 55? |
2023-03-06 00:52:59 +0100 | <hammond> | I was wondering if I repeat the reverse tail functions a million times in my code would the compiler resolve it to the same thing in the end? |
2023-03-06 00:53:13 +0100 | <mauke> | hammond: same as what? |
2023-03-06 00:53:49 +0100 | <hammond> | not reverse tail, reverse reverse. |
2023-03-06 00:54:04 +0100 | <hammond> | just calling the function reverse. |
2023-03-06 00:54:23 +0100 | <hpc> | hammond: doing anything a million times is going be slow, but the point is these aren't like say, python functions |
2023-03-06 00:54:33 +0100 | <hpc> | in python, function calls are object lookups and all sorts of other goofy stuff |
2023-03-06 00:54:33 +0100 | <mauke> | I don't think it would because the difference would be observable |
2023-03-06 00:54:52 +0100 | <hpc> | in c++, function calls might be a bunch of pointer dereferencing because it's a virtual function |
2023-03-06 00:54:58 +0100 | <mauke> | that is, reverse . reverse is not the identity on infinite lists |
2023-03-06 00:55:10 +0100 | <hpc> | in haskell, a function call might be just a jmp |
2023-03-06 00:55:30 +0100 | <davean> | hpc: Composing 1 million reverses and calling it might be half a million calls to id, which is 0 calls to id. Should be fast :) |
2023-03-06 00:55:44 +0100 | <hpc> | > fix id -- infinite speed! |
2023-03-06 00:55:46 +0100 | <lambdabot> | *Exception: <<loop>> |
2023-03-06 00:55:47 +0100 | <hpc> | :P |
2023-03-06 00:56:05 +0100 | <mauke> | > reverse (reverse [0 ..]) |
2023-03-06 00:56:12 +0100 | <jackdk> | > fix error -- remains my favourite |
2023-03-06 00:56:15 +0100 | <lambdabot> | mueval-core: Time limit exceeded |
2023-03-06 00:56:15 +0100 | <lambdabot> | "*Exception: *Exception: *Exception: *Exception: *Exception: *Exception: *Ex... |
2023-03-06 00:56:16 +0100 | mechap | (~mechap@user/mechap) (Quit: WeeChat 3.8) |
2023-03-06 00:56:28 +0100 | <hpc> | basically, the point is worrying about function calls in haskell is like worrying about semicolons in java |
2023-03-06 00:57:00 +0100 | <hammond> | well |
2023-03-06 00:57:02 +0100 | <mauke> | if you use PHP, you never have to use semicolons |
2023-03-06 00:57:17 +0100 | <mauke> | that's what makes it so efficient |
2023-03-06 00:57:43 +0100 | <mauke> | > init [0 ..] |
2023-03-06 00:57:45 +0100 | <lambdabot> | [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2... |
2023-03-06 00:57:49 +0100 | <jackdk> | PHP = Purescript/Haskell/Postgres stack? |
2023-03-06 00:58:32 +0100 | <mauke> | instead of ; you just write ?><?php |
2023-03-06 01:00:31 +0100 | <hammond> | I'm just trying to see if the compiler can tell this, two reverses on a list is the same as though i didn't do anything to it, and instead of calling the function, it decides not to call it at all. |
2023-03-06 01:00:48 +0100 | <monochrom> | Sigh your lecturer is wrong too. |
2023-03-06 01:00:59 +0100 | <hammond> | ok |
2023-03-06 01:01:01 +0100 | <mauke> | it is not the same as doing nothing |
2023-03-06 01:01:06 +0100 | <mauke> | see my example above |
2023-03-06 01:01:06 +0100 | <monochrom> | The compiler doesn't know this. |
2023-03-06 01:01:11 +0100 | <hammond> | so i have to be careful |
2023-03-06 01:01:27 +0100 | <monochrom> | The real reason you don't worry about efficiency at this stage is solely that you're just starting. |
2023-03-06 01:01:46 +0100 | <mauke> | yes, but more for reasons of "will this terminate at all?", not efficiency per se |
2023-03-06 01:02:01 +0100 | <monochrom> | We don't even talk about performance in front of C beginners. |
2023-03-06 01:02:58 +0100 | euandreh | (~Thunderbi@189.6.18.7) (Quit: euandreh) |
2023-03-06 01:03:40 +0100 | johnw | (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
2023-03-06 01:04:06 +0100 | jwiegley | (~jwiegley@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
2023-03-06 01:04:32 +0100 | <monochrom> | At the beginner level the most you can do is stay at the leve of big-O. |
2023-03-06 01:04:37 +0100 | <johnjaye> | surprised ghc is written in c, i thought it would be c++ |
2023-03-06 01:05:24 +0100 | <mauke> | ?? it's written in Haskell |
2023-03-06 01:05:24 +0100 | <lambdabot> | it's written in Haskell |
2023-03-06 01:05:49 +0100 | <johnjaye> | well don't tell wikipedia that. |
2023-03-06 01:05:56 +0100 | <johnjaye> | > Written in Haskell and C |
2023-03-06 01:05:58 +0100 | <lambdabot> | <hint>:1:9: error: parse error on input ‘in’ |
2023-03-06 01:06:54 +0100 | <monochrom> | > "written in Haskell and C" == "written in C" |
2023-03-06 01:06:56 +0100 | <lambdabot> | False |
2023-03-06 01:07:34 +0100 | <monochrom> | (P.S. No, no one knows what you "meant".) |
2023-03-06 01:08:27 +0100 | mauke_ | (~mauke@user/mauke) |
2023-03-06 01:08:29 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9169:384f:bf1b:a487) (Remote host closed the connection) |
2023-03-06 01:08:33 +0100 | <hpc> | ghc is written in c the same way gcc is written in assembly |
2023-03-06 01:08:44 +0100 | <mauke_> | "GHC itself is written in Haskell,[11] but the runtime system for Haskell, essential to run programs, is written in C and C--." |
2023-03-06 01:08:50 +0100 | <mauke_> | as I was saying |
2023-03-06 01:09:35 +0100 | mauke | (~mauke@user/mauke) (Ping timeout: 248 seconds) |
2023-03-06 01:09:36 +0100 | mauke_ | mauke |
2023-03-06 01:10:36 +0100 | <johnjaye> | so the c isn't necessarily even part of the algorithm, it's just glue to enable you to run the compiler? |
2023-03-06 01:11:02 +0100 | <johnjaye> | like the gnu assembler makes those start and exit routines when you assemble a file |
2023-03-06 01:11:34 +0100 | <dsal> | You can just look. https://github.com/ghc/ghc has a "Languages" section which describes the repo as a whole. |
2023-03-06 01:12:30 +0100 | <mauke> | ... which is a wild guess and highly inaccurate |
2023-03-06 01:13:23 +0100 | <mauke> | for example, all the tests are mislabeled as "Terra" |
2023-03-06 01:13:23 +0100 | king_gs | (~Thunderbi@187.201.41.239) (Read error: Connection reset by peer) |
2023-03-06 01:14:50 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) |
2023-03-06 01:16:16 +0100 | <dsal> | Well, sure, but it takes you to what it considers C code and you can look around. I don't think it confuses C code for Haskell code. |
2023-03-06 01:17:49 +0100 | <mauke> | if you put it in a file called something.c, sure it will |
2023-03-06 01:18:06 +0100 | <dsal> | Does the ghc code do that a lot? |
2023-03-06 01:19:39 +0100 | mrcsno | mrcsno_afk |
2023-03-06 01:20:03 +0100 | <mauke> | probably not, but are you going to check all the .c and .h files? :-) |
2023-03-06 01:20:15 +0100 | CiaoSen | (~Jura@p200300c9570e91002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 01:20:44 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) (Remote host closed the connection) |
2023-03-06 01:20:46 +0100 | <mauke> | oh hell yeah, it misdetects 118 files as Raku |
2023-03-06 01:20:51 +0100 | <mauke> | (they're actually Python) |
2023-03-06 01:21:28 +0100 | <dsal> | No. Just pointing out that the code's there if someone wants to ponder which parts are haskell and which parts are c. You don't have to trust the github tool, but it does take you things it identifies. |
2023-03-06 01:22:26 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-03-06 01:22:26 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-03-06 01:22:26 +0100 | wroathe | (~wroathe@user/wroathe) |
2023-03-06 01:24:00 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-177-117.46.114.pool.telefonica.de) (Ping timeout: 248 seconds) |
2023-03-06 01:24:00 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-03-06 01:27:51 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 255 seconds) |
2023-03-06 01:28:51 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c44791275394656fcc6d.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2023-03-06 01:29:06 +0100 | stackdroid18 | (14094@de1.hashbang.sh) (Quit: hasta la vista... tchau!) |
2023-03-06 01:33:14 +0100 | mmhat | (~mmh@p200300f1c72dcd21ee086bfffe095315.dip0.t-ipconnect.de) |
2023-03-06 01:34:40 +0100 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) |
2023-03-06 01:35:42 +0100 | bilegeek_ | (~bilegeek@161.sub-174-208-233.myvzw.com) |
2023-03-06 01:36:10 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-03-06 01:37:30 +0100 | jumper149 | (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 3.8) |
2023-03-06 01:38:12 +0100 | bilegeek | (~bilegeek@2600:1008:b021:4218:6410:3e2f:ccc:adc4) (Ping timeout: 255 seconds) |
2023-03-06 01:38:53 +0100 | pera | (~pera@user/pera) (Quit: leaving) |
2023-03-06 01:43:56 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9169:384f:bf1b:a487) |
2023-03-06 02:03:41 +0100 | andrewboltachev | (~andrey@178.141.199.8) (Quit: Leaving.) |
2023-03-06 02:10:57 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2023-03-06 02:13:34 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 02:17:04 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2023-03-06 02:20:09 +0100 | xff0x | (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 255 seconds) |
2023-03-06 02:29:04 +0100 | grnman_ | (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) |
2023-03-06 02:47:09 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
2023-03-06 02:51:25 +0100 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 03:02:44 +0100 | sagax | (~sagax_nb@user/sagax) (Quit: Konversation terminated!) |
2023-03-06 03:10:04 +0100 | alecs | (~alecs@host-79-44-188-195.retail.telecomitalia.it) (Quit: WeeChat 3.8) |
2023-03-06 03:10:10 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
2023-03-06 03:11:12 +0100 | vglfr | (~vglfr@145.224.100.65) (Ping timeout: 248 seconds) |
2023-03-06 03:21:22 +0100 | bilegeek_ | (~bilegeek@161.sub-174-208-233.myvzw.com) (Remote host closed the connection) |
2023-03-06 03:21:24 +0100 | azimut_ | (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in) |
2023-03-06 03:21:41 +0100 | bilegeek_ | (~bilegeek@161.sub-174-208-233.myvzw.com) |
2023-03-06 03:21:56 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-03-06 03:23:18 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2023-03-06 03:23:57 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds) |
2023-03-06 03:24:37 +0100 | Lord_of_Life_ | Lord_of_Life |
2023-03-06 03:31:20 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2023-03-06 03:33:30 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds) |
2023-03-06 03:45:37 +0100 | emmanuelux_ | (~emmanuelu@user/emmanuelux) |
2023-03-06 03:47:53 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-03-06 03:48:42 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Ping timeout: 255 seconds) |
2023-03-06 03:49:06 +0100 | emmanuelux_ | (~emmanuelu@user/emmanuelux) (Client Quit) |
2023-03-06 03:51:12 +0100 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 248 seconds) |
2023-03-06 03:52:46 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-03-06 03:55:32 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
2023-03-06 03:57:15 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-03-06 04:03:58 +0100 | razetime | (~Thunderbi@117.254.34.243) |
2023-03-06 04:07:34 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-03-06 04:07:34 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-03-06 04:07:34 +0100 | finn_elija | FinnElija |
2023-03-06 04:14:51 +0100 | hugo | (znc@verdigris.lysator.liu.se) |
2023-03-06 04:20:31 +0100 | mmhat | (~mmh@p200300f1c72dcd21ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 04:23:16 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6) |
2023-03-06 04:32:37 +0100 | td_ | (~td@i5387093C.versanet.de) (Ping timeout: 268 seconds) |
2023-03-06 04:34:22 +0100 | td_ | (~td@i53870927.versanet.de) |
2023-03-06 04:34:40 +0100 | mmhat | (~mmh@p200300f1c7052b40ee086bfffe095315.dip0.t-ipconnect.de) |
2023-03-06 04:37:08 +0100 | jero98772 | (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection) |
2023-03-06 04:41:58 +0100 | razetime | (~Thunderbi@117.254.34.243) (Remote host closed the connection) |
2023-03-06 04:42:57 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-03-06 04:43:46 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 04:48:39 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
2023-03-06 04:54:50 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-03-06 04:56:17 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
2023-03-06 04:56:51 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-03-06 05:04:37 +0100 | mbuf | (~Shakthi@49.207.178.186) |
2023-03-06 05:07:59 +0100 | tusko | (~yeurt@user/tusko) |
2023-03-06 05:09:16 +0100 | <tusko> | I am brand-new to Haskell. I'm trying to compile hello world. It seems I can do this with `ghc --dynamic main.hs`, but I also use emacs with haskell-mode and when I isssue haskell-compile it tries to build this file with cabal. |
2023-03-06 05:09:31 +0100 | <tusko> | Is cabal usually involved in building software written in Haskell? |
2023-03-06 05:09:51 +0100 | <sclv> | yes |
2023-03-06 05:10:44 +0100 | <tusko> | Ok, so I will need to plan to write a .cabal file in every project directory. Is there a minimal example for what this file should contain? |
2023-03-06 05:11:19 +0100 | <sclv> | “cabal init” will generate one for you |
2023-03-06 05:11:32 +0100 | <mauke> | https://cabal.readthedocs.io/en/stable/getting-started.html |
2023-03-06 05:12:08 +0100 | <tusko> | thank you very much |
2023-03-06 05:12:09 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2023-03-06 05:12:50 +0100 | <mauke> | why --dynamic, though? |
2023-03-06 05:14:23 +0100 | razetime | (~Thunderbi@117.254.34.243) |
2023-03-06 05:15:42 +0100 | <tusko> | It was telling me it couldn't find Prelude |
2023-03-06 05:15:48 +0100 | <tusko> | that made it find |
2023-03-06 05:16:15 +0100 | <mauke> | interesting. what OS is this on? |
2023-03-06 05:17:26 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2023-03-06 05:17:59 +0100 | trev | (~trev@user/trev) |
2023-03-06 05:18:04 +0100 | <tusko> | UwUntu |
2023-03-06 05:18:52 +0100 | johnjaye | (~pi@173.209.64.74) (Ping timeout: 268 seconds) |
2023-03-06 05:19:36 +0100 | <jackdk> | what |
2023-03-06 05:20:12 +0100 | johnjaye | (~pi@173.209.64.74) |
2023-03-06 05:21:25 +0100 | <mauke> | https://uwuntuos.site/about-uwuntu/ |
2023-03-06 05:22:55 +0100 | razetime | (~Thunderbi@117.254.34.243) (Ping timeout: 248 seconds) |
2023-03-06 05:23:48 +0100 | grnman_ | (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) (Ping timeout: 268 seconds) |
2023-03-06 05:26:28 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Quit: au revoir) |
2023-03-06 05:30:42 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 05:39:25 +0100 | razetime | (~Thunderbi@117.254.34.243) |
2023-03-06 05:42:51 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 248 seconds) |
2023-03-06 05:43:54 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 255 seconds) |
2023-03-06 05:45:14 +0100 | cassaundra | (~cassaundr@c-73-25-18-25.hsd1.or.comcast.net) |
2023-03-06 05:45:23 +0100 | cassaundra | (~cassaundr@c-73-25-18-25.hsd1.or.comcast.net) (Changing host) |
2023-03-06 05:45:23 +0100 | cassaundra | (~cassaundr@user/cassaundra) |
2023-03-06 06:06:40 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 248 seconds) |
2023-03-06 06:09:15 +0100 | razetime | (~Thunderbi@117.254.34.243) (Quit: See You Space Cowboy) |
2023-03-06 06:12:21 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2023-03-06 06:13:11 +0100 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-03-06 06:24:23 +0100 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 06:26:36 +0100 | <Inst> | ugh |
2023-03-06 06:26:42 +0100 | <Inst> | is the limitation on unboxed literals still extant? |
2023-03-06 06:26:52 +0100 | <Inst> | also, might there be a reason I might not want to use unboxed types? |
2023-03-06 06:27:06 +0100 | <Inst> | unboxed tuples, rather, i.e, it has to be immediately consumed, can't be affixed to a value |
2023-03-06 06:31:41 +0100 | adanwan_ | (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 255 seconds) |
2023-03-06 06:32:02 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-03-06 06:32:09 +0100 | <Inst> | groan, this is a pain, it turns out I can't assign unboxed tuples to a variable |
2023-03-06 06:32:21 +0100 | <Inst> | best I can do is to have a datatype made from unboxed values, and it'll still be a lifted type |
2023-03-06 06:36:39 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds) |
2023-03-06 06:38:46 +0100 | Midjak | (~Midjak@82.66.147.146) |
2023-03-06 06:41:01 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2023-03-06 06:41:05 +0100 | ghostbuster | (~admin@user/ghostbuster) (Quit: WeeChat 3.6) |
2023-03-06 06:45:17 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 06:47:03 +0100 | razetime | (~Thunderbi@117.254.34.243) |
2023-03-06 06:47:55 +0100 | polyphem_ | (~rod@2a02:810d:840:8754:224e:f6ff:fe5e:bc17) (Ping timeout: 248 seconds) |
2023-03-06 06:48:53 +0100 | bilegeek_ | (~bilegeek@161.sub-174-208-233.myvzw.com) (Quit: Leaving) |
2023-03-06 06:53:14 +0100 | razetime | (~Thunderbi@117.254.34.243) (Quit: See You Space Cowboy) |
2023-03-06 06:56:26 +0100 | Square2 | (~Square4@user/square) |
2023-03-06 06:57:44 +0100 | abhixec | (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) |
2023-03-06 07:05:48 +0100 | jinsun | (~jinsun@user/jinsun) (Ping timeout: 255 seconds) |
2023-03-06 07:07:20 +0100 | mncheck | (~mncheck@193.224.205.254) |
2023-03-06 07:11:41 +0100 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
2023-03-06 07:17:28 +0100 | tubogram44 | (~tubogram@user/tubogram) (Quit: See ya later!) |
2023-03-06 07:18:58 +0100 | kenran | (~user@user/kenran) |
2023-03-06 07:19:07 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
2023-03-06 07:24:58 +0100 | andrewboltachev | (~andrey@178.141.199.8) |
2023-03-06 07:25:11 +0100 | tubogram44 | (~tubogram@user/tubogram) |
2023-03-06 07:26:00 +0100 | mcglk | (~mcglk@131.191.19.145) (Quit: (seeya)) |
2023-03-06 07:33:17 +0100 | tdammers | (~tdammers@219-131-178-143.ftth.glasoperator.nl) |
2023-03-06 07:34:32 +0100 | ix | (~ix@213.205.192.31) (Ping timeout: 268 seconds) |
2023-03-06 07:44:41 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 07:47:32 +0100 | vglfr | (~vglfr@145.224.100.65) |
2023-03-06 07:48:01 +0100 | mcglk | (~mcglk@131.191.19.145) |
2023-03-06 07:48:02 +0100 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2023-03-06 07:50:31 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-03-06 07:50:34 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Quit: Lost terminal) |
2023-03-06 07:57:07 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2023-03-06 08:02:00 +0100 | freeside_ | (~mengwong@103.252.202.85) (Ping timeout: 260 seconds) |
2023-03-06 08:04:10 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-03-06 08:10:14 +0100 | califax | (~califax@user/califx) (Ping timeout: 255 seconds) |
2023-03-06 08:11:33 +0100 | califax | (~califax@user/califx) |
2023-03-06 08:15:21 +0100 | jakalx | (~jakalx@base.jakalx.net) () |
2023-03-06 08:15:38 +0100 | AmyMalik | (ellenor@callbox.trd.is) (Quit: Bye Open Projects!) |
2023-03-06 08:16:11 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2023-03-06 08:17:22 +0100 | Ellenor | (ellenor@callbox.trd.is) |
2023-03-06 08:18:19 +0100 | pyook | (~pyook@user/puke) |
2023-03-06 08:19:32 +0100 | <dminuoso> | 08:15:02 Inst | [05:26:51] also, might there be a reason I might not want to use unboxed types? |
2023-03-06 08:19:37 +0100 | <dminuoso> | Premature optimization |
2023-03-06 08:20:03 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
2023-03-06 08:20:10 +0100 | <Inst> | this is going to be a rewrite |
2023-03-06 08:20:31 +0100 | <Inst> | also does anyone know if there's good tutorials for streamly? I'm trying to learn the library right now, not sure how to use it in such a way that I don't blow up my face |
2023-03-06 08:20:33 +0100 | dcoutts | (~duncan@82.15.57.30) (Ping timeout: 252 seconds) |
2023-03-06 08:21:21 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 08:21:23 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 08:24:09 +0100 | <jackdk> | My answer to any streaming question more complicated than "I want to connect this conduit source to this conduit sink": Just use `streaming`. |
2023-03-06 08:33:39 +0100 | <dminuoso> | jackdk: I feel like streaming has an unintuitive interface for a beginner. |
2023-03-06 08:34:03 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-03-06 08:34:37 +0100 | <[exa]> | beginners ain't gonna magically become advanced themselves |
2023-03-06 08:34:42 +0100 | <dminuoso> | `Stream can be used wherever FreeT or Coroutine are used.` |
2023-03-06 08:34:55 +0100 | <dminuoso> | If his is the introductory line of `streaming`, I really do wonder whether the authors do not want fresh beginners to use their library. |
2023-03-06 08:35:41 +0100 | <dminuoso> | (The rest of the paragraph isnt much better) |
2023-03-06 08:36:13 +0100 | ix | (~ix@213.205.192.31) (Read error: Connection reset by peer) |
2023-03-06 08:37:20 +0100 | jinsun | (~jinsun@user/jinsun) |
2023-03-06 08:38:14 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2023-03-06 08:38:28 +0100 | Ellenor | AmyMalik |
2023-03-06 08:38:45 +0100 | <dminuoso> | Im sure that if you understand streaming, its easy to work with. But really the entire documentation of it seems to invite only users who already have semigroupoids, kan-extensions and free in their dependencies. |
2023-03-06 08:39:49 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-03-06 08:41:21 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 08:42:59 +0100 | <jackdk> | The description on its hackage page is a lot better |
2023-03-06 08:43:48 +0100 | Midjak | (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
2023-03-06 08:47:18 +0100 | ix | (~ix@213.205.192.31) (Read error: Connection reset by peer) |
2023-03-06 08:48:47 +0100 | michalz | (~michalz@185.246.204.107) |
2023-03-06 08:52:30 +0100 | zeenk | (~zeenk@2a02:2f04:a20d:f900::7fe) |
2023-03-06 08:52:35 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 08:57:15 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2023-03-06 08:57:19 +0100 | freeside | (~mengwong@103.252.202.85) |
2023-03-06 08:57:55 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-03-06 08:59:58 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) |
2023-03-06 09:01:17 +0100 | gastus | (~gastus@185.6.123.188) |
2023-03-06 09:04:59 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-03-06 09:07:30 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-03-06 09:14:15 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) |
2023-03-06 09:14:31 +0100 | <mauke> | heh. streaming has atrocious documentation |
2023-03-06 09:15:13 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 09:15:14 +0100 | <mauke> | a good chunk of it is unhinged ranting, and halfway through it just stops |
2023-03-06 09:15:34 +0100 | <mauke> | like, mid-sentence |
2023-03-06 09:17:20 +0100 | <mauke> | and yeah, it is written for people who already know and understand the library |
2023-03-06 09:18:34 +0100 | akegalj | (~akegalj@93-138-138-203.adsl.net.t-com.hr) |
2023-03-06 09:18:34 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Read error: Connection reset by peer) |
2023-03-06 09:18:46 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 09:22:31 +0100 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 09:24:19 +0100 | irrgit__ | (~irrgit@146.70.27.242) |
2023-03-06 09:24:44 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in) |
2023-03-06 09:24:52 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:1d87:971:a878:a02f) |
2023-03-06 09:25:15 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-03-06 09:27:16 +0100 | irrgit_ | (~irrgit@146.70.27.218) (Ping timeout: 252 seconds) |
2023-03-06 09:28:16 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Remote host closed the connection) |
2023-03-06 09:29:28 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 09:37:21 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) |
2023-03-06 09:43:17 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-03-06 09:45:04 +0100 | MasseR46 | (thelounge@2001:bc8:47a0:1521::1) (Quit: The Lounge - https://thelounge.chat) |
2023-03-06 09:46:47 +0100 | MasseR46 | (thelounge@2001:bc8:47a0:1521::1) |
2023-03-06 09:48:05 +0100 | <freeside> | "unexpected end to stream" |
2023-03-06 09:49:19 +0100 | wrengr | (~wrengr@201.59.83.34.bc.googleusercontent.com) (Remote host closed the connection) |
2023-03-06 09:55:29 +0100 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
2023-03-06 10:00:06 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-03-06 10:01:50 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
2023-03-06 10:02:24 +0100 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 10:02:39 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
2023-03-06 10:03:22 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2023-03-06 10:05:54 +0100 | <mauke> | https://hackage.haskell.org/package/streaming-0.2.3.1/docs/Streaming.html#v:untilJust |
2023-03-06 10:06:31 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Remote host closed the connection) |
2023-03-06 10:11:31 +0100 | npm_i_kurbus | (~npm_i_kur@user/kurbus) |
2023-03-06 10:16:17 +0100 | npm_i_kurbus | (~npm_i_kur@user/kurbus) (Client Quit) |
2023-03-06 10:17:03 +0100 | <dminuoso> | The one thing that makes servant bearable, is that it has a very easy documentation detailing how to get started an how to do simple things. |
2023-03-06 10:17:06 +0100 | Inst | (~Inst@2601:6c4:4081:54f0:4dc:ae3f:dfd:1774) (Read error: Connection reset by peer) |
2023-03-06 10:17:10 +0100 | <dminuoso> | And very thoroguh documentation. |
2023-03-06 10:17:23 +0100 | <dminuoso> | It makes you almost not even notice the sheer complexity of the type tricks that happen. |
2023-03-06 10:17:37 +0100 | <dminuoso> | At any rate, this is a solveable problem for `streaming`. |
2023-03-06 10:18:21 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-03-06 10:20:57 +0100 | Guest65 | (~Guest65@192.234.91.20) |
2023-03-06 10:22:38 +0100 | xiliuya | (~xiliuya@user/xiliuya) |
2023-03-06 10:23:14 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2023-03-06 10:23:55 +0100 | cfricke | (~cfricke@user/cfricke) |
2023-03-06 10:26:56 +0100 | gehmehgeh | gmg |
2023-03-06 10:27:40 +0100 | ft | (~ft@p3e9bc443.dip0.t-ipconnect.de) (Quit: leaving) |
2023-03-06 10:31:27 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9169:384f:bf1b:a487) (Remote host closed the connection) |
2023-03-06 10:31:33 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
2023-03-06 10:40:21 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) (Read error: Connection reset by peer) |
2023-03-06 10:40:35 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) |
2023-03-06 10:45:16 +0100 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2023-03-06 10:46:06 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2023-03-06 10:50:46 +0100 | zeenk | (~zeenk@2a02:2f04:a20d:f900::7fe) (Quit: Konversation terminated!) |
2023-03-06 11:04:49 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds) |
2023-03-06 11:05:22 +0100 | mixfix41 | (~sdenynine@user/mixfix41) |
2023-03-06 11:09:36 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Remote host closed the connection) |
2023-03-06 11:09:47 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 255 seconds) |
2023-03-06 11:10:14 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds) |
2023-03-06 11:10:39 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 11:11:02 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Remote host closed the connection) |
2023-03-06 11:11:30 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 11:13:40 +0100 | xiliuya | (~xiliuya@user/xiliuya) (Quit: leaving) |
2023-03-06 11:14:34 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 11:18:27 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) (Ping timeout: 260 seconds) |
2023-03-06 11:21:05 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) |
2023-03-06 11:24:28 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-03-06 11:27:43 +0100 | mmhat | (~mmh@p200300f1c7052b40ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 11:28:05 +0100 | mmhat | (~mmh@p200300f1c7052b52ee086bfffe095315.dip0.t-ipconnect.de) |
2023-03-06 11:28:16 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Read error: Connection reset by peer) |
2023-03-06 11:28:26 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 11:29:35 +0100 | Guest65 | (~Guest65@192.234.91.20) (Quit: Client closed) |
2023-03-06 11:29:36 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) (Ping timeout: 255 seconds) |
2023-03-06 11:30:27 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2023-03-06 11:30:37 +0100 | __monty__ | (~toonn@user/toonn) |
2023-03-06 11:31:55 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9169:384f:bf1b:a487) |
2023-03-06 11:37:50 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9169:384f:bf1b:a487) (Ping timeout: 260 seconds) |
2023-03-06 11:47:33 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 11:48:12 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2023-03-06 11:49:30 +0100 | cheater__ | (~Username@user/cheater) |
2023-03-06 11:50:29 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 256 seconds) |
2023-03-06 11:50:35 +0100 | cheater__ | cheater |
2023-03-06 11:52:25 +0100 | cheater_ | (~Username@user/cheater) (Ping timeout: 260 seconds) |
2023-03-06 11:56:25 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal) |
2023-03-06 11:56:47 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-03-06 12:08:05 +0100 | xff0x | (~xff0x@ai098135.d.east.v6connect.net) |
2023-03-06 12:10:17 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) |
2023-03-06 12:11:00 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Ping timeout: 255 seconds) |
2023-03-06 12:11:37 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 12:11:56 +0100 | ix | (~ix@213.205.192.31) (Ping timeout: 246 seconds) |
2023-03-06 12:13:26 +0100 | <fendor[m]> | small lens question, when I have a lens like (lens .~ val) orig, what's the infix notation of that? |
2023-03-06 12:13:27 +0100 | <Jade[m]1> | Why do I get an error for `instance Num a => Num (a -> a) where` (`Illegal instance declaration for ‘Num (a -> a)’ (All instance types must be of the form (T a1 ... an)`) |
2023-03-06 12:13:27 +0100 | <fendor[m]> | I came up with `orig & lens .~ val` |
2023-03-06 12:13:27 +0100 | <fendor[m]> | just now |
2023-03-06 12:13:27 +0100 | <fendor[m]> | good enough or could it be better? |
2023-03-06 12:15:29 +0100 | <kuribas> | Jade[m]1: most likely you are missing an argument |
2023-03-06 12:15:43 +0100 | <kuribas> | Jade[m]1: to a function that returns an integer. |
2023-03-06 12:16:38 +0100 | <kuribas> | > (*) 2 + 3 |
2023-03-06 12:16:39 +0100 | <lambdabot> | error: |
2023-03-06 12:16:39 +0100 | <lambdabot> | • No instance for (Num (Integer -> Integer)) |
2023-03-06 12:16:39 +0100 | <lambdabot> | arising from a use of ‘e_123’ |
2023-03-06 12:16:57 +0100 | <ncf> | fendor[m]: that's the standard idiom |
2023-03-06 12:17:18 +0100 | <Jade[m]1> | No, I get the error when trying to create that instance |
2023-03-06 12:17:51 +0100 | <ncf> | Jade[m]1: i think you need FlexibleInstances |
2023-03-06 12:18:11 +0100 | <ncf> | or make that b -> a |
2023-03-06 12:18:19 +0100 | <fendor[m]> | ncf, thank you! |
2023-03-06 12:18:20 +0100 | <Jade[m]1> | mhm, it says that but I'd like to know what it allows |
2023-03-06 12:20:19 +0100 | <ncf> | well, it tells you |
2023-03-06 12:20:33 +0100 | <ncf> | T a1 ... an where a1 ... an are *distinct type variables* |
2023-03-06 12:21:20 +0100 | <kenran> | (How) Is it possible to "dispatch" on certain types depending on runtime information? Example: Someone sends me some JSON, and there's some "type information" in there. Now after reading I want to use that on the type level. I don't know if my question makes sense without more context, but maybe you can point me to blog posts or other stuff that surely already exists :) |
2023-03-06 12:22:37 +0100 | <ncf> | the general answer is dependent types, the haskell answer is probably singletons |
2023-03-06 12:23:50 +0100 | <kenran> | ncf: dang, I feared as much. I guess I'll have to get familiar with singletons then. Our work application contains three services and does IPC with other Haskell binaries, so it arises quite often and is always a little painful. |
2023-03-06 12:24:01 +0100 | <kenran> | thanks! |
2023-03-06 12:25:32 +0100 | <opqdonut> | kenran: you won't necessarily need any fancy stuff. You can do something like `case messageType of "foo" -> handle (parseFoo message); "bar" -> handle (parseBar message)` |
2023-03-06 12:25:55 +0100 | <opqdonut> | where handle is a type class method, and parseFoo and parseBar produce concrete Foo and Bar outputs |
2023-03-06 12:27:22 +0100 | <kenran> | opqdonut: ahh thank you, that should fit in quite nicely in most places! |
2023-03-06 12:27:47 +0100 | <opqdonut> | if you want something just a bit fancier, you can have a type like `data AnyMessage = FooMessage Foo | BarMessage Bar | ...` |
2023-03-06 12:29:36 +0100 | dcoutts | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Ping timeout: 248 seconds) |
2023-03-06 12:33:35 +0100 | dcoutts | (~duncan@host213-122-124-241.range213-122.btcentralplus.com) |
2023-03-06 12:33:43 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) |
2023-03-06 12:35:57 +0100 | <dminuoso> | 12:13:27 fendor[m] | good enough or could it be better? |
2023-03-06 12:36:38 +0100 | <dminuoso> | fendor[m]: An infix operator can take two arguments, you have a total of three things (whole, lens and part), that by itself means the minimum number of operators is two. |
2023-03-06 12:37:05 +0100 | <dminuoso> | fendor[m]: So I have a genuine question: How can you reasonably expect this to become shorter? |
2023-03-06 12:38:12 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) (Ping timeout: 246 seconds) |
2023-03-06 12:44:20 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) |
2023-03-06 12:46:33 +0100 | dcoutts | (~duncan@host213-122-124-241.range213-122.btcentralplus.com) (Ping timeout: 255 seconds) |
2023-03-06 12:49:43 +0100 | dcoutts_ | (~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Ping timeout: 252 seconds) |
2023-03-06 12:50:02 +0100 | biberu | (~biberu@user/biberu) (Ping timeout: 252 seconds) |
2023-03-06 12:51:07 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) (Quit: Client closed) |
2023-03-06 12:55:10 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-03-06 12:55:46 +0100 | mechap | (~mechap@user/mechap) |
2023-03-06 12:56:07 +0100 | MajorBiscuit | (~MajorBisc@145.94.156.212) |
2023-03-06 12:58:42 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2023-03-06 12:59:07 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-03-06 13:09:36 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 13:12:11 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 264 seconds) |
2023-03-06 13:12:21 +0100 | cheater_ | cheater |
2023-03-06 13:21:15 +0100 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
2023-03-06 13:23:25 +0100 | use-value | (~Thunderbi@2a00:23c6:8a03:2f01:3577:7d35:34e6:6624) |
2023-03-06 13:26:15 +0100 | polyphem_ | (~rod@2a02:810d:840:8754:39cf:f589:aabf:df80) |
2023-03-06 13:26:30 +0100 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) (Remote host closed the connection) |
2023-03-06 13:27:44 +0100 | mixfix41 | (~sdenynine@user/mixfix41) (Ping timeout: 248 seconds) |
2023-03-06 13:29:50 +0100 | akegalj | (~akegalj@93-138-138-203.adsl.net.t-com.hr) (Ping timeout: 260 seconds) |
2023-03-06 13:30:22 +0100 | lyle | (~lyle@104.246.145.237) |
2023-03-06 13:39:32 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
2023-03-06 13:42:13 +0100 | tusko | (~yeurt@user/tusko) (Remote host closed the connection) |
2023-03-06 13:42:36 +0100 | ub | (~Thunderbi@p548c84ba.dip0.t-ipconnect.de) |
2023-03-06 13:43:11 +0100 | ubert | (~Thunderbi@p548c9fde.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 13:43:12 +0100 | ub | ubert |
2023-03-06 13:43:41 +0100 | tusko | (~yeurt@user/tusko) |
2023-03-06 13:45:57 +0100 | ubert1 | (~Thunderbi@2a02:8109:abc0:6434:69a1:e4e8:f403:6d0a) |
2023-03-06 13:48:32 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 13:50:23 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 13:50:40 +0100 | akegalj | (~akegalj@89-164-104-80.dsl.iskon.hr) |
2023-03-06 13:52:35 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-03-06 13:55:48 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 13:57:33 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 255 seconds) |
2023-03-06 13:57:33 +0100 | cheater_ | cheater |
2023-03-06 13:59:04 +0100 | mei | (~mei@user/mei) (Quit: mei) |
2023-03-06 14:00:46 +0100 | mei | (~mei@user/mei) |
2023-03-06 14:01:30 +0100 | CiaoSen | (~Jura@p200300c9570e91002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2023-03-06 14:02:31 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 14:03:36 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-177-117.46.114.pool.telefonica.de) |
2023-03-06 14:03:48 +0100 | cheater__ | (~Username@user/cheater) |
2023-03-06 14:05:30 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 268 seconds) |
2023-03-06 14:05:33 +0100 | cheater__ | cheater |
2023-03-06 14:06:54 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) |
2023-03-06 14:07:37 +0100 | cheater_ | (~Username@user/cheater) (Ping timeout: 256 seconds) |
2023-03-06 14:13:17 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 256 seconds) |
2023-03-06 14:14:13 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 14:14:14 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2023-03-06 14:19:17 +0100 | Inst | (~Inst@2601:6c4:4081:54f0:d8ed:99cb:5666:6ba0) |
2023-03-06 14:19:32 +0100 | <Inst> | gah, this is killing me, is anyone running a windows machine and using sdl2? |
2023-03-06 14:20:23 +0100 | <Inst> | i'm getting some weird behavior, like, sdl2 seemingly contaminates builds, even if it's not explicitly imported, it just has to be in the package dependencies listing |
2023-03-06 14:20:44 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Ping timeout: 246 seconds) |
2023-03-06 14:23:05 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) |
2023-03-06 14:25:00 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) |
2023-03-06 14:25:23 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-03-06 14:25:25 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) (Client Quit) |
2023-03-06 14:26:08 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Excess Flood) |
2023-03-06 14:26:38 +0100 | <geekosaur> | make sure you don't have any package environments sitting around |
2023-03-06 14:30:42 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) |
2023-03-06 14:31:35 +0100 | <Inst> | bleh, i'll look for the haskell games guys because they're the ones maintaining sdl2 |
2023-03-06 14:31:40 +0100 | <Inst> | let's see if we can reproduce this crap |
2023-03-06 14:34:35 +0100 | mechap | (~mechap@user/mechap) (Ping timeout: 260 seconds) |
2023-03-06 14:35:10 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Ping timeout: 260 seconds) |
2023-03-06 14:36:07 +0100 | mechap | (~mechap@131.170.185.81.rev.sfr.net) |
2023-03-06 14:36:21 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) |
2023-03-06 14:37:06 +0100 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2023-03-06 14:37:52 +0100 | king_gs | (~Thunderbi@187.201.41.239) |
2023-03-06 14:38:00 +0100 | king_gs | (~Thunderbi@187.201.41.239) (Remote host closed the connection) |
2023-03-06 14:41:03 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Ping timeout: 256 seconds) |
2023-03-06 14:43:32 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) |
2023-03-06 14:44:20 +0100 | mmhat | (~mmh@p200300f1c7052b52ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.8) |
2023-03-06 14:45:03 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 248 seconds) |
2023-03-06 14:46:22 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 14:46:55 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
2023-03-06 14:54:08 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) |
2023-03-06 14:54:20 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Ping timeout: 252 seconds) |
2023-03-06 14:54:49 +0100 | jero98772 | (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) |
2023-03-06 14:57:40 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) |
2023-03-06 14:59:30 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-03-06 15:00:41 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-03-06 15:02:02 +0100 | Fischmiep | (~Fischmiep@user/Fischmiep) (Ping timeout: 246 seconds) |
2023-03-06 15:03:59 +0100 | dcoutts | (~duncan@host86-175-43-163.range86-175.btcentralplus.com) |
2023-03-06 15:04:35 +0100 | thegeekinside | (~thegeekin@189.141.115.134) |
2023-03-06 15:07:02 +0100 | <kuribas> | kenran: typically you would use a sum type for that. |
2023-03-06 15:08:55 +0100 | mei | (~mei@user/mei) (Quit: mei) |
2023-03-06 15:12:03 +0100 | alex` | (~user@45.red-83-36-44.dynamicip.rima-tde.net) (Remote host closed the connection) |
2023-03-06 15:14:09 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 255 seconds) |
2023-03-06 15:15:05 +0100 | mei | (~mei@user/mei) |
2023-03-06 15:18:26 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2023-03-06 15:18:57 +0100 | <kuribas> | kenran: don't even think about going to singletons or dependent types. |
2023-03-06 15:18:58 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2023-03-06 15:20:26 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 255 seconds) |
2023-03-06 15:23:36 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
2023-03-06 15:25:35 +0100 | polyphem_ | (~rod@2a02:810d:840:8754:39cf:f589:aabf:df80) (Ping timeout: 248 seconds) |
2023-03-06 15:25:51 +0100 | ChanServ | +o litharge |
2023-03-06 15:25:53 +0100 | litharge | -bo lambdap237!*@static.167.190.119.168.clients.your-server.de$##fix-your-connection litharge |
2023-03-06 15:26:15 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-03-06 15:26:34 +0100 | ph88 | (~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Quit: Leaving) |
2023-03-06 15:26:40 +0100 | polyphem_ | (~rod@2a02:810d:840:8754:224e:f6ff:fe5e:bc17) |
2023-03-06 15:27:04 +0100 | mechap | (~mechap@131.170.185.81.rev.sfr.net) (Quit: WeeChat 3.8) |
2023-03-06 15:30:38 +0100 | ix | (~ix@213.205.192.31) (Ping timeout: 252 seconds) |
2023-03-06 15:35:35 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-177-117.46.114.pool.telefonica.de) (Ping timeout: 260 seconds) |
2023-03-06 15:35:44 +0100 | kenran | (~user@user/kenran) (Remote host closed the connection) |
2023-03-06 15:35:56 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) |
2023-03-06 15:37:32 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-156-015.46.114.pool.telefonica.de) |
2023-03-06 15:40:30 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) (Ping timeout: 260 seconds) |
2023-03-06 15:44:56 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
2023-03-06 15:46:34 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 15:46:55 +0100 | td_ | (~td@i53870927.versanet.de) (Quit: waking up from the american dream ...) |
2023-03-06 15:48:20 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2023-03-06 15:53:12 +0100 | ix | (~ix@213.205.192.31) |
2023-03-06 15:54:11 +0100 | td_ | (~td@i53870927.versanet.de) |
2023-03-06 15:54:11 +0100 | akegalj | (~akegalj@89-164-104-80.dsl.iskon.hr) (Ping timeout: 246 seconds) |
2023-03-06 16:00:05 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-03-06 16:00:05 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-03-06 16:00:05 +0100 | wroathe | (~wroathe@user/wroathe) |
2023-03-06 16:00:48 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 16:02:18 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 255 seconds) |
2023-03-06 16:02:23 +0100 | cheater_ | cheater |
2023-03-06 16:06:54 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2023-03-06 16:08:53 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c447314bc12d87d6546d.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2023-03-06 16:08:55 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 246 seconds) |
2023-03-06 16:13:07 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 246 seconds) |
2023-03-06 16:14:15 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 16:16:51 +0100 | son0p | (~ff@181.136.122.143) (Ping timeout: 268 seconds) |
2023-03-06 16:18:41 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-03-06 16:19:02 +0100 | califax | (~califax@user/califx) |
2023-03-06 16:19:20 +0100 | akegalj_ | (~akegalj@89-164-104-80.dsl.iskon.hr) |
2023-03-06 16:20:12 +0100 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 16:21:48 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-03-06 16:24:26 +0100 | grnman_ | (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) |
2023-03-06 16:34:07 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-156-015.46.114.pool.telefonica.de) (Ping timeout: 252 seconds) |
2023-03-06 16:35:56 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-03-06 16:43:42 +0100 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-03-06 16:44:29 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 255 seconds) |
2023-03-06 16:44:36 +0100 | mei | (~mei@user/mei) |
2023-03-06 16:48:29 +0100 | andrewboltachev | (~andrey@178.141.199.8) (Quit: Leaving.) |
2023-03-06 16:50:46 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
2023-03-06 16:51:24 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2023-03-06 16:52:00 +0100 | grnman_ | (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) (Ping timeout: 248 seconds) |
2023-03-06 16:53:53 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c410d9ae1c6a8a63c597.dip0.t-ipconnect.de) |
2023-03-06 17:02:11 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:1d87:971:a878:a02f) (Quit: WeeChat 2.8) |
2023-03-06 17:02:29 +0100 | cfricke | (~cfricke@user/cfricke) (Ping timeout: 268 seconds) |
2023-03-06 17:03:03 +0100 | mncheck | (~mncheck@193.224.205.254) (Ping timeout: 255 seconds) |
2023-03-06 17:04:26 +0100 | Guest|6 | (~Guest|6@194.83.11.20) |
2023-03-06 17:04:47 +0100 | Guest|6 | (~Guest|6@194.83.11.20) (Client Quit) |
2023-03-06 17:08:06 +0100 | mbuf | (~Shakthi@49.207.178.186) (Quit: Leaving) |
2023-03-06 17:08:21 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2023-03-06 17:10:08 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-03-06 17:13:22 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) |
2023-03-06 17:13:29 +0100 | king_gs | (~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) (Client Quit) |
2023-03-06 17:13:55 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) |
2023-03-06 17:18:45 +0100 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-03-06 17:18:52 +0100 | ghostbuster | (~admin@user/ghostbuster) |
2023-03-06 17:29:36 +0100 | AlexZenon | (~alzenon@178.34.160.55) (Ping timeout: 255 seconds) |
2023-03-06 17:29:51 +0100 | Alex_test | (~al_test@178.34.160.55) (Ping timeout: 248 seconds) |
2023-03-06 17:30:23 +0100 | AlexNoo | (~AlexNoo@178.34.160.55) (Ping timeout: 248 seconds) |
2023-03-06 17:33:03 +0100 | AlexNoo | (~AlexNoo@178.34.160.55) |
2023-03-06 17:33:30 +0100 | <fendor[m]> | miscommunication on my end, the question was not, can I shave off a character, but what's the idiomatic way to do it. Just because it type-checks does not mean it is idiomatic |
2023-03-06 17:33:31 +0100 | <Jade[m]1> | Is there a way to simplify this?... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/6610463f8537237c06ce48eccbe2004e5bde…>) |
2023-03-06 17:34:34 +0100 | <Jade[m]1> | especially because I need to do the exact same destructuring 5-6 times; Would it make sense to have a `destructure :: Function a -> (a -> a, Function a, String)` or is there a more idiomatic way? |
2023-03-06 17:35:11 +0100 | <merijn> | Jade[m]1: You don't have to destructure, you can just use the fields as accessors inline |
2023-03-06 17:35:25 +0100 | Alex_test | (~al_test@178.34.160.55) |
2023-03-06 17:35:47 +0100 | <Jade[m]1> | Ohh, right |
2023-03-06 17:36:06 +0100 | <kuribas> | Why are people going to advanced types, when they don't even know how to model in boring haskell? |
2023-03-06 17:36:22 +0100 | AlexZenon | (~alzenon@178.34.160.55) |
2023-03-06 17:36:28 +0100 | <merijn> | Jade[m]1: Like https://paste.tomsmeding.com/MQId86pg |
2023-03-06 17:36:29 +0100 | <mauke> | Jade[m]1: destructure is just positional pattern matching |
2023-03-06 17:36:31 +0100 | <mauke> | that still works |
2023-03-06 17:36:39 +0100 | <merijn> | kuribas: Because they get overly carried away |
2023-03-06 17:36:45 +0100 | <merijn> | mauke: I guess that works too, yeah |
2023-03-06 17:37:14 +0100 | <merijn> | kuribas: "some types are good, so more types must be better!" |
2023-03-06 17:37:56 +0100 | Jade[m]1 | sent a hs code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/62fa37287df6511e7f18a5e0cce6430b9d57… |
2023-03-06 17:38:07 +0100 | <Jade[m]1> | yep, a lot better |
2023-03-06 17:38:43 +0100 | <Jade[m]1> | mauke: yeah, I even used it in the `toString` |
2023-03-06 17:39:02 +0100 | <Jade[m]1> | I know this, just didn't think of it haha |
2023-03-06 17:39:20 +0100 | <mauke> | Jade[m]1: no, your toString uses field accessors |
2023-03-06 17:40:17 +0100 | <Jade[m]1> | yeah that's what I meant |
2023-03-06 17:41:01 +0100 | <mauke> | are you confusing merijn and me? |
2023-03-06 17:41:58 +0100 | <Jade[m]1> | Didn't look at the names sorry |
2023-03-06 17:42:36 +0100 | <Jade[m]1> | I meant to say that I knew field accessors existed and that I used them in the `toString` but simply didn't think of them because I had the match anyways |
2023-03-06 17:43:09 +0100 | <mauke> | MkFunction f f' s + MkFunction g g' t = MkFunction (\x -> f x + g x) (f' + g') (s <> " + " <> t) |
2023-03-06 17:43:33 +0100 | ix | (~ix@213.205.192.31) (Ping timeout: 255 seconds) |
2023-03-06 17:43:58 +0100 | <Jade[m]1> | ahh, yeah |
2023-03-06 17:44:27 +0100 | <Jade[m]1> | I don't think I like positional destructuring of records for my purposes then |
2023-03-06 17:45:20 +0100 | MajorBiscuit | (~MajorBisc@145.94.156.212) (Ping timeout: 248 seconds) |
2023-03-06 17:47:28 +0100 | sadmax | (~user@64.130.91.66) |
2023-03-06 17:47:32 +0100 | <kuribas> | you can destructure records on labels. |
2023-03-06 17:48:04 +0100 | npmania1 | (~Thunderbi@45.8.223.206) |
2023-03-06 17:48:14 +0100 | <kuribas> | https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/record_puns.html |
2023-03-06 17:48:41 +0100 | <hellwolf[m]> | who'd be able to help to update https://wiki.haskell.org/User_groups page with two more entries? |
2023-03-06 17:48:41 +0100 | <Jade[m]1> | I know of that language extension yeah |
2023-03-06 17:49:45 +0100 | npmania | (~Thunderbi@45.8.223.254) (Ping timeout: 256 seconds) |
2023-03-06 17:49:45 +0100 | npmania1 | npmania |
2023-03-06 17:49:49 +0100 | <kuribas> | unpopular opinion: haskell is a bad language for doing type level computation. |
2023-03-06 17:50:24 +0100 | <int-e> | How is that unpopular? I guess most people have no opinion on that at all. |
2023-03-06 17:50:41 +0100 | <ncf> | pretty sure most people who have an opinion on that agree that the current situation is terrible lol |
2023-03-06 17:50:43 +0100 | <int-e> | Which does make it unpopular, I suppose. Technically. |
2023-03-06 17:50:47 +0100 | <geekosaur> | I run into enough people who think it is |
2023-03-06 17:50:56 +0100 | <kuribas> | But it's a great language for the algebraic approach to programming, using composition and parametricity. |
2023-03-06 17:51:00 +0100 | <geekosaur> | (…seriously, use idris) |
2023-03-06 17:51:31 +0100 | <kuribas> | int-e: well, the fact that so many hackage libraries use type level features. |
2023-03-06 17:51:33 +0100 | <int-e> | It'd be more interesting to ask how many people think that they need type level computations. |
2023-03-06 17:52:39 +0100 | <int-e> | kuribas: It's cool and shiny? |
2023-03-06 17:53:00 +0100 | <geekosaur> | just don't make me use singletons. they're an absolutely miserable simulation of real dependent types |
2023-03-06 17:53:06 +0100 | <kuribas> | I think it's a status symbol. Use GADTs and type families to show that you belong to the "cool crowd". |
2023-03-06 17:53:54 +0100 | mechap | (~mechap@user/mechap) |
2023-03-06 17:54:22 +0100 | <ncf> | sounds like what the average non-haskeller would say about haskell |
2023-03-06 17:55:27 +0100 | telser | (~quassel@user/telser) |
2023-03-06 17:56:21 +0100 | <int-e> | I don't think of GADTs or type families as type-level computations, necessarily. They can be, sure, but most are just pretty direct mappings? Notably associated type families for type classes. |
2023-03-06 17:57:12 +0100 | <geekosaur> | ^ |
2023-03-06 17:57:52 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
2023-03-06 18:01:15 +0100 | <ncf> | also i think you need GADTs to define free applicatives? |
2023-03-06 18:03:22 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds) |
2023-03-06 18:03:44 +0100 | mixfix41 | (~sdenynine@user/mixfix41) |
2023-03-06 18:08:39 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) (Remote host closed the connection) |
2023-03-06 18:09:24 +0100 | euandreh | (~Thunderbi@189.6.18.7) |
2023-03-06 18:14:36 +0100 | pyook | (~pyook@user/puke) (Ping timeout: 255 seconds) |
2023-03-06 18:18:03 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
2023-03-06 18:24:48 +0100 | remexre | (~remexre@user/remexre) (Ping timeout: 252 seconds) |
2023-03-06 18:25:16 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-03-06 18:27:55 +0100 | sadmax | (~user@64.130.91.66) (Remote host closed the connection) |
2023-03-06 18:28:33 +0100 | biberu | (~biberu@user/biberu) |
2023-03-06 18:29:03 +0100 | sadmax | (~user@64.130.91.66) |
2023-03-06 18:29:46 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 18:35:05 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2023-03-06 18:37:20 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2023-03-06 18:40:31 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-03-06 18:40:58 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-03-06 18:41:53 +0100 | CiaoSen | (~Jura@p200300c9570e91002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2023-03-06 18:45:16 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-03-06 18:45:23 +0100 | econo | (uid147250@user/econo) |
2023-03-06 18:45:46 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2023-03-06 18:48:50 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds) |
2023-03-06 18:52:03 +0100 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds) |
2023-03-06 18:52:07 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-03-06 19:03:55 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 246 seconds) |
2023-03-06 19:05:43 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2023-03-06 19:12:15 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-03-06 19:13:21 +0100 | remexre | (~remexre@user/remexre) |
2023-03-06 19:15:39 +0100 | hugo- | (znc@verdigris.lysator.liu.se) |
2023-03-06 19:16:51 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 19:19:20 +0100 | qhong_ | (~qhong@rescomp-21-400677.stanford.edu) |
2023-03-06 19:19:44 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 19:21:51 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
2023-03-06 19:22:59 +0100 | qhong | (~qhong@DN160vrd000d6kpg009l6c0000ep.stanford.edu) (Ping timeout: 264 seconds) |
2023-03-06 19:23:47 +0100 | Guest31 | (~Guest31@rrcs-74-219-213-86.central.biz.rr.com) |
2023-03-06 19:24:00 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2023-03-06 19:24:16 +0100 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2023-03-06 19:24:24 +0100 | <Guest31> | I'm wondering if I'm starting to go crazy, but I've been using haskell for personal work - and am considering introducing it at work as a form of documentation for some code in another language |
2023-03-06 19:24:48 +0100 | <Guest31> | I just find reading through well written haskell code can be self documenting |
2023-03-06 19:25:04 +0100 | <Guest31> | And solving a problem in haskell can inform how to solve it in another language |
2023-03-06 19:25:11 +0100 | <Guest31> | Wondering if anybody has similar experiences |
2023-03-06 19:26:40 +0100 | tusko | (~yeurt@user/tusko) (Remote host closed the connection) |
2023-03-06 19:27:19 +0100 | tusko | (~yeurt@user/tusko) |
2023-03-06 19:32:08 +0100 | <geekosaur> | I think that's been mentioned here before? |
2023-03-06 19:32:11 +0100 | freeside | (~mengwong@103.252.202.85) (Ping timeout: 260 seconds) |
2023-03-06 19:35:59 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Quit: _) |
2023-03-06 19:36:44 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-03-06 19:37:39 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 19:38:04 +0100 | <Guest31> | where is here? |
2023-03-06 19:41:16 +0100 | <geekosaur> | either this IRC channel or possibly #haskell-offtopic |
2023-03-06 19:41:31 +0100 | <geekosaur> | I just did a search of my logs and the incident I thought was it wasn't |
2023-03-06 19:42:15 +0100 | <geekosaur> | (because Haskell has previously been mistaken for pseudocode describing an algorithm) |
2023-03-06 19:43:43 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-03-06 19:47:16 +0100 | akegalj_ | (~akegalj@89-164-104-80.dsl.iskon.hr) (Quit: leaving) |
2023-03-06 19:52:20 +0100 | caryhartline | (~caryhartl@cpe-76-187-114-220.tx.res.rr.com) |
2023-03-06 19:52:51 +0100 | freeside | (~mengwong@103.252.202.85) |
2023-03-06 19:57:32 +0100 | Sciencentistguy5 | (~sciencent@hacksoc/ordinary-member) |
2023-03-06 20:00:14 +0100 | Sciencentistguy | (~sciencent@hacksoc/ordinary-member) (Ping timeout: 255 seconds) |
2023-03-06 20:00:15 +0100 | Sciencentistguy5 | Sciencentistguy |
2023-03-06 20:00:20 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 20:11:53 +0100 | sadmax | (~user@64.130.91.66) (Remote host closed the connection) |
2023-03-06 20:15:34 +0100 | tusko | (~yeurt@user/tusko) (Remote host closed the connection) |
2023-03-06 20:15:34 +0100 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2023-03-06 20:15:46 +0100 | <[exa]> | Guest31: pretty common with haskell I'd say |
2023-03-06 20:16:00 +0100 | tusko | (~yeurt@user/tusko) |
2023-03-06 20:16:49 +0100 | gmg | (~user@user/gehmehgeh) |
2023-03-06 20:18:23 +0100 | <[exa]> | Guest31: as one of common reasons, the equational reasoning (haskell-style way of declaring stuff) is much much easier to follow than the common ways of operational reasoning |
2023-03-06 20:21:19 +0100 | wrengr | (~wrengr@201.59.83.34.bc.googleusercontent.com) |
2023-03-06 20:21:25 +0100 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2023-03-06 20:22:31 +0100 | ubert1 | (~Thunderbi@2a02:8109:abc0:6434:69a1:e4e8:f403:6d0a) (Remote host closed the connection) |
2023-03-06 20:22:54 +0100 | gmg | (~user@user/gehmehgeh) |
2023-03-06 20:25:59 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 255 seconds) |
2023-03-06 20:26:15 +0100 | <[exa]> | haskeline question: is there any good way to run withInterrupt when InputT is deeper in the stack? (It stinks a bit of unliftIO or something similar...) Or should I completely avoid doing that? |
2023-03-06 20:27:29 +0100 | <monochrom> | Yes it's the unliftIO situation all over again. |
2023-03-06 20:29:42 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2023-03-06 20:30:01 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-03-06 20:31:41 +0100 | <[exa]> | ok, well, great. |
2023-03-06 20:31:49 +0100 | <[exa]> | thanks for confirm :D |
2023-03-06 20:32:03 +0100 | Guest31 | (~Guest31@rrcs-74-219-213-86.central.biz.rr.com) (Ping timeout: 260 seconds) |
2023-03-06 20:32:42 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-03-06 20:33:00 +0100 | solzao | (~zelador@187.61.153.177) (Read error: Connection reset by peer) |
2023-03-06 20:33:11 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) |
2023-03-06 20:33:20 +0100 | xsarnik0 | (xsarnik@lounge.fi.muni.cz) |
2023-03-06 20:33:31 +0100 | xstill_6 | (xstill@fimu/xstill) |
2023-03-06 20:33:52 +0100 | yaroot_ | (~yaroot@2400:4052:ac0:d900:1cf4:2aff:fe51:c04c) |
2023-03-06 20:34:04 +0100 | terrorjack8 | (~terrorjac@2a01:4f8:1c1e:4e8c::) |
2023-03-06 20:34:11 +0100 | ggranberry_ | (sid267884@id-267884.uxbridge.irccloud.com) |
2023-03-06 20:34:16 +0100 | econo_ | (uid147250@user/econo) |
2023-03-06 20:34:17 +0100 | eL_Bart0- | (eL_Bart0@dietunichtguten.org) |
2023-03-06 20:34:21 +0100 | img_ | (~img@user/img) |
2023-03-06 20:34:25 +0100 | manwithl- | (~manwithlu@2406:da14:b37:1300:8c42:7d16:8950:6c74) |
2023-03-06 20:34:26 +0100 | kraftwerk28_ | (~kraftwerk@178.62.210.83) |
2023-03-06 20:34:26 +0100 | xelxebar_ | (~xelxebar@wilsonb.com) |
2023-03-06 20:34:36 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
2023-03-06 20:34:50 +0100 | TimWolla_ | (~timwolla@2a01:4f8:150:6153:beef::6667) |
2023-03-06 20:35:00 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
2023-03-06 20:36:35 +0100 | juri__ | (~juri@84-19-175-179.pool.ovpn.com) |
2023-03-06 20:36:43 +0100 | lyle1 | (~lyle@104.246.145.237) |
2023-03-06 20:36:45 +0100 | finstern1s | (~X@23.226.237.192) |
2023-03-06 20:37:06 +0100 | mal1 | (~mal@ns2.wyrd.be) |
2023-03-06 20:37:08 +0100 | stilgart_ | (~Christoph@chezlefab.net) |
2023-03-06 20:37:12 +0100 | farn__ | (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) |
2023-03-06 20:37:32 +0100 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) |
2023-03-06 20:37:35 +0100 | econo | (uid147250@user/econo) (Ping timeout: 248 seconds) |
2023-03-06 20:37:35 +0100 | xelxebar | (~xelxebar@wilsonb.com) (Ping timeout: 248 seconds) |
2023-03-06 20:37:35 +0100 | ggranberry | (uid267884@id-267884.uxbridge.irccloud.com) (Ping timeout: 248 seconds) |
2023-03-06 20:37:35 +0100 | lyle | (~lyle@104.246.145.237) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | finsternis | (~X@23.226.237.192) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | eL_Bart0 | (eL_Bart0@dietunichtguten.org) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | img | (~img@user/img) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | hellwolf[m] | (~hellwolfm@2001:470:69fc:105::3:6a4) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | TimWolla | (~timwolla@2a01:4f8:150:6153:beef::6667) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | juri_ | (~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | manwithluck | (~manwithlu@2406:da14:b37:1300:8c42:7d16:8950:6c74) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | terrorjack | (~terrorjac@2a01:4f8:1c1e:4e8c::) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | lieven | (~mal@ns2.wyrd.be) (Ping timeout: 248 seconds) |
2023-03-06 20:37:36 +0100 | kraftwerk28 | (~kraftwerk@178.62.210.83) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | aaRabbit[m] | (~rootsandw@2001:470:69fc:105::2:ca2e) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | alexfmpe[m] | (~alexfmpem@2001:470:69fc:105::38ba) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | stilgart | (~Christoph@chezlefab.net) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | farn_ | (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | yaroot | (~yaroot@p3431218-ipngn9301souka.saitama.ocn.ne.jp) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | xstill_ | (xstill@fimu/xstill) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | xsarnik | (xsarnik@lounge.fi.muni.cz) (Ping timeout: 248 seconds) |
2023-03-06 20:37:37 +0100 | econo_ | econo |
2023-03-06 20:37:37 +0100 | terrorjack8 | terrorjack |
2023-03-06 20:37:39 +0100 | ggranberry_ | ggranberry |
2023-03-06 20:37:39 +0100 | finstern1s | finsternis |
2023-03-06 20:37:39 +0100 | yaroot_ | yaroot |
2023-03-06 20:37:39 +0100 | TimWolla_ | TimWolla |
2023-03-06 20:37:45 +0100 | xstill_6 | xstill_ |
2023-03-06 20:37:45 +0100 | xsarnik0 | xsarnik |
2023-03-06 20:38:22 +0100 | tomboy64 | (~tomboy64@user/tomboy64) |
2023-03-06 20:38:50 +0100 | gurkenglas | (~gurkengla@dynamic-046-114-156-015.46.114.pool.telefonica.de) |
2023-03-06 20:38:57 +0100 | cheater | (~Username@user/cheater) |
2023-03-06 20:39:24 +0100 | hellwolf[m] | (~hellwolfm@2001:470:69fc:105::3:6a4) |
2023-03-06 20:39:53 +0100 | qhong_ | qhong |
2023-03-06 20:41:50 +0100 | alexfmpe[m] | (~alexfmpem@2001:470:69fc:105::38ba) |
2023-03-06 20:45:48 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) |
2023-03-06 20:46:10 +0100 | <segfaultfizzbuzz> | so >>> is just function composition? |
2023-03-06 20:46:58 +0100 | <monochrom> | I wouldn't say "just" but you can use it for forward function composition. |
2023-03-06 20:49:40 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) |
2023-03-06 20:51:50 +0100 | aaRabbit[m] | (~rootsandw@2001:470:69fc:105::2:ca2e) |
2023-03-06 20:53:43 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-03-06 20:54:51 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-03-06 21:03:08 +0100 | Midjak | (~Midjak@82.66.147.146) |
2023-03-06 21:05:50 +0100 | rustisafungus | (~segfaultf@12.172.217.142) |
2023-03-06 21:06:32 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) (Quit: ZZZzzz…) |
2023-03-06 21:06:41 +0100 | <rustisafungus> | i'm confused, what is "forward" or "left to right" vs "right to left"? i thought we were working with associative operations here...? |
2023-03-06 21:07:14 +0100 | <ncf> | f ∘ g = g >>> f |
2023-03-06 21:07:18 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) |
2023-03-06 21:07:43 +0100 | a_coll | (~acoll@45.92.120.189) |
2023-03-06 21:08:01 +0100 | sammelweis_ | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-03-06 21:08:04 +0100 | <geekosaur> | associative, but not commutative |
2023-03-06 21:08:15 +0100 | sadmax | (~user@64.130.91.66) |
2023-03-06 21:09:16 +0100 | <rustisafungus> | oh hell, that's right, you can reverse the order of operations, ok that's confusing as i kinda expect the syntax of the language to normalize order of operations |
2023-03-06 21:09:32 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) (Ping timeout: 248 seconds) |
2023-03-06 21:09:32 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 248 seconds) |
2023-03-06 21:09:33 +0100 | dekster | (~Albina_Pa@181.119.160.58) |
2023-03-06 21:09:33 +0100 | dekster | 074AAK5I4 |
2023-03-06 21:09:33 +0100 | 074AAK5I4 | (~Albina_Pa@181.119.160.58) (K-Lined) |
2023-03-06 21:11:01 +0100 | <dminuoso> | rustisafungus: What do you mean by "expect the syntax of the language to normalize order of operations"? |
2023-03-06 21:11:22 +0100 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-03-06 21:11:52 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) (Ping timeout: 252 seconds) |
2023-03-06 21:12:15 +0100 | shapr | (~user@68.54.166.125) (Ping timeout: 255 seconds) |
2023-03-06 21:12:38 +0100 | <rustisafungus> | i naievely expect that if f is on the left and g is on the right that the ordering of f and g will always be the same |
2023-03-06 21:12:51 +0100 | <rustisafungus> | but in haskell, you can insert operations which can flip that |
2023-03-06 21:13:00 +0100 | <dminuoso> | What does "ordering of f and g" even mean? |
2023-03-06 21:13:10 +0100 | <dminuoso> | Left and right dont have any intrinsic meaning |
2023-03-06 21:13:27 +0100 | <dminuoso> | Are you perhaps trying to imply evaluation order? |
2023-03-06 21:13:39 +0100 | <rustisafungus> | foo f bar g i kinda expect evaluation order here to always have f earlier and g later |
2023-03-06 21:13:49 +0100 | <rustisafungus> | (or precisely the opposite of that ) |
2023-03-06 21:13:54 +0100 | <dminuoso> | Its better than that. |
2023-03-06 21:13:59 +0100 | <dminuoso> | Evaluation order is unspecified. |
2023-03-06 21:14:03 +0100 | <rustisafungus> | but the reality is that depending on what foo and bar are, the eval order can be whatever |
2023-03-06 21:14:10 +0100 | <dminuoso> | Nope |
2023-03-06 21:14:13 +0100 | <rustisafungus> | dminuoso: aaaaaaaaaaaaaaaaa why do you folks do this? |
2023-03-06 21:14:34 +0100 | <dminuoso> | rustisafungus: because for the most part the evaluation order is irrelevant. |
2023-03-06 21:14:45 +0100 | <rustisafungus> | 🤯 |
2023-03-06 21:15:17 +0100 | <dminuoso> | rustisafungus: Consider a math expression like `(3 + 2) * (7 + 1)` - would you agree that the order of evaluating this is irrelevant to both the meaning of the expression and the result? |
2023-03-06 21:15:37 +0100 | son0p | (~ff@181.136.122.143) |
2023-03-06 21:16:00 +0100 | <rustisafungus> | yes but 1 / (a + b) is not the same as 1 + (a / b) |
2023-03-06 21:16:11 +0100 | <dminuoso> | Sure, but that's something entirely different. |
2023-03-06 21:16:29 +0100 | <rustisafungus> | ?? |
2023-03-06 21:17:00 +0100 | <dminuoso> | rustisafungus: Imagine my math problem not as a program to write, but perhaps an excercise from school. |
2023-03-06 21:17:11 +0100 | <dminuoso> | So lets say you are tasked with calculating the result of that expression |
2023-03-06 21:17:22 +0100 | <dminuoso> | You might start writing down the entirety of the expression first |
2023-03-06 21:17:39 +0100 | <rustisafungus> | i understand that the for a fixed AST the order of eval doesn't matter |
2023-03-06 21:17:43 +0100 | <dminuoso> | And then decide `lets first add 3 + 2` together, and write on a subsequent line `= 5 * (7 + 1)` |
2023-03-06 21:17:45 +0100 | <dminuoso> | Or.... |
2023-03-06 21:18:02 +0100 | <dminuoso> | You might decide to first add 7 + 1 together and write on a subsequent line `= (3 + 2) * 8` |
2023-03-06 21:18:04 +0100 | <rustisafungus> | but if f and g don't commute, then swapping f and g changes the result |
2023-03-06 21:18:10 +0100 | <dminuoso> | Sure |
2023-03-06 21:18:11 +0100 | <dminuoso> | However. |
2023-03-06 21:18:28 +0100 | <rustisafungus> | and depending on how i write haskell code, i think i get either (f.g) or (g.f) right? |
2023-03-06 21:18:36 +0100 | <rustisafungus> | even if f is to the "left" of g in the source code |
2023-03-06 21:18:37 +0100 | <dminuoso> | The order of calculation has nothing to do with where you place arguments |
2023-03-06 21:18:39 +0100 | <dminuoso> | say: |
2023-03-06 21:18:43 +0100 | <dminuoso> | (3 + 2) * (7 + 1) |
2023-03-06 21:18:45 +0100 | <dminuoso> | vs |
2023-03-06 21:18:48 +0100 | <dminuoso> | (3 * 2) + (7 + 1) |
2023-03-06 21:18:56 +0100 | <dminuoso> | In *both* cases, the "evaluation order" is unspecified. |
2023-03-06 21:19:03 +0100 | <dminuoso> | That is, its completely irrelevant how you evaluate it. |
2023-03-06 21:19:59 +0100 | <dminuoso> | swapping symbols around by itself doesnt "change the evalation order", because there wasnt an instrinsic evaluation order to begin with |
2023-03-06 21:20:08 +0100 | <dminuoso> | it changes the meaning of the program |
2023-03-06 21:20:11 +0100 | <dminuoso> | not the evaluation order |
2023-03-06 21:20:16 +0100 | <rustisafungus> | i don't care about AST eval order for fixed AST, that's not concerning (if ignore IO etc) |
2023-03-06 21:20:49 +0100 | <dminuoso> | You do seem to care about it: |
2023-03-06 21:20:55 +0100 | <dminuoso> | 21:13:39 rustisafungus | foo f bar g i kinda expect evaluation order here to always have f earlier and g later |
2023-03-06 21:21:07 +0100 | <dminuoso> | Whether `f` or `g` is evaluated first, does not (generally) matter |
2023-03-06 21:21:11 +0100 | <rustisafungus> | well, not eval order--call it "AST order" then |
2023-03-06 21:21:18 +0100 | <rustisafungus> | sorry that was me being imperative |
2023-03-06 21:21:26 +0100 | <dminuoso> | Not necessarily imperative actually' |
2023-03-06 21:21:27 +0100 | <rustisafungus> | "effective eval order" rather than "actual eval order" |
2023-03-06 21:21:35 +0100 | <c_wraith> | "order" isnt really what you mean, though |
2023-03-06 21:21:42 +0100 | <c_wraith> | What you seem to mean is "parse tree" |
2023-03-06 21:21:59 +0100 | <dminuoso> | rustisafungus: We call this evaluation strategies. What most imperative programming languages have is `call-by-value` |
2023-03-06 21:22:01 +0100 | <dminuoso> | And it should be noted |
2023-03-06 21:22:08 +0100 | <rustisafungus> | not eval i am very sorry i ever said eval |
2023-03-06 21:22:14 +0100 | <dminuoso> | That in plenty of languages the evaluation orders of parameters themselves is unspecified |
2023-03-06 21:22:16 +0100 | <dminuoso> | Notably: C. |
2023-03-06 21:22:17 +0100 | <rustisafungus> | c_wraith: yes i think i mean parse tree or AST |
2023-03-06 21:22:24 +0100 | <monochrom> | Yes, with lazy evaluation, you now have to dissociate parsing (tree structure) with orde of evaluation. |
2023-03-06 21:22:25 +0100 | <rustisafungus> | dminuoso: oh wow really |
2023-03-06 21:22:29 +0100 | <dminuoso> | In f if you write foo(bar(), quux(), baz()) it is unspecified which argument is evaluated first. |
2023-03-06 21:22:33 +0100 | <dminuoso> | *In C |
2023-03-06 21:22:44 +0100 | <dminuoso> | THe only guarantee you *do* get is that they are evaluated before foo is entered. |
2023-03-06 21:22:45 +0100 | <c_wraith> | yeah, it makes writing recursive descent parsers by hand in C really annoying |
2023-03-06 21:23:01 +0100 | <monochrom> | Because "False && (undefined && undefined)" totally does not mean "evaluate (undefined && undefined) first". |
2023-03-06 21:23:18 +0100 | <rustisafungus> | i don't want to emphasize evaluation order here |
2023-03-06 21:23:51 +0100 | <monochrom> | In fact, if I asked you about "0 * (2398493 * 239085)", I doubt that you would evaluate "2398493 * 239085" first. |
2023-03-06 21:24:07 +0100 | <rustisafungus> | monochrom: again that's eval order |
2023-03-06 21:24:31 +0100 | acidjnk_new | (~acidjnk@p200300d6e715c410d9ae1c6a8a63c597.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2023-03-06 21:24:58 +0100 | <dminuoso> | rustisafungus: as opposed to what? |
2023-03-06 21:25:10 +0100 | <monochrom> | haha |
2023-03-06 21:25:24 +0100 | <monochrom> | OK OK we're on the same page now. |
2023-03-06 21:25:41 +0100 | <dminuoso> | I do have a vague idea what they are on about. |
2023-03-06 21:25:43 +0100 | <rustisafungus> | sorry, i should probably just hush down, but if you do really want to discuss this, my comment is relevant only if f and g don't commute in general |
2023-03-06 21:26:47 +0100 | <rustisafungus> | and so like i said if, as the programmer, i look at a line of code, i see f somewhere on the left and g somewhere on the right, i expect f to be "later" (not in eval order but in some kind of AST/chaining/parse tree kind of order) and g to be "earlier" |
2023-03-06 21:26:58 +0100 | <dminuoso> | Oh I see. |
2023-03-06 21:27:07 +0100 | <rustisafungus> | but if i understand correctly, when i look at a line of code which goes |
2023-03-06 21:27:15 +0100 | <dminuoso> | Haskell code can vary wildly in this respect |
2023-03-06 21:27:23 +0100 | <rustisafungus> | a b c f d e g q w r |
2023-03-06 21:27:29 +0100 | <dminuoso> | Especially because the evaluation order isnt pinned |
2023-03-06 21:27:41 +0100 | <c_wraith> | I mean, so can C code. foo() * bar() + baz() / quux() |
2023-03-06 21:27:52 +0100 | <dminuoso> | `f <$> foo` vs `foo <&> f`> vs `fooM >>= q` vs `q =<< q` |
2023-03-06 21:27:53 +0100 | <rustisafungus> | there is a horrendous number of possible permutations of those functions a thru r |
2023-03-06 21:27:57 +0100 | <c_wraith> | how does that parse? I have no idea! |
2023-03-06 21:28:06 +0100 | <rustisafungus> | and to really know what is being specified or going on, i have to know the behavior of all of those functions |
2023-03-06 21:28:26 +0100 | <rustisafungus> | which seems pretty onerous imo, and it's hard to imagine that the occasional improvement in expressiveness of the language is worth that kind of ambiguity |
2023-03-06 21:28:53 +0100 | <rustisafungus> | i'm not saying C is great either |
2023-03-06 21:28:55 +0100 | <dminuoso> | I guess this problem is amplified in languages that use functions as first class values a lot. |
2023-03-06 21:29:28 +0100 | <c_wraith> | Any language with a recursive syntax is going to have issues related to this, and that's almost all of them |
2023-03-06 21:29:37 +0100 | <rustisafungus> | oh it's intrinsic to recursion? |
2023-03-06 21:29:48 +0100 | <c_wraith> | not recursion in the program |
2023-03-06 21:29:51 +0100 | <c_wraith> | recursion in the syntax |
2023-03-06 21:29:54 +0100 | <rustisafungus> | i mean doesn't lisp have a totally unambiguous parse tree/AST? |
2023-03-06 21:30:00 +0100 | <c_wraith> | can you embed an expression in an expression? |
2023-03-06 21:30:16 +0100 | <c_wraith> | if you bad macros, sure |
2023-03-06 21:30:19 +0100 | <c_wraith> | *ban |
2023-03-06 21:30:24 +0100 | <dminuoso> | rustisafungus: I mean this becomes a matter of API design really quickly. |
2023-03-06 21:30:35 +0100 | <monochrom> | People do have heated (and pointless IMO) debates on "readability" when code order differs from what they intuitively (religiously IMO) expect of effect order. |
2023-03-06 21:30:46 +0100 | <dminuoso> | For instance, do you have `append :: a -> [a] -> [a]` or `append :: [a] -> a -> [a]` |
2023-03-06 21:30:51 +0100 | <dminuoso> | There's arguments for both |
2023-03-06 21:31:01 +0100 | <monochrom> | I simply undefine "readability" as meaningless. |
2023-03-06 21:31:05 +0100 | <dminuoso> | rustisafungus: ^- I think this goes into what you are thinking about, right? |
2023-03-06 21:31:24 +0100 | <dminuoso> | (whether argument order itself is indicative or some underlying behavior) |
2023-03-06 21:31:26 +0100 | <dminuoso> | *of some |
2023-03-06 21:32:00 +0100 | <c_wraith> | monochrom: I'm not sure it's completely meaningless. There are limits that intend to probe just how bad readability can be, like intercal or whitespace |
2023-03-06 21:32:02 +0100 | <rustisafungus> | dminuoso: in that case you can have a type error to help protect you, but in general there may not be type errors |
2023-03-06 21:32:20 +0100 | <dminuoso> | rustisafungus: sure, say `append :: T.Text -> T.Text -> T.Text` then |
2023-03-06 21:32:40 +0100 | <dminuoso> | Haskell having sections makes this even more complicated |
2023-03-06 21:33:03 +0100 | <dminuoso> | since some functions have their argument order such that application to a single argument or section usage reads nicer. |
2023-03-06 21:33:09 +0100 | <dminuoso> | x `elem` [1,2,3,4] |
2023-03-06 21:33:13 +0100 | <rustisafungus> | i am not familar with sections,... |
2023-03-06 21:34:04 +0100 | <dminuoso> | rustisafungus: sections is something like the first argument in: filter (> 3) [1..10] |
2023-03-06 21:34:12 +0100 | <dminuoso> | Or infix notation for arbitrary functions |
2023-03-06 21:34:27 +0100 | <dminuoso> | There'd different design decisions depending on how you anticipate a function is used |
2023-03-06 21:34:48 +0100 | fnurglewitz | (uid263868@id-263868.lymington.irccloud.com) |
2023-03-06 21:34:52 +0100 | <dminuoso> | is it going to be applied to a single argument? Or a section? if a section, which argument is likely used more? or do you use it in infix position with backticks? |
2023-03-06 21:35:08 +0100 | <dminuoso> | or maybe you want something that reads nicely when used as an argument all by itself? |
2023-03-06 21:35:24 +0100 | <dminuoso> | And for some of these functions we provide multiple versions to let you decide |
2023-03-06 21:35:24 +0100 | <rustisafungus> | hm ok, maybe i am unsophisticated |
2023-03-06 21:35:27 +0100 | <dminuoso> | % import Data.Functor |
2023-03-06 21:35:27 +0100 | <yahb2> | <no output> |
2023-03-06 21:35:31 +0100 | <dminuoso> | % :t (<$>) |
2023-03-06 21:35:31 +0100 | <yahb2> | (<$>) :: Functor f => (a -> b) -> f a -> f b |
2023-03-06 21:35:33 +0100 | <dminuoso> | % :t (<&>) |
2023-03-06 21:35:33 +0100 | <yahb2> | (<&>) :: Functor f => f a -> (a -> b) -> f b |
2023-03-06 21:35:36 +0100 | <dminuoso> | We just give you both here. |
2023-03-06 21:35:41 +0100 | <rustisafungus> | yeah i never understood that aesthetic |
2023-03-06 21:35:52 +0100 | <rustisafungus> | in my view of the world there should be only one way... |
2023-03-06 21:36:06 +0100 | <dminuoso> | Let me give you a code excerpt where I really like <&> |
2023-03-06 21:36:14 +0100 | <rustisafungus> | i think if programmers want "readability" or "aesthetics" then perhaps we need something like a css file for that |
2023-03-06 21:37:21 +0100 | <dminuoso> | rustisafungus: https://gist.github.com/dminuoso/a897218d0fab3194592a2f926f2ea8c1 |
2023-03-06 21:37:37 +0100 | <dminuoso> | This aligns and reads very nicely |
2023-03-06 21:38:04 +0100 | <dminuoso> | When looking at the large file, its visually immediately clear that the only changing thing between each case is just the constructor on the right hand side |
2023-03-06 21:38:13 +0100 | <dminuoso> | If you used <$> it wouldnt be evident at first glance |
2023-03-06 21:38:35 +0100 | <dminuoso> | And this also emphasizes the parser structure a bit better |
2023-03-06 21:38:43 +0100 | <dminuoso> | "get this thing and then stuff it inside that other thing" |
2023-03-06 21:38:46 +0100 | <rustisafungus> | hmm ok |
2023-03-06 21:39:33 +0100 | <rustisafungus> | i usually use whitespace alignment to achieve that, but to each his or her own |
2023-03-06 21:40:16 +0100 | <rustisafungus> | i gotta run, thanks for the chat folks bye |
2023-03-06 21:40:57 +0100 | <monochrom> | Nothing is perfect ("perfect", another meaningless word) so there will not be only one way. There will be multiple ways because they arise from different trade-offs. |
2023-03-06 21:41:31 +0100 | <monochrom> | (Well either meaningless or self-contradictory) |
2023-03-06 21:41:54 +0100 | <dminuoso> | This certainly goes towards different design philosophies. |
2023-03-06 21:42:12 +0100 | <dminuoso> | Some languages like to constrain their user such that there is only one way to do or represent something |
2023-03-06 21:42:28 +0100 | lyle1 | (~lyle@104.246.145.237) (Quit: WeeChat 3.8) |
2023-03-06 21:42:33 +0100 | <dminuoso> | This can be seen as advantageous because its easy to learn "the way everybody does it", but it also severely limits your options to express thought. |
2023-03-06 21:42:56 +0100 | <dminuoso> | Imagine the number of phrases you could ever utter was constrained to those listed in a small book. |
2023-03-06 21:43:05 +0100 | <monochrom> | Yeah see, even that is making one particular trade-off and does not represent the will of other people. |
2023-03-06 21:44:02 +0100 | <monochrom> | But on top of that, 1984 made a great mockery of that trade-off. |
2023-03-06 21:44:48 +0100 | <monochrom> | It's why I'm liberally minded and prefer if you optimize for something else, anything else. |
2023-03-06 21:44:52 +0100 | rustisafungus | (~segfaultf@12.172.217.142) (Ping timeout: 252 seconds) |
2023-03-06 21:45:49 +0100 | <dminuoso> | I mean mathematics is generally on the other end of the spectrum. Every paper makes up their own symbols, denotations, proof structure, font, and everything. It's the ultimate expression of thought, but it becomes very hard to understand something without first reshaping your mind to the shape you think the author had. |
2023-03-06 21:46:05 +0100 | <dminuoso> | There' |
2023-03-06 21:46:29 +0100 | <monochrom> | I don't think mathematics is that badly diverse. |
2023-03-06 21:46:30 +0100 | <dminuoso> | (Or well, not sure whether its the extreme, but its at least far out there) |
2023-03-06 21:46:45 +0100 | <monochrom> | If you s/Every paper/Every area/ then sure. |
2023-03-06 21:46:56 +0100 | <dminuoso> | Sure. Lets go with that. |
2023-03-06 21:47:17 +0100 | <monochrom> | Note for example how all type system papers use almost identical notation. |
2023-03-06 21:47:58 +0100 | <c_wraith> | My favorite thing about SPJ's papers is that in his papers, code blocks are actually readable. The font looks like code, and is the content is written like code. No greek letters anywhere! |
2023-03-06 21:48:07 +0100 | <darkling> | There's usually a convergence of notation after a few years or decades. |
2023-03-06 21:48:18 +0100 | <c_wraith> | (actually, my favorite thing is that his papers are well written. the code stuff is second) |
2023-03-06 21:48:18 +0100 | <monochrom> | So standardized to the point that everyone trying to write a tutorial aiming at absolute beginners still can't free themselves of the horizontal-line notation. |
2023-03-06 21:48:20 +0100 | <dminuoso> | darkling: at least for a period. |
2023-03-06 21:49:05 +0100 | <dminuoso> | I suppose there's at least an intrinsic moticator to reuse some styles because you want your publication to be peer reviewed and cited. |
2023-03-06 21:49:28 +0100 | <dminuoso> | If nobody understood a thing you expressed, it would be hard to publish anything or get a high impact factor your professor really cares about. |
2023-03-06 21:49:36 +0100 | <dminuoso> | But it's like you said very domain specific |
2023-03-06 21:50:06 +0100 | <dminuoso> | Which is still fine, since generally a type theory paper will probably not be cared much for by someone who studies topology |
2023-03-06 21:50:11 +0100 | <monochrom> | But then math : every area uses a different notation :: programming : every language community uses a different notation and vocab |
2023-03-06 21:51:01 +0100 | <monochrom> | math : real analysis papers saying 0 is not a natural number :: programming : SML saying functor just means parameterized modules |
2023-03-06 21:53:51 +0100 | <monochrom> | Ample evidence that they are social constructs, much as I hate that conclusion. :) |
2023-03-06 21:56:55 +0100 | pavonia | (~user@user/siracusa) |
2023-03-06 21:59:00 +0100 | burakcan- | burakcank |
2023-03-06 21:59:52 +0100 | cheater_ | (~Username@user/cheater) |
2023-03-06 22:00:16 +0100 | ft | (~ft@p3e9bc443.dip0.t-ipconnect.de) |
2023-03-06 22:01:08 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 22:01:52 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2023-03-06 22:01:58 +0100 | cheater_ | cheater |
2023-03-06 22:05:38 +0100 | <ncf> | homotopy type theory has entered the chat |
2023-03-06 22:05:56 +0100 | mal1 | lieven |
2023-03-06 22:10:18 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) (Remote host closed the connection) |
2023-03-06 22:11:38 +0100 | ddellacosta | (~ddellacos@146.70.166.10) (Quit: WeeChat 3.8) |
2023-03-06 22:13:38 +0100 | ddellacosta | (~ddellacos@146.70.166.10) |
2023-03-06 22:13:49 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-03-06 22:15:11 +0100 | talismanick | (~talismani@c-98-238-242-189.hsd1.ca.comcast.net) |
2023-03-06 22:22:51 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Ping timeout: 248 seconds) |
2023-03-06 22:31:59 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) |
2023-03-06 22:32:09 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) |
2023-03-06 22:34:35 +0100 | talismanick | (~talismani@c-98-238-242-189.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
2023-03-06 22:34:56 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds) |
2023-03-06 22:36:13 +0100 | trev | (~trev@user/trev) (Remote host closed the connection) |
2023-03-06 22:40:33 +0100 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 255 seconds) |
2023-03-06 22:49:54 +0100 | sammelweis_ | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-03-06 22:50:57 +0100 | a_coll | (~acoll@45.92.120.189) (Remote host closed the connection) |
2023-03-06 22:51:07 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) (Ping timeout: 248 seconds) |
2023-03-06 22:51:17 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-03-06 22:53:19 +0100 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2023-03-06 22:58:13 +0100 | fut | (~futar@129.234.0.191) |
2023-03-06 22:58:18 +0100 | smeouros | (~doo@185.44.146.69) (Remote host closed the connection) |
2023-03-06 22:58:45 +0100 | Inst | (~Inst@2601:6c4:4081:54f0:d8ed:99cb:5666:6ba0) (Ping timeout: 246 seconds) |
2023-03-06 22:59:07 +0100 | fut | (~futar@129.234.0.191) () |
2023-03-06 22:59:24 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) |
2023-03-06 23:01:23 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2023-03-06 23:01:50 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2023-03-06 23:03:29 +0100 | gmg | (~user@user/gehmehgeh) (Ping timeout: 255 seconds) |
2023-03-06 23:04:34 +0100 | gmg | (~user@user/gehmehgeh) |
2023-03-06 23:04:36 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-03-06 23:06:18 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2023-03-06 23:06:23 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) (Ping timeout: 248 seconds) |
2023-03-06 23:09:35 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds) |
2023-03-06 23:10:48 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) |
2023-03-06 23:13:10 +0100 | npm_i_kurbus | (~npm_i_kur@user/kurbus) |
2023-03-06 23:14:44 +0100 | Albina_Pavlovna | (~Albina_Pa@cpe-66-65-40-132.nyc.res.rr.com) |
2023-03-06 23:14:44 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-03-06 23:15:04 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:404f:ae08:50c4:925d) (Ping timeout: 252 seconds) |
2023-03-06 23:15:36 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Remote host closed the connection) |
2023-03-06 23:15:59 +0100 | rustisafungus | (~segfaultf@12.172.217.142) |
2023-03-06 23:18:25 +0100 | segfaultfizzbuzz | (~segfaultf@12.172.217.142) (*.net *.split) |
2023-03-06 23:18:25 +0100 | son0p | (~ff@181.136.122.143) (*.net *.split) |
2023-03-06 23:18:30 +0100 | shapr | (~user@68.54.166.125) |
2023-03-06 23:23:20 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-03-06 23:24:32 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-03-06 23:29:27 +0100 | tomboy64 | (~tomboy64@user/tomboy64) |
2023-03-06 23:29:34 +0100 | michalz | (~michalz@185.246.204.107) (Remote host closed the connection) |
2023-03-06 23:42:02 +0100 | abrar | (~abrar@static-108-2-152-54.phlapa.fios.verizon.net) |
2023-03-06 23:55:02 +0100 | shapr | (~user@68.54.166.125) (Ping timeout: 268 seconds) |
2023-03-06 23:55:41 +0100 | zeenk | (~zeenk@2a02:2f04:a20d:f900::7fe) |
2023-03-06 23:56:32 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |