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