2024-03-05 00:00:44 +0100 | prolic | (~prolic@181.122.138.24) (Client Quit) |
2024-03-05 00:00:55 +0100 | ski | (~ski@ext-1-033.eduroam.chalmers.se) |
2024-03-05 00:00:59 +0100 | prolic_ | (~prolic_@181.122.138.24) |
2024-03-05 00:19:47 +0100 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) |
2024-03-05 00:19:49 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-03-05 00:21:37 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2024-03-05 00:24:31 +0100 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2024-03-05 00:38:00 +0100 | tri | (~tri@172.59.9.202) |
2024-03-05 00:39:25 +0100 | Square2 | (~Square4@user/square) |
2024-03-05 00:42:28 +0100 | Square | (~Square@user/square) (Ping timeout: 255 seconds) |
2024-03-05 00:50:28 +0100 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 260 seconds) |
2024-03-05 00:52:20 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2024-03-05 00:52:54 +0100 | <haskellbridge> | <sm> I have never paid attention to stack.yaml.lock and never regretted not committing it |
2024-03-05 00:53:50 +0100 | <geekosaur> | I would hope it is recreated at need, or the name is horrid… |
2024-03-05 00:54:16 +0100 | <haskellbridge> | <sm> it is |
2024-03-05 00:54:48 +0100 | <haskellbridge> | <sm> I am deleting them all the time because they offend me when looking for files in a directory listing :) |
2024-03-05 00:56:00 +0100 | <geekosaur> | the description earlier made it sound more like `cabal.freeze` than a lock file, tbh |
2024-03-05 00:56:48 +0100 | <haskellbridge> | <sm> AFAICT it's more documentation of the build plan used than anything else, I'm not sure it has much effect |
2024-03-05 00:57:40 +0100 | <geekosaur> | okay, that makes more sense. I'd never check in `cabal.plan` either |
2024-03-05 00:57:50 +0100 | <haskellbridge> | <sm> you made me curious. https://docs.haskellstack.org/en/stable/lock_files/ |
2024-03-05 00:58:36 +0100 | <geekosaur> | blame glguy 🙂 [04 22:09:09] <glguy> lock files give other developers information about which versions of things actually work when they try to build it themselves |
2024-03-05 00:59:32 +0100 | <jackdk> | I tend to check in cabal.project.freeze for the same reason as I'd check in flake.lock - as you say, it means you know exactly what versions of things you last built with |
2024-03-05 00:59:43 +0100 | prolic_ | (~prolic_@181.122.138.24) (Ping timeout: 250 seconds) |
2024-03-05 01:00:36 +0100 | <geekosaur> | yeh, freeze files are a reasonable thing to check in, build plans not so much |
2024-03-05 01:01:01 +0100 | tri | (~tri@172.59.9.202) (Remote host closed the connection) |
2024-03-05 01:03:04 +0100 | <glguy> | Why blame me? |
2024-03-05 01:03:47 +0100 | <haskellbridge> | <sm> A bit more than build plan documentation then, it is also a cache to save reparsing yaml files and looking up package versions in snapshots. But that's not usually noticeable. |
2024-03-05 01:04:10 +0100 | <glguy> | The documentation said that they made them so that you could commit them in source control and enable users on other machines to get the same build |
2024-03-05 01:04:30 +0100 | <glguy> | with the advantage that you don't have to write them yourself |
2024-03-05 01:05:22 +0100 | <geekosaur> | still sounds more like a freeze file than a lock file |
2024-03-05 01:06:39 +0100 | <glguy> | I think the choice of the word "freeze" or "lock" just varies by the particular build too rather than having semantic importance |
2024-03-05 01:07:09 +0100 | <glguy> | They're never like a cvs lock directory |
2024-03-05 01:07:28 +0100 | dsrt^ | (~cd@c-98-242-74-66.hsd1.ga.comcast.net) |
2024-03-05 01:07:30 +0100 | <haskellbridge> | <sm> in common practice just a stack.yaml and your package.yaml or .cabal file gives the same reproducibility, but the .lock file covers some evil corner cases that could bite you (rarely) |
2024-03-05 01:08:09 +0100 | <haskellbridge> | <sm> yes, freezing in place / locking in place sounds similar to me |
2024-03-05 01:08:30 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-03-05 01:09:10 +0100 | <geekosaur> | not to me, I kinda expect a lock file to do something like preventing multiple programs from accessing the same resource |
2024-03-05 01:09:34 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 246 seconds) |
2024-03-05 01:09:49 +0100 | <glguy> | well a lot of build tools have coopted the term, so you'll have to adapt :( |
2024-03-05 01:09:53 +0100 | <haskellbridge> | <sm> sure, that's another more common usage |
2024-03-05 01:10:41 +0100 | <glguy> | but I know what you mean |
2024-03-05 01:11:06 +0100 | <hololeap> | why doesn't the tfdeps function here trigger a non-exhaustive pattern warning? https://0x0.st/H7SF.txt |
2024-03-05 01:11:36 +0100 | <geekosaur> | because `~` is irrefutable? |
2024-03-05 01:12:41 +0100 | <glguy> | hololeap: on recent GHC -Wall includes -Wincomplete-uni-patterns, which covers that |
2024-03-05 01:12:45 +0100 | <geekosaur> | specifically, it makes the pattern always match and only throw later |
2024-03-05 01:12:59 +0100 | <haskellbridge> | <sm> ph88: I'd say if you're NASA, yes check it in, otherwise no real need, and any reduction in dirty files churn when you're trying to do other git stuff is valuable |
2024-03-05 01:13:32 +0100 | <hololeap> | % foo ~(Just x) = x |
2024-03-05 01:13:33 +0100 | <yahb2> | <no output> |
2024-03-05 01:13:42 +0100 | <hololeap> | % map foo [Just 3, Nothing] |
2024-03-05 01:13:42 +0100 | <yahb2> | *** Exception: <interactive>:277:1-17: Non-exhaustive patterns in Just x |
2024-03-05 01:15:10 +0100 | <hololeap> | so it has the same problems, but handles the error lazily? or is this a valid design pattern somehow? |
2024-03-05 01:15:18 +0100 | <glguy> | > let foo ~(Just x) = ('a', x) in fst (foo Nothing) |
2024-03-05 01:15:19 +0100 | <lambdabot> | 'a' |
2024-03-05 01:15:45 +0100 | gawen | (~gawen@user/gawen) (Quit: cya) |
2024-03-05 01:15:49 +0100 | <glguy> | You only write ~ patterns when you *know* you aren't going to use the things bound by the pattern when it wouldn't have matched |
2024-03-05 01:15:51 +0100 | <geekosaur> | it's useful when the pattern might not actually be forced, or to break strict evaluation loops |
2024-03-05 01:16:13 +0100 | notzmv | (~daniel@user/notzmv) (Ping timeout: 255 seconds) |
2024-03-05 01:16:42 +0100 | <glguy> | and you can't write a ~ pattern with multiple cases, so if you're writing one you're saying you know when that constructor is going to match out of band |
2024-03-05 01:17:08 +0100 | gawen | (~gawen@user/gawen) |
2024-03-05 01:17:39 +0100 | rvalue | (~rvalue@user/rvalue) |
2024-03-05 01:17:54 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 260 seconds) |
2024-03-05 01:18:05 +0100 | srz | (~srz@181.228.49.93) (Ping timeout: 240 seconds) |
2024-03-05 01:18:22 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2024-03-05 01:18:41 +0100 | notzmv | (~daniel@user/notzmv) |
2024-03-05 01:18:53 +0100 | poscat | (~poscat@user/poscat) (Quit: Bye) |
2024-03-05 01:20:09 +0100 | redmp | (~redmp@lib-02-subnet-194.rdns.cenic.net) |
2024-03-05 01:20:13 +0100 | <geekosaur> | @src unzip |
2024-03-05 01:20:13 +0100 | <lambdabot> | unzip = foldr (\(a,b) ~(as,bs) -> (a:as,b:bs)) ([],[]) |
2024-03-05 01:21:23 +0100 | <redmp> | Hi, I'm attempting to use CApiFFI by calling ghc at the command line, but I'm finding that on the first call to ghc I get a boatload of "implicit declaration" errors but I don't get them on subsequent calls. I think this is because something isn't being copied to the tmpdir wher the capi file is being generated on the first call. |
2024-03-05 01:21:24 +0100 | poscat | (~poscat@user/poscat) |
2024-03-05 01:22:10 +0100 | <redmp> | What is the correct sequence of ghc or gcc commands to compile an .hs using CApiFFI and their corresponding .c files? |
2024-03-05 01:22:40 +0100 | <redmp> | Thanks in advance... |
2024-03-05 01:23:07 +0100 | bontaq | (~user@ool-45779c03.dyn.optonline.net) (Ping timeout: 272 seconds) |
2024-03-05 01:23:08 +0100 | Inst | (~Inst@120.244.192.75) (Ping timeout: 260 seconds) |
2024-03-05 01:25:55 +0100 | <mauke> | I don't think there is such a thing as a corresponding .c file |
2024-03-05 01:26:26 +0100 | <mauke> | redmp: what's your foreign import and what is the error message? |
2024-03-05 01:28:31 +0100 | <jackdk> | mauke: https://www.haskell.org/ghc/blog/20210709-capi-usage.html GHC compiles `CApiFFI` imports by constructing a C file containing a stub, and compiling that. This lets it `foreign import` things with awkward calling conventions or macros. I've never used it so I don't think I can actually help here, though. |
2024-03-05 01:28:35 +0100 | <geekosaur> | with CApiFFI? there is, because it has to go through the C compiler to support e.g. CPP |
2024-03-05 01:28:52 +0100 | <geekosaur> | but the file shouldn't vbe retained between runs |
2024-03-05 01:29:20 +0100 | <glguy> | redmp: Please construct an example file and failing command and put that on a pastebin so we can see what you mean |
2024-03-05 01:29:29 +0100 | <redmp> | mauke: I'm referring to a project directory containing, e.g. a foo.hs and foo.c; I could also put a foo.h in there if it's necessary. |
2024-03-05 01:29:35 +0100 | <redmp> | glguy: ok, I'll make a repro. Sorry. |
2024-03-05 01:31:24 +0100 | <mauke> | by "corresponding .c file" I meant the implementation of the C function |
2024-03-05 01:31:35 +0100 | <mauke> | not the intermediate code generated by ghc |
2024-03-05 01:32:36 +0100 | <mauke> | but the implementation doesn't have to be in C and is irrelevant to "implicit declaration" warnings/errors, because those come from the compiler and missing symbols would show up in the linking phase |
2024-03-05 01:34:20 +0100 | <redmp> | https://termbin.com/gmex |
2024-03-05 01:35:08 +0100 | <mauke> | yeah, your functions have no declarations anywhere |
2024-03-05 01:35:34 +0100 | <glguy> | redmp: when you're using the CApiFFI you need to tell GHC which header the function you're calling is in. https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/ffi.html#the-capi-calling-convention |
2024-03-05 01:35:39 +0100 | <mauke> | which is not an issue with the usual FFI, but with the CAPI stuff ghc generates and compiles a little piece of C code |
2024-03-05 01:35:49 +0100 | <mauke> | so you do need a valid declaration in scope |
2024-03-05 01:35:50 +0100 | <glguy> | That's the header.h part of foreign import capi "header.h f" f :: CInt -> IO CInt |
2024-03-05 01:36:13 +0100 | <redmp> | ah, ok, i thought adding the header in there was optional.. i have different problems when i add the header in there, but let me try it and see |
2024-03-05 01:36:29 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 240 seconds) |
2024-03-05 01:37:08 +0100 | <mauke> | the header is syntactically optional in foreign imports, but omitting it makes no sense with capi |
2024-03-05 01:37:10 +0100 | <geekosaur> | one thing which I'm not sure if it will cause problems or not here, but if you are using `int` in C then you should use `CInt` in Haskell |
2024-03-05 01:38:21 +0100 | <mauke> | (I would have to check the report on whether Int in foreign C declarations automatically maps to CInt with conversions) |
2024-03-05 01:38:45 +0100 | <glguy> | redmp: Also, don't name the files foo.c and foo.hs, make sure the foo is different between those |
2024-03-05 01:38:53 +0100 | <redmp> | geekosaur: Yes, I'm using Foreign.C.Types in my real code. :) |
2024-03-05 01:39:14 +0100 | <redmp> | Ah, ok, I'll make sure the names are distinct too. |
2024-03-05 01:40:25 +0100 | <glguy> | redmp: https://termbin.com/6b23 |
2024-03-05 01:41:26 +0100 | <glguy> | Haskell Int maps to HsInt and will be 32-bit or 64-bit depending on the platform |
2024-03-05 01:41:36 +0100 | <glguy> | CInt will map to whatever int is in C, which is probably 32-bit |
2024-03-05 01:53:17 +0100 | <redmp> | hmm, so, i'm having trouble replicating the thing in my project in the repro, so that's going to take a bit longer |
2024-03-05 01:53:44 +0100 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
2024-03-05 01:53:51 +0100 | <redmp> | but i tried what's in your paste, glguy and when i do `ghc Foo.hs impl.c` ghc only builds the o/hi files, no the executable |
2024-03-05 01:58:17 +0100 | <redmp> | here's a paste: https://termbin.com/73o2 |
2024-03-05 01:58:39 +0100 | <redmp> | i changed my files to match glguy's and performed the same command, but only got o/hi files.. after adding `-main-is` everything worked |
2024-03-05 01:59:17 +0100 | <geekosaur> | you called it `Module Foo` |
2024-03-05 01:59:41 +0100 | <geekosaur> | it needs to be `Module Main` for Haskell to treat it as an executable, or use `-main-is` |
2024-03-05 02:00:07 +0100 | <mauke> | well, glguy did |
2024-03-05 02:00:41 +0100 | <redmp> | ah, my mistake |
2024-03-05 02:00:46 +0100 | <geekosaur> | are we looking at the same paste? 6b23 uses `module Main` |
2024-03-05 02:00:50 +0100 | <mauke> | oh, no |
2024-03-05 02:01:01 +0100 | <mauke> | sorry, I got confused |
2024-03-05 02:01:35 +0100 | srz | (~srz@181.228.49.93) |
2024-03-05 02:02:29 +0100 | <geekosaur> | (also I incorrectly capitalized `module` twice, oops) |
2024-03-05 02:08:24 +0100 | <redmp> | clearly this is confusing; thank you both for your help |
2024-03-05 02:08:51 +0100 | <redmp> | the problem about duplicate definitions seems to have been because i was incorrectly including structs in my header; it's been awhile since i've used c, i guess |
2024-03-05 02:09:15 +0100 | <redmp> | s/both/three/g |
2024-03-05 02:11:10 +0100 | srz | (~srz@181.228.49.93) (Quit: Leaving) |
2024-03-05 02:11:10 +0100 | <mauke> | struct definitions themselves are fine |
2024-03-05 02:11:14 +0100 | <mauke> | global variables aren't |
2024-03-05 02:14:41 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 02:19:36 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 260 seconds) |
2024-03-05 02:22:10 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2024-03-05 02:22:44 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2024-03-05 02:24:16 +0100 | xff0x | (~xff0x@2405:6580:b080:900:44af:d746:5b50:d1a) (Ping timeout: 260 seconds) |
2024-03-05 02:27:05 +0100 | ec | (~ec@gateway/tor-sasl/ec) |
2024-03-05 02:28:29 +0100 | megaTherion | (~therion@unix.io) |
2024-03-05 02:33:17 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-03-05 02:35:30 +0100 | <redmp> | mauke: thanks |
2024-03-05 02:36:03 +0100 | <redmp> | here's the repro for that behavior (two pastes; i recommend diffing them): `curl -s https://termbin.com/uxbt > before; curl -s https://termbin.com/wrw7 > after; vimdiff before after` |
2024-03-05 02:37:01 +0100 | <geekosaur> | yeh, you had the struct definition in the .c file instead of the h file |
2024-03-05 02:37:25 +0100 | <geekosaur> | so the .h file couldn't refer to it and the .c file found the implicit definition created from the dangling ref in the .h file |
2024-03-05 02:39:03 +0100 | <redmp> | ahh.. ok.. for some reason i thought structs belonged in the c file; i forgot all my c i guess... sorry for asking what ended up being c questions in #haskell! |
2024-03-05 02:39:03 +0100 | jargon | (~jargon@154.sub-174-205-226.myvzw.com) (Read error: Connection reset by peer) |
2024-03-05 02:39:47 +0100 | <geekosaur> | struct *variables* go in the c file, definitions should usually be in the header |
2024-03-05 02:41:36 +0100 | jargon | (~jargon@154.sub-174-205-226.myvzw.com) |
2024-03-05 02:45:28 +0100 | megaTherion | (~therion@unix.io) (Ping timeout: 246 seconds) |
2024-03-05 02:46:01 +0100 | redmp | (~redmp@lib-02-subnet-194.rdns.cenic.net) (Ping timeout: 264 seconds) |
2024-03-05 02:46:25 +0100 | jargon | (~jargon@154.sub-174-205-226.myvzw.com) (Read error: Connection reset by peer) |
2024-03-05 02:46:38 +0100 | bilegeek | (~bilegeek@2600:1008:b05e:f8ee:8cc2:4fc:3c7e:f54a) |
2024-03-05 02:48:53 +0100 | zenstoic | (uid461840@id-461840.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2024-03-05 02:52:37 +0100 | ystael | (~ystael@user/ystael) (Ping timeout: 264 seconds) |
2024-03-05 02:55:42 +0100 | megaTherion | (~therion@unix.io) |
2024-03-05 02:59:13 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) |
2024-03-05 03:00:45 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2024-03-05 03:02:15 +0100 | shapr` | (~user@c-24-218-186-89.hsd1.ma.comcast.net) |
2024-03-05 03:03:55 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 256 seconds) |
2024-03-05 03:04:10 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2024-03-05 03:04:17 +0100 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) (Ping timeout: 252 seconds) |
2024-03-05 03:05:13 +0100 | otto_s | (~user@p4ff27284.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-03-05 03:06:54 +0100 | otto_s | (~user@p4ff27284.dip0.t-ipconnect.de) |
2024-03-05 03:12:14 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
2024-03-05 03:12:28 +0100 | rembo10 | (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-03-05 03:13:14 +0100 | rembo10 | (~rembo10@main.remulis.com) |
2024-03-05 03:14:09 +0100 | flounders | (~flounders@24.246.176.178) |
2024-03-05 03:28:47 +0100 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 264 seconds) |
2024-03-05 03:46:04 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds) |
2024-03-05 03:49:37 +0100 | otto_s | (~user@p4ff27284.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-03-05 03:58:56 +0100 | otto_s | (~user@p5de2fd4c.dip0.t-ipconnect.de) |
2024-03-05 04:06:45 +0100 | td_ | (~td@i53870912.versanet.de) (Ping timeout: 255 seconds) |
2024-03-05 04:08:24 +0100 | td_ | (~td@i5387092D.versanet.de) |
2024-03-05 04:13:26 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Quit: au revoir) |
2024-03-05 04:15:03 +0100 | shapr` | shapr |
2024-03-05 04:17:12 +0100 | travgm | (~travgm@2600:100e:a121:944a:1dab:9849:35ba:9926) |
2024-03-05 04:17:18 +0100 | travgm | (~travgm@2600:100e:a121:944a:1dab:9849:35ba:9926) (Changing host) |
2024-03-05 04:17:18 +0100 | travgm | (~travgm@fsf/member/travgm) |
2024-03-05 04:26:47 +0100 | mulk | (~mulk@p5b2dc813.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2024-03-05 04:27:58 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) |
2024-03-05 04:31:11 +0100 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) (Quit: sleep) |
2024-03-05 04:35:52 +0100 | rosco | (~rosco@175.136.155.53) |
2024-03-05 04:37:39 +0100 | jargon | (~jargon@154.sub-174-205-226.myvzw.com) |
2024-03-05 04:47:22 +0100 | otto_s | (~user@p5de2fd4c.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-03-05 04:47:32 +0100 | otto_s | (~user@p5de2fd4c.dip0.t-ipconnect.de) |
2024-03-05 04:47:58 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 264 seconds) |
2024-03-05 04:49:17 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2024-03-05 05:01:24 +0100 | thegeekinside | (~thegeekin@189.217.83.221) (Read error: Connection reset by peer) |
2024-03-05 05:05:35 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2024-03-05 05:06:25 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2024-03-05 05:08:58 +0100 | MironZ | (~MironZ@nat-infra.ehlab.uk) (Quit: Ping timeout (120 seconds)) |
2024-03-05 05:09:18 +0100 | MironZ | (~MironZ@nat-infra.ehlab.uk) |
2024-03-05 05:10:04 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-03-05 05:14:50 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 05:21:54 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds) |
2024-03-05 05:22:21 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) |
2024-03-05 05:29:00 +0100 | aforemny_ | (~aforemny@i59F516FE.versanet.de) |
2024-03-05 05:29:05 +0100 | aforemny | (~aforemny@2001:9e8:6cce:2800:bc66:ad8e:ad93:7074) (Ping timeout: 268 seconds) |
2024-03-05 05:34:01 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-03-05 05:36:21 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) |
2024-03-05 05:39:50 +0100 | benkard | (~mulk@pd9514963.dip0.t-ipconnect.de) |
2024-03-05 05:41:23 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2024-03-05 05:41:23 +0100 | benkard | mulk |
2024-03-05 05:41:53 +0100 | tri_ | (~tri@2607:fb90:b193:c180:52f:34db:e1d:860f) |
2024-03-05 05:43:35 +0100 | travgm | (~travgm@fsf/member/travgm) (Ping timeout: 268 seconds) |
2024-03-05 05:45:12 +0100 | motherfsck | (~motherfsc@user/motherfsck) |
2024-03-05 05:45:17 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds) |
2024-03-05 05:45:53 +0100 | thegeekinside | (~thegeekin@189.217.83.221) |
2024-03-05 05:56:59 +0100 | RedNifre | (~RedNifre@dslb-092-074-165-102.092.074.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
2024-03-05 06:02:08 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2024-03-05 06:04:51 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-03-05 06:05:04 +0100 | igemnace | (~ian@user/igemnace) |
2024-03-05 06:05:10 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 06:09:43 +0100 | RedNifre | (~RedNifre@dslb-088-072-205-004.088.072.pools.vodafone-ip.de) |
2024-03-05 06:20:33 +0100 | michalz | (~michalz@185.246.207.221) |
2024-03-05 06:22:43 +0100 | michalz | (~michalz@185.246.207.221) (Client Quit) |
2024-03-05 06:25:22 +0100 | michalz | (~michalz@185.246.207.193) |
2024-03-05 06:27:52 +0100 | krei-se | (~krei-se@p57af21c9.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2024-03-05 06:29:38 +0100 | bilegeek | (~bilegeek@2600:1008:b05e:f8ee:8cc2:4fc:3c7e:f54a) (Quit: Leaving) |
2024-03-05 06:43:42 +0100 | krei-se | (~krei-se@p57af28c6.dip0.t-ipconnect.de) |
2024-03-05 06:48:20 +0100 | tri_ | (~tri@2607:fb90:b193:c180:52f:34db:e1d:860f) (Remote host closed the connection) |
2024-03-05 06:51:27 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-03-05 06:51:45 +0100 | redmp | (~redmp@mobile-166-171-251-254.mycingular.net) |
2024-03-05 06:52:42 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) |
2024-03-05 06:57:52 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-03-05 06:58:25 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 06:59:22 +0100 | justache | (~justache@user/justache) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-03-05 07:00:16 +0100 | rosco | (~rosco@175.136.155.53) (Quit: Lost terminal) |
2024-03-05 07:04:02 +0100 | justache | (~justache@user/justache) |
2024-03-05 07:04:11 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2024-03-05 07:04:34 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2024-03-05 07:10:49 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds) |
2024-03-05 07:12:37 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 07:12:54 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) |
2024-03-05 07:15:55 +0100 | justache | (~justache@user/justache) (Remote host closed the connection) |
2024-03-05 07:16:16 +0100 | justache | (~justache@user/justache) |
2024-03-05 07:20:47 +0100 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2024-03-05 07:22:06 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2024-03-05 07:23:03 +0100 | oneeyedalien | (~oneeyedal@user/oneeyedalien) (Client Quit) |
2024-03-05 07:33:32 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 07:37:27 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
2024-03-05 07:43:50 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 260 seconds) |
2024-03-05 07:49:44 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 07:55:53 +0100 | travgm | (~travgm@2600:100e:a121:ea44:71d:e84c:de8a:1a30) |
2024-03-05 07:58:27 +0100 | acidjnk_new3 | (~acidjnk@p200300d6e737e73474a39a603313c7aa.dip0.t-ipconnect.de) |
2024-03-05 08:01:28 +0100 | oo_miguel | (~Thunderbi@78-11-181-16.static.ip.netia.com.pl) |
2024-03-05 08:03:27 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 255 seconds) |
2024-03-05 08:09:02 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2024-03-05 08:14:40 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 268 seconds) |
2024-03-05 08:16:04 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 08:19:52 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) |
2024-03-05 08:29:18 +0100 | titibandit | (~titibandi@user/titibandit) (Quit: leaving) |
2024-03-05 08:30:42 +0100 | titibandit | (~titibandi@user/titibandit) |
2024-03-05 08:34:20 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
2024-03-05 08:47:05 +0100 | notzmv | (~daniel@user/notzmv) (Ping timeout: 272 seconds) |
2024-03-05 08:47:28 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-03-05 08:52:54 +0100 | notzmv- | (~daniel@user/notzmv) |
2024-03-05 08:53:30 +0100 | notzmv- | notzmv |
2024-03-05 08:54:49 +0100 | euleritian | (~euleritia@dynamic-176-006-199-043.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-03-05 08:55:06 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 09:02:14 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-03-05 09:02:23 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 09:03:49 +0100 | Silver_X | (~Silver_X@182.178.208.55) |
2024-03-05 09:07:18 +0100 | danza | (~francesco@151.43.175.12) |
2024-03-05 09:07:29 +0100 | dshk | (~dshk@77.50.49.68) |
2024-03-05 09:10:49 +0100 | redmp | (~redmp@mobile-166-171-251-254.mycingular.net) (Ping timeout: 246 seconds) |
2024-03-05 09:19:25 +0100 | CiaoSen | (~Jura@2a05:5800:2b7:2400:e6b9:7aff:fe80:3d03) |
2024-03-05 09:24:15 +0100 | misterfish | (~misterfis@84.53.85.146) |
2024-03-05 09:32:38 +0100 | thegeekinside | (~thegeekin@189.217.83.221) (Read error: Connection reset by peer) |
2024-03-05 09:33:24 +0100 | travgm_ | (~travgm@2600:100e:a121:ebe6:ed23:e82:949:259f) |
2024-03-05 09:36:29 +0100 | travgm | (~travgm@2600:100e:a121:ea44:71d:e84c:de8a:1a30) (Ping timeout: 272 seconds) |
2024-03-05 09:36:38 +0100 | gmg | (~user@user/gehmehgeh) |
2024-03-05 09:43:27 +0100 | drdo5 | (~drdo@bl5-29-74.dsl.telepac.pt) |
2024-03-05 09:44:07 +0100 | drdo | (~drdo@bl5-29-74.dsl.telepac.pt) (Ping timeout: 260 seconds) |
2024-03-05 09:44:07 +0100 | drdo5 | drdo |
2024-03-05 09:46:17 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2024-03-05 09:48:15 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:4df3:360d:e959:c357) |
2024-03-05 09:48:39 +0100 | <ph88> | How can i get ApplicativeDo to work correctly with optparse-applicative? https://bpa.st/GVBA |
2024-03-05 09:50:30 +0100 | <tomsmeding> | ph88: that function is inherently monadic because whether you execute the 'option auto $ long "to"' action depends on the _result_ of an ealier action ('option str $ long "to"') |
2024-03-05 09:50:37 +0100 | <tomsmeding> | *earlier |
2024-03-05 09:51:30 +0100 | <ph88> | i don't want to parse it twice actually, let me try something else then |
2024-03-05 09:51:50 +0100 | <tomsmeding> | for a computation to be Applicative, the tree of all "monadic" actions must be known statically |
2024-03-05 09:52:03 +0100 | <tomsmeding> | because you only have (<*>) :: f (a -> b) -> f a -> f b |
2024-03-05 09:52:21 +0100 | <tomsmeding> | which actions to take cannot depend on values computed inside the "monad" |
2024-03-05 09:52:21 +0100 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) |
2024-03-05 09:52:40 +0100 | <tomsmeding> | (ApplicativeDo is a little more stringent about how you format your code as well, but this is the fundamental requirement) |
2024-03-05 09:54:04 +0100 | <ph88> | how can i fail the applicative when i use do notation ? |
2024-03-05 09:54:13 +0100 | <tomsmeding> | :t empty |
2024-03-05 09:54:14 +0100 | <lambdabot> | Alternative f => f a |
2024-03-05 09:54:24 +0100 | danza_ | (~francesco@151.57.193.118) |
2024-03-05 09:56:00 +0100 | <ph88> | which actions to take cannot depend on values computed inside the "monad" o_O |
2024-03-05 09:56:59 +0100 | danza | (~francesco@151.43.175.12) (Ping timeout: 264 seconds) |
2024-03-05 09:57:05 +0100 | <tomsmeding> | I cannot describe it better :') |
2024-03-05 09:57:09 +0100 | <ncf> | it's probably a good thing that it's optparse-applicative and not optparse-monadic. you usually want to know statically all the available flags; interactions between them are processed later |
2024-03-05 09:58:05 +0100 | <ph88> | tomsmeding, the description was good, i'm just flabbergasted as to what the implications of that are |
2024-03-05 09:58:15 +0100 | <tomsmeding> | that's Applicative for you :p |
2024-03-05 09:58:28 +0100 | <tomsmeding> | good exercise may be to try breaking that rule using (<*>) (you can't) |
2024-03-05 09:59:27 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 09:59:50 +0100 | <ph88> | I'm confused https://bpa.st/XYPQ |
2024-03-05 09:59:51 +0100 | <ncf> | closest you'll get is a parser of parsers, and then guess what class you need to turn that into a parser |
2024-03-05 10:00:04 +0100 | <tomsmeding> | lol |
2024-03-05 10:00:37 +0100 | <tomsmeding> | ph88: do you want to restrict the argument that you can pass to an option? |
2024-03-05 10:00:53 +0100 | <ph88> | yes either the word "current" or a integer-like string |
2024-03-05 10:01:00 +0100 | <ph88> | otherwise fail |
2024-03-05 10:03:37 +0100 | <tomsmeding> | ph88: the first argument of 'option' is a ReadM, which is a monad |
2024-03-05 10:03:57 +0100 | <tomsmeding> | perhaps `maybeReader _ <$> str` |
2024-03-05 10:04:04 +0100 | <tomsmeding> | or eitherReader |
2024-03-05 10:04:33 +0100 | ft | (~ft@p508db2e6.dip0.t-ipconnect.de) (Quit: leaving) |
2024-03-05 10:05:30 +0100 | chele | (~chele@user/chele) |
2024-03-05 10:07:55 +0100 | <ph88> | tomsmeding, like this should be ok no? https://bpa.st/DHRQ |
2024-03-05 10:08:30 +0100 | <tomsmeding> | I guess, does it work? :p |
2024-03-05 10:08:34 +0100 | arahael | (~arahael@119-18-0-146.771200.syd.nbn.aussiebb.net) |
2024-03-05 10:10:58 +0100 | <tomsmeding> | "for an applicative parser that looks suspiciously monadic" |
2024-03-05 10:15:42 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2024-03-05 10:18:55 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:4df3:360d:e959:c357) (Ping timeout: 255 seconds) |
2024-03-05 10:22:13 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:8195:4ef:5c19:e61) |
2024-03-05 10:26:14 +0100 | chiselfuse | (~chiselfus@user/chiselfuse) (Ping timeout: 260 seconds) |
2024-03-05 10:27:04 +0100 | chiselfuse | (~chiselfus@user/chiselfuse) |
2024-03-05 10:27:17 +0100 | danza_ | (~francesco@151.57.193.118) (Ping timeout: 240 seconds) |
2024-03-05 10:29:19 +0100 | tzh | (~tzh@c-73-164-206-160.hsd1.or.comcast.net) (Quit: zzz) |
2024-03-05 10:31:25 +0100 | <ph88> | haha yes that's right :D |
2024-03-05 10:36:40 +0100 | jinsun_ | (~jinsun@user/jinsun) |
2024-03-05 10:36:40 +0100 | jinsun | Guest6034 |
2024-03-05 10:36:40 +0100 | jinsun_ | jinsun |
2024-03-05 10:37:04 +0100 | Guest6034 | (~jinsun@user/jinsun) (Ping timeout: 260 seconds) |
2024-03-05 10:46:25 +0100 | Aazam | (~Aazam@2409:40c0:220:65e9:9ab7:a24f:ee60:d820) |
2024-03-05 10:48:56 +0100 | <Aazam> | Hello, I came across haskell through gsoc and am interested in it. Is it possible to get started with it as a beginner in haskell? |
2024-03-05 10:49:39 +0100 | danse-nr3 | (~danse@151.57.193.118) |
2024-03-05 10:49:50 +0100 | Guest11 | (~Guest11@2001:fb1:10a:22db:a0e6:903a:b3c0:c5ee) |
2024-03-05 10:50:34 +0100 | Guest11 | (~Guest11@2001:fb1:10a:22db:a0e6:903a:b3c0:c5ee) (Client Quit) |
2024-03-05 10:51:50 +0100 | <probie> | Get started with GSOC, or get started with Haskell? |
2024-03-05 10:52:28 +0100 | <Aazam> | With GSOC specifically |
2024-03-05 10:53:56 +0100 | <Aazam> | The Continuous Integration Log Explorer idea seems to be the most beginner friendly |
2024-03-05 10:55:11 +0100 | danse-nr3 | (~danse@151.57.193.118) (Ping timeout: 264 seconds) |
2024-03-05 10:56:57 +0100 | ski | (~ski@ext-1-033.eduroam.chalmers.se) (Ping timeout: 256 seconds) |
2024-03-05 10:57:04 +0100 | danse-nr3 | (~danse@151.57.193.118) |
2024-03-05 10:57:19 +0100 | danse-nr3 | (~danse@151.57.193.118) (Remote host closed the connection) |
2024-03-05 10:57:43 +0100 | danse-nr3 | (~danse@151.57.193.118) |
2024-03-05 11:00:46 +0100 | gmg | (~user@user/gehmehgeh) (Ping timeout: 260 seconds) |
2024-03-05 11:01:36 +0100 | gmg | (~user@user/gehmehgeh) |
2024-03-05 11:03:30 +0100 | ski | (~ski@ext-1-033.eduroam.chalmers.se) |
2024-03-05 11:05:03 +0100 | ph88^ | (~ph88@2a02:8109:9e26:c800:4cc1:1b38:872e:9a01) |
2024-03-05 11:08:20 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:8195:4ef:5c19:e61) (Ping timeout: 256 seconds) |
2024-03-05 11:14:01 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 272 seconds) |
2024-03-05 11:14:54 +0100 | travgm__ | (~travgm@2600:100e:a121:ec65:d102:4dd6:658b:db04) |
2024-03-05 11:17:24 +0100 | travgm_ | (~travgm@2600:100e:a121:ebe6:ed23:e82:949:259f) (Ping timeout: 256 seconds) |
2024-03-05 11:20:48 +0100 | tnks | (sid412124@id-412124.helmsley.irccloud.com) (Ping timeout: 256 seconds) |
2024-03-05 11:21:39 +0100 | Aazam | (~Aazam@2409:40c0:220:65e9:9ab7:a24f:ee60:d820) (Quit: Client closed) |
2024-03-05 11:21:54 +0100 | tnks | (sid412124@id-412124.helmsley.irccloud.com) |
2024-03-05 11:27:30 +0100 | jinsun_ | (~jinsun@user/jinsun) |
2024-03-05 11:27:30 +0100 | jinsun | Guest1732 |
2024-03-05 11:27:30 +0100 | Guest1732 | (~jinsun@user/jinsun) (Killed (platinum.libera.chat (Nickname regained by services))) |
2024-03-05 11:27:30 +0100 | jinsun_ | jinsun |
2024-03-05 11:29:01 +0100 | cfricke | (~cfricke@user/cfricke) |
2024-03-05 11:29:17 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 240 seconds) |
2024-03-05 11:39:54 +0100 | Aazam | (~Aazam@152.58.3.71) |
2024-03-05 11:42:18 +0100 | __monty__ | (~toonn@user/toonn) |
2024-03-05 11:45:25 +0100 | Aazam | (~Aazam@152.58.3.71) (Quit: Client closed) |
2024-03-05 11:51:36 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-03-05 11:54:24 +0100 | img | (~img@user/img) |
2024-03-05 11:55:53 +0100 | img | (~img@user/img) (Client Quit) |
2024-03-05 11:56:52 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds) |
2024-03-05 11:58:20 +0100 | img | (~img@user/img) |
2024-03-05 12:04:43 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-03-05 12:07:04 +0100 | xff0x | (~xff0x@2405:6580:b080:900:c534:620a:b520:a93b) |
2024-03-05 12:09:36 +0100 | noumenon | (~noumenon@113.51-175-156.customer.lyse.net) |
2024-03-05 12:18:10 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 255 seconds) |
2024-03-05 12:23:54 +0100 | [[PSYCHIATRIST | (~PSYCHIAT@46.197.13.174) |
2024-03-05 12:24:17 +0100 | Silver_X | (~Silver_X@182.178.208.55) (Quit: Leaving) |
2024-03-05 12:25:17 +0100 | bontaq | (~user@ool-45779c03.dyn.optonline.net) |
2024-03-05 12:27:23 +0100 | xiliuya | (~xiliuya@user/xiliuya) |
2024-03-05 12:27:23 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-03-05 12:28:34 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 12:38:43 +0100 | CiaoSen | (~Jura@2a05:5800:2b7:2400:e6b9:7aff:fe80:3d03) (Ping timeout: 246 seconds) |
2024-03-05 12:51:33 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-03-05 12:51:48 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 12:54:07 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 246 seconds) |
2024-03-05 12:56:22 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 12:57:15 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-03-05 12:58:21 +0100 | Inst | (~Inst@120.244.192.75) |
2024-03-05 13:00:00 +0100 | TheCoffeMaker_ | (~TheCoffeM@200.114.213.75) |
2024-03-05 13:00:32 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Read error: Connection reset by peer) |
2024-03-05 13:04:50 +0100 | akegalj | (~akegalj@141-136-172-38.dsl.iskon.hr) |
2024-03-05 13:06:08 +0100 | akegalj | (~akegalj@141-136-172-38.dsl.iskon.hr) (Client Quit) |
2024-03-05 13:11:34 +0100 | phma | (phma@2001:5b0:215d:ea48:1b4d:6bdb:657b:30e6) (Read error: Connection reset by peer) |
2024-03-05 13:12:26 +0100 | phma | (phma@2001:5b0:211b:d448:4014:b5f0:331f:c237) |
2024-03-05 13:13:57 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 255 seconds) |
2024-03-05 13:17:40 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2024-03-05 13:24:16 +0100 | xiliuya | (~xiliuya@user/xiliuya) (Quit: bye~) |
2024-03-05 13:26:59 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-03-05 13:27:55 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 13:33:29 +0100 | danse-nr3 | (~danse@151.57.193.118) (Ping timeout: 268 seconds) |
2024-03-05 13:37:07 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2024-03-05 13:40:37 +0100 | mhatta | (~mhatta@www21123ui.sakura.ne.jp) (Quit: ZNC 1.8.2+deb4+b2 - https://znc.in) |
2024-03-05 13:45:23 +0100 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 272 seconds) |
2024-03-05 13:50:05 +0100 | __monty_1 | (~toonn@user/toonn) |
2024-03-05 13:51:43 +0100 | __monty__ | (~toonn@user/toonn) (Ping timeout: 272 seconds) |
2024-03-05 13:53:05 +0100 | [[PSYCHIATRIST | (~PSYCHIAT@46.197.13.174) (Quit: Connection closed) |
2024-03-05 14:07:43 +0100 | danse-nr3 | (~danse@151.57.207.152) |
2024-03-05 14:10:47 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2024-03-05 14:15:10 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2024-03-05 14:18:21 +0100 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) |
2024-03-05 14:36:33 +0100 | ph88^ | (~ph88@2a02:8109:9e26:c800:4cc1:1b38:872e:9a01) (Remote host closed the connection) |
2024-03-05 14:36:57 +0100 | ubert | (~Thunderbi@2a02:8109:ab8a:5a00:f00e:a21c:b8c6:8c07) |
2024-03-05 14:40:23 +0100 | CiaoSen | (~Jura@2a05:5800:2b7:2400:e6b9:7aff:fe80:3d03) |
2024-03-05 14:42:50 +0100 | srz | (~srz@181.228.49.93) |
2024-03-05 14:49:19 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:9462:9eb1:5c9f:778b) |
2024-03-05 14:49:42 +0100 | <ph88> | Anyone an idea how can i model the relations between two data types. Sometimes they are isomorphic and can be converted from/to. Other times it's a one way operation and some data will be lost. (context is database migrations between two versions of a model) |
2024-03-05 14:52:06 +0100 | <Hecate> | ph88: https://hackage.haskell.org/package/DataVersion-0.1.0.1/docs/Data-Migration.html |
2024-03-05 14:52:43 +0100 | <Hecate> | and there's also https://hackage.haskell.org/package/versioning-0.3.2.0/docs/Versioning-Base.html |
2024-03-05 14:55:20 +0100 | <ph88> | Hecate, Data.Migration looks nice but i don't see anything there to indicate it can be a one-way operation. And Versioning i don't like because it puts extra stuff in my actual types |
2024-03-05 15:00:50 +0100 | <ph88> | Would like to do something like this https://bpa.st/DPPQ |
2024-03-05 15:01:06 +0100 | <ph88> | like path files -> like patch files |
2024-03-05 15:02:31 +0100 | thegeekinside | (~thegeekin@189.217.83.221) |
2024-03-05 15:05:05 +0100 | thegeekinside | (~thegeekin@189.217.83.221) (Read error: Connection reset by peer) |
2024-03-05 15:05:28 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 15:25:57 +0100 | ystael | (~ystael@user/ystael) |
2024-03-05 15:26:30 +0100 | <Hecate> | ph88: I see |
2024-03-05 15:26:48 +0100 | <Hecate> | I think simple stuff like a datatype and functions might just be the correct way to go |
2024-03-05 15:27:07 +0100 | <ph88> | alright i will start with some simple functions |
2024-03-05 15:27:19 +0100 | thegeekinside | (~thegeekin@189.217.83.221) |
2024-03-05 15:32:17 +0100 | misterfish | (~misterfis@84.53.85.146) |
2024-03-05 15:34:47 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 15:36:35 +0100 | srz | (~srz@181.228.49.93) (Ping timeout: 264 seconds) |
2024-03-05 15:37:49 +0100 | alexherbo2 | (~alexherbo@2a02-8440-3140-5d56-4059-aaad-724e-08c0.rev.sfr.net) |
2024-03-05 15:52:12 +0100 | rscastilho2024 | (rscastilho@179.221.142.47) |
2024-03-05 15:52:40 +0100 | rscastilho2024 | (rscastilho@179.221.142.47) (Remote host closed the connection) |
2024-03-05 16:00:09 +0100 | dshk | (~dshk@77.50.49.68) (Remote host closed the connection) |
2024-03-05 16:03:25 +0100 | srz | (~srz@181.228.49.93) |
2024-03-05 16:03:33 +0100 | jargon | (~jargon@154.sub-174-205-226.myvzw.com) (Read error: Connection reset by peer) |
2024-03-05 16:08:31 +0100 | infinity0 | (~infinity0@pwned.gg) (Remote host closed the connection) |
2024-03-05 16:09:00 +0100 | __monty_1 | __monty__ |
2024-03-05 16:12:36 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds) |
2024-03-05 16:14:32 +0100 | euleritian | (~euleritia@dynamic-176-006-204-213.176.6.pool.telefonica.de) |
2024-03-05 16:20:32 +0100 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 260 seconds) |
2024-03-05 16:27:29 +0100 | zenstoic | (uid461840@id-461840.hampstead.irccloud.com) |
2024-03-05 16:37:34 +0100 | CiaoSen | (~Jura@2a05:5800:2b7:2400:e6b9:7aff:fe80:3d03) (Ping timeout: 256 seconds) |
2024-03-05 16:43:19 +0100 | zetef | (~quassel@95.77.17.251) |
2024-03-05 16:45:46 +0100 | santiagopim | (~user@90.167.66.131) |
2024-03-05 16:52:53 +0100 | ephemient | (uid407513@id-407513.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2024-03-05 16:53:18 +0100 | rosco | (~rosco@175.136.155.53) |
2024-03-05 17:05:12 +0100 | alexherbo2 | (~alexherbo@2a02-8440-3140-5d56-4059-aaad-724e-08c0.rev.sfr.net) (Remote host closed the connection) |
2024-03-05 17:05:37 +0100 | alexherbo2 | (~alexherbo@2a02-8440-3140-5d56-4059-aaad-724e-08c0.rev.sfr.net) |
2024-03-05 17:12:14 +0100 | euleritian | (~euleritia@dynamic-176-006-204-213.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-03-05 17:12:28 +0100 | srz | (~srz@181.228.49.93) (Ping timeout: 255 seconds) |
2024-03-05 17:12:37 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 17:13:06 +0100 | natechan | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Quit: WeeChat 2.9) |
2024-03-05 17:13:17 +0100 | danse-nr3 | (~danse@151.57.207.152) (Ping timeout: 240 seconds) |
2024-03-05 17:15:58 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.1.1) |
2024-03-05 17:19:13 +0100 | infinity0 | (~infinity0@pwned.gg) |
2024-03-05 17:20:25 +0100 | danse-nr3 | (~danse@151.57.207.152) |
2024-03-05 17:41:48 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-03-05 17:42:56 +0100 | califax | (~califax@user/califx) |
2024-03-05 17:43:49 +0100 | oneeyedalien | (~oneeyedal@user/oneeyedalien) |
2024-03-05 17:50:08 +0100 | EvanR | (~EvanR@user/evanr) (Ping timeout: 260 seconds) |
2024-03-05 17:56:18 +0100 | igemnace | (~ian@user/igemnace) (Quit: WeeChat 4.2.1) |
2024-03-05 17:56:28 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 17:57:11 +0100 | rvalue | (~rvalue@user/rvalue) (Quit: ZNC - https://znc.in) |
2024-03-05 17:57:18 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 17:57:30 +0100 | rvalue | (~rvalue@user/rvalue) |
2024-03-05 17:58:39 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 18:02:25 +0100 | danse-nr3 | (~danse@151.57.207.152) (Ping timeout: 255 seconds) |
2024-03-05 18:05:11 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 252 seconds) |
2024-03-05 18:05:26 +0100 | notzmv | (~daniel@user/notzmv) (Ping timeout: 268 seconds) |
2024-03-05 18:05:43 +0100 | tzh | (~tzh@c-73-164-206-160.hsd1.or.comcast.net) |
2024-03-05 18:05:51 +0100 | alexherbo2 | (~alexherbo@2a02-8440-3140-5d56-4059-aaad-724e-08c0.rev.sfr.net) (Remote host closed the connection) |
2024-03-05 18:12:32 +0100 | zetef | (~quassel@95.77.17.251) (Remote host closed the connection) |
2024-03-05 18:12:52 +0100 | ubert | (~Thunderbi@2a02:8109:ab8a:5a00:f00e:a21c:b8c6:8c07) (Quit: ubert) |
2024-03-05 18:14:05 +0100 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 240 seconds) |
2024-03-05 18:17:19 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2024-03-05 18:20:47 +0100 | Nixkernal_ | (~Nixkernal@243.212.61.188.dynamic.wline.res.cust.swisscom.ch) |
2024-03-05 18:21:38 +0100 | redmp | (~redmp@mobile-166-171-251-145.mycingular.net) |
2024-03-05 18:25:26 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
2024-03-05 18:26:06 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 18:27:26 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 18:29:52 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds) |
2024-03-05 18:29:54 +0100 | danse-nr3 | (~danse@151.57.222.28) |
2024-03-05 18:31:23 +0100 | danse-nr3 | (~danse@151.57.222.28) (Remote host closed the connection) |
2024-03-05 18:31:47 +0100 | danse-nr3 | (~danse@151.57.222.28) |
2024-03-05 18:33:05 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 18:34:20 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 252 seconds) |
2024-03-05 18:35:03 +0100 | Buggys | (Buggys@shelltalk.net) (Remote host closed the connection) |
2024-03-05 18:36:05 +0100 | danse-nr3 | (~danse@151.57.222.28) (Ping timeout: 240 seconds) |
2024-03-05 18:37:24 +0100 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-03-05 18:41:56 +0100 | rvalue | (~rvalue@user/rvalue) |
2024-03-05 18:43:14 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 18:45:38 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2024-03-05 18:46:37 +0100 | zenstoic | (uid461840@id-461840.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2024-03-05 18:47:00 +0100 | euphores | (~SASL_euph@user/euphores) |
2024-03-05 18:48:28 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds) |
2024-03-05 18:50:48 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-03-05 18:51:00 +0100 | euleritian | (~euleritia@dynamic-176-006-204-213.176.6.pool.telefonica.de) |
2024-03-05 18:56:12 +0100 | srz | (~srz@181.228.49.93) |
2024-03-05 19:03:44 +0100 | travgm | (~travgm@238.sub-97-138-17.myvzw.com) |
2024-03-05 19:04:08 +0100 | Square | (~Square@user/square) |
2024-03-05 19:04:56 +0100 | travgm__ | (~travgm@2600:100e:a121:ec65:d102:4dd6:658b:db04) (Ping timeout: 268 seconds) |
2024-03-05 19:07:53 +0100 | EvanR | (~EvanR@user/evanr) |
2024-03-05 19:09:51 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 19:11:19 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-03-05 19:12:31 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 19:16:47 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 19:16:58 +0100 | rosco | (~rosco@175.136.155.53) (Quit: Lost terminal) |
2024-03-05 19:16:59 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 19:17:27 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2024-03-05 19:18:21 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 19:18:26 +0100 | underlap | (~underlap@213.31.186.28) |
2024-03-05 19:18:32 +0100 | euleritian | (~euleritia@dynamic-176-006-204-213.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-03-05 19:18:49 +0100 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-03-05 19:18:51 +0100 | underlap | (~underlap@213.31.186.28) (Client Quit) |
2024-03-05 19:19:59 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-03-05 19:22:22 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-03-05 19:23:15 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 19:32:23 +0100 | mei | (~mei@user/mei) (Remote host closed the connection) |
2024-03-05 19:33:59 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 19:34:04 +0100 | Vajb | (~Vajb@n7kymlrhl8zspe1o45k-1.v6.elisa-mobile.fi) |
2024-03-05 19:34:48 +0100 | mei | (~mei@user/mei) |
2024-03-05 19:39:30 +0100 | dshk | (~dshk@77.50.49.68) |
2024-03-05 19:40:41 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 272 seconds) |
2024-03-05 19:44:23 +0100 | rainbyte | (~rainbyte@186.22.19.215) |
2024-03-05 19:46:17 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 19:47:18 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 19:57:58 +0100 | Buggys | (Buggys@Buggy.shelltalk.net) |
2024-03-05 19:58:12 +0100 | target_i | (~target_i@user/target-i/x-6023099) |
2024-03-05 20:00:33 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:01:54 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 20:10:27 +0100 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 4.1.2) |
2024-03-05 20:12:15 +0100 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 260 seconds) |
2024-03-05 20:15:31 +0100 | <zwro> | can anyone point to a good resource for someone wanting to learn Functional Reactive Programming from first principles? |
2024-03-05 20:15:47 +0100 | notzmv | (~daniel@user/notzmv) |
2024-03-05 20:18:56 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:23:12 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-03-05 20:23:14 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 252 seconds) |
2024-03-05 20:23:46 +0100 | Guest73 | (~Guest34@2a09:bac1:3680:40::2e4:39) |
2024-03-05 20:23:58 +0100 | Guest73 | (~Guest34@2a09:bac1:3680:40::2e4:39) (Client Quit) |
2024-03-05 20:27:52 +0100 | califax | (~califax@user/califx) |
2024-03-05 20:28:22 +0100 | <EvanR> | first principles would arguably be conal's earlier papers on fran, and then conal's blog |
2024-03-05 20:30:11 +0100 | <EvanR> | which would give you a good basis to consider the difficulties and also identify how modern FRP ignores all that |
2024-03-05 20:30:35 +0100 | <EvanR> | and so diluted the brand a lot |
2024-03-05 20:31:07 +0100 | <EvanR> | arrowized FRP got a lot of the theory straightened out, but there aren't many implementations |
2024-03-05 20:37:42 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:38:17 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 20:39:00 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 20:39:35 +0100 | TheCoffeMaker_ | (~TheCoffeM@200.114.213.75) (Ping timeout: 272 seconds) |
2024-03-05 20:39:36 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 20:40:38 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Excess Flood) |
2024-03-05 20:41:00 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 20:42:31 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:42:52 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 20:43:04 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:43:44 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Excess Flood) |
2024-03-05 20:44:22 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 20:45:37 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 20:46:55 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 20:51:07 +0100 | mei | (~mei@user/mei) (Remote host closed the connection) |
2024-03-05 20:52:36 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2024-03-05 20:52:50 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 20:53:29 +0100 | f-a | (ff2a@joined.irc.for-some.fun) |
2024-03-05 20:53:33 +0100 | mei | (~mei@user/mei) |
2024-03-05 20:53:55 +0100 | <f-a> | Is there a sensible way of converting from Word32 to [Word8] (or a tuple of four Word8)? |
2024-03-05 20:56:35 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
2024-03-05 20:57:37 +0100 | <mauke> | oh, several |
2024-03-05 20:58:50 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 21:00:14 +0100 | <probie> | > let x = 0x12345678 :: Word32 in [fromIntegral (x `shiftR` (8 * n)) .&. 0xff | n <- [0..3]] |
2024-03-05 21:00:15 +0100 | <lambdabot> | [120,86,52,18] |
2024-03-05 21:00:45 +0100 | average | (uid473595@user/average) (Quit: Connection closed for inactivity) |
2024-03-05 21:02:00 +0100 | <mauke> | conv n | n < 10 = "afew" | n < 100 = "some" | n < 1000 = "many" | otherwise = "alot" |
2024-03-05 21:03:10 +0100 | <f-a> | makes sense probie |
2024-03-05 21:03:33 +0100 | <ncf> | https://hackage.haskell.org/package/network-3.1.4.0/docs/Network-Socket.html#v:hostAddressToTuple |
2024-03-05 21:03:39 +0100 | son0p | (~ff@186.121.56.175) (Ping timeout: 268 seconds) |
2024-03-05 21:04:19 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:05:57 +0100 | <probie> | ncf: You've got to be careful with that, because it changes result depending on the endianness of your system |
2024-03-05 21:06:10 +0100 | <EvanR> | divMod or a combination of right shifts and AND by 255 is like popping from a byte stack |
2024-03-05 21:06:45 +0100 | <EvanR> | so a sensible way to express it is (,,,) <$> pop <*> pop <*> pop <*> pop xD |
2024-03-05 21:06:59 +0100 | <EvanR> | where the Word is the state |
2024-03-05 21:07:19 +0100 | <mauke> | https://hackage.haskell.org/package/data-serializer-0.3.5/docs/Data-Serializer.html#v:toBytes I guess? |
2024-03-05 21:07:46 +0100 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) (Quit: brb) |
2024-03-05 21:09:00 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds) |
2024-03-05 21:09:20 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:10:24 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 21:10:36 +0100 | xnuk | (~Xnuk@112.72.131.90) |
2024-03-05 21:10:38 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 21:10:55 +0100 | xnuk | (~Xnuk@112.72.131.90) (Client Quit) |
2024-03-05 21:11:28 +0100 | xnuk | (~Xnuk@112.72.131.90) |
2024-03-05 21:12:14 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Quit: So long and thanks for all the fish) |
2024-03-05 21:14:55 +0100 | WonDerDan | (~WonDerDan@dkxwfwyb5vptjs3sw1yht-3.rev.dnainternet.fi) |
2024-03-05 21:15:44 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:17:03 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 21:21:57 +0100 | dshk | (~dshk@77.50.49.68) (Remote host closed the connection) |
2024-03-05 21:22:30 +0100 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2024-03-05 21:23:59 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 21:25:54 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:26:50 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 21:27:19 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 21:29:21 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 256 seconds) |
2024-03-05 21:30:31 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 21:33:58 +0100 | xnuk | (~Xnuk@112.72.131.90) (Quit: WeeChat 4.2.1) |
2024-03-05 21:36:21 +0100 | ft | (~ft@p508db2e6.dip0.t-ipconnect.de) |
2024-03-05 21:36:44 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:38:05 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection) |
2024-03-05 21:42:18 +0100 | tri | (~tri@ool-18bc2e74.dyn.optonline.net) |
2024-03-05 21:47:33 +0100 | WonDerDan | (~WonDerDan@dkxwfwyb5vptjs3sw1yht-3.rev.dnainternet.fi) (Quit: Client closed) |
2024-03-05 21:48:58 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 21:51:43 +0100 | srz | (~srz@181.228.49.93) (Ping timeout: 246 seconds) |
2024-03-05 22:00:57 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 22:01:55 +0100 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2024-03-05 22:07:15 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-03-05 22:08:00 +0100 | zetef | (~quassel@95.77.17.251) |
2024-03-05 22:08:29 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
2024-03-05 22:10:48 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 22:10:59 +0100 | WonDerDann56 | (~WonDerDan@dkxwfwyb5vptjs3sw1yht-3.rev.dnainternet.fi) |
2024-03-05 22:11:17 +0100 | WonDerDann56 | WonDerDan |
2024-03-05 22:15:31 +0100 | zetef | (~quassel@95.77.17.251) (Ping timeout: 246 seconds) |
2024-03-05 22:15:33 +0100 | zetef_ | (~quassel@5.2.182.98) |
2024-03-05 22:20:30 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 22:27:32 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 252 seconds) |
2024-03-05 22:32:39 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 22:35:17 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Excess Flood) |
2024-03-05 22:35:39 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-03-05 22:35:59 +0100 | WonDerDan | (~WonDerDan@dkxwfwyb5vptjs3sw1yht-3.rev.dnainternet.fi) (Quit: Client closed) |
2024-03-05 22:36:01 +0100 | dcoutts | (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
2024-03-05 22:36:45 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 22:40:31 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 22:49:46 +0100 | pavonia | (~user@user/siracusa) |
2024-03-05 22:51:18 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2024-03-05 22:51:51 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2024-03-05 22:52:07 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Remote host closed the connection) |
2024-03-05 22:54:24 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2024-03-05 22:58:31 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2024-03-05 23:01:31 +0100 | mulk | (~mulk@pd9514963.dip0.t-ipconnect.de) |
2024-03-05 23:04:39 +0100 | d34df00d | (~d34df00d@2600:1702:4f1b:7c10::43) |
2024-03-05 23:04:45 +0100 | <d34df00d> | Hi! |
2024-03-05 23:05:11 +0100 | <d34df00d> | Is there any easy lens spell with the type `Lens' a b1 -> Lens' a b2 -> Lens' a (b1, b2)`? |
2024-03-05 23:07:11 +0100 | <dibblego> | no, since it is not a valid lens as the result, but there is alongside |
2024-03-05 23:07:29 +0100 | <d34df00d> | dibblego: hmm, why isn't it valid? |
2024-03-05 23:07:40 +0100 | <dibblego> | it violates the lens laws |
2024-03-05 23:08:24 +0100 | michalz | (~michalz@185.246.207.193) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-03-05 23:08:43 +0100 | <d34df00d> | If you mean the ones here https://hackage.haskell.org/package/lens-5.2.3/docs/Control-Lens-Lens.html#t:Lens then I'm not sure I can build an example of such a violation. |
2024-03-05 23:10:58 +0100 | <ncf> | d34df00d: see https://hackage.haskell.org/package/lens-5.2.2/docs/Control-Lens-Unsound.html#v:lensProduct |
2024-03-05 23:11:26 +0100 | <dibblego> | I once wrote the code that demonstrates the law breaking, but it was so long ago, and I cannot find it |
2024-03-05 23:11:39 +0100 | <ncf> | the type system can't enforce that your two lenses aren't overlapping |
2024-03-05 23:11:48 +0100 | <ncf> | if they are, you don't get a valid lens |
2024-03-05 23:12:27 +0100 | son0p | (~ff@186.121.59.199) |
2024-03-05 23:14:30 +0100 | hueso | (~root@user/hueso) (Quit: No Ping reply in 180 seconds.) |
2024-03-05 23:14:41 +0100 | hueso | (~root@user/hueso) |
2024-03-05 23:15:09 +0100 | <d34df00d> | ncf: ah, interesting! I was too focused on my use case where they are indeed disjoint so I didn't think about this. |
2024-03-05 23:15:17 +0100 | <d34df00d> | Thanks for the example! |
2024-03-05 23:18:35 +0100 | zetef_ | (~quassel@5.2.182.98) (Read error: Connection reset by peer) |
2024-03-05 23:20:55 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 23:22:47 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-03-05 23:28:05 +0100 | tan00kee | (~paul@pauloliver.dev) |
2024-03-05 23:28:35 +0100 | tan00kee | (~paul@pauloliver.dev) (Client Quit) |
2024-03-05 23:31:46 +0100 | machinedgod | (~machinedg@d173-183-246-216.abhsia.telus.net) |
2024-03-05 23:32:14 +0100 | target_i | (~target_i@user/target-i/x-6023099) (Quit: leaving) |
2024-03-05 23:39:51 +0100 | shapr | (~user@c-24-218-186-89.hsd1.ma.comcast.net) |
2024-03-05 23:40:43 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2024-03-05 23:42:42 +0100 | ph88 | (~ph88@2a02:8109:9e26:c800:9462:9eb1:5c9f:778b) (Remote host closed the connection) |
2024-03-05 23:56:04 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2024-03-05 23:57:36 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-03-05 23:59:43 +0100 | oo_miguel | (~Thunderbi@78-11-181-16.static.ip.netia.com.pl) (Ping timeout: 272 seconds) |