2021-02-21 00:00:03 +0100 | <dolio> | Not that it's a serious problem. |
2021-02-21 00:00:28 +0100 | <merijn> | dolio: ANything is a good excuse if you're not getting paid to work on something :p |
2021-02-21 00:00:34 +0100 | fendor | (~fendor@91.141.3.212.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-02-21 00:00:39 +0100 | <sclv> | merijn: i only know because i've run into it. also like configure --help lists -j which is a build only option etc. basically all the v2 commands list all the v2 options i think :-/ |
2021-02-21 00:00:50 +0100 | <monochrom> | command-(ir)relevant flags, I think the intention is still command-relevant flags but maybe there are a few bugs lying around. |
2021-02-21 00:00:58 +0100 | <dolio> | I mean, if you don't want to figure out the terminal width somehow, it could just be formatted at fewer than 100+ characters wide. |
2021-02-21 00:01:04 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) |
2021-02-21 00:01:07 +0100 | <merijn> | sclv: For sure not all of them |
2021-02-21 00:01:14 +0100 | <dolio> | Something more like 70. |
2021-02-21 00:01:16 +0100 | <merijn> | sclv: Because v2-build doens't list --repl-options :) |
2021-02-21 00:01:41 +0100 | <merijn> | dolio: It is less wide than 100 here, though? |
2021-02-21 00:01:57 +0100 | <dolio> | Well, whatever it is, it's consistently wider than I run most terminals. |
2021-02-21 00:01:58 +0100 | <merijn> | It linewraps before the end of my terminal at least |
2021-02-21 00:02:00 +0100 | <sclv> | true enough, but its still got a big mess. anyway that's my really only gripe with --help |
2021-02-21 00:02:47 +0100 | <monochrom> | But, most flags for configure are now relevant to build, run, exec, install too because the semantics of configure has changed (it just saves flags to cabal.project.local) and you don't require you to "configure", you can specify config at the build command etc. |
2021-02-21 00:03:18 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 00:03:41 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 00:03:44 +0100 | <monochrom> | Actually, that could use some clarification by v1- and v2- prefixes |
2021-02-21 00:04:13 +0100 | <monochrom> | But, most flags for v1-configure are now relevant to v2-build, v2-run, v2-exec, v2-install too because the semantics of configure has changed (it just saves flags to cabal.project.local) and you don't require you to "v2-configure", you can specify config at the v2-build command etc. |
2021-02-21 00:05:40 +0100 | <monochrom> | v2-configure -j also just saves the equiv of -j to cabal.project.local so you don't have to repeat it when you v2-build. This is why -j can be legit for v2-configure. |
2021-02-21 00:06:12 +0100 | <merijn> | -j *is* legit for v2-configure |
2021-02-21 00:06:17 +0100 | <monochrom> | It's a paradigm change from v1 to v2. It's why I think that most flags are justified and relevant. |
2021-02-21 00:06:18 +0100 | <merijn> | In fact, I use it in my build system |
2021-02-21 00:06:52 +0100 | <monochrom> | s/change/shift/ # more idiomatic |
2021-02-21 00:07:05 +0100 | <merijn> | sclv: ^^ I glossed over that in your comment, -j is totally valid in configure |
2021-02-21 00:07:15 +0100 | <dolio> | It's also wide just because it's not using space efficiently, because a couple flags are super long, so you get a big blank space in the middle. |
2021-02-21 00:07:31 +0100 | <monochrom> | I think I did find a few flags that's effectless. But I chalk it up as bugs. And they're few. |
2021-02-21 00:07:36 +0100 | <merijn> | sclv: "cabal configure -jN" ends up adding "jobs: N" to your cabal.project.local |
2021-02-21 00:07:53 +0100 | <sclv> | ok, well shows what i know :-P |
2021-02-21 00:07:56 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 240 seconds) |
2021-02-21 00:08:35 +0100 | <merijn> | I run "cabal configure -j24" in my makefile to ensure any following cabal build calls are fast :p |
2021-02-21 00:08:36 +0100 | knupfer | (~Thunderbi@mue-88-130-61-090.dsl.tropolys.de) (Ping timeout: 240 seconds) |
2021-02-21 00:09:37 +0100 | <monochrom> | [deep bass movie trailer voice] "You unlearned C when you learned Haskell. Now you have to unlearn v1 when you learn v2." >:) |
2021-02-21 00:10:10 +0100 | <monochrom> | You have much RAM too? That's the real bottleneck usually... |
2021-02-21 00:10:23 +0100 | <merijn> | monochrom: 192 GB in the cluster headnode ;) |
2021-02-21 00:10:54 +0100 | <monochrom> | OK you'll do fine. |
2021-02-21 00:11:02 +0100 | <monochrom> | I mean that's epic. |
2021-02-21 00:11:15 +0100 | <merijn> | monochrom: I once nearly OOmed the machine using Chart >.> |
2021-02-21 00:11:20 +0100 | Deide | (~Deide@217.155.19.23) (Quit: Seeee yaaaa) |
2021-02-21 00:11:46 +0100 | <merijn> | Pro-tip: Chart-cairo does *not* deal well with trying to plot scatter plots involving a few billion points >.> |
2021-02-21 00:12:04 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
2021-02-21 00:12:52 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
2021-02-21 00:14:27 +0100 | <dolio> | Although strictly speaking, the right hand column could benefit from being wider if the long flag didn't take up so much space on the left hand. But I think it would really just be better not beinig a table. |
2021-02-21 00:14:57 +0100 | fosterite | (~fosterite@2600:6c46:7800:fecf:8018:3f0e:7ad8:4be9) |
2021-02-21 00:15:39 +0100 | usr25 | (~usr25@unaffiliated/usr25) |
2021-02-21 00:16:09 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds) |
2021-02-21 00:17:24 +0100 | Tario | (~Tario@201.192.165.173) (Ping timeout: 246 seconds) |
2021-02-21 00:20:56 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) (Quit: Leaving) |
2021-02-21 00:24:16 +0100 | pera | (~pera@unaffiliated/pera) (Ping timeout: 240 seconds) |
2021-02-21 00:24:26 +0100 | <monochrom> | Is Chart written in Haskell? That may be why... |
2021-02-21 00:24:49 +0100 | <merijn> | monochrom: It is, then again, matplotlib doesn't act any more graceful |
2021-02-21 00:26:37 +0100 | dunj3 | (~dunj3@p200300f61714a6752268fca81a1a85c0.dip0.t-ipconnect.de) (Remote host closed the connection) |
2021-02-21 00:27:24 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
2021-02-21 00:28:23 +0100 | ep1ctetus | (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
2021-02-21 00:28:45 +0100 | <Tordek> | so, I have this: https://paste.tomsmeding.com/xodHLX3D; 2 questions: 1. can a "Device" monad be extracted so that instead of "Device (Write 1) (\busState -> foo" I can do "busState <- tick (Write 1)"? |
2021-02-21 00:29:46 +0100 | <Tordek> | and 2: some Devices would need IO, is there an easy way to convert "BusState -> Device" into "BusState-> IO Device"? |
2021-02-21 00:30:01 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 00:30:40 +0100 | olligobber | (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
2021-02-21 00:31:51 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 00:32:14 +0100 | <monochrom> | My finger memory is broken. I tried to type "chmod", I kept typing "ghcmod". |
2021-02-21 00:33:40 +0100 | <dolio> | The true danger of using IDE tools. |
2021-02-21 00:34:06 +0100 | <monochrom> | No, I never used ghcmod. |
2021-02-21 00:34:13 +0100 | Tario | (~Tario@200.119.185.160) |
2021-02-21 00:34:39 +0100 | <monochrom> | Instead, I always used ghc, and my brain decided "you typed 'ch', surely you mean 'ghc', let me correct that for you..." |
2021-02-21 00:34:53 +0100 | <monochrom> | So, the true danger of not using IDE tools haha. |
2021-02-21 00:35:25 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
2021-02-21 00:35:57 +0100 | <MarcelineVQ> | ghroot |
2021-02-21 00:36:41 +0100 | <ski> | (i've noticed i've typoed "typo" as "type", at times) |
2021-02-21 00:36:54 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 260 seconds) |
2021-02-21 00:36:58 +0100 | <monochrom> | dependent typo \∩/ |
2021-02-21 00:37:16 +0100 | <ski> | that would be the other way around :) |
2021-02-21 00:37:27 +0100 | <divVerent> | I am ghroot |
2021-02-21 00:38:06 +0100 | <divVerent> | Typoing the word "typo" is worthy of a Haskell programmer |
2021-02-21 00:40:02 +0100 | bbear | (~znc@21212.s.t4vps.eu) |
2021-02-21 00:41:16 +0100 | <bbear> | Hello, can you help me ? http://pastie.org/p/4gxzEMMmV01kkmWJCO2Rjn |
2021-02-21 00:42:10 +0100 | <ski> | apply the suggested fix |
2021-02-21 00:42:19 +0100 | <hyiltiz> | bbear: it seems it is saying it clearly |
2021-02-21 00:42:39 +0100 | <hyiltiz> | i.e. you are saying u can always Prelude.+ anything (anything <=> forall.a) |
2021-02-21 00:42:48 +0100 | <bbear> | I don't understand context |
2021-02-21 00:42:58 +0100 | <hyiltiz> | but you actually wanted to make sure it is at least a number |
2021-02-21 00:43:01 +0100 | <ski> | you have an explicit type signature for `sum0', yes ? |
2021-02-21 00:43:05 +0100 | loli | (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0) |
2021-02-21 00:43:08 +0100 | <monochrom> | "context" means listing out the type classes you need |
2021-02-21 00:43:14 +0100 | <bbear> | I have sum0 :: [a] -> a |
2021-02-21 00:43:30 +0100 | <hyiltiz> | tell it that a is a number |
2021-02-21 00:43:37 +0100 | <bbear> | Prelude.Num a |
2021-02-21 00:43:39 +0100 | <bbear> | ha yes |
2021-02-21 00:43:39 +0100 | <hyiltiz> | [Int] -> Int should work |
2021-02-21 00:43:52 +0100 | <hyiltiz> | or give the context properly |
2021-02-21 00:43:59 +0100 | <bbear> | I did sum0 :: Prelude.Num a => [a] -> a |
2021-02-21 00:44:01 +0100 | <bbear> | it worked |
2021-02-21 00:44:03 +0100 | <ski> | bbear : that signature promises to work for *all* types `a'. but your implementation only works when `a' is a numeric type (since it uses `0' and `+' for that type) |
2021-02-21 00:44:04 +0100 | <hyiltiz> | yup :p |
2021-02-21 00:44:11 +0100 | <bbear> | thanks |
2021-02-21 00:44:29 +0100 | <hyiltiz> | now generalize that code for monoids :D |
2021-02-21 00:44:37 +0100 | <ski> | by adding that type class constraint to the signature, you're only promising to work for all types `a', that happen to be instances of `Prelude.Num' |
2021-02-21 00:45:41 +0100 | <bbear> | sum0 :: (Prelude.Num a, Prelude.Foldable t) => t a -> a ? |
2021-02-21 00:45:44 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) |
2021-02-21 00:46:00 +0100 | <ski> | no, that's not what hyiltiz had in mind |
2021-02-21 00:46:32 +0100 | <ski> | > getSum (mconcat [Sum n | n <- [2,3,5,7]]) |
2021-02-21 00:46:34 +0100 | <lambdabot> | 17 |
2021-02-21 00:46:48 +0100 | <bbear> | sorry I have to sleep |
2021-02-21 00:46:56 +0100 | <bbear> | will be back for monoids |
2021-02-21 00:47:15 +0100 | ski | . o O ( "Monoids? In my programming language?" ) |
2021-02-21 00:47:18 +0100 | loli | (~loli@024-171-017-003.res.spectrum.com) |
2021-02-21 00:47:19 +0100 | <Mrbuck> | No please practise without sleeping |
2021-02-21 00:47:55 +0100 | <monochrom> | Yeah monoid is a long story for another day. |
2021-02-21 00:48:09 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 00:49:05 +0100 | <ski> | @quote associate.with |
2021-02-21 00:49:05 +0100 | <lambdabot> | cmccann says: < cmccann> shachaf: nobody will associate with someone who breaks the monoid laws! < shachaf> cmccann: That's why I go by a secret identity. |
2021-02-21 00:50:26 +0100 | acidjnk_new | (~acidjnk@p200300d0c7390972b9ca7ed3a5659a38.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2021-02-21 00:51:28 +0100 | <monochrom> | hahaha |
2021-02-21 00:56:47 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 00:57:04 +0100 | slack1256 | (~slack1256@dvc-186-186-101-190.movil.vtr.net) |
2021-02-21 00:58:56 +0100 | Tario | (~Tario@200.119.185.160) (Read error: Connection reset by peer) |
2021-02-21 00:59:39 +0100 | alx741 | (~alx741@186.178.109.47) |
2021-02-21 00:59:46 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 01:00:17 +0100 | Tario | (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
2021-02-21 01:01:28 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 01:01:41 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 01:01:47 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 01:09:16 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 01:09:32 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 01:10:29 +0100 | <koala_man> | # ghc --version $(seq 1 93) -> The Glorious Glasgow Haskell Compilation System, version 8.8.4. # ghc --version $(seq 1 94) -> 3Error while loading /bin/s: No such file or directory |
2021-02-21 01:10:35 +0100 | <koala_man> | man, no wonder my builds are failing randomly |
2021-02-21 01:12:54 +0100 | <monochrom> | Hrm, that's strange, I don't get any failure with ghc --version $(seq 1 94). (bash, ubuntu) |
2021-02-21 01:13:17 +0100 | <monochrom> | strange thing to do but even 1000 doesn't pose a problem. |
2021-02-21 01:13:34 +0100 | <koala_man> | yeah it's undoubtedly due to my qemu-arm-static user mode emulation setup |
2021-02-21 01:13:48 +0100 | <koala_man> | but it weirdly only happens for ghc, not ls |
2021-02-21 01:13:50 +0100 | <monochrom> | Ah OK |
2021-02-21 01:13:56 +0100 | <monochrom> | heh |
2021-02-21 01:13:56 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2021-02-21 01:14:39 +0100 | <hyiltiz> | Any optimization suggestions to make this more pleasant to look at/more general/more modular etc.? |
2021-02-21 01:14:40 +0100 | <hyiltiz> | http://ix.io/2Q8k/haskell |
2021-02-21 01:14:41 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-02-21 01:14:56 +0100 | <koala_man> | all my attempts at cross-compiling to armv7 have failed so I'm trying to emulate the whole armv7 userspace now, but then I get this weird thing that causes sufficiently long ghc invocations to fail |
2021-02-21 01:16:24 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 01:17:35 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Remote host closed the connection) |
2021-02-21 01:18:38 +0100 | <monochrom> | koala_man, I suddenly recall that this may be a factor. GHC itself is a GHC-generated exe. All GHC exes may modify, not just read from, its argv, for the purpose of going through +RTS stuff and then removing that stuff. |
2021-02-21 01:19:33 +0100 | <monochrom> | tldr GHC-generated exe can do something unusual to argv. |
2021-02-21 01:21:27 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 265 seconds) |
2021-02-21 01:22:19 +0100 | <ski> | hyiltiz : it would be possible not to have the repetition of the `15' case |
2021-02-21 01:24:59 +0100 | <hyiltiz> | hmm, but that leads to an uglier plumbing later tho, no? |
2021-02-21 01:25:23 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) |
2021-02-21 01:25:32 +0100 | <hyiltiz> | right now it is essentially a map and filter |
2021-02-21 01:25:33 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 01:25:47 +0100 | <hyiltiz> | removing 15 would introduce a join somewhere |
2021-02-21 01:26:32 +0100 | <ski> | a `concat', yes .. or an extra generator in a list comprehension |
2021-02-21 01:26:49 +0100 | <hyiltiz> | anyway, the idea is: given this stupid question, what would "the most competitive candidate" would submit for review |
2021-02-21 01:27:05 +0100 | <ski> | (not sure what later uglier plumbing you're having in mind) |
2021-02-21 01:27:33 +0100 | <ski> | dunno what "most competitive" means, in this context |
2021-02-21 01:28:21 +0100 | <hyiltiz> | ok; we are using questions like this to filter applications for a job training workshop |
2021-02-21 01:28:37 +0100 | <ski> | (i could show the list comprehension i wrote. but perhaps you'd rather me not spoiling it, i dunno) |
2021-02-21 01:29:08 +0100 | alx741 | (~alx741@186.178.109.47) (Quit: alx741) |
2021-02-21 01:29:39 +0100 | <ski> | anyway, i think avoiding the separate handling of the `15' case would make it "more pleasant to look at" and "more modular" (applying DRY) |
2021-02-21 01:30:12 +0100 | <ski> | (since clearly it's no coincidence that `15' is `3*5' here) |
2021-02-21 01:30:54 +0100 | m0rphism1 | (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 246 seconds) |
2021-02-21 01:31:01 +0100 | <hyiltiz> | i am still debating in my head which I'd prefer. OTOH: I'd rather not someone pre-compute in their head 3*5 and hard-code that into the program; OTOH, I rather like map and filter approach |
2021-02-21 01:31:34 +0100 | <ski> | and if you wanted to generalize it, by allowing more factors than `3' and `5' .. possibly ones that are not necessarily coprime .. then i think my suggested change would probably help with that |
2021-02-21 01:31:47 +0100 | <hyiltiz> | agreed ^ |
2021-02-21 01:32:13 +0100 | CMCDragonkai1 | (~Thunderbi@120.17.5.119) |
2021-02-21 01:33:03 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
2021-02-21 01:33:21 +0100 | <ski> | i'm slightly annoyed by the filter .. but i guess there's not really any getting around it, in a nice way, given the problem statement |
2021-02-21 01:33:46 +0100 | <ski> | (i guess one could cobble something up with `catMaybes', but it'd probably look worse) |
2021-02-21 01:34:12 +0100 | <ski> | (er, specifically, annoyed by the filtering for non-empty) |
2021-02-21 01:34:12 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 01:34:26 +0100 | <hyiltiz> | Yeah the filter exists purely as a side effect of not specifying exactly how to deal with non-primes |
2021-02-21 01:34:37 +0100 | tsaka__ | (~torstein@2a02:587:1b14:d00:5ec3:abec:812c:b3e2) (Ping timeout: 260 seconds) |
2021-02-21 01:34:51 +0100 | <ski> | non-primes ? |
2021-02-21 01:35:00 +0100 | <ephemient> | > [join ys | x <- [1..100], let ys = ["Crackle" | x `mod` 5 == 0] <> ["Pop" | x `mod` 3 == 0], not $ null ys] |
2021-02-21 01:35:02 +0100 | <lambdabot> | ["Pop","Crackle","Pop","Pop","Crackle","Pop","CracklePop","Pop","Crackle","P... |
2021-02-21 01:35:04 +0100 | CMCDragonkai1 | (~Thunderbi@120.17.5.119) (Remote host closed the connection) |
2021-02-21 01:35:23 +0100 | <ephemient> | something like that might look neat |
2021-02-21 01:35:25 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 01:35:44 +0100 | <edwardk> | i'm about to use backpack to compile 1224 combinations of modules. i might have gone a little insane. maybe there is a better way |
2021-02-21 01:35:56 +0100 | hexfive | (~hexfive@50.35.83.177) |
2021-02-21 01:36:17 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Remote host closed the connection) |
2021-02-21 01:36:34 +0100 | <hyiltiz> | ephemient: that smells "I'm a smart and I write code I expect only I can understand" |
2021-02-21 01:36:51 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 01:36:54 +0100 | <MarcelineVQ> | hard to say. the phrase "i might have gone a little insane. maybe there is a better way" seems like a perfectly normal human thing to say for most occasions |
2021-02-21 01:37:54 +0100 | <ski> | > [s | n <- [1 .. 100],let s = [c | (d,s) <- [(3,"Crackle"),(5,"Pop")],n `mod` d == 0,c <- s],not (null s)] -- fwiw |
2021-02-21 01:37:56 +0100 | <lambdabot> | ["Crackle","Pop","Crackle","Crackle","Pop","Crackle","CracklePop","Crackle",... |
2021-02-21 01:37:59 +0100 | <edwardk> | trying to avoid a 5k line cabal file |
2021-02-21 01:38:02 +0100 | <MarcelineVQ> | I say that about making tea for example, everyone's different |
2021-02-21 01:39:01 +0100 | <ski> | edwardk : the factors being ? |
2021-02-21 01:39:04 +0100 | <MarcelineVQ> | ski: what this problem really calls for is a semiring |
2021-02-21 01:39:10 +0100 | <monochrom> | If ys is a list, you stand to make "join ys" more accessible by "concat ys". |
2021-02-21 01:39:12 +0100 | <edwardk> | :info GHC.Types.RuntimeRep |
2021-02-21 01:39:23 +0100 | <edwardk> | @info GHC.Types.RuntimeRep |
2021-02-21 01:39:23 +0100 | <lambdabot> | GHC.Types.RuntimeRep |
2021-02-21 01:39:27 +0100 | <edwardk> | blah |
2021-02-21 01:39:33 +0100 | <ski> | % :i GHC.Types.RuntimeRep |
2021-02-21 01:39:33 +0100 | <yahb> | ski: type RuntimeRep :: *; data RuntimeRep = VecRep VecCount VecElem | TupleRep [RuntimeRep] | SumRep [RuntimeRep] | LiftedRep | UnliftedRep | GHC.Exts.IntRep | Int8Rep | Int16Rep | Int32Rep | Int64Rep | WordRep | Word8Rep | Word16Rep | Word32Rep | Word64Rep | AddrRep | GHC.Exts.FloatRep | DoubleRep; -- Defined in `GHC.Types'; instance Show RuntimeRep -- Defined in `GHC.Show'; instance Lift a => Lift (# |
2021-02-21 01:39:34 +0100 | <edwardk> | can't get that to print the number of constructors |
2021-02-21 01:39:39 +0100 | <edwardk> | there we go |
2021-02-21 01:39:57 +0100 | <edwardk> | i'm backpacking one for each of the first order constructors there. except VecRep |
2021-02-21 01:40:10 +0100 | <edwardk> | and then starting in on TupleRep and SumRep |
2021-02-21 01:40:32 +0100 | <ski> | MarcelineVQ : elaborate ? |
2021-02-21 01:40:44 +0100 | <edwardk> | if we denote by T3... the tuple with 3 parameters ... and catenate the results, we can come up with a crappy name mangling scheme for packages |
2021-02-21 01:40:56 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 240 seconds) |
2021-02-21 01:41:23 +0100 | <edwardk> | e.g. S2T0I8 -- being a 2-ary sum of a 0-tuple and a Int8Rep 'SumRep [ 'TupleRep '[], Int8Rep ] |
2021-02-21 01:41:23 +0100 | ski | . o O ( luvly jubly ) |
2021-02-21 01:41:37 +0100 | <MarcelineVQ> | ski: just goofing |
2021-02-21 01:41:46 +0100 | ski | nods |
2021-02-21 01:41:48 +0100 | <edwardk> | which is for instance the runtime rep behind Maybe# (4 :: Int8) in unlifted |
2021-02-21 01:41:53 +0100 | <ephemient> | 1224 == 2^3 * 3^2 * 17 |
2021-02-21 01:42:01 +0100 | <edwardk> | er Maybe# (4 :: Int8#) |
2021-02-21 01:42:09 +0100 | <edwardk> | 1224 = 34*34+34+34 |
2021-02-21 01:42:19 +0100 | <edwardk> | which is a bit wrong |
2021-02-21 01:42:29 +0100 | <edwardk> | > 34*34 +34 + 17 |
2021-02-21 01:42:31 +0100 | <lambdabot> | 1207 |
2021-02-21 01:42:37 +0100 | <edwardk> | is the actual number. my bad =) |
2021-02-21 01:42:39 +0100 | rajivr | (uid269651@gateway/web/irccloud.com/x-ynjnwyqyqdgpqega) |
2021-02-21 01:42:47 +0100 | <edwardk> | basically just trying to get all combinations of tuples up to length 2 |
2021-02-21 01:43:10 +0100 | <monochrom> | Wait a second, fizzbuzz has become cracklepop now? |
2021-02-21 01:43:24 +0100 | <mniip> | I've faced a similar issue |
2021-02-21 01:43:32 +0100 | <edwardk> | so i have a few options. |
2021-02-21 01:43:40 +0100 | <ski> | monochrom, apparently yea |
2021-02-21 01:43:47 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8876:b8ec:2ccc:b56e:5cb:43cd) |
2021-02-21 01:44:00 +0100 | <mniip> | edwardk, did you know GHC.Prim uses tuples of length 4 |
2021-02-21 01:44:03 +0100 | <edwardk> | the benefit of using backpack is this. it holds orphan instances... safely |
2021-02-21 01:44:05 +0100 | ski | idly wonders how often it's connected to inclusion-exclusion |
2021-02-21 01:44:12 +0100 | <mniip> | c.f. https://hackage.haskell.org/package/box-tuples-0.2.0.4/docs/Data-Tuple-Unboxed-Rep.html |
2021-02-21 01:44:42 +0100 | <dolio> | The better way is to only instantiate your proofs of concept for a couple representative examples. |
2021-02-21 01:44:52 +0100 | Guest77289 | (89dc78de@137.220.120.222) (Quit: Connection closed) |
2021-02-21 01:45:03 +0100 | <edwardk> | dolio: but then i'm not me |
2021-02-21 01:45:19 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) |
2021-02-21 01:45:42 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 01:45:52 +0100 | <edwardk> | i might well retrench here and not export all the k-ary combinations by default. but it feels like admitting defeat |
2021-02-21 01:46:25 +0100 | byteflame | (~byteflame@c-71-238-150-97.hsd1.ar.comcast.net) |
2021-02-21 01:47:09 +0100 | mastarija | (~mastarija@93-136-104-186.adsl.net.t-com.hr) |
2021-02-21 01:47:41 +0100 | <monochrom> | The most competitive solution may be https://themonadreader.files.wordpress.com/2014/04/fizzbuzz.pdf |
2021-02-21 01:50:17 +0100 | <ski> | was it submitted to SIGBOVIK ? |
2021-02-21 01:50:30 +0100 | <monochrom> | I don't know. But it's The Monad Reader. |
2021-02-21 01:50:58 +0100 | <ski> | i like that it references Dijkstra |
2021-02-21 01:52:19 +0100 | <monochrom> | Well, about that, it is not a relevant reference. It has "skip" and "halt", so it cites "Dijsktra has skip and abort, oh but abort doesn't mean halt anyway". |
2021-02-21 01:52:57 +0100 | <ski> | hm, yea |
2021-02-21 01:53:50 +0100 | <monochrom> | And I don't think "skip" needs citing either, everyone already knows how to write for example "{ ; }" without needing to pay tribute to Dijkstra. |
2021-02-21 01:54:27 +0100 | <hyiltiz> | monochrom: apparently too many buzz words pop up in crack heads for them to fuzzing around with :p |
2021-02-21 01:54:37 +0100 | <monochrom> | haha |
2021-02-21 01:55:22 +0100 | <ephemient> | > filter (not . null) $ (zipWith (<>) `on` take 100 . drop 1 . cycle) ("Crackle" : replicate 2 "") ("Pop" : replicate 4 "") |
2021-02-21 01:55:23 +0100 | <lambdabot> | ["Crackle","Pop","Crackle","Crackle","Pop","Crackle","CracklePop","Crackle",... |
2021-02-21 01:55:36 +0100 | ymherklotz | (~user@2a00:23c7:e28c:6001:5460:47fb:6d9:8e42) |
2021-02-21 01:55:44 +0100 | <ephemient> | ... yeah that's more obtuse isn't it |
2021-02-21 01:58:10 +0100 | gadtrider | (~username@dvc-186-186-101-190.movil.vtr.net) |
2021-02-21 01:58:14 +0100 | <monochrom> | zipWith (++) (cycle ["f", "", ""]) (cycle ["b", "", "", "", ""]) |
2021-02-21 01:58:37 +0100 | justsomeguy | idly wonders why people don't call type errors typos? |
2021-02-21 01:59:13 +0100 | <monochrom> | Mine is incomplete. But it nails the most annoying part of the problem. You can extend this idea to complete it. |
2021-02-21 01:59:22 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 272 seconds) |
2021-02-21 01:59:55 +0100 | ski | . o O ( Eratosthenes ) |
2021-02-21 02:00:02 +0100 | <monochrom> | yeah heh |
2021-02-21 02:01:55 +0100 | <monochrom> | Now, for the grown-ups: How about "fizz" for sums of 3 primes, "buzz" for sums of 5 primes, "fizzbuzz" for both? |
2021-02-21 02:02:19 +0100 | <monochrom> | Does Project Euler have something similar to that? |
2021-02-21 02:03:11 +0100 | swarmcollective | was hoping oeis had a sequence for fizzbuzz, but no. Oh well. |
2021-02-21 02:03:39 +0100 | <monochrom> | OEIS doesn't have sequences of strings >:) |
2021-02-21 02:03:41 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 02:04:13 +0100 | <swarmcollective> | @oeis A026317 |
2021-02-21 02:04:13 +0100 | <lambdabot> | https://oeis.org/A026317 Nonnegative integers k such that |cos(k)| > |sin(k+... |
2021-02-21 02:04:13 +0100 | <lambdabot> | [0,2,3,5,6,9,12,15,18,19,21,22,24,25,27,28,31,34,37,40,41,43,44,46,47,49,50,... |
2021-02-21 02:04:16 +0100 | gadtrider | (~username@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection) |
2021-02-21 02:04:19 +0100 | <monochrom> | But perhaps if you Gödel-encode "fizz" and "buzz", they may be interested. |
2021-02-21 02:04:42 +0100 | <swarmcollective> | drop 2 and you get the beginning, but it falls down quickly. |
2021-02-21 02:04:44 +0100 | gadtrider | (~gadtrider@dvc-186-186-101-190.movil.vtr.net) |
2021-02-21 02:04:58 +0100 | <monochrom> | Hah I have long forgotten that lambdabot has an oeis command. |
2021-02-21 02:05:04 +0100 | <boxscape> | presumably if you find OEIS sequences for numbers that are sums of 3 primes and numbers that are sums of 5 primes, the rest of the problem is fairly easy, no? |
2021-02-21 02:05:24 +0100 | <monochrom> | Yes. |
2021-02-21 02:05:28 +0100 | <swarmcollective> | That was my hope. :) |
2021-02-21 02:05:32 +0100 | <monochrom> | Are you allowed IO? |
2021-02-21 02:05:44 +0100 | <ephemient> | https://oeis.org/A051037 is a similar and common interview question... I assume, given the quantity of blogs about hamming sequences, but I've never encountered it in an interview |
2021-02-21 02:07:14 +0100 | <monochrom> | Maybe I should put it on the exam. >:) |
2021-02-21 02:07:41 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 02:09:25 +0100 | <monochrom> | Hah I accidentally solved Hamming sequence when I was solving a different problem. |
2021-02-21 02:09:43 +0100 | <swarmcollective> | I like this one: |
2021-02-21 02:09:47 +0100 | <swarmcollective> | @metar KSFO |
2021-02-21 02:09:48 +0100 | <lambdabot> | KSFO 210056Z 30017KT 10SM FEW023 FEW045 13/07 A3037 RMK AO2 SLP282 T01330072 |
2021-02-21 02:09:58 +0100 | <monochrom> | The different problem is Doug McIlroy's "enumerate all regexes from short to long" |
2021-02-21 02:10:28 +0100 | <edwardk> | that feeling when you get 3/4 of the way through a big refactor then look away for a minute, look back, go OH MY EYES, and git stash. |
2021-02-21 02:10:51 +0100 | <swarmcollective> | haha edwardk |
2021-02-21 02:11:04 +0100 | <monochrom> | hahah |
2021-02-21 02:11:16 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 02:12:01 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) (Read error: Connection reset by peer) |
2021-02-21 02:12:17 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) |
2021-02-21 02:12:24 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 256 seconds) |
2021-02-21 02:12:28 +0100 | <swarmcollective> | My mod for metar produces: "KSFO: Sits at 2.0 meters above sea level at (latitude, longitude) of (37.62, -122.37). Current temperature is 13.3C with a dewpoint of 7.2C. Over the last two hours, the precipitation was Zero inches. Visibility is 10.0 miles with a West North West wind of 17 miles per hour." |
2021-02-21 02:14:02 +0100 | <monochrom> | So McIlroy uses two tools: merge two sorted lists in sorted order; a kind of "liftA2" for two sorted lists except that the output is sorted, but you get help from the guarantee that the user gives you a monotonic function to liftA2 with. |
2021-02-21 02:16:19 +0100 | thunderrd | (~thunderrd@183.182.115.128) |
2021-02-21 02:16:29 +0100 | <monochrom> | With those tools, you just have to "powersOf2 ⊗ powersOf3 ⊗ powersOf5" where ⊗ is McIlroy's modified liftA2 with (*) |
2021-02-21 02:17:07 +0100 | <monochrom> | (merging two sorted lists is useful for implementing McIlroy's modified liftA2) |
2021-02-21 02:17:35 +0100 | <monochrom> | (not to mentional also doubly reused for the rest of enumerating regexes) |
2021-02-21 02:17:43 +0100 | <monochrom> | s/mentional/mentioned/ |
2021-02-21 02:18:06 +0100 | <monochrom> | Yes I can put that on the exam now. |
2021-02-21 02:18:16 +0100 | <monochrom> | (I put it on homework last time.) |
2021-02-21 02:18:38 +0100 | cur8or | (~cur8or@72canterbury.cybersmart.co.za) (Ping timeout: 260 seconds) |
2021-02-21 02:19:01 +0100 | <monochrom> | Let me see if I can find you a link to the paper. |
2021-02-21 02:19:08 +0100 | cole-h | (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
2021-02-21 02:19:30 +0100 | <ephemient> | thinking. not immediately obvious to me if that can be applied to list sum-of-3-primes if you want 3 distinct primes for each |
2021-02-21 02:19:35 +0100 | <monochrom> | https://www.cs.dartmouth.edu/~doug/nfa.pdf |
2021-02-21 02:19:39 +0100 | fosterite | (~fosterite@2600:6c46:7800:fecf:8018:3f0e:7ad8:4be9) () |
2021-02-21 02:20:07 +0100 | cole-h | (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
2021-02-21 02:20:17 +0100 | <monochrom> | Ah no, my sum-of-3/5-primes was a joke. And unrelated to the Hamming sequence. |
2021-02-21 02:20:31 +0100 | <monochrom> | Hamming sequence is much more doable, yes. |
2021-02-21 02:21:09 +0100 | <monochrom> | sum-of-foo-primes is like you go to math grad school and you specifically go into number theory and then you have a chance. >:) |
2021-02-21 02:21:26 +0100 | <monochrom> | I mean if you don't want to brute-force. |
2021-02-21 02:23:15 +0100 | <ephemient> | I suppose filter $ primes ⊕ primes ⊕ primes could work. lots of duplicated work but not as much as complete brute force |
2021-02-21 02:23:32 +0100 | <monochrom> | Ah yeah. |
2021-02-21 02:24:02 +0100 | <monochrom> | IIRC when mathematicians say "sum of foo primes" they're OK with e.g. 2+2+2. |
2021-02-21 02:24:31 +0100 | <monochrom> | OK so you've got it, no need to go to grad school. |
2021-02-21 02:24:39 +0100 | <edwardk> | what is mcilroy's liftA2, i think i missed this |
2021-02-21 02:25:10 +0100 | <monochrom> | In his paper he calls it xprod |
2021-02-21 02:25:25 +0100 | <edwardk> | trying to understand, two sorted lists combined with a function that is monotone in elements from both? |
2021-02-21 02:25:38 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 02:25:56 +0100 | <edwardk> | got it |
2021-02-21 02:25:59 +0100 | <monochrom> | You're given [a], [b], f :: (a -> b -> c), Ord a, Ord b, Ord c, the f :: (a->b->c) is monotonic (or else the user is a moron) |
2021-02-21 02:26:25 +0100 | <monochrom> | Output cartesian product [c], sorted. |
2021-02-21 02:26:27 +0100 | <swarmcollective> | map cracklePop $ sort $ [3,6..100] ++ [5,10..100] |
2021-02-21 02:26:43 +0100 | <monochrom> | (The [a] and [b] are already sorted, or else the user is you get the idea) |
2021-02-21 02:27:05 +0100 | <swarmcollective> | Still would be nice to get rid of the x `mod` 15 == 0 = 'CracklePop' |
2021-02-21 02:27:14 +0100 | <monochrom> | (Actually even stronger, the [a] and [b] are strictly increasing. Think of representing ordered sets.) |
2021-02-21 02:27:57 +0100 | <edwardk> | took me a minute to parse LOL as length ordered list rather than list of list or er.. LOL |
2021-02-21 02:28:08 +0100 | <monochrom> | :) |
2021-02-21 02:28:57 +0100 | <monochrom> | It is a mediumly old paper. I have a feeling that it predates LOL. |
2021-02-21 02:29:05 +0100 | <edwardk> | yeah |
2021-02-21 02:29:09 +0100 | <edwardk> | my thought exactly |
2021-02-21 02:29:28 +0100 | <ephemient> | didn't read the paper. I guess it's something along the lines of `fold merge [map (f a) bs | a <- as]`... but it would have to be smarter, since needs to make use of the fact that the heads are also increasing |
2021-02-21 02:30:17 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) |
2021-02-21 02:31:08 +0100 | <ephemient> | oh now I read it. that's more straightforward than I was thinking. neat |
2021-02-21 02:31:24 +0100 | <monochrom> | :) |
2021-02-21 02:33:19 +0100 | ddellacosta | (~ddellacos@86.106.143.124) |
2021-02-21 02:33:38 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 02:36:12 +0100 | <edwardk> | i kinda want some free tree like thing rather than a list of lists with a bunch of common crap at the front. hrmm |
2021-02-21 02:36:37 +0100 | <monochrom> | So I didn't solve this regex enumeration problem. I learned McIlroy's solution. But I was giving it as homework (and simplifying, just enumerate binary trees so it's less distracting), so I had to thought up another application of xprod for students to check their xprod implementation in isolation before integrating everything together. |
2021-02-21 02:36:48 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 02:37:25 +0100 | <monochrom> | So I thought up "here is another motivation explanation. Consider xprod (*) powersOf2 powersOf3. Do your code give the correct answer?" |
2021-02-21 02:37:34 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 02:37:40 +0100 | <monochrom> | Right there I solved the Hamming sequence before I knew. :) |
2021-02-21 02:37:54 +0100 | <ski> | monochrom : you can give an exercise to define `primes' and `composites' (mutually recursively), in terms of it ? |
2021-02-21 02:38:24 +0100 | <monochrom> | that sounds like too good to be true... |
2021-02-21 02:38:36 +0100 | <ski> | (you'll also need an ordered difference) |
2021-02-21 02:38:39 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 02:38:46 +0100 | <monochrom> | Yeah. |
2021-02-21 02:38:54 +0100 | <monochrom> | Ah that may help. |
2021-02-21 02:39:40 +0100 | <ski> | primes are non-composite integers greater than one. composites are products of primes and integers greater than one |
2021-02-21 02:39:41 +0100 | <monochrom> | We will call it the Santa Claus Sieve. |
2021-02-21 02:40:04 +0100 | <monochrom> | Post it on haskell-cafe and start another war over "is this sieving?" |
2021-02-21 02:40:08 +0100 | <ski> | that's basically it, apart from needing a small bootstrap (two is a prime, to start it kicking) |
2021-02-21 02:42:25 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 02:44:53 +0100 | usr25 | (~usr25@unaffiliated/usr25) (Read error: Connection reset by peer) |
2021-02-21 02:45:47 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 02:45:53 +0100 | ddellacosta | (~ddellacos@86.106.143.124) (Remote host closed the connection) |
2021-02-21 02:48:16 +0100 | bitmapper | (uid464869@gateway/web/irccloud.com/x-adcpijikdquvbocl) (Quit: Connection closed for inactivity) |
2021-02-21 02:49:16 +0100 | conal | (~conal@64.71.133.70) (Client Quit) |
2021-02-21 02:50:57 +0100 | Rudd0 | (~Rudd0@185.189.115.103) (Ping timeout: 264 seconds) |
2021-02-21 02:51:09 +0100 | elfets | (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
2021-02-21 02:51:52 +0100 | jchia | (~jchia@218.80.126.10) |
2021-02-21 02:53:54 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 02:54:02 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 02:55:03 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 02:58:23 +0100 | conal | (~conal@64.71.133.70) (Client Quit) |
2021-02-21 03:02:34 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 03:02:41 +0100 | bitmapper | (uid464869@gateway/web/irccloud.com/x-zkqjuggkajftiwsq) |
2021-02-21 03:04:47 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 03:04:50 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
2021-02-21 03:05:29 +0100 | <ephemient> | with (\\\) for ordered difference, my first thought was `primes = 2 : [3..] \\\ composites; composites = xprod (*) primes composites`, which of course doesn't work |
2021-02-21 03:06:11 +0100 | elfets | (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Quit: Leaving) |
2021-02-21 03:06:11 +0100 | <ephemient> | after futzing around with trying to seed composites, I realized you probably meant something more like `xprod (*) [2..] primes` which makes more sense anyhow |
2021-02-21 03:07:18 +0100 | <ephemient> | so yeah. fun example |
2021-02-21 03:08:56 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2021-02-21 03:10:08 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 03:10:12 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 03:10:48 +0100 | <ski> | i used `2 : tail (...)', but yes |
2021-02-21 03:11:27 +0100 | xff0x | (~xff0x@2001:1a81:5288:8c00:b017:dd71:5231:84a2) (Ping timeout: 272 seconds) |
2021-02-21 03:12:06 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) |
2021-02-21 03:13:00 +0100 | xff0x | (~xff0x@2001:1a81:52c4:2f00:7050:c685:507:da9a) |
2021-02-21 03:14:36 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2021-02-21 03:17:09 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) (Ping timeout: 272 seconds) |
2021-02-21 03:19:55 +0100 | oisdk | (~oisdk@2001:bb6:3329:d100:3d8b:3b0b:d75b:3a22) (Quit: oisdk) |
2021-02-21 03:25:37 +0100 | ymherklotz | (~user@2a00:23c7:e28c:6001:5460:47fb:6d9:8e42) (Quit: ERC (IRC client for Emacs 27.1)) |
2021-02-21 03:26:29 +0100 | <sm[m]> | wow, https://play.rust-lang.org is pretty nice |
2021-02-21 03:26:40 +0100 | <sm[m]> | we should steal it |
2021-02-21 03:29:23 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 03:29:28 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 03:32:23 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) |
2021-02-21 03:32:42 +0100 | hnOsmium0001 | (uid453710@gateway/web/irccloud.com/x-tzqvxzijqucxtwmt) (Quit: Connection closed for inactivity) |
2021-02-21 03:34:35 +0100 | average | (uid473595@gateway/web/irccloud.com/x-tvekuqggzzxphzcd) (Quit: Connection closed for inactivity) |
2021-02-21 03:34:47 +0100 | Lord_of_Life_ | (~Lord@unaffiliated/lord-of-life/x-0885362) |
2021-02-21 03:35:18 +0100 | <glguy> | I'll update the /topic; we can be a Rust channel now :nod: |
2021-02-21 03:36:05 +0100 | Lord_of_Life | (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds) |
2021-02-21 03:36:09 +0100 | Lord_of_Life_ | Lord_of_Life |
2021-02-21 03:36:30 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 03:36:45 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 03:37:16 +0100 | acarrico | (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 240 seconds) |
2021-02-21 03:37:36 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
2021-02-21 03:38:59 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) (Quit: WeeChat 1.9.1) |
2021-02-21 03:39:31 +0100 | <karasu1[m]> | After the discussion today, it was said by edwardk and the other ops of #haskell that they don't care how welcome me or other newcomers feel at #haskell. I expected #haskell to be a welcoming community for Haskellers of all background, experienced or inexperienced, but clearly this is not the case. I no longer wish to be a part of such a community, and I am leaving. Goodbye. |
2021-02-21 03:39:34 +0100 | karasu1[m] | (karasu1mat@gateway/shell/matrix.org/x-jlvtwpjoszohpwuo) ("User left") |
2021-02-21 03:40:05 +0100 | hekkaidekapus{ | (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds) |
2021-02-21 03:41:37 +0100 | <edwardk> | well that went about as well as expected. |
2021-02-21 03:41:56 +0100 | hekkaidekapus{ | (~tchouri@gateway/tor-sasl/hekkaidekapus) |
2021-02-21 03:42:10 +0100 | <edwardk> | monochrom: note to self you were right, i was wrong |
2021-02-21 03:43:54 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
2021-02-21 03:43:57 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) |
2021-02-21 03:44:28 +0100 | ChanServ | +o edwardk |
2021-02-21 03:45:10 +0100 | alx741 | (~alx741@186.178.109.47) |
2021-02-21 03:45:16 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 03:45:54 +0100 | gadtrider | (~gadtrider@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection) |
2021-02-21 03:46:03 +0100 | ski | sighs |
2021-02-21 03:46:32 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 03:46:55 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 03:47:43 +0100 | mnrmnaugh | (~mnrmnaugh@unaffiliated/mnrmnaugh) (Remote host closed the connection) |
2021-02-21 03:47:44 +0100 | mastarija | (~mastarija@93-136-104-186.adsl.net.t-com.hr) (Quit: Leaving) |
2021-02-21 03:48:02 +0100 | awk | (~mnrmnaugh@unaffiliated/mnrmnaugh) |
2021-02-21 03:48:59 +0100 | edwardk | +b *!karasu1mat@gateway/shell/matrix* |
2021-02-21 03:49:06 +0100 | edwardk | -o edwardk |
2021-02-21 03:49:31 +0100 | toorevitimirp | (~tooreviti@117.182.181.253) |
2021-02-21 03:51:05 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 03:51:57 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) (Read error: Connection reset by peer) |
2021-02-21 03:52:11 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) |
2021-02-21 03:52:45 +0100 | byteflame | (~byteflame@c-71-238-150-97.hsd1.ar.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 03:54:00 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 272 seconds) |
2021-02-21 03:54:11 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-02-21 03:55:55 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 03:55:58 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) (Read error: Connection reset by peer) |
2021-02-21 03:56:15 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) |
2021-02-21 03:56:58 +0100 | <tapas> | lmao get rekt |
2021-02-21 03:58:06 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 04:01:57 +0100 | viluon | (uid453725@gateway/web/irccloud.com/x-xtfekalitxpxoctj) (Quit: Connection closed for inactivity) |
2021-02-21 04:04:26 +0100 | kadoban_ | (~mud@unaffiliated/kadoban) (Read error: Connection reset by peer) |
2021-02-21 04:05:00 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 04:06:46 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 04:09:12 +0100 | <MarcelineVQ> | I still feel like there's a semiring lurking behind fizzbuzz |
2021-02-21 04:09:25 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2021-02-21 04:09:56 +0100 | <MarcelineVQ> | https://www.cs.dartmouth.edu/~doug/nfa.pdf makes me even more suspicious about it |
2021-02-21 04:12:00 +0100 | <monochrom> | I think I was using (++) as a semiring operation when I did zipWith (++) (cycle ["f", "", ""]) (cycle ["b", "", "", "", ""]) |
2021-02-21 04:12:02 +0100 | <MarcelineVQ> | a closed semiring |
2021-02-21 04:13:04 +0100 | <MarcelineVQ> | does anyone have a link to a publicly available "Fun with Semirings: A functional pearl on the abuse of linear algebra" ? I already have it but it was a scihub grab |
2021-02-21 04:13:24 +0100 | <MarcelineVQ> | Just wondering if it exists openly/publicly |
2021-02-21 04:13:27 +0100 | hnOsmium0001 | (uid453710@gateway/web/irccloud.com/x-chohypbdngwsxena) |
2021-02-21 04:13:57 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Remote host closed the connection) |
2021-02-21 04:16:17 +0100 | mud | (kadobanemp@gateway/shell/matrix.org/x-hsvwcnlpdlaahtsv) |
2021-02-21 04:18:23 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 04:19:38 +0100 | Tops2 | (~Tobias@dyndsl-095-033-024-179.ewe-ip-backbone.de) |
2021-02-21 04:22:34 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 04:23:36 +0100 | Sheilong | (uid293653@gateway/web/irccloud.com/x-mhgdpyndfuhwydwb) (Quit: Connection closed for inactivity) |
2021-02-21 04:23:46 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 272 seconds) |
2021-02-21 04:23:46 +0100 | FinnElija | (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
2021-02-21 04:23:46 +0100 | finn_elija | Guest86149 |
2021-02-21 04:23:46 +0100 | FinnElija | finn_elija |
2021-02-21 04:25:46 +0100 | hekkaidekapus} | (~tchouri@gateway/tor-sasl/hekkaidekapus) |
2021-02-21 04:25:50 +0100 | hekkaidekapus{ | (~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection) |
2021-02-21 04:26:45 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 04:28:11 +0100 | Guest86149 | (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 268 seconds) |
2021-02-21 04:30:30 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 04:33:12 +0100 | awk | mnrmnaugh |
2021-02-21 04:34:52 +0100 | spoonm | (~spoonm@2602:ffd5:1:119::1) (Ping timeout: 260 seconds) |
2021-02-21 04:35:45 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-02-21 04:36:01 +0100 | ddellacosta | (~ddellacos@86.106.143.215) |
2021-02-21 04:36:33 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
2021-02-21 04:39:13 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
2021-02-21 04:39:25 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 04:40:30 +0100 | ddellacosta | (~ddellacos@86.106.143.215) (Ping timeout: 260 seconds) |
2021-02-21 04:41:08 +0100 | alx741 | (~alx741@186.178.109.47) (Quit: alx741) |
2021-02-21 04:41:10 +0100 | Tario | (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
2021-02-21 04:46:14 +0100 | <minoru_shiraeesh> | it's a shame that karasu1[m] decided to leave because he thinks that people here don't care about how welcome do newcomers feel here. |
2021-02-21 04:47:13 +0100 | <minoru_shiraeesh> | when you answer questions, you have to be patient and careful, but you also have to be patient and careful when you ask questions |
2021-02-21 04:51:17 +0100 | <minoru_shiraeesh> | one of the problems I noticed is |
2021-02-21 04:51:20 +0100 | <shapr> | Hey, what's the best Haskell for Python programmer's book to buy these days? |
2021-02-21 04:52:12 +0100 | <minoru_shiraeesh> | when you ask a question and several people answer at the same time, you get an information overload at that moment |
2021-02-21 04:52:54 +0100 | <minoru_shiraeesh> | if you decide to focus on one person's answer, it may seem like you ignore other people's answers |
2021-02-21 04:54:05 +0100 | theDon | (~td@94.134.91.113) (Ping timeout: 240 seconds) |
2021-02-21 04:54:18 +0100 | <minoru_shiraeesh> | so you feel like you have to do that because people don't have time to wait for you to read all the answers and meditate on them |
2021-02-21 04:55:07 +0100 | <minoru_shiraeesh> | like "hey, you're too slow for us" |
2021-02-21 04:55:10 +0100 | <monochrom> | minoru_shiraeesh, your point is true for other cases but not this one. |
2021-02-21 04:55:23 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 04:55:45 +0100 | dijonmustard | (~My_user_n@2600:6c56:3f:decc:367d:f6ff:feba:7eb2) |
2021-02-21 04:56:13 +0100 | theDon | (~td@94.134.91.187) |
2021-02-21 04:56:25 +0100 | <monochrom> | Hell, make it "true for very old cases" but at some point of time in the past the regulars here have realized the "too many chefs" problems and no longer think like that. |
2021-02-21 04:57:11 +0100 | <monochrom> | Today's regulars' behaviour is: many answerers answer, but when they see the asker has chosen one person to engage with, the other answerers stop and don't muddle it. |
2021-02-21 05:00:01 +0100 | alexelcu_ | (~alexelcu@142.93.180.198) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-02-21 05:00:42 +0100 | <minoru_shiraeesh> | otoh more answers are better, so you get an information overload when you discuss a topic, but they may give a valuable insight when you re-read the discussion later |
2021-02-21 05:00:56 +0100 | alexelcu | (~alexelcu@142.93.180.198) |
2021-02-21 05:02:44 +0100 | <ephemient> | more answers might be worse sometimes... paradox of choice. but I hope that usually, at least one of the answers sticks and works |
2021-02-21 05:03:27 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 05:03:28 +0100 | <monochrom> | When karasu1[m] replied to dolio with "sometimes I fixated on one answer and appear to ignore others", that would be referring to the one-pass repmin-like conversation about 24 hours ago. |
2021-02-21 05:03:31 +0100 | <glguy> | this seems highly dependent upon the particular question asked. |
2021-02-21 05:03:43 +0100 | <ski> | @quote @quote.stereo |
2021-02-21 05:03:43 +0100 | <lambdabot> | shachaf says: I remember when I joined #haskell and everyone would @quote stereo. |
2021-02-21 05:03:43 +0100 | dijonmustard | (~My_user_n@2600:6c56:3f:decc:367d:f6ff:feba:7eb2) (Quit: WeeChat 3.0) |
2021-02-21 05:04:12 +0100 | <monochrom> | In that actual converation, karasu1[m] replied to all answers from everyone. There was no ignore. |
2021-02-21 05:04:16 +0100 | Rudd0 | (~Rudd0@185.189.115.103) |
2021-02-21 05:04:16 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 05:04:44 +0100 | <slack1256> | Who was stereo? |
2021-02-21 05:04:48 +0100 | <ski> | no |
2021-02-21 05:04:55 +0100 | <MarcelineVQ> | what was the mission |
2021-02-21 05:05:04 +0100 | <monochrom> | Therefore, dolio's description "you are not reading carefully" is the accurate one. There was no ignore. Only misinterpretation reflecting deeply entrenched presumptions and putting words into others' mouths. |
2021-02-21 05:05:17 +0100 | <slack1256> | Oh, I thought it was a nick from a regular back then. |
2021-02-21 05:05:24 +0100 | <ski> | @quote stereo |
2021-02-21 05:05:24 +0100 | <lambdabot> | shachaf says: I remember when I joined #haskell and everyone would @quote stereo. |
2021-02-21 05:05:37 +0100 | <ski> | @botsmack |
2021-02-21 05:05:37 +0100 | <lambdabot> | :) |
2021-02-21 05:05:52 +0100 | <slack1256> | @slap ski |
2021-02-21 05:05:52 +0100 | lambdabot | moulds ski into a delicous cookie, and places it in her oven |
2021-02-21 05:05:59 +0100 | <slack1256> | don't bully lambdabot |
2021-02-21 05:06:05 +0100 | <glguy> | Another of the regulars took to removing that quote from lambdabot when it would get added back in |
2021-02-21 05:06:05 +0100 | <monochrom> | Meta-ly, I recommend you check out the actual conversations, not trust a self-proclaimed-victim's one-sided selectively forgetful summary of it. |
2021-02-21 05:06:14 +0100 | <ski> | `@quote stereo' will randomly select a quote including the word "stereo" |
2021-02-21 05:06:28 +0100 | raym | (~ray@45.64.220.142) |
2021-02-21 05:06:40 +0100 | ski | hopes it's a bitterkoekje |
2021-02-21 05:06:40 +0100 | <glguy> | @quote |
2021-02-21 05:06:40 +0100 | <lambdabot> | lament says: gentle like gangrape |
2021-02-21 05:06:52 +0100 | <glguy> | Let's remember how to unquote |
2021-02-21 05:06:53 +0100 | <slack1256> | @quote html5 |
2021-02-21 05:06:53 +0100 | <lambdabot> | No quotes match. It can only be attributed to human error. |
2021-02-21 05:06:57 +0100 | <MarcelineVQ> | :> |
2021-02-21 05:07:08 +0100 | <ski> | @quote majestic |
2021-02-21 05:07:08 +0100 | <lambdabot> | hpc says: here in #haskell we are aware that reading scrollback is hard, that's why we always answer in majestic stereo |
2021-02-21 05:07:27 +0100 | <ski> | glguy : `@forget <id> <message>' |
2021-02-21 05:07:34 +0100 | <glguy> | got it |
2021-02-21 05:08:06 +0100 | <ski> | (i suspect that might have been in response to a certain tutorial being mentioned) |
2021-02-21 05:08:36 +0100 | <monochrom> | @quote fugue |
2021-02-21 05:08:38 +0100 | <lambdabot> | monochrom says: Welcome to #haskell, where your questions are answered in contrapuntal fugues. |
2021-02-21 05:08:52 +0100 | <slack1256> | @quote chocolate |
2021-02-21 05:08:52 +0100 | <lambdabot> | psychobot says: Source not found, so this package chocolate cake mix. |
2021-02-21 05:09:03 +0100 | <ski> | @quote contravariant |
2021-02-21 05:09:03 +0100 | <lambdabot> | pjd says: welcome to #haskell, where your questions are answered in contravariant functors |
2021-02-21 05:09:07 +0100 | <monochrom> | I think someone (but not me) liked my quote more and deleted the stereo version. |
2021-02-21 05:09:08 +0100 | <glguy> | ski, I can guess which you mean; I'm happy that the quote is gone nonetheless |
2021-02-21 05:09:09 +0100 | Tops2 | (~Tobias@dyndsl-095-033-024-179.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
2021-02-21 05:09:20 +0100 | <monochrom> | But no, wait, I have a simpler, more likely theory. |
2021-02-21 05:09:45 +0100 | <ski> | glguy : yes. in that context, it might have been acceptable. out of context, it's confusing, and not really amusing |
2021-02-21 05:10:03 +0100 | <monochrom> | lambdabot did suffer a few incidents of data loss over so many years. More likely the quote was loss due to one of those total data loss. Unintentional. No one deleted it. |
2021-02-21 05:10:21 +0100 | theelous3 | (~theelous3@unaffiliated/theelous3) (Read error: Connection reset by peer) |
2021-02-21 05:10:23 +0100 | <glguy> | ?quote glguy |
2021-02-21 05:10:23 +0100 | <lambdabot> | glguy says: libraries@ serves an important role of stopping changes from being introduced to the libraries |
2021-02-21 05:10:38 +0100 | <ski> | iirc, there was someone who got tired of being mentioned by lambdabot everytime someone would pull up the quote |
2021-02-21 05:10:40 +0100 | <minoru_shiraeesh> | yeah, a stereo-answer sounds like the right word for that thing and yeah, a stereo-answer may overwhelm a newbie |
2021-02-21 05:10:50 +0100 | <monochrom> | Still, I like fugues better. "stereo" can't do it justice anyway. |
2021-02-21 05:10:55 +0100 | <shachaf> | One time lambdabot state was lost entirely, and I scanned the logs for all @remembers and made a new quote file out of them. |
2021-02-21 05:11:01 +0100 | <MarcelineVQ> | maybe the real deletion were thewe made along the way |
2021-02-21 05:12:22 +0100 | <monochrom> | Um wait chocolate cake mix package? |
2021-02-21 05:12:39 +0100 | <monochrom> | "IO is a chocolate cake mix recipe" may work. |
2021-02-21 05:12:47 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 05:12:56 +0100 | <ski> | @quote socratic |
2021-02-21 05:12:56 +0100 | <lambdabot> | chrisdone says: It's actually impossible to employ the socratic method in here. Ask a newbie a question and it *will* be answered by someone else. |
2021-02-21 05:13:09 +0100 | <monochrom> | heh |
2021-02-21 05:13:21 +0100 | <monochrom> | but that hasn't happened for a long time either. People now know. |
2021-02-21 05:13:34 +0100 | <ski> | mostly |
2021-02-21 05:13:36 +0100 | <shachaf> | Nowadays your questions are barely answered in mono. |
2021-02-21 05:14:00 +0100 | <monochrom> | Well the questions have changed a lot. |
2021-02-21 05:14:05 +0100 | <ephemient> | I'll answer after the newbie leaves, if it's interesting (why do they always leave instead of sticking around) |
2021-02-21 05:14:26 +0100 | <ski> | not being used to IRC, thinking it's like IM |
2021-02-21 05:14:51 +0100 | <glguy> | It's like how if your webpage doesn't load in a fraction of a second people forget what webpage they were trying to open and move on |
2021-02-21 05:14:57 +0100 | <monochrom> | The really Haskell learning questions like "how to do this by recursion?" is the marginalized minority. |
2021-02-21 05:15:54 +0100 | <monochrom> | The vast dominating eclipsing majority of questions is "I'm doing scotty on nix with stack on arm inside a docker..." |
2021-02-21 05:16:24 +0100 | <monochrom> | So if you are not well-versed with all five of scotty nix stack arm docker, you need not apply. |
2021-02-21 05:16:48 +0100 | <shachaf> | I wouldn't want to apply! |
2021-02-21 05:17:00 +0100 | <monochrom> | And that's how most questions are barely answered. |
2021-02-21 05:17:05 +0100 | <glguy> | shachaf, maybe you're not a function? |
2021-02-21 05:17:16 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2021-02-21 05:17:17 +0100 | <shachaf> | Hmm, I thought you applied functions to things. |
2021-02-21 05:17:17 +0100 | <MarcelineVQ> | howdareyou.jpg |
2021-02-21 05:17:21 +0100 | raym | (~ray@45.64.220.142) (Quit: leaving) |
2021-02-21 05:17:27 +0100 | <glguy> | shachaf, I do! |
2021-02-21 05:19:01 +0100 | ski | idly wonders who's the officiant |
2021-02-21 05:20:36 +0100 | darjeeling_ | (~darjeelin@122.245.216.187) (Ping timeout: 240 seconds) |
2021-02-21 05:25:59 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8876:b8ec:2ccc:b56e:5cb:43cd) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 05:28:53 +0100 | Wuzzy | (~Wuzzy@p5b0df3df.dip0.t-ipconnect.de) (Remote host closed the connection) |
2021-02-21 05:29:16 +0100 | ChaiTRex | (~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection) |
2021-02-21 05:29:39 +0100 | ChaiTRex | (~ChaiTRex@gateway/tor-sasl/chaitrex) |
2021-02-21 05:39:18 +0100 | star_cloud | (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
2021-02-21 05:40:09 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 05:42:57 +0100 | drbean | (~drbean@TC210-63-209-29.static.apol.com.tw) |
2021-02-21 05:44:39 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
2021-02-21 05:45:25 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 05:49:05 +0100 | star_cloud | (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood) |
2021-02-21 05:49:57 +0100 | conal | (~conal@64.71.133.70) (Client Quit) |
2021-02-21 05:50:23 +0100 | star_cloud | (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
2021-02-21 05:50:32 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 05:57:03 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 05:57:05 +0100 | boxscape | (4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) (Ping timeout: 240 seconds) |
2021-02-21 05:58:17 +0100 | xff0x | (~xff0x@2001:1a81:52c4:2f00:7050:c685:507:da9a) (Ping timeout: 260 seconds) |
2021-02-21 05:59:16 +0100 | xff0x | (~xff0x@port-92-193-195-86.dynamic.as20676.net) |
2021-02-21 05:59:58 +0100 | HarveyPwca | (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) (Quit: Leaving) |
2021-02-21 06:00:56 +0100 | berberman_ | (~berberman@unaffiliated/berberman) (Ping timeout: 240 seconds) |
2021-02-21 06:01:22 +0100 | berberman | (~berberman@unaffiliated/berberman) |
2021-02-21 06:01:55 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 272 seconds) |
2021-02-21 06:02:25 +0100 | Sgeo | (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 256 seconds) |
2021-02-21 06:03:34 +0100 | darjeeling_ | (~darjeelin@122.245.216.187) |
2021-02-21 06:11:15 +0100 | forgottenone | (~forgotten@176.42.28.68) |
2021-02-21 06:11:16 +0100 | geowiesnot | (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 240 seconds) |
2021-02-21 06:11:27 +0100 | spoonm | (~spoonm@2602:ffd5:1:119::1) |
2021-02-21 06:12:44 +0100 | rkk95 | (41bf0bfc@065-191-011-252.inf.spectrum.com) |
2021-02-21 06:13:23 +0100 | <rkk95> | When I install haskell extension in VSCode, I get ghcide executable missing, please make sure it is installed, see https://github.com/digital-asset/ghcide , I thought extensions supposed to download the binaires as noted here : https://hackage.haskell.org/package/ghcide |
2021-02-21 06:13:31 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 06:14:56 +0100 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 256 seconds) |
2021-02-21 06:15:19 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
2021-02-21 06:17:45 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds) |
2021-02-21 06:22:14 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) (Ping timeout: 260 seconds) |
2021-02-21 06:25:09 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) |
2021-02-21 06:25:18 +0100 | iqubic | (~user@2601:602:9500:4870:af71:936d:31cf:2ae7) |
2021-02-21 06:25:31 +0100 | iqubic | (~user@2601:602:9500:4870:af71:936d:31cf:2ae7) () |
2021-02-21 06:26:13 +0100 | rkk95 | (41bf0bfc@065-191-011-252.inf.spectrum.com) (Quit: Connection closed) |
2021-02-21 06:27:54 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 06:29:09 +0100 | juri_ | (~juri@178.63.35.222) (Ping timeout: 272 seconds) |
2021-02-21 06:29:20 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
2021-02-21 06:31:23 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 06:33:25 +0100 | Tario | (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
2021-02-21 06:34:40 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 06:35:48 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 06:36:37 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 06:40:45 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 06:40:53 +0100 | <swarmcollective> | rkk95, did you previously install ghcide on the machine? It could be that it exists, but it is an incompatible version? |
2021-02-21 06:41:12 +0100 | <swarmcollective> | (sigh, missed them) |
2021-02-21 06:43:26 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 06:44:58 +0100 | h2017 | (~h2017@bras-base-clbaon0201w-grc-32-142-114-145-140.dsl.bell.ca) (Quit: Leaving) |
2021-02-21 06:45:18 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) |
2021-02-21 06:48:52 +0100 | Saukk | (~Saukk@83-148-239-3.dynamic.lounea.fi) |
2021-02-21 06:51:02 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 06:51:02 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 06:53:09 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 06:53:23 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Remote host closed the connection) |
2021-02-21 06:55:05 +0100 | tromp_ | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 06:55:16 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds) |
2021-02-21 06:55:45 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 272 seconds) |
2021-02-21 06:56:34 +0100 | Sgeo | (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
2021-02-21 06:57:38 +0100 | cur8or | (~cur8or@72canterbury.cybersmart.co.za) |
2021-02-21 06:59:47 +0100 | tromp_ | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 265 seconds) |
2021-02-21 07:02:37 +0100 | cur8or_ | (~cur8or@196.41.98.130) |
2021-02-21 07:03:57 +0100 | idhugo | (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) |
2021-02-21 07:04:37 +0100 | cur8or | (~cur8or@72canterbury.cybersmart.co.za) (Ping timeout: 272 seconds) |
2021-02-21 07:04:45 +0100 | klixto | (~klixto@49.188.43.94) |
2021-02-21 07:04:49 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 268 seconds) |
2021-02-21 07:05:38 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-02-21 07:11:37 +0100 | verement | (~anonymous@cpe-76-167-229-223.san.res.rr.com) (Read error: Connection reset by peer) |
2021-02-21 07:12:15 +0100 | Sgeo_ | (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
2021-02-21 07:12:39 +0100 | <arahael> | So nice being able to go back to an old, ancient script. Modify it to do some dramatic new feature. And the first time you run it, it just works. Even for a "dodgy script that uses System.Process and crap". |
2021-02-21 07:13:38 +0100 | <arahael> | I blame haskell for that. :) |
2021-02-21 07:16:00 +0100 | Sgeo | (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 246 seconds) |
2021-02-21 07:16:22 +0100 | vgtw_ | (~vgtw@gateway/tor-sasl/vgtw) |
2021-02-21 07:16:56 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 07:17:09 +0100 | vgtw | (~vgtw@gateway/tor-sasl/vgtw) (Ping timeout: 268 seconds) |
2021-02-21 07:17:10 +0100 | vgtw_ | vgtw |
2021-02-21 07:17:31 +0100 | <ski> | @quote just.works |
2021-02-21 07:17:31 +0100 | <lambdabot> | erisco says: well at least I do not have to deal with a type system. everything just works |
2021-02-21 07:17:35 +0100 | <ski> | @quote bug.theory |
2021-02-21 07:17:35 +0100 | <lambdabot> | dons says: so i suspect dynamically typed langs, that just work (bugs and all) will always be more popular with the masses since most people don't understand bug theory ;) |
2021-02-21 07:17:47 +0100 | Tario | (~Tario@201.192.165.173) (Ping timeout: 256 seconds) |
2021-02-21 07:18:12 +0100 | <arahael> | Right. :( |
2021-02-21 07:18:35 +0100 | <arahael> | I've had one highly experienced software dev swear that he prefers javascript because... "It doesn't have types" |
2021-02-21 07:19:30 +0100 | cur8or_ | (~cur8or@196.41.98.130) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 07:20:08 +0100 | <ski> | @quote writing.code |
2021-02-21 07:20:08 +0100 | <lambdabot> | roconnor says: writing incorrect programs in Haskell is hard. but writing correct programs is hard in every langauge. therefore, writing code in Haskell is hard. <EvanR> everything is hard in |
2021-02-21 07:20:09 +0100 | <lambdabot> | haskell ;) <kmc> that's a pretty good summary |
2021-02-21 07:20:32 +0100 | kini | (~kini@unaffiliated/kini) (Quit: bye) |
2021-02-21 07:22:06 +0100 | ddellacosta | (~ddellacos@86.106.143.59) |
2021-02-21 07:26:25 +0100 | ddellacosta | (~ddellacos@86.106.143.59) (Ping timeout: 240 seconds) |
2021-02-21 07:30:16 +0100 | kini | (~kini@unaffiliated/kini) |
2021-02-21 07:30:55 +0100 | <ukari> | is it possible to re-export a function `foo` from module `Foo` in module `Bar` and `Baz` with different document? |
2021-02-21 07:31:41 +0100 | <ukari> | and `import Bar(foo)` and `Baz(foo)` will not cause ambiguous occurrence |
2021-02-21 07:32:23 +0100 | <ukari> | I tried {-# inline foo #-} but not work |
2021-02-21 07:34:04 +0100 | Saukk | (~Saukk@83-148-239-3.dynamic.lounea.fi) (Remote host closed the connection) |
2021-02-21 07:34:32 +0100 | ukari | (~ukari@unaffiliated/ukari) (Remote host closed the connection) |
2021-02-21 07:34:49 +0100 | <ski> | dunno what you mean by "with different document" |
2021-02-21 07:34:56 +0100 | ukari | (~ukari@unaffiliated/ukari) |
2021-02-21 07:34:57 +0100 | <ski> | dunno what you mean by "with different document" |
2021-02-21 07:35:16 +0100 | <ski> | but reexporting via multiple import paths should work, i think |
2021-02-21 07:35:58 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
2021-02-21 07:37:29 +0100 | Varis | (~Tadas@unaffiliated/varis) |
2021-02-21 07:38:02 +0100 | <ukari> | ski, different document example https://gist.github.com/ukari/f3266ac1ea71bfb5864ce2f7ef8020b2 |
2021-02-21 07:38:48 +0100 | <ukari> | but this example will cause an ambiguous occurrence |
2021-02-21 07:39:00 +0100 | <ski> | ukari : don't define `foo' in `Bar' and `Baz'. just reexport it |
2021-02-21 07:39:36 +0100 | <ukari> | but just reexport it , I can't add different document |
2021-02-21 07:39:56 +0100 | <ski> | (perhaps you'll need to type `Foo.foo' in the export list, since you're doing `qualified') |
2021-02-21 07:40:14 +0100 | <ski> | i still have no idea what you mean by "document" |
2021-02-21 07:40:30 +0100 | <ski> | oh .. maybe you mean (Haddock) documentation ? |
2021-02-21 07:40:58 +0100 | <ukari> | yes |
2021-02-21 07:41:20 +0100 | <ski> | i'm not sure, but i think you can't update or attach new Haddock docs to the identifier, when you're reexporting it |
2021-02-21 07:42:02 +0100 | <ukari> | thanks you, ski, I decide to give up the impossible trying |
2021-02-21 07:42:10 +0100 | <ski> | (why not attach that doc talking about `bar foo'/`baz foo' to `bar'/`baz', instead ?) |
2021-02-21 07:42:21 +0100 | urodna | (~urodna@unaffiliated/urodna) (Quit: urodna) |
2021-02-21 07:43:15 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 07:44:20 +0100 | <ukari> | because in logical, the `Bar` and `Baz` module dependent on `Foo` module, so the `Foo` module should knows nothing about `Bar`, `Baz` or `Bax`... |
2021-02-21 07:44:58 +0100 | kini | (~kini@unaffiliated/kini) (Quit: bye) |
2021-02-21 07:46:43 +0100 | <ski> | yea, but i was talking about documentation regarding `Bar' and `Baz', not regarding `Foo' |
2021-02-21 07:48:01 +0100 | <ski> | "usage @bar foo@" seems to suggest to me that you're supposed to be able to employ `foo' when invoking `bar'. and since `Bar' depends on `Foo' (and reexports `foo'), it seems to me this documentation example belongs to `bar', not to `foo', no ? |
2021-02-21 07:48:31 +0100 | <minoru_shiraeesh> | I've stumbled upon a quote earlier in this chat, but can't find it, something about type system, someone was saying something along the lines of that the type system forces you to write the whole program before you even run it for the first time. |
2021-02-21 07:49:08 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 07:49:11 +0100 | <minoru_shiraeesh> | and now I see a quote about not having to deal with a type system and that everything just works. |
2021-02-21 07:49:28 +0100 | <minoru_shiraeesh> | here is a thought |
2021-02-21 07:49:55 +0100 | <ski> | (or rather, everything appearing to work, i would say was the understatement, there) |
2021-02-21 07:50:15 +0100 | <minoru_shiraeesh> | it would be cool to write a first version of a program in a dynamically typed language |
2021-02-21 07:50:26 +0100 | <minoru_shiraeesh> | and then to translate it to a statically typed one |
2021-02-21 07:50:36 +0100 | <ukari> | ski, yes, you are right, acutally `Bar' and `Baz' should not export `foo` |
2021-02-21 07:50:56 +0100 | <ski> | ukari : hm, ok. maybe that makes a difference then. or maybe not |
2021-02-21 07:50:57 +0100 | <minoru_shiraeesh> | what if one language gave the opportunity to write in both styles? |
2021-02-21 07:51:46 +0100 | kini | (~kini@unaffiliated/kini) |
2021-02-21 07:51:52 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8871:e949:6c7d:3254:7bc2:5a9d) |
2021-02-21 07:52:20 +0100 | <minoru_shiraeesh> | when you compile a program, you specify a flag that says "I'm just experimenting with an idea, I want to compile it like it's a dynamically typed language" |
2021-02-21 07:52:34 +0100 | <minoru_shiraeesh> | and later you gradually make it more strict |
2021-02-21 07:52:43 +0100 | <ski> | minoru_shiraeesh : with an expressive enough type system (that you can rely on to flag certain kinds of mistakes, possibly also including warnings (non-exhaustive matching, say)), people sometimes develop a style of coding, "typeful programming", in which they rely more on the types, trying to express things in a way so that more potential mistakes manifest as type errors |
2021-02-21 07:53:11 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 07:53:27 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
2021-02-21 07:53:47 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 07:54:12 +0100 | <monochrom> | "f = undefined" satisfies the type system alright. I can't think of that as being forced to write the whole program upfront. |
2021-02-21 07:54:28 +0100 | average | (uid473595@gateway/web/irccloud.com/x-ajbakqsurwmqkezd) |
2021-02-21 07:55:01 +0100 | <ukari> | ski, I meet this problem because I want to provide the same glsl both in`GLSL/Glslang(glsl, vert .. mesh)`, `GLSL/Shaderc(glsl, vert .. mesh)`to support both glslang and shaderc. for example https://github.com/expipiplus1/vulkan/blob/5f2daf5f1b7167c75b8195d66d09c4d1307db5ac/utils/src/Vulk… |
2021-02-21 07:55:13 +0100 | <monochrom> | -fdefer-type-errors can take that further and look the other way for certain type errors. |
2021-02-21 07:55:24 +0100 | <ski> | minoru_shiraeesh : also, sometimes, with types ("following the types"), it can feel a little bit like you're balancing, blindfolded, on a jagged high mountain ridge, with steep falls on both sides. however, the types provide an alarm system that warns you when you're about to step out into the nothing. so, the effect is that, with the type system, you're able to express somewhat tricky type "balancing" |
2021-02-21 07:55:30 +0100 | <ski> | feats, that you'd probably have gotten wrong in a dynamically typed language, and where it might be much harder to detect and diagnose the problem |
2021-02-21 07:56:32 +0100 | <ukari> | so that the usage could be simply `import Vulkan.Utils.GLSL.Glslang` instead of `import Vulkan.Utils.GLSL(glsl) \newline import Vulkan.Utils.GLSL.Glslang` |
2021-02-21 07:57:30 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2021-02-21 07:57:56 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 240 seconds) |
2021-02-21 07:58:28 +0100 | <ukari> | and if `glsl` is in `Vulkan.Utils.GLSL`, there couldn't be an example about `$(compileShaderQ Nothing "frag" Nothing [glsl| ... |]` because `compileShaderQ` is different between shaderc and glslang |
2021-02-21 07:58:43 +0100 | <ski> | minoru_shiraeesh : that said, there's `-fdefer-typed-holes',`-fdefer-out-of-scope-variables',`-fdefer-type-errors' |
2021-02-21 07:59:51 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-02-21 08:00:06 +0100 | <ski> | ukari : it might be a reasonable feature request, for Haddock |
2021-02-21 08:00:16 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 08:01:19 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 08:01:47 +0100 | <ukari> | ski, thanks for suggestion |
2021-02-21 08:03:56 +0100 | slack1256 | (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Ping timeout: 240 seconds) |
2021-02-21 08:04:21 +0100 | totoro2023 | (~t@unaffiliated/totoro2021) (Remote host closed the connection) |
2021-02-21 08:04:25 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds) |
2021-02-21 08:08:19 +0100 | <minoru_shiraeesh> | I don't have experience of creating big projects in haskell and don't know how they evolve |
2021-02-21 08:09:16 +0100 | <minoru_shiraeesh> | so I don't know is this really a problem? I mean a type system forcing you to write the whole program upfront |
2021-02-21 08:09:32 +0100 | desophos | (~desophos@2601:249:1680:a570:d500:73bc:696a:d401) |
2021-02-21 08:09:43 +0100 | <minoru_shiraeesh> | but I can imagine it to be the case |
2021-02-21 08:09:58 +0100 | <minoru_shiraeesh> | or to add friction to the refactoring process |
2021-02-21 08:10:32 +0100 | pavonia^\_^\ | (~user@unaffiliated/siracusa) (Quit: Bye!) |
2021-02-21 08:11:33 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
2021-02-21 08:11:55 +0100 | <swarmcollective> | Why do you have to write the whole program up-front? I just write some, test it, write some, test it. It is pretty easy to write a few functions and see that they do what I expect them to. |
2021-02-21 08:11:56 +0100 | <minoru_shiraeesh> | like, deciding that something is "nullable" is easy in some languages (but it can backfire later), but if you make that decision in haskell, you have to add Maybe to the monad stack, right? |
2021-02-21 08:12:21 +0100 | danvet | (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
2021-02-21 08:13:07 +0100 | <swarmcollective> | You can just have some pure function return Maybe, it doesn't need to be part of the Monad stack. |
2021-02-21 08:13:32 +0100 | <ephemient> | and that refactoring is easier in Haskell than making sure various bit of code is null-safe |
2021-02-21 08:13:39 +0100 | <swarmcollective> | Try to write as much of the code in pure functions as possible. It is more portable / reusable that way anyway. |
2021-02-21 08:13:40 +0100 | <minoru_shiraeesh> | but you have to put those functions together at some point |
2021-02-21 08:14:47 +0100 | <ephemient> | so put them together one way or another, and if you have to change the types later, you can do that |
2021-02-21 08:15:22 +0100 | <swarmcollective> | Also, you can write `plugin` style composing your solution just like most languages. Its an option if you need it. |
2021-02-21 08:15:32 +0100 | <ski> | lack of side-effects, and the increase in "reasonability"/"predictive power" that gives (also other things contribute, e.g. pattern-matching with multiple defining equations) tends to ease the refactoring process. and also make it easier to test things in isolation |
2021-02-21 08:16:05 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) (Ping timeout: 272 seconds) |
2021-02-21 08:19:11 +0100 | <minoru_shiraeesh> | I'm investigating this subject, trying to figure out how do you compose monads, and also I heard about free monads. For now I imagine the process as building a monad stack and the expressing the logic in terms of that stack. |
2021-02-21 08:19:29 +0100 | <minoru_shiraeesh> | *and then expressing |
2021-02-21 08:19:30 +0100 | <ski> | often changes will ripple through the code to the relevant places (`-Wincomplete-uni-patterns',`-Wincomplete-patterns',`-Wincomplete-record-updates' help) |
2021-02-21 08:21:26 +0100 | coeus | (~coeus@p200300d02716f600092ef689065f6814.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2021-02-21 08:22:10 +0100 | Varis | (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
2021-02-21 08:22:28 +0100 | <minoru_shiraeesh> | I think one thing would be hugely helpful for beginners |
2021-02-21 08:22:48 +0100 | <minoru_shiraeesh> | creating a design pattern dictionary |
2021-02-21 08:22:57 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 08:23:20 +0100 | <minoru_shiraeesh> | like, "a global mutable variable translates to the state monad" |
2021-02-21 08:23:30 +0100 | <minoru_shiraeesh> | etc |
2021-02-21 08:23:32 +0100 | <ephemient> | for high-level application architecture? I'm not sure there's much community consensus on that |
2021-02-21 08:24:48 +0100 | <minoru_shiraeesh> | or even listing various techniques you can use when translating from one paradigm to another |
2021-02-21 08:25:15 +0100 | <dolio> | Shouldn't it just say not to use global mutable variables? |
2021-02-21 08:25:42 +0100 | <minoru_shiraeesh> | I think the information is out there somewhere, but it is written in advances language, but that's just a guess |
2021-02-21 08:26:31 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 08:27:00 +0100 | <minoru_shiraeesh> | dolio: I mean, you can create a global mutable variable, and later you can move it somewhere, encapsulate it, and the process is more or less clear |
2021-02-21 08:27:26 +0100 | <minoru_shiraeesh> | when you deal with dynamically typed languages |
2021-02-21 08:27:27 +0100 | ski | . o O ( "Pattern Languages of Functional Programs" <http://www.cs.uni.edu/~wallingf/patterns/functional/> ) |
2021-02-21 08:30:03 +0100 | <ski> | (also note that "pattern" in the sense of GoF sometimes have a negative connotation in an FP context, such patterns/idioms being seen as manifestations of limitations of a language, that with a more expressive language, or a language with more proper abstractions/concepts, one wouldn't feel that much of a need to talk about and identify the pattern, or at least not make a big deal out of it. it would "just |
2021-02-21 08:30:09 +0100 | <ski> | be a library or part thereof") |
2021-02-21 08:31:13 +0100 | <minoru_shiraeesh> | like, when you are playing with an idea, you can write bad code with global vars |
2021-02-21 08:31:18 +0100 | <minoru_shiraeesh> | and refactor later |
2021-02-21 08:32:16 +0100 | <ski> | anyway .. state monad doesn't give global extent in quite the same fashion, although it is global to the "state thread" in question (unlike say things like stream processors, and probably at least some of the various stream processing libraries) |
2021-02-21 08:32:26 +0100 | <minoru_shiraeesh> | do haskellers use that approach? "write bad code when starting and gradually improve it later" |
2021-02-21 08:32:58 +0100 | <ski> | (iiuc, in Lua you'd carry all your context around in parameters, is that right ?) |
2021-02-21 08:33:28 +0100 | <dolio> | Well, not code that uses global mutable variables. |
2021-02-21 08:33:39 +0100 | <dolio> | Because that doesn't exist. |
2021-02-21 08:33:54 +0100 | <dolio> | I mean, technically it can, but it's way too much of a mess. |
2021-02-21 08:34:00 +0100 | <ski> | minoru_shiraeesh : in some regards, surely yes. one can start with an elegant but inefficient implementation, and then either massage it into being more efficient, or jump into another more efficient implementation |
2021-02-21 08:34:06 +0100 | <swarmcollective> | IORef FTW |
2021-02-21 08:34:11 +0100 | coeus | (~coeus@p200300d0274c930028b50fb1d864e965.dip0.t-ipconnect.de) |
2021-02-21 08:34:21 +0100 | <ephemient> | you could have a ReaderT MyGlobalEnv IO where data MyGlobalEnv = MyGlobalEnv { myGlobalVar :: IORef a } or something like that, and it's actually reasonable to use |
2021-02-21 08:34:23 +0100 | <ski> | you still need to pass the `IORef' to where it's to be used |
2021-02-21 08:35:29 +0100 | <ski> | being able to have run-time generated modules as first-class values might be interesting. then a module could e.g. close over some `IORef' |
2021-02-21 08:35:49 +0100 | <ski> | (OCaml allows this) |
2021-02-21 08:36:10 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 260 seconds) |
2021-02-21 08:36:12 +0100 | <swarmcollective> | It (IORef) is great for one way read-only information passing between threads, among other use cases. However, I could imagine someone just declaring everything via IORef and updating them at random. |
2021-02-21 08:36:15 +0100 | <dolio> | Having a global IORef still means you need to use IO to access it, which is also a mess. |
2021-02-21 08:36:48 +0100 | <monochrom> | I write bad code at the beginning. But people look at my bad code and think it's good code. Does that count? |
2021-02-21 08:37:24 +0100 | <swarmcollective> | but your bad code monochrom is likely much less bad than my bad code. ;) |
2021-02-21 08:37:33 +0100 | <dolio> | Basically, 'start with a global variable and clean it up later' is not something that ever enters into my head. |
2021-02-21 08:37:35 +0100 | <ephemient> | in my heart, me going the other way around counts, so yours should count too ;) |
2021-02-21 08:37:54 +0100 | <dolio> | It is just more work. |
2021-02-21 08:37:54 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) |
2021-02-21 08:38:42 +0100 | <dolio> | But I also disagree with the sentiments behind the original quotation, I think. |
2021-02-21 08:38:51 +0100 | <dolio> | Thinking about types up front is not a burden to me. |
2021-02-21 08:39:11 +0100 | <ephemient> | I mean, yeah cleaning up a top-level {-# NOINLINE #-} unsafePerformIO $ newIORef is not great |
2021-02-21 08:39:15 +0100 | <swarmcollective> | When people ask me why I like Haskell, I explain it this way: 1) If I read the code and it looks like it is going to do what I want, and 2) it compiles... the likelihood that it is going to do what I want is very high. |
2021-02-21 08:39:16 +0100 | drbean | (~drbean@TC210-63-209-29.static.apol.com.tw) (Ping timeout: 240 seconds) |
2021-02-21 08:39:19 +0100 | <dolio> | It is a fundamental and natural part of conceptualizing the problem. |
2021-02-21 08:39:28 +0100 | <ephemient> | but if you're not doing that I think most other refactorings are fine |
2021-02-21 08:40:30 +0100 | <swarmcollective> | In many other languages, I spend a lot more time saying "Yeah, this looks right." and it compiles, but does not produce the exptected outcome. |
2021-02-21 08:40:43 +0100 | kuribas | (~user@ptr-25vy0i9d8ddz063tr0c.18120a2.ip6.access.telenet.be) |
2021-02-21 08:40:51 +0100 | <monochrom> | I don't understand the obsession with global variables. Even in C you wouldn't do it. |
2021-02-21 08:41:09 +0100 | <swarmcollective> | The difference is whether you spend your time producing code that compiles, or spend your time trying to figure out why the code that compiled fails to work as expected. |
2021-02-21 08:41:13 +0100 | <dolio> | Yeah, same. |
2021-02-21 08:41:14 +0100 | <monochrom> | Basically you would only do it in BASIC and it is only because there is no local variable there so you have no choice. |
2021-02-21 08:41:30 +0100 | vchlup | (~vchlup@nat.brnet.cz) (Read error: Connection reset by peer) |
2021-02-21 08:41:58 +0100 | vchlup | (~vchlup@nat.brnet.cz) |
2021-02-21 08:42:31 +0100 | <monochrom> | Basically you look at even 1st-year students they naturally go for function parameters and local variables. |
2021-02-21 08:43:05 +0100 | <dolio> | Anyhow, there is plenty of research on 'graudal types' and stuff for having a system that has parts that aren't type checked and stuff. But personally I don't get the appeal. |
2021-02-21 08:43:08 +0100 | vchlup | (~vchlup@nat.brnet.cz) (Remote host closed the connection) |
2021-02-21 08:43:16 +0100 | <ephemient> | I was cleaning up some (Kotlin) code earlier this week at work because somebody stored a continuation in a global variable, making a piece of code crash on reentrance. I am not sure where they got that bright idea from. |
2021-02-21 08:43:24 +0100 | ski | . o O ( "Re: Mercury in academic teaching?" by Richard A. O'Keefe in 2006-10-(09|10) at <https://lists.mercurylang.org/archives/users/2006-October/004000.html>,<https://lists.mercurylang.org/archives/users/2006-October/004011.html> ) |
2021-02-21 08:43:27 +0100 | vchlup | (~vchlup@nat.brnet.cz) |
2021-02-21 08:44:07 +0100 | totoro2021 | (~t@unaffiliated/totoro2021) |
2021-02-21 08:44:09 +0100 | <monochrom> | continuation in a global variable. That's setjmp and longjmp right there. :) |
2021-02-21 08:44:23 +0100 | <ski> | were they implementing delimited continuations ? |
2021-02-21 08:44:56 +0100 | <ephemient> | they just wanted to get a callback from the UI >_< |
2021-02-21 08:44:56 +0100 | vchlup | (~vchlup@nat.brnet.cz) (Read error: Connection reset by peer) |
2021-02-21 08:45:19 +0100 | vchlup | (~vchlup@nat.brnet.cz) |
2021-02-21 08:45:22 +0100 | <monochrom> | When I learned Lisp I wrote type signatures in comments for my sanity. |
2021-02-21 08:45:22 +0100 | <ski> | "Becket: Mercury has a much steeper learning curve, but in many cases the compiler tells you when your program is not going to do what you thought it would." |
2021-02-21 08:45:33 +0100 | <monochrom> | That's how much untypedness hinders me. |
2021-02-21 08:46:13 +0100 | <ski> | "O'Keefe: That's not a \"but\", it's really a \"because\". Mercury has a much steeper learning curve, BECAUSE in many cases the compiler tells you when your program is not going to do what you thought it would, and you never get to find out what would have happened, so you don't understand what the compiler is trying to tell you." |
2021-02-21 08:46:17 +0100 | <monochrom> | static or dynamic, you make a mistake you will pay for it. |
2021-02-21 08:46:49 +0100 | <ephemient> | well, if it's dynamic you have the option of making your customers pay for it instead of you ;) |
2021-02-21 08:47:01 +0100 | <ski> | "Over the years, one of the top complaints that I have heard from people who have taken programming courses and found them very hard going is \"I could never make sense of the compiler error messages.\"." |
2021-02-21 08:47:03 +0100 | <swarmcollective> | minoru_shiraeesh, one pattern I can see being applicable in Haskell for complex systems would be CQRS. |
2021-02-21 08:47:14 +0100 | <monochrom> | if you're allowed to run your buggy code prematurely, you will be confused as hell where is the bug. |
2021-02-21 08:47:27 +0100 | <monochrom> | and then you ask about "why is there no debugger???!!!!" |
2021-02-21 08:47:29 +0100 | <ski> | "Come to think of it, one of the things that drives me up the wall is 3rd year students handing in C programs with obvious problems that the C compiler DID tell them about, but they weren't EXPECTING to understand anything the compiler said, so they didn't bother looking at what it did say or even the particular lines it was talking about." |
2021-02-21 08:47:34 +0100 | <monochrom> | Static typing is my debuggers. |
2021-02-21 08:48:44 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 08:49:15 +0100 | ski | . o O ( Buddha is dead .. ) |
2021-02-21 08:49:47 +0100 | <dolio> | I guess the secret is to learn Agda. Program in that for a while trying to actually prove things about any non-trivial program, and then come back and the rudimentary type checking in Haskell seems simple. |
2021-02-21 08:49:50 +0100 | <monochrom> | I killed Buddha. And Dijsktra. |
2021-02-21 08:50:10 +0100 | <kuribas> | swarmcollective: isn't CQRS just separating IO from pure functions, though? |
2021-02-21 08:50:15 +0100 | ski | . o O ( <https://web.archive.org/web/20091122221642/http://ww2.cs.mu.oz.au:80/~bjpop/buddha/> ) |
2021-02-21 08:51:05 +0100 | cole-h | (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 08:51:23 +0100 | <monochrom> | I proved a little theorem and gave a talk, and it contained an ugly generatlization I needed to get the job done, and I wanted to express that no one could stop me. So I paraphrased that quote about... |
2021-02-21 08:51:32 +0100 | <dolio> | Yeah, I wish something like buddha shipped with GHC. |
2021-02-21 08:51:38 +0100 | <swarmcollective> | kuribas, interesting! That makes sense. |
2021-02-21 08:51:39 +0100 | <monochrom> | "If you see Buddha, kill Buddha. If you see Dijkstra, kill Dijkstra." |
2021-02-21 08:51:40 +0100 | <dolio> | It'd be a lot nicer than tracing. |
2021-02-21 08:52:02 +0100 | <kuribas> | swarmcollective: well, I suppose you can have queries that do IO, but otherwise don't change any state... |
2021-02-21 08:52:53 +0100 | <ski> | monochrom : yea, i had that quote in mind, from the start :) |
2021-02-21 08:53:34 +0100 | ski | . o O ( <https://catonmat.net/wp-content/uploads/2008/11/edsger-dijkstra-quick-and-dirty.jpg> ) |
2021-02-21 08:53:54 +0100 | <desophos> | hi, i'm using `classify` to implement a simple histogram for my quickcheck test results and i'd like to collect some conditional statistics about the results (e.g. avg other values for results in a certain range), but it seems like quickcheck only has functions for overall distribution reporting. is there a way i can access individual test case results or any clever way to go about this? |
2021-02-21 08:54:11 +0100 | <minoru_shiraeesh> | here is an article about high-level architecture in haskell: https://www.parsonsmatt.org/2018/03/22/three_layer_haskell_cake.html |
2021-02-21 08:54:13 +0100 | <swarmcollective> | I'm trying to build a container to build ghc in (based on gregweber/ghc-haskell-dev) and first it complained because the referenced ghc (8.4.4) was too old, so I updated it to 8.10.2 and it complained that ghc 7.0.x or greater is required, but not found. *sigh* |
2021-02-21 08:54:45 +0100 | <minoru_shiraeesh> | when I first tried reading it, it seemed to advanced for me |
2021-02-21 08:54:59 +0100 | <minoru_shiraeesh> | *too |
2021-02-21 08:55:02 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 08:55:37 +0100 | <minoru_shiraeesh> | so I decided to take a step back and learn simpler stuff first |
2021-02-21 08:55:47 +0100 | <kuribas> | I don't quite agree with the three layer cake, that you should write your functions polymorphically. |
2021-02-21 08:56:18 +0100 | <kuribas> | IMO avoiding polymorphic functions, but using adapters is the cleaner approach. |
2021-02-21 08:58:30 +0100 | <ephemient> | desophos: does the distribution reported by using `label`/`tabulate` not work for you? |
2021-02-21 08:59:12 +0100 | <desophos> | ephemient, no, because i want to know the distributions *within* certain ranges |
2021-02-21 08:59:44 +0100 | <desophos> | e.g. for results with 10 < x < 20, what is the distribution of y |
2021-02-21 09:00:02 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 09:00:39 +0100 | shad0w_ | (a0ca24f4@160.202.36.244) |
2021-02-21 09:01:44 +0100 | <ephemient> | label (if 10 < x && x < 20 then "y = " ++ show y else "(ignored)") no good? |
2021-02-21 09:02:00 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 09:02:22 +0100 | <swarmcollective> | kuribas, I'm interested in CQRS for the ability to easily extend it to asynchronous distributed systems and the ability to implement undo, redo, and replication via the commands inherent in the paradigm. |
2021-02-21 09:03:33 +0100 | <desophos> | no, because i want to see the statistical distribution of y, not just individual values |
2021-02-21 09:04:34 +0100 | <desophos> | i was thinking i could label test cases with all their individual values so that the quickcheck Result has one test case with each set of values, then collect and analyze them from there |
2021-02-21 09:05:07 +0100 | <ephemient> | hmm. I guess quickcheck doesn't really help with that out of the box |
2021-02-21 09:05:26 +0100 | <kuribas> | swarmcollective: yeah, implementing messages in haskell using ADTs is very nice. |
2021-02-21 09:05:34 +0100 | <desophos> | i mean, each set of values would have only one test case associated with it |
2021-02-21 09:05:51 +0100 | <kuribas> | swarmcollective: as you can easily serialize, they are immutable, etc... |
2021-02-21 09:05:59 +0100 | <ephemient> | the Result will have a map of all the labels/tables from all the test cases, and you could parse it back out from there |
2021-02-21 09:06:15 +0100 | <desophos> | yes, that's what i was thinking, but i was wondering if there's a less roundabout way to do it |
2021-02-21 09:06:40 +0100 | <ephemient> | I can't think of anything cleaner. good question though, maybe somebody else may have an idea... |
2021-02-21 09:06:48 +0100 | klixto | (~klixto@49.188.43.94) (Quit: WeeChat 3.0) |
2021-02-21 09:08:17 +0100 | bitmapper | (uid464869@gateway/web/irccloud.com/x-zkqjuggkajftiwsq) (Quit: Connection closed for inactivity) |
2021-02-21 09:11:26 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 09:16:45 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds) |
2021-02-21 09:20:59 +0100 | CMCDragonkai1 | (~Thunderbi@60-242-118-130.tpgi.com.au) |
2021-02-21 09:21:37 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) |
2021-02-21 09:22:36 +0100 | Varis | (~Tadas@unaffiliated/varis) |
2021-02-21 09:23:21 +0100 | CMCDragonkai1 | (~Thunderbi@60-242-118-130.tpgi.com.au) (Client Quit) |
2021-02-21 09:23:22 +0100 | <desophos> | oof, especially since i'll have to parse the data back from the String label... |
2021-02-21 09:24:55 +0100 | totoro2021 | (~t@unaffiliated/totoro2021) (Read error: Connection reset by peer) |
2021-02-21 09:25:02 +0100 | totoro2022 | (~t@unaffiliated/totoro2021) |
2021-02-21 09:25:51 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) |
2021-02-21 09:26:17 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) (Client Quit) |
2021-02-21 09:26:33 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) |
2021-02-21 09:33:31 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 09:34:36 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) (Remote host closed the connection) |
2021-02-21 09:35:25 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2021-02-21 09:36:22 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-02-21 09:36:32 +0100 | torax | (~torax@178.239.168.171) (Remote host closed the connection) |
2021-02-21 09:37:05 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 240 seconds) |
2021-02-21 09:38:42 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
2021-02-21 09:44:11 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 09:46:11 +0100 | jedws | (~jedws@101.184.202.248) (Client Quit) |
2021-02-21 09:47:25 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 09:48:14 +0100 | jedws | (~jedws@101.184.202.248) (Client Quit) |
2021-02-21 09:48:14 +0100 | dansho | (~dansho@ec2-54-248-10-133.ap-northeast-1.compute.amazonaws.com) |
2021-02-21 09:49:26 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) (Ping timeout: 260 seconds) |
2021-02-21 09:53:33 +0100 | wei2912 | (~wei2912@unaffiliated/wei2912) |
2021-02-21 09:56:02 +0100 | jksafjkal | (56032b47@cpc68308-cdif16-2-0-cust838.5-1.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-02-21 09:56:11 +0100 | kini | (~kini@unaffiliated/kini) (Remote host closed the connection) |
2021-02-21 09:57:09 +0100 | vicfred | (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
2021-02-21 09:57:24 +0100 | hekkaidekapus[ | (~tchouri@gateway/tor-sasl/hekkaidekapus) |
2021-02-21 09:57:31 +0100 | kini | (~kini@unaffiliated/kini) |
2021-02-21 09:58:30 +0100 | dyeplexer | (~lol@unaffiliated/terpin) |
2021-02-21 10:00:07 +0100 | noIOBeforeBedtim | (dissatisfi@gateway/shell/matrix.org/x-fhbburjijoemebwr) (Quit: Idle for 30+ days) |
2021-02-21 10:00:34 +0100 | hekkaidekapus} | (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds) |
2021-02-21 10:02:38 +0100 | bitmagie | (~Thunderbi@200116b80623f200a9e3bc151af959a1.dip.versatel-1u1.de) |
2021-02-21 10:04:27 +0100 | kini | (~kini@unaffiliated/kini) (Ping timeout: 260 seconds) |
2021-02-21 10:04:43 +0100 | kini | (~kini@unaffiliated/kini) |
2021-02-21 10:05:28 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) |
2021-02-21 10:09:27 +0100 | shad0w_ | (a0ca24f4@160.202.36.244) (Quit: Connection closed) |
2021-02-21 10:10:00 +0100 | hendursa1 | (~weechat@gateway/tor-sasl/hendursaga) |
2021-02-21 10:11:03 +0100 | hendursaga | (~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 268 seconds) |
2021-02-21 10:14:28 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
2021-02-21 10:16:42 +0100 | kw | (d4662d5d@212.102.45.93) (Ping timeout: 240 seconds) |
2021-02-21 10:19:44 +0100 | p-core | (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515) (Quit: p-core) |
2021-02-21 10:22:06 +0100 | ddellacosta | (~ddellacos@83.143.246.103) |
2021-02-21 10:23:07 +0100 | fendor | (~fendor@91.141.1.5.wireless.dyn.drei.com) |
2021-02-21 10:23:30 +0100 | Ishutin_ | (~ishutin@84-236-3-155.pool.digikabel.hu) (Ping timeout: 272 seconds) |
2021-02-21 10:26:25 +0100 | ddellacosta | (~ddellacos@83.143.246.103) (Ping timeout: 240 seconds) |
2021-02-21 10:29:20 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-02-21 10:29:46 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 10:29:58 +0100 | Ishutin | (~ishutin@92-249-193-15.pool.digikabel.hu) |
2021-02-21 10:32:09 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) (Read error: Connection reset by peer) |
2021-02-21 10:32:28 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) |
2021-02-21 10:34:24 +0100 | L29Ah | (~L29Ah@unaffiliated/l29ah) (Quit: Gateway shutdown) |
2021-02-21 10:34:54 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
2021-02-21 10:38:45 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) (Ping timeout: 240 seconds) |
2021-02-21 10:40:20 +0100 | acidjnk_new | (~acidjnk@p200300d0c7390943ecdc1b863cacb0c3.dip0.t-ipconnect.de) |
2021-02-21 10:43:12 +0100 | sablib | (~sablib@59.173.154.87) |
2021-02-21 10:45:56 +0100 | danso | (~dan@2001:1970:52e7:d000:96b8:6dff:feb3:c009) (Ping timeout: 240 seconds) |
2021-02-21 10:46:06 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 10:46:30 +0100 | danso | (~dan@2001:1970:52e7:d000:96b8:6dff:feb3:c009) |
2021-02-21 10:46:47 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 10:49:53 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 10:51:08 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
2021-02-21 10:52:39 +0100 | Narinas | (~Narinas@189.223.59.23.dsl.dyn.telnor.net) |
2021-02-21 10:54:20 +0100 | <tomsmeding> | desophos: it sounds like 'tabulate (if 10 < x && x < 20 then "in" else "out") [show y]' would do the job, would it not? |
2021-02-21 10:54:30 +0100 | tsaka__ | (~torstein@athedsl-258913.home.otenet.gr) |
2021-02-21 10:54:47 +0100 | <tomsmeding> | except if you want some binning of the y-histogram |
2021-02-21 10:55:50 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
2021-02-21 10:56:11 +0100 | <desophos> | well, y is usually unique, plus i actually have multiple values i want to analyze |
2021-02-21 10:56:20 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 10:56:53 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 10:57:06 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 260 seconds) |
2021-02-21 10:57:39 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 10:57:58 +0100 | <desophos> | that tabulate call would be good if y only had a few values, but i have several variables with wide ranges |
2021-02-21 10:58:17 +0100 | <desophos> | so i do want binning |
2021-02-21 10:59:23 +0100 | <desophos> | i'm surprised this isn't a common use case; what do people normally do when they want to analyze program results? |
2021-02-21 11:00:56 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Ping timeout: 240 seconds) |
2021-02-21 11:01:14 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 11:02:16 +0100 | tsaka__ | (~torstein@athedsl-258913.home.otenet.gr) (Ping timeout: 240 seconds) |
2021-02-21 11:06:32 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 11:07:41 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
2021-02-21 11:08:19 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 11:09:23 +0100 | son0p | (~son0p@181.58.39.182) |
2021-02-21 11:09:38 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 11:12:34 +0100 | wtw | (~wtw@unaffiliated/wtw) () |
2021-02-21 11:12:36 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Ping timeout: 246 seconds) |
2021-02-21 11:16:05 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8871:e949:6c7d:3254:7bc2:5a9d) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 11:16:29 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
2021-02-21 11:16:40 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 11:17:12 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 11:19:26 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 11:19:42 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 11:19:59 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 11:20:53 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 11:21:40 +0100 | sablib | (~sablib@59.173.154.87) (Quit: WeeChat 3.0) |
2021-02-21 11:24:45 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 11:27:26 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds) |
2021-02-21 11:29:41 +0100 | knupfer | (~Thunderbi@200116b82c1930006881d3fffe8bfe6f.dip.versatel-1u1.de) |
2021-02-21 11:30:34 +0100 | haritz | (~hrtz@unaffiliated/haritz) (Ping timeout: 256 seconds) |
2021-02-21 11:30:44 +0100 | knupfer | (~Thunderbi@200116b82c1930006881d3fffe8bfe6f.dip.versatel-1u1.de) (Remote host closed the connection) |
2021-02-21 11:31:20 +0100 | haritz | (~hrtz@62.3.70.206) |
2021-02-21 11:31:20 +0100 | haritz | (~hrtz@62.3.70.206) (Changing host) |
2021-02-21 11:31:20 +0100 | haritz | (~hrtz@unaffiliated/haritz) |
2021-02-21 11:32:36 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 11:34:35 +0100 | Sgeo_ | (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer) |
2021-02-21 11:36:04 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 11:36:13 +0100 | ymherklotz | (~user@2a00:23c7:e28c:6001:5460:47fb:6d9:8e42) |
2021-02-21 11:40:36 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds) |
2021-02-21 11:40:44 +0100 | pera | (~pera@unaffiliated/pera) |
2021-02-21 11:41:39 +0100 | drbean | (~drbean@TC210-63-209-186.static.apol.com.tw) |
2021-02-21 11:42:04 +0100 | bitmagie | (~Thunderbi@200116b80623f200a9e3bc151af959a1.dip.versatel-1u1.de) (Quit: bitmagie) |
2021-02-21 11:43:19 +0100 | CMCDragonkai1 | (~Thunderbi@60-242-118-130.tpgi.com.au) |
2021-02-21 11:43:38 +0100 | pera | (~pera@unaffiliated/pera) (Read error: Connection reset by peer) |
2021-02-21 11:44:00 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 11:44:20 +0100 | jedws | (~jedws@101.184.202.248) (Client Quit) |
2021-02-21 11:45:48 +0100 | pera | (~pera@unaffiliated/pera) |
2021-02-21 11:52:42 +0100 | hnOsmium0001 | (uid453710@gateway/web/irccloud.com/x-chohypbdngwsxena) (Quit: Connection closed for inactivity) |
2021-02-21 11:53:03 +0100 | Deide | (~Deide@217.155.19.23) |
2021-02-21 11:53:39 +0100 | dansho | (~dansho@ec2-54-248-10-133.ap-northeast-1.compute.amazonaws.com) (Ping timeout: 265 seconds) |
2021-02-21 11:56:48 +0100 | pyx | (~pyx@unaffiliated/pyx) |
2021-02-21 11:56:55 +0100 | pyx | (~pyx@unaffiliated/pyx) (Client Quit) |
2021-02-21 11:57:46 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 11:59:35 +0100 | ymherklotz_ | (~ymherklot@2a0c:5bc0:40:107b:fdfc:4d2d:898a:f9f5) |
2021-02-21 12:01:37 +0100 | redcherri | (bab72682@186.183.38.130) |
2021-02-21 12:01:39 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 12:01:51 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 12:02:00 +0100 | desophos | (~desophos@2601:249:1680:a570:d500:73bc:696a:d401) (Read error: Connection reset by peer) |
2021-02-21 12:02:54 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
2021-02-21 12:02:56 +0100 | ymherklotz | (~user@2a00:23c7:e28c:6001:5460:47fb:6d9:8e42) (Quit: ERC (IRC client for Emacs 27.1)) |
2021-02-21 12:06:11 +0100 | ymherklotz_ | ymherklotz |
2021-02-21 12:06:47 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-02-21 12:07:13 +0100 | ubert1 | (~Thunderbi@p200300ecdf25d903e6b318fffe838f33.dip0.t-ipconnect.de) |
2021-02-21 12:07:20 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 12:11:36 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds) |
2021-02-21 12:11:56 +0100 | zaquest | (~notzaques@5.128.210.178) (Remote host closed the connection) |
2021-02-21 12:13:56 +0100 | zaquest | (~notzaques@5.128.210.178) |
2021-02-21 12:15:08 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 12:15:30 +0100 | Franciman | (~francesco@host-82-49-79-189.retail.telecomitalia.it) |
2021-02-21 12:15:55 +0100 | mouseghost | (~draco@87-206-9-185.dynamic.chello.pl) |
2021-02-21 12:15:55 +0100 | mouseghost | (~draco@87-206-9-185.dynamic.chello.pl) (Changing host) |
2021-02-21 12:15:55 +0100 | mouseghost | (~draco@wikipedia/desperek) |
2021-02-21 12:19:00 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 12:23:26 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
2021-02-21 12:23:56 +0100 | _bo | (~bo@178.150.122.153) (Ping timeout: 240 seconds) |
2021-02-21 12:25:18 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 260 seconds) |
2021-02-21 12:27:56 +0100 | CMCDragonkai1 | (~Thunderbi@60-242-118-130.tpgi.com.au) (Ping timeout: 240 seconds) |
2021-02-21 12:33:38 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
2021-02-21 12:38:19 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 12:38:33 +0100 | arw | (~arw@impulse.informatik.uni-erlangen.de) (Quit: screen update) |
2021-02-21 12:39:21 +0100 | ddellacosta | (~ddellacos@86.106.143.111) |
2021-02-21 12:39:58 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 12:40:25 +0100 | arw | (~arw@impulse.informatik.uni-erlangen.de) |
2021-02-21 12:40:45 +0100 | idhugo | (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds) |
2021-02-21 12:41:14 +0100 | <tomsmeding> | I've wanted it in the past too :p |
2021-02-21 12:41:30 +0100 | <tomsmeding> | Rudimentary binnning can be achieved by tabulating 'round (y / 10)' |
2021-02-21 12:41:50 +0100 | <tomsmeding> | oh desophos is gone |
2021-02-21 12:43:05 +0100 | mrchampion | (~mrchampio@38.18.109.23) (Ping timeout: 240 seconds) |
2021-02-21 12:44:16 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 240 seconds) |
2021-02-21 12:44:21 +0100 | ddellacosta | (~ddellacos@86.106.143.111) (Ping timeout: 264 seconds) |
2021-02-21 12:45:46 +0100 | redcherri | (bab72682@186.183.38.130) () |
2021-02-21 12:45:52 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 12:45:58 +0100 | L29Ah | (~L29Ah@unaffiliated/l29ah) |
2021-02-21 12:46:03 +0100 | jedws | (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 12:48:42 +0100 | dunj3 | (~dunj3@p200300f61714a6752268fca81a1a85c0.dip0.t-ipconnect.de) |
2021-02-21 12:56:14 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) |
2021-02-21 12:57:48 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 12:59:45 +0100 | fendor | (~fendor@91.141.1.5.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-02-21 13:00:36 +0100 | juri_ | (~juri@178.63.35.222) |
2021-02-21 13:03:02 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 13:03:38 +0100 | m0rphism1 | (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
2021-02-21 13:08:10 +0100 | mputz | (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
2021-02-21 13:11:30 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 260 seconds) |
2021-02-21 13:14:48 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8876:b8ec:ecd4:c92c:f02:3202) |
2021-02-21 13:17:33 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 246 seconds) |
2021-02-21 13:18:23 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 13:19:00 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 13:24:14 +0100 | __monty__ | (~toonn@unaffiliated/toonn) |
2021-02-21 13:30:54 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 13:31:12 +0100 | geekosaur | (ac3a5762@172.58.87.98) |
2021-02-21 13:36:11 +0100 | mputz | (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Remote host closed the connection) |
2021-02-21 13:36:31 +0100 | jedws | (~jedws@101.184.202.248) |
2021-02-21 13:38:31 +0100 | jedws | (~jedws@101.184.202.248) (Client Quit) |
2021-02-21 13:40:26 +0100 | polyrain | (~polyrain@2001:8003:e4d8:4101:d1d2:4fc1:88fa:56) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 13:41:25 +0100 | geekosaur | (ac3a5762@172.58.87.98) (Quit: Connection closed) |
2021-02-21 13:42:02 +0100 | geekosaur | (ac3a5409@172.58.84.9) |
2021-02-21 13:46:00 +0100 | poscat | (~poscat@2408:8207:4825:b3e0::1) |
2021-02-21 13:48:53 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 13:53:25 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds) |
2021-02-21 13:55:28 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 13:56:00 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 13:59:13 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 14:00:16 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 240 seconds) |
2021-02-21 14:00:16 +0100 | ixlun | (~user@213.205.241.100) |
2021-02-21 14:00:38 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
2021-02-21 14:01:14 +0100 | olligobber | (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection) |
2021-02-21 14:01:18 +0100 | <ixlun> | Hi all. Is it possible to have a case of two values, e.g. `case x y of', or do I need to enclose it in a tuple? |
2021-02-21 14:01:47 +0100 | <mniip> | you need to enclose it in a tuple |
2021-02-21 14:02:48 +0100 | <ixlun> | Thanks, is there a performance penalty for that, or can the compiler optimize it out? |
2021-02-21 14:03:38 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 14:04:46 +0100 | <maerwald> | that doesn't seem like a thing to worry about |
2021-02-21 14:07:32 +0100 | juri_ | (~juri@178.63.35.222) (Ping timeout: 265 seconds) |
2021-02-21 14:07:55 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 14:10:47 +0100 | DavidEichmann | (~david@234.109.45.217.dyn.plus.net) |
2021-02-21 14:11:56 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
2021-02-21 14:12:46 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 14:14:05 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 14:15:16 +0100 | DavidEichmann | (~david@234.109.45.217.dyn.plus.net) (Ping timeout: 240 seconds) |
2021-02-21 14:15:38 +0100 | swarmcollective | (~joseph@cpe-65-31-18-174.insight.res.rr.com) (Quit: WeeChat 2.8) |
2021-02-21 14:16:15 +0100 | leo__ | (~leo@cpc96810-rdng27-2-0-cust409.15-3.cable.virginm.net) |
2021-02-21 14:18:43 +0100 | mrchampion | (~mrchampio@38.18.109.23) |
2021-02-21 14:19:09 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 246 seconds) |
2021-02-21 14:20:37 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) |
2021-02-21 14:21:17 +0100 | <jollygood2> | hi. is there half round away function in haskell? |
2021-02-21 14:21:25 +0100 | <jollygood2> | > round 2.5 |
2021-02-21 14:21:27 +0100 | <lambdabot> | 2 |
2021-02-21 14:21:35 +0100 | <jollygood2> | I want this to be 3 |
2021-02-21 14:22:01 +0100 | <kuribas> | > round 3.5 |
2021-02-21 14:22:04 +0100 | <lambdabot> | 4 |
2021-02-21 14:22:16 +0100 | <jollygood2> | yes, I don't like that behavior |
2021-02-21 14:22:22 +0100 | geekosaur | (ac3a5409@172.58.84.9) (Ping timeout: 240 seconds) |
2021-02-21 14:22:28 +0100 | <ephemient> | Haskell's rounding follows banker's rounding: round to even, in case of tie |
2021-02-21 14:22:29 +0100 | <jollygood2> | odd half away, even half down |
2021-02-21 14:23:39 +0100 | <jollygood2> | so I take it there's no other rounding function? |
2021-02-21 14:25:17 +0100 | son0p | (~son0p@181.58.39.182) (Quit: leaving) |
2021-02-21 14:25:50 +0100 | <ephemient> | not built-in |
2021-02-21 14:26:09 +0100 | <ephemient> | well, I suppose truncate/floor/ceiling count as rounding functions, but they don't do what you want either |
2021-02-21 14:26:11 +0100 | <jollygood2> | and in third party packages? |
2021-02-21 14:26:33 +0100 | <ephemient> | but floor (x + 0.5) would get you to your desired behavior, I believe |
2021-02-21 14:27:11 +0100 | <jollygood2> | yes, for positive numbers. it should be -0.5 for negative |
2021-02-21 14:27:47 +0100 | <ephemient> | oh you want rounding that's biased both ways |
2021-02-21 14:28:28 +0100 | <ephemient> | I guess truncate (x + signum x * 0.5) or something would do that |
2021-02-21 14:28:46 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 14:31:25 +0100 | <ephemient> | hmm. thinking about it, `let (a, b) = properFraction x in a - round (-b)` might work too |
2021-02-21 14:31:46 +0100 | swarmcollective | (~joseph@cpe-65-31-18-174.insight.res.rr.com) |
2021-02-21 14:33:36 +0100 | <ephemient> | hmm nope |
2021-02-21 14:33:38 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 265 seconds) |
2021-02-21 14:33:55 +0100 | juri_ | (~juri@178.63.35.222) |
2021-02-21 14:34:58 +0100 | <merijn> | Note that banker's rounding is the default rounding method as specified by IEEE-754 |
2021-02-21 14:36:01 +0100 | <merijn> | Athas: Oh, look what I found! |
2021-02-21 14:36:03 +0100 | <merijn> | Athas: https://hackage.haskell.org/package/altfloat-0.3.1 |
2021-02-21 14:36:16 +0100 | <jollygood2> | this seems to work. https://pastebin.com/nEchDxgy |
2021-02-21 14:36:31 +0100 | <merijn> | jollygood2: That library lets you control the rounding mode |
2021-02-21 14:36:33 +0100 | <ephemient> | > [a + if abs b < 0.5 then 0 else truncate (2 * b) | x <- [-1.75, -1.5 .. 1.75], let (a, b) = properFraction x] |
2021-02-21 14:36:34 +0100 | <lambdabot> | [-2,-2,-1,-1,-1,-1,0,0,0,1,1,1,1,2,2] |
2021-02-21 14:37:00 +0100 | <jollygood2> | merijn, cool, I'll take a look |
2021-02-21 14:37:09 +0100 | <ephemient> | Prelude's round/etc. are implemented in terms of properFraction anyhow |
2021-02-21 14:37:16 +0100 | <merijn> | jollygood2: Looks like it's fairly verbose, though |
2021-02-21 14:42:19 +0100 | p-core | (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515) |
2021-02-21 14:42:23 +0100 | p-core | (~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515) (Remote host closed the connection) |
2021-02-21 14:44:01 +0100 | <ephemient> | interesting. it goes through C FFI, which makes sense... not sure there's better options. I don't see any use of ieee_flags() to set rounding mode though |
2021-02-21 14:46:06 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) |
2021-02-21 14:46:53 +0100 | <merijn> | ephemient: It's using fesetround |
2021-02-21 14:46:53 +0100 | idhugo | (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) |
2021-02-21 14:47:01 +0100 | <Athas> | merijn: does that still work? |
2021-02-21 14:47:07 +0100 | <merijn> | Athas: Who knows! |
2021-02-21 14:47:48 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 14:48:02 +0100 | <merijn> | There's some...debatable choices, but it doesn't seem like it'd be hard to fix up if it doesn't work |
2021-02-21 14:48:08 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 14:48:38 +0100 | Sheilong | (uid293653@gateway/web/irccloud.com/x-jfcqcaqnxdwadhys) |
2021-02-21 14:49:13 +0100 | <merijn> | tbh, I'm not even convinced it always works |
2021-02-21 14:49:49 +0100 | <merijn> | For the single-threaded RTS it works for sure, for the threaded there's...some questions I have |
2021-02-21 14:51:46 +0100 | <merijn> | Specifically, what if you trigger GC, your thread gets pre-empted and then work stolen to another capability |
2021-02-21 14:52:45 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
2021-02-21 14:52:45 +0100 | drbean | (~drbean@TC210-63-209-186.static.apol.com.tw) (Ping timeout: 246 seconds) |
2021-02-21 14:55:11 +0100 | oisdk | (~oisdk@2001:bb6:3329:d100:3d8b:3b0b:d75b:3a22) |
2021-02-21 14:56:57 +0100 | hexfive | (~hexfive@50.35.83.177) (Quit: i must go. my people need me.) |
2021-02-21 14:57:41 +0100 | wei2912 | (~wei2912@unaffiliated/wei2912) (Remote host closed the connection) |
2021-02-21 14:58:25 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 240 seconds) |
2021-02-21 14:59:56 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 15:00:30 +0100 | akay | (akay@unaffiliated/akay) |
2021-02-21 15:01:19 +0100 | <ephemient> | if it was all in a single FFI call, then that wouldn't be a possibility, but it's a Haskell function making multiple calls, so yeah getting pre-empted does sound like a danger... |
2021-02-21 15:01:39 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
2021-02-21 15:02:04 +0100 | geekosaur | (ac3a8840@172.58.136.64) |
2021-02-21 15:02:50 +0100 | <akay> | Hi, any update on apple silicon support? i saw angerman working on a backport for 8.10 - is there an ETA when this will be officially published? |
2021-02-21 15:03:10 +0100 | ddellacosta | (~ddellacos@86.106.143.100) |
2021-02-21 15:03:49 +0100 | hendursa1 | (~weechat@gateway/tor-sasl/hendursaga) (Quit: hendursa1) |
2021-02-21 15:04:06 +0100 | hendursaga | (~weechat@gateway/tor-sasl/hendursaga) |
2021-02-21 15:04:50 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 15:07:04 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 15:07:56 +0100 | <merijn> | akay: "soon" :p |
2021-02-21 15:07:57 +0100 | ddellacosta | (~ddellacos@86.106.143.100) (Ping timeout: 265 seconds) |
2021-02-21 15:08:37 +0100 | <merijn> | akay: Also depends on how you define support. iirc 9.0 x64 version should "Just Work", just no native codegen |
2021-02-21 15:09:03 +0100 | <akay> | you mean by using rosetta i assume? |
2021-02-21 15:09:07 +0100 | <merijn> | Yeah |
2021-02-21 15:09:23 +0100 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-02-21 15:09:55 +0100 | <merijn> | akay: I think native codegen is planned for 9.2, but that'll still be experimental stages. I recall angerman saying he didn't expect native codegen to be truly robust until 9.4-9.6 |
2021-02-21 15:10:10 +0100 | <akay> | i dont want to sound like an elitist but i'm trying to live rosetta-free - which has been working great for 2 months now :) there is really only one thing missing for me and that is pandoc, thats why i'm so eager to try the backport |
2021-02-21 15:10:10 +0100 | carlomagno | (~cararell@148.87.23.12) (Remote host closed the connection) |
2021-02-21 15:10:40 +0100 | <merijn> | akay: You can't live without rosetta anyway, as the 8.10 backport is just RTS fixes, iirc. It's definitely not native codegen |
2021-02-21 15:10:43 +0100 | <angerman> | well, let's see how far I get with whack-a-mole on 8.10. next week. |
2021-02-21 15:10:56 +0100 | <akay> | merijn: oh :( |
2021-02-21 15:11:11 +0100 | <merijn> | Unless angerman tells me my memory is faulty :p |
2021-02-21 15:11:14 +0100 | <angerman> | the 8.10 branch *does* run validate on aarch64-darwin, *but* there are some segfault in iserv... and they are on darwin *AND* linux. |
2021-02-21 15:11:19 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 15:11:26 +0100 | <akay> | angerman: Thank you so much for your great work! |
2021-02-21 15:11:37 +0100 | <angerman> | so we might see an 8.10.5 with aarch64-darwin support soon'ish. 9.0 would be forward ports of that is in 8.10 by then. |
2021-02-21 15:11:51 +0100 | sMuNiX | (~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) (Quit: WeeChat 3.0) |
2021-02-21 15:11:58 +0100 | <angerman> | 9.2 should have the NCG... again, I need some compiler to validate against, hence the 8.10 one. |
2021-02-21 15:12:04 +0100 | <merijn> | angerman: Right, but that's just RTS issues due to memory ordering, right? Not NCG |
2021-02-21 15:12:05 +0100 | <angerman> | but it's been *a lot* of work. |
2021-02-21 15:12:16 +0100 | <angerman> | merijn: memory ordering is in 8.10.3 already. |
2021-02-21 15:12:19 +0100 | <merijn> | ah |
2021-02-21 15:12:36 +0100 | <angerman> | this is likely some other bug, I haven't figured out yet. and lldb didn't play ball when attaching to iserv... so meh. |
2021-02-21 15:12:43 +0100 | <merijn> | akay: Anyway, in short, definitely stuck with Rosetta for haskell until 9.2 ;) |
2021-02-21 15:13:03 +0100 | <angerman> | not really. 8.10.5 will have aarch64-darwin native via LLVM. |
2021-02-21 15:13:10 +0100 | <akay> | *_* |
2021-02-21 15:13:28 +0100 | <akay> | ill stick to using pandoc in a VM until there's a native version |
2021-02-21 15:13:50 +0100 | <akay> | arch64 VM's run GREAT btw on apple silicon. like its a charm to use them |
2021-02-21 15:14:29 +0100 | fendor | (~fendor@91.141.1.5.wireless.dyn.drei.com) |
2021-02-21 15:14:43 +0100 | carlomagno | (~cararell@148.87.23.5) |
2021-02-21 15:16:35 +0100 | ubert1 | (~Thunderbi@p200300ecdf25d903e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
2021-02-21 15:19:19 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 15:19:41 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 15:24:22 +0100 | geekosaur | (ac3a8840@172.58.136.64) (Ping timeout: 240 seconds) |
2021-02-21 15:29:55 +0100 | mirrorbird | (~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) (Ping timeout: 272 seconds) |
2021-02-21 15:30:54 +0100 | dsrt^ | (~hph@ip98-184-89-2.mc.at.cox.net) () |
2021-02-21 15:32:23 +0100 | <akay> | /exit |
2021-02-21 15:32:43 +0100 | nlbh^ | (~hph@ip98-184-89-2.mc.at.cox.net) |
2021-02-21 15:33:12 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 15:33:31 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 15:34:43 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) |
2021-02-21 15:39:20 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 256 seconds) |
2021-02-21 15:40:44 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) |
2021-02-21 15:41:41 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 15:44:56 +0100 | sMuNiX | (~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) |
2021-02-21 15:46:45 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 264 seconds) |
2021-02-21 15:47:03 +0100 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:1c31:ba91:4135:5f73) |
2021-02-21 15:47:05 +0100 | jchia | (~jchia@218.80.126.10) (Ping timeout: 240 seconds) |
2021-02-21 15:49:43 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 15:50:57 +0100 | elfets | (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
2021-02-21 15:51:27 +0100 | ph88_ | (~ph88@2a02:8109:9e00:7e5c:f5fc:c65e:8298:c839) (Ping timeout: 272 seconds) |
2021-02-21 15:51:33 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 15:55:56 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) (Ping timeout: 240 seconds) |
2021-02-21 15:56:55 +0100 | son0p | (~son0p@181.136.122.143) |
2021-02-21 15:56:59 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 15:57:19 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 15:58:06 +0100 | neiluj | (~jco@unaffiliated/neiluj) (Quit: Lost terminal) |
2021-02-21 16:05:39 +0100 | geekosaur | (ae68c070@cpe-174-104-192-112.neo.res.rr.com) |
2021-02-21 16:06:12 +0100 | urodna | (~urodna@unaffiliated/urodna) |
2021-02-21 16:10:42 +0100 | dunj4 | (~dunj3@p200300f61714a6134d9f693459962ab2.dip0.t-ipconnect.de) |
2021-02-21 16:12:05 +0100 | dftxbs3e | (~dftxbs3e@unaffiliated/dftxbs3e) |
2021-02-21 16:13:19 +0100 | dunj3 | (~dunj3@p200300f61714a6752268fca81a1a85c0.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
2021-02-21 16:14:08 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) |
2021-02-21 16:15:56 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 16:16:46 +0100 | rob01 | (~rob0@195.140.213.38) |
2021-02-21 16:17:21 +0100 | hekkaidekapus[ | (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds) |
2021-02-21 16:19:01 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 16:20:10 +0100 | nbloomf | (~nbloomf@76.217.43.73) |
2021-02-21 16:20:10 +0100 | hekkaidekapus[ | (~tchouri@gateway/tor-sasl/hekkaidekapus) |
2021-02-21 16:25:17 +0100 | MichaelHoffmannb | (brisadmozi@gateway/shell/matrix.org/x-hyjjcdilatzwtwgu) |
2021-02-21 16:26:12 +0100 | pera | (~pera@unaffiliated/pera) (Ping timeout: 246 seconds) |
2021-02-21 16:26:21 +0100 | pera | (pera@gateway/vpn/mullvad/pera) |
2021-02-21 16:27:15 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 16:27:36 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 16:28:20 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) |
2021-02-21 16:31:16 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-02-21 16:31:31 +0100 | Tario | (~Tario@201.192.165.173) |
2021-02-21 16:31:56 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds) |
2021-02-21 16:33:17 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 16:33:34 +0100 | pera | (pera@gateway/vpn/mullvad/pera) (Ping timeout: 260 seconds) |
2021-02-21 16:33:44 +0100 | kam1 | (~kam1@37.129.135.98) |
2021-02-21 16:34:45 +0100 | nbloomf | (~nbloomf@76.217.43.73) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 16:35:09 +0100 | kw | (88388c02@136.56.140.2) |
2021-02-21 16:35:36 +0100 | DataComputist | (~lumeng@50.43.26.251) (Ping timeout: 240 seconds) |
2021-02-21 16:36:24 +0100 | <kw> | My brain is not working great right now. I want to monadically map over state. Is there a way to use `modify` to do the equivalent of `get >>= f >>= put` ? |
2021-02-21 16:38:11 +0100 | <tomsmeding> | kw: what about modifyKW f = get >>= f >>= put |
2021-02-21 16:38:12 +0100 | <tomsmeding> | :p |
2021-02-21 16:38:33 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) |
2021-02-21 16:39:03 +0100 | <tomsmeding> | possibly 'join . gets' |
2021-02-21 16:39:59 +0100 | <kw> | tomsmeding: Thanks, and I guess that's a 'no'. |
2021-02-21 16:40:16 +0100 | <Clint> | what's the type of f? |
2021-02-21 16:41:16 +0100 | <kw> | The type of `f` is `s -> m s`, where `s` is the state of `m` . |
2021-02-21 16:41:20 +0100 | DataComputist | (~lumeng@50.43.26.251) |
2021-02-21 16:42:20 +0100 | pera | (~pera@unaffiliated/pera) |
2021-02-21 16:42:29 +0100 | <kw> | :t \ f -> get >>= f >>= put |
2021-02-21 16:42:30 +0100 | <lambdabot> | MonadState s m => (s -> m s) -> m () |
2021-02-21 16:43:07 +0100 | <kw> | In this case the function does NOT alter state. |
2021-02-21 16:43:31 +0100 | <kw> | But it does use other monadic effects. |
2021-02-21 16:43:45 +0100 | tmciver | (~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 240 seconds) |
2021-02-21 16:43:57 +0100 | <tomsmeding> | kw: is 'StateT' the top layer in the monadic stack? |
2021-02-21 16:44:10 +0100 | <kw> | tomsmeding: Nope. |
2021-02-21 16:44:12 +0100 | <tomsmeding> | well actually that doesn't really matter |
2021-02-21 16:44:24 +0100 | <tomsmeding> | it would've allowed you to statically ensure that 'f' doesn't manipulate the state |
2021-02-21 16:44:36 +0100 | <tomsmeding> | but if you don't care for that, there's no point :p |
2021-02-21 16:44:43 +0100 | <tomsmeding> | I'd write your own modify |
2021-02-21 16:44:59 +0100 | boxscape | (4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) |
2021-02-21 16:45:47 +0100 | <kw> | Honestly, I think I'm fine with `get >>= f >>= put` . In the end it's pretty clear and not that noisy. |
2021-02-21 16:45:59 +0100 | tmciver | (~tmciver@cpe-172-101-40-226.maine.res.rr.com) |
2021-02-21 16:46:19 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 16:46:43 +0100 | <kw> | Thanks for helping me not define a crazy new function. :9 |
2021-02-21 16:47:54 +0100 | <tomsmeding> | o/ |
2021-02-21 16:48:58 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 16:49:02 +0100 | bitmapper | (uid464869@gateway/web/irccloud.com/x-uhoorvvzjdpjkavt) |
2021-02-21 16:50:09 +0100 | kw | (88388c02@136.56.140.2) (Quit: Connection closed) |
2021-02-21 16:51:10 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) (Quit: WeeChat 1.9.1) |
2021-02-21 16:51:24 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 16:52:56 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2021-02-21 16:55:36 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 240 seconds) |
2021-02-21 16:57:07 +0100 | gitgood | (~gitgood@80-44-13-166.dynamic.dsl.as9105.com) |
2021-02-21 16:57:28 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 17:01:40 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 17:04:58 +0100 | kam1 | (~kam1@37.129.135.98) (Read error: Connection reset by peer) |
2021-02-21 17:05:50 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 17:05:56 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 240 seconds) |
2021-02-21 17:06:10 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 17:08:21 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 17:08:40 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 17:09:12 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 17:10:56 +0100 | acidjnk_new | (~acidjnk@p200300d0c7390943ecdc1b863cacb0c3.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2021-02-21 17:11:00 +0100 | teardown | (~user@gateway/tor-sasl/mrush) (Ping timeout: 268 seconds) |
2021-02-21 17:11:08 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 256 seconds) |
2021-02-21 17:12:05 +0100 | idhugo | (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds) |
2021-02-21 17:13:44 +0100 | hugo | (znc@verdigris.lysator.liu.se) |
2021-02-21 17:14:51 +0100 | <hugo> | Hi! What's the recommended way to convert between Strings and ByteStrings? I hoped there would be something like (encode UTF8 "A string"), and the inverse decode procedure |
2021-02-21 17:16:00 +0100 | <hugo> | But I don't find anything which seems though through |
2021-02-21 17:16:08 +0100 | <geekosaur> | there is but it goes via Text, which is a better choice than String in general |
2021-02-21 17:17:18 +0100 | <Clint> | there are also libraries like utf8-string |
2021-02-21 17:17:24 +0100 | <geekosaur> | othrwise there's ... that package |
2021-02-21 17:18:04 +0100 | <hugo> | "that package"? |
2021-02-21 17:18:13 +0100 | <hugo> | But using Text instead of Strings could work |
2021-02-21 17:18:29 +0100 | ADG1089__ | (~aditya@122.163.128.29) |
2021-02-21 17:19:58 +0100 | DavidEichmann | (~david@234.109.45.217.dyn.plus.net) |
2021-02-21 17:20:26 +0100 | <ij> | is there some shorter way to write this by any chance? "if cond then f else id" |
2021-02-21 17:21:06 +0100 | <ADG1089__> | flip flip id . flip if' |
2021-02-21 17:21:40 +0100 | <ADG1089__> | @pl \c f -> if c then f else id |
2021-02-21 17:21:40 +0100 | <lambdabot> | flip flip id . if' |
2021-02-21 17:22:54 +0100 | <merijn> | hugo: I would certainly recommend going via Text, since "String -> Text" is just "Text.pack" |
2021-02-21 17:23:02 +0100 | <merijn> | @hoogle encodeUtf8 |
2021-02-21 17:23:02 +0100 | <lambdabot> | Data.Text.Encoding encodeUtf8 :: Text -> ByteString |
2021-02-21 17:23:02 +0100 | <lambdabot> | Data.Text.Lazy.Encoding encodeUtf8 :: Text -> ByteString |
2021-02-21 17:23:02 +0100 | <lambdabot> | Data.Conduit.Combinators encodeUtf8 :: (Monad m, Utf8 text binary) => ConduitT text binary m () |
2021-02-21 17:23:32 +0100 | <ij> | ADG1089__, id is mzero, but I don't think there's anything shorter while remaining comprehensible |
2021-02-21 17:24:04 +0100 | <merijn> | This looks like another case of my favourite monoid functio |
2021-02-21 17:24:12 +0100 | <merijn> | Which, sadly still doesn't exist in base :p |
2021-02-21 17:24:21 +0100 | <ij> | what is it? |
2021-02-21 17:24:50 +0100 | <merijn> | "mif b v = if b then v else mempty" |
2021-02-21 17:25:04 +0100 | <ij> | that _is_ nice |
2021-02-21 17:25:10 +0100 | <merijn> | The id version is just one Endo away |
2021-02-21 17:25:18 +0100 | <merijn> | :t Endo |
2021-02-21 17:25:19 +0100 | <lambdabot> | (a -> a) -> Endo a |
2021-02-21 17:25:25 +0100 | toorevitimirp | (~tooreviti@117.182.181.253) (Remote host closed the connection) |
2021-02-21 17:26:08 +0100 | <ij> | > fold [Just (+1), Nothing] |
2021-02-21 17:26:10 +0100 | <lambdabot> | error: |
2021-02-21 17:26:10 +0100 | <lambdabot> | • No instance for (Typeable a0) |
2021-02-21 17:26:10 +0100 | <lambdabot> | arising from a use of ‘show_M48185729036923407258’ |
2021-02-21 17:26:58 +0100 | <ij> | @hoogle Endo |
2021-02-21 17:26:58 +0100 | <lambdabot> | Data.Monoid newtype Endo a |
2021-02-21 17:26:58 +0100 | <lambdabot> | Data.Monoid Endo :: (a -> a) -> Endo a |
2021-02-21 17:26:58 +0100 | <lambdabot> | Data.Semigroup newtype Endo a |
2021-02-21 17:27:22 +0100 | son0p | (~son0p@181.136.122.143) (Quit: Lost terminal) |
2021-02-21 17:28:40 +0100 | <ij> | > appEndo (foldMap fold [Just (Endo (+1)), Nothing]) 1 |
2021-02-21 17:28:42 +0100 | <lambdabot> | 2 |
2021-02-21 17:28:56 +0100 | <ij> | cool |
2021-02-21 17:29:16 +0100 | <merijn> | ij: Not as cool as the regular monoid for functions, though :p |
2021-02-21 17:29:30 +0100 | <falsifian> | @hoogle mif |
2021-02-21 17:29:31 +0100 | <lambdabot> | Network.AWS.EMR.ModifyInstanceFleet mifClusterId :: Lens' ModifyInstanceFleet Text |
2021-02-21 17:29:31 +0100 | <lambdabot> | Network.AWS.EMR.ModifyInstanceFleet mifInstanceFleet :: Lens' ModifyInstanceFleet InstanceFleetModifyConfig |
2021-02-21 17:29:31 +0100 | <lambdabot> | Distribution.SPDX Mif_exception :: LicenseExceptionId |
2021-02-21 17:29:35 +0100 | <ij> | fold for Maybe kind of is the mif |
2021-02-21 17:29:38 +0100 | <merijn> | falsifian: It doesn't exist |
2021-02-21 17:29:41 +0100 | m4lvin | (~m4lvin@w4eg.de) (Quit: m4lvin) |
2021-02-21 17:29:47 +0100 | <merijn> | ij: You don't even need the fold, I think |
2021-02-21 17:30:00 +0100 | m4lvin | (~m4lvin@w4eg.de) |
2021-02-21 17:30:23 +0100 | <ij> | merijn, if you fold them, you get Maybe (Endo a) |
2021-02-21 17:30:24 +0100 | <merijn> | > appEndo (mconcat [Just (Endo (+1)), Nothing]) 1 |
2021-02-21 17:30:26 +0100 | <lambdabot> | error: |
2021-02-21 17:30:26 +0100 | <lambdabot> | • Couldn't match expected type ‘Endo a’ |
2021-02-21 17:30:26 +0100 | <lambdabot> | with actual type ‘Maybe (Endo a0)’ |
2021-02-21 17:30:31 +0100 | <merijn> | oh, yeah |
2021-02-21 17:31:20 +0100 | <merijn> | ij: The regular function instance is "instance Monoid r => Monoid (a -> r)" (which applies recursively!) |
2021-02-21 17:32:26 +0100 | <ij> | satisfying |
2021-02-21 17:33:47 +0100 | <merijn> | > sortBy (comparing snd <> comparing fst) [(5,1),(1,4),(5,2),(1,5)] |
2021-02-21 17:33:49 +0100 | <lambdabot> | [(5,1),(5,2),(1,4),(1,5)] |
2021-02-21 17:34:50 +0100 | nlbh^ | (~hph@ip98-184-89-2.mc.at.cox.net) () |
2021-02-21 17:35:18 +0100 | ekleog | (~ii@prologin/ekleog) (Quit: WeeChat 2.9) |
2021-02-21 17:36:09 +0100 | <ij> | I am dense enough to spot the ((<>) `on` comparing)) snd fst |
2021-02-21 17:36:55 +0100 | <kuribas> | > (Product 3, Sum 5) <> (Product 2, Sum 2) |
2021-02-21 17:36:56 +0100 | <lambdabot> | (Product {getProduct = 6},Sum {getSum = 7}) |
2021-02-21 17:37:33 +0100 | <kuribas> | I find all these instance on function a bit dubious. They can be handy often, but also hide many errors. |
2021-02-21 17:37:34 +0100 | <ij> | I'd done foldMaps with tuple monoid at work |
2021-02-21 17:38:06 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
2021-02-21 17:38:28 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) |
2021-02-21 17:38:31 +0100 | <ij> | (not in haskell, but the idea is the same) |
2021-02-21 17:38:56 +0100 | ekleog | (~ii@prologin/ekleog) |
2021-02-21 17:39:01 +0100 | <merijn> | ij: That sounds like a great way to get lynched at work |
2021-02-21 17:39:24 +0100 | <merijn> | kuribas: "many errors" like what? |
2021-02-21 17:39:27 +0100 | <ij> | well, you just accumulate on two instead of one variable, it doesn't seem that weird |
2021-02-21 17:40:02 +0100 | <kuribas> | merijn: like something which typechecks, but shouldn't |
2021-02-21 17:40:17 +0100 | <merijn> | kuribas: Give one example for the Monoid instance |
2021-02-21 17:40:34 +0100 | <hugo> | About Data.Text. How do I encode to Latin1? |
2021-02-21 17:40:38 +0100 | <merijn> | kuribas: I mean, the Num instance of functions is notorious for that, but that's not actually in base or any sane package |
2021-02-21 17:41:00 +0100 | <kuribas> | merijn: there was a article on reddit about that. Though maybe not the monoid instance... |
2021-02-21 17:41:16 +0100 | <merijn> | hugo: For more obscure (i.e. non UTF-N encodings) you want the encoding package |
2021-02-21 17:41:19 +0100 | <merijn> | @hackage encoding |
2021-02-21 17:41:19 +0100 | <lambdabot> | https://hackage.haskell.org/package/encoding |
2021-02-21 17:41:23 +0100 | ADG1089__ | (~aditya@122.163.128.29) (Remote host closed the connection) |
2021-02-21 17:41:29 +0100 | <merijn> | kuribas: That was probably about Foldable |
2021-02-21 17:41:36 +0100 | <merijn> | kuribas: So not about functions at all |
2021-02-21 17:41:48 +0100 | <merijn> | Like |
2021-02-21 17:41:54 +0100 | <merijn> | > length ('a', True) |
2021-02-21 17:41:56 +0100 | <lambdabot> | 1 |
2021-02-21 17:42:17 +0100 | <kuribas> | for one, the monad instance of (->) is obfuscating in 99% of cases. |
2021-02-21 17:42:51 +0100 | <merijn> | "Monad instance for (->) is confusing" seems like a weird argument against the Monoid instance, though >.> |
2021-02-21 17:43:25 +0100 | <ij> | well, the list monad was also a bit confusing, before thoroughly grasped it |
2021-02-21 17:43:35 +0100 | <ij> | (it's simple, I know) |
2021-02-21 17:43:45 +0100 | <merijn> | I use the monoid for functions in tons of places, you can pry it for my cold, dead hands >.> |
2021-02-21 17:43:56 +0100 | teardown | (~user@gateway/tor-sasl/mrush) |
2021-02-21 17:44:17 +0100 | <ij> | merijn, do you understand what "f >>= (,)" does immediately? :) |
2021-02-21 17:44:20 +0100 | <merijn> | ij: In your defense there's two valid Applicatives and if you're intuitively thinking of the "wrong" one the Monad is confusing |
2021-02-21 17:44:39 +0100 | <merijn> | ij: Yes |
2021-02-21 17:44:53 +0100 | <merijn> | ij: If by "what it does" you meant "give me a headache" |
2021-02-21 17:44:59 +0100 | <ij> | haha |
2021-02-21 17:45:27 +0100 | dsrt^ | (dsrt@ip98-184-89-2.mc.at.cox.net) |
2021-02-21 17:46:11 +0100 | cole-h | (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
2021-02-21 17:46:13 +0100 | <ij> | but it's such an intersting combination |
2021-02-21 17:47:36 +0100 | <ij> | hot take: if your code is split up properly, the implementation isn't so important, because of proper naming, so then one could get away with almost anything |
2021-02-21 17:48:51 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-02-21 17:48:51 +0100 | <ij> | clarification, I meant: if split up proplerly, with proper naming, then it isn't so imprtant... |
2021-02-21 17:49:03 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 256 seconds) |
2021-02-21 17:49:54 +0100 | MVQq | (~anja@198.254.199.42) |
2021-02-21 17:52:39 +0100 | MarcelineVQ | (~anja@198.254.199.42) (Ping timeout: 246 seconds) |
2021-02-21 17:52:54 +0100 | minoru_shiraeesh | (~shiraeesh@46.34.206.204) (Ping timeout: 260 seconds) |
2021-02-21 17:52:56 +0100 | leo__ | (~leo@cpc96810-rdng27-2-0-cust409.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-02-21 17:54:21 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) |
2021-02-21 17:55:43 +0100 | bi_functor | (~bi_functo@192-0-134-138.cpe.teksavvy.com) |
2021-02-21 17:55:49 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) |
2021-02-21 17:57:02 +0100 | <monochrom> | Almost immediately for me. But I expand to "f >>= \x -> (,) x" first. |
2021-02-21 17:58:02 +0100 | da39a3ee5e6b4b0d | (~da39a3ee5@2403:6200:8876:b8ec:ecd4:c92c:f02:3202) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 17:59:57 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 264 seconds) |
2021-02-21 18:03:08 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 18:03:11 +0100 | ADG1089__ | (~aditya@122.163.128.29) |
2021-02-21 18:04:19 +0100 | bi_functor | (~bi_functo@192-0-134-138.cpe.teksavvy.com) (Quit: leaving) |
2021-02-21 18:05:19 +0100 | <tomsmeding> | for me after a while, after I remembered this is the reader monad |
2021-02-21 18:06:17 +0100 | <monochrom> | It is still independent to whether I write code like that. |
2021-02-21 18:06:47 +0100 | <monochrom> | I write code like that when and only when making exam questions and interview questions. So there. |
2021-02-21 18:07:32 +0100 | <shapr> | So I went with the most recently published of Richard Bird's books. |
2021-02-21 18:07:52 +0100 | <shapr> | I hope that was a good choice. I bought one for myself and my friend who's learning Haskell and we're going through it together. |
2021-02-21 18:08:33 +0100 | <monochrom> | But people make too much fuzz about "readable code", in the sense that they think there is one single standard that fits all, thus why the heated debate with very loud shouting. |
2021-02-21 18:09:19 +0100 | <monochrom> | Accept the fact that people are partitioned into disjoint echo chambers, and all you can do is pick one echo chamber and write code that they, only they, understand. |
2021-02-21 18:09:42 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 18:10:44 +0100 | shapr | writes for his echo chamber |
2021-02-21 18:11:52 +0100 | <dolio> | Or try things out and form your own opinions. |
2021-02-21 18:12:17 +0100 | <monochrom> | :) |
2021-02-21 18:12:27 +0100 | <dolio> | A radical concept for programmers. :) |
2021-02-21 18:12:40 +0100 | juuandyy | (~juuandyy@90.106.228.121) |
2021-02-21 18:12:49 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 18:12:57 +0100 | <monochrom> | That's kind of covered: put yourself alone in a echo chamber... |
2021-02-21 18:13:16 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 18:13:36 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 18:13:58 +0100 | mouseghost | (~draco@wikipedia/desperek) (Quit: mew wew) |
2021-02-21 18:15:23 +0100 | <monochrom> | There are now courses teaching social interaction phenomena to computer science students. I went to sit in in one. (I'm ineligible to take in because I already graduated.) I recommend taking it and getting a holistic perspective of how communities work. |
2021-02-21 18:15:46 +0100 | <monochrom> | s/take in/take it/ |
2021-02-21 18:17:23 +0100 | oisdk | (~oisdk@2001:bb6:3329:d100:3d8b:3b0b:d75b:3a22) (Quit: oisdk) |
2021-02-21 18:21:09 +0100 | kam1 | (~kam1@5.126.207.133) |
2021-02-21 18:21:13 +0100 | geowiesnot | (~user@87-89-181-157.abo.bbox.fr) |
2021-02-21 18:22:03 +0100 | rajivr | (uid269651@gateway/web/irccloud.com/x-ynjnwyqyqdgpqega) (Quit: Connection closed for inactivity) |
2021-02-21 18:22:21 +0100 | <monochrom> | Don't worry that it's one of those social science essay-a-lot courses. There will be game theory. There will be using graph theory to model people. There will be simulations and theorems. |
2021-02-21 18:22:55 +0100 | <monochrom> | (Or, do worry that there will be game theory and graph theory, if that's not your cup of tea.) |
2021-02-21 18:25:00 +0100 | pavonia^\_^\ | (~user@unaffiliated/siracusa) |
2021-02-21 18:26:14 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) (Ping timeout: 268 seconds) |
2021-02-21 18:27:59 +0100 | gehmehgeh | (~ircuser1@gateway/tor-sasl/gehmehgeh) |
2021-02-21 18:29:26 +0100 | ADG1089__ | (~aditya@122.163.128.29) (Quit: Konversation terminated!) |
2021-02-21 18:33:24 +0100 | alx741 | (~alx741@186.178.109.47) |
2021-02-21 18:35:19 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 18:35:40 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 18:38:42 +0100 | _bo | (~bo@178.150.122.153) |
2021-02-21 18:39:29 +0100 | boxscape | (4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) (Ping timeout: 256 seconds) |
2021-02-21 18:40:25 +0100 | seliopou | (seliopou@entropy.tmok.com) (Ping timeout: 240 seconds) |
2021-02-21 18:43:38 +0100 | seliopou | (seliopou@entropy.tmok.com) |
2021-02-21 18:47:57 +0100 | seliopou | (seliopou@entropy.tmok.com) (Ping timeout: 246 seconds) |
2021-02-21 18:48:48 +0100 | boxscape | (4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) |
2021-02-21 18:51:44 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 18:52:01 +0100 | Sgeo | (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
2021-02-21 18:54:20 +0100 | seliopou | (seliopou@entropy.tmok.com) |
2021-02-21 18:58:27 +0100 | Wuzzy | (~Wuzzy@p5b0df3df.dip0.t-ipconnect.de) |
2021-02-21 18:58:36 +0100 | seliopou | (seliopou@entropy.tmok.com) (Ping timeout: 240 seconds) |
2021-02-21 19:01:08 +0100 | kupi | (uid212005@gateway/web/irccloud.com/x-pssuakftcukcxfkk) |
2021-02-21 19:01:43 +0100 | <shapr> | The 20th birthday of #haskell is in about ten weeks! |
2021-02-21 19:01:49 +0100 | <shapr> | I want to have an IRC party of some sort... |
2021-02-21 19:02:08 +0100 | <Uniaika> | shapr: oh yeah nice |
2021-02-21 19:02:08 +0100 | <Uniaika> | :) |
2021-02-21 19:02:51 +0100 | shapr | is excited |
2021-02-21 19:02:51 +0100 | seliopou | (seliopou@entropy.tmok.com) |
2021-02-21 19:02:56 +0100 | boxscape | (4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) (Ping timeout: 240 seconds) |
2021-02-21 19:03:09 +0100 | <shapr> | I'm tempted to dig up the oldest #haskell logs and see who was active then |
2021-02-21 19:04:02 +0100 | usr25 | (~usr25@unaffiliated/usr25) |
2021-02-21 19:04:27 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
2021-02-21 19:05:46 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 19:06:14 +0100 | kav | (~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi) (Ping timeout: 265 seconds) |
2021-02-21 19:06:55 +0100 | jamm_ | (~jamm@unaffiliated/jamm) |
2021-02-21 19:08:18 +0100 | <mniip> | I was about 3 |
2021-02-21 19:09:01 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:c8d5:cb5d:4bef:8854) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 19:09:11 +0100 | <monochrom> | Yikes time flies like an arrow. |
2021-02-21 19:09:25 +0100 | <gitgood> | mniip that's no excuse for not having been active |
2021-02-21 19:09:32 +0100 | <monochrom> | hahaha |
2021-02-21 19:09:47 +0100 | <mniip> | fruit flies like a banana |
2021-02-21 19:09:55 +0100 | <monochrom> | But perhaps parent control blocked IRC access. Can't do much about that. |
2021-02-21 19:10:03 +0100 | <mniip> | yeah definitely |
2021-02-21 19:10:03 +0100 | <shapr> | #haskell was started on April 30th 2001 according to chanserv, so April 30th 2021 will be the TWENTY YEAR BIRTHDAY! |
2021-02-21 19:10:07 +0100 | <monochrom> | syntax rules like a macro |
2021-02-21 19:10:16 +0100 | <monochrom> | @quote monochrom syntax.rule |
2021-02-21 19:10:16 +0100 | <lambdabot> | monochrom says: Time leaks like an arrow. Syntax rules like a macro. |
2021-02-21 19:10:40 +0100 | <shapr> | That's about two months from today |
2021-02-21 19:10:42 +0100 | <monochrom> | (Why does time leak like an arrow? Because -XArrows. :) ) |
2021-02-21 19:10:45 +0100 | <gitgood> | "Oh look, Timmy's gonna say his first words!" |
2021-02-21 19:10:48 +0100 | <gitgood> | "M-m-mother let me on IRC" |
2021-02-21 19:10:56 +0100 | jamm_ | (~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds) |
2021-02-21 19:11:22 +0100 | <monochrom> | There is another one. |
2021-02-21 19:11:29 +0100 | <monochrom> | @quote monochrom fruit.fl |
2021-02-21 19:11:29 +0100 | <lambdabot> | monochrom says: Time flies like an arrow. Fruit flies like a banana. Syntax rules like a macro. |
2021-02-21 19:12:19 +0100 | <monochrom> | I thought M-m-mother was an emacs command. |
2021-02-21 19:12:28 +0100 | <Athas> | merijn: I don't think I do enough numerical computation in Haskell to invest in such a library. |
2021-02-21 19:12:42 +0100 | dyeplexer | (~lol@unaffiliated/terpin) (Remote host closed the connection) |
2021-02-21 19:12:47 +0100 | <Athas> | I'll just continue being grumpy whenever the floating-point weirdness bites me. |
2021-02-21 19:12:58 +0100 | seliopou | (seliopou@entropy.tmok.com) (Ping timeout: 272 seconds) |
2021-02-21 19:13:06 +0100 | <shapr> | Don't trust floating point numbers. |
2021-02-21 19:13:15 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) (Quit: Leaving) |
2021-02-21 19:13:16 +0100 | <shapr> | That's why type-defaulting becomes an error with -Werror |
2021-02-21 19:13:48 +0100 | amerigo | (uid331857@gateway/web/irccloud.com/x-yxxhsaxuybcqvhua) |
2021-02-21 19:14:42 +0100 | <mniip> | we should've switched to sinking point numbers a long time ago |
2021-02-21 19:14:52 +0100 | <Uniaika> | heya mniip |
2021-02-21 19:15:00 +0100 | <mniip> | hello |
2021-02-21 19:15:07 +0100 | <mniip> | did you see the sporadic kmett stream |
2021-02-21 19:15:10 +0100 | kav | (~kari@dsl-hkibng42-56733f-225.dhcp.inet.fi) |
2021-02-21 19:16:21 +0100 | seliopou | (seliopou@entropy.tmok.com) |
2021-02-21 19:16:56 +0100 | kam1 | (~kam1@5.126.207.133) (Ping timeout: 240 seconds) |
2021-02-21 19:17:17 +0100 | oisdk | (~oisdk@2001:bb6:3329:d100:c73:1525:4623:7479) |
2021-02-21 19:17:50 +0100 | juuandyy | (~juuandyy@90.106.228.121) (Ping timeout: 260 seconds) |
2021-02-21 19:20:20 +0100 | integral | (sid296274@p3m/member/integral) (Read error: Connection reset by peer) |
2021-02-21 19:20:20 +0100 | kip | (sid71464@gateway/web/irccloud.com/x-tfvbswgodgxcvsru) (Read error: Connection reset by peer) |
2021-02-21 19:20:28 +0100 | ajmcmiddlin | (sid284402@gateway/web/irccloud.com/x-jwmpjrkspajvogem) (Read error: Connection reset by peer) |
2021-02-21 19:20:31 +0100 | integral | (sid296274@p3m/member/integral) |
2021-02-21 19:20:31 +0100 | kip | (sid71464@gateway/web/irccloud.com/x-zelcijuvyrhuduhl) |
2021-02-21 19:20:34 +0100 | pent | (sid313808@gateway/web/irccloud.com/x-gnnpwsdgtfefuwbh) (Read error: Connection reset by peer) |
2021-02-21 19:20:37 +0100 | ajmcmiddlin | (sid284402@gateway/web/irccloud.com/x-envrayjafctqomyi) |
2021-02-21 19:20:52 +0100 | pent | (sid313808@gateway/web/irccloud.com/x-wkrelvmhvdeipyxz) |
2021-02-21 19:21:36 +0100 | mozzarella | (~sam@unaffiliated/sam113101) (Remote host closed the connection) |
2021-02-21 19:22:46 +0100 | rkk95 | (41bf0bfc@065-191-011-252.inf.spectrum.com) |
2021-02-21 19:23:00 +0100 | mozzarella | (~sam@unaffiliated/sam113101) |
2021-02-21 19:23:03 +0100 | <rkk95> | How do I downgrade my GHC version from 8.10.4 to 8.10.3 on windows? |
2021-02-21 19:24:36 +0100 | <geekosaur> | if you used ghcup you should be able to install it if necessary and select 8.10.3 as the active version |
2021-02-21 19:24:46 +0100 | <rkk95> | Sorry, should've specified. I'm using Stack |
2021-02-21 19:24:53 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 19:24:58 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.0) |
2021-02-21 19:25:49 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 19:26:22 +0100 | <edwardk> | it was a clubhouse session that spilled over onto discord because i wanted to share my screen |
2021-02-21 19:26:29 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 19:26:45 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 19:26:51 +0100 | <geekosaur> | rkk95, usually you select a resolver that has 8.10.3 as its associated compiler |
2021-02-21 19:27:08 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 19:27:23 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 19:27:29 +0100 | <geekosaur> | if you have some specific project that needs 8.10.3 you can change the resolver for just that project |
2021-02-21 19:27:55 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 19:28:13 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 19:28:17 +0100 | <rkk95> | geekosaur thanks, I was able to change the resolver. Do you know where the ghc executable is so I can add it to the path |
2021-02-21 19:28:26 +0100 | gioyik | (~gioyik@gateway/tor-sasl/gioyik) |
2021-02-21 19:28:43 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 19:28:50 +0100 | graingert | (sid128301@gateway/web/irccloud.com/x-kqkgwbfzuayatuma) (Ping timeout: 264 seconds) |
2021-02-21 19:28:53 +0100 | <geekosaur> | you probably should not do that with stack |
2021-02-21 19:28:58 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 19:29:16 +0100 | <geekosaur> | and no, I don't know where it is on Windows or how you'd determine it |
2021-02-21 19:29:26 +0100 | kozowu | (uid44796@gateway/web/irccloud.com/x-mirfwtuhrmimndjb) (Ping timeout: 264 seconds) |
2021-02-21 19:29:30 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) (Remote host closed the connection) |
2021-02-21 19:30:02 +0100 | lolmac | (sid171216@gateway/web/irccloud.com/x-hckmunyonklvauje) (Ping timeout: 264 seconds) |
2021-02-21 19:30:20 +0100 | graingert | (sid128301@gateway/web/irccloud.com/x-vwzoafonxaqqvvrv) |
2021-02-21 19:30:47 +0100 | <tomsmeding> | geekosaur: kind of tangential, but ghcup isn't a thing on windows |
2021-02-21 19:30:52 +0100 | kozowu | (uid44796@gateway/web/irccloud.com/x-wlfxxlfkkrrqlsqe) |
2021-02-21 19:30:59 +0100 | <geekosaur> | still? sad |
2021-02-21 19:31:15 +0100 | lolmac | (sid171216@gateway/web/irccloud.com/x-dswidkrvjmjmjdpe) |
2021-02-21 19:31:16 +0100 | <maerwald> | geekosaur: no one yet told me how to correctly handle msys2 |
2021-02-21 19:31:36 +0100 | <maerwald> | until that day, probably nothing is gonna happen, lol |
2021-02-21 19:31:59 +0100 | <tomsmeding> | rkk95: compile a large library with stack, go in task manager, search for GHC, and right click -> show folder? |
2021-02-21 19:32:02 +0100 | dunj4 | (~dunj3@p200300f61714a6134d9f693459962ab2.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2021-02-21 19:32:03 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
2021-02-21 19:32:07 +0100 | <tomsmeding> | YMMV :p |
2021-02-21 19:32:10 +0100 | <maerwald> | Taneb said stack handles it incorrectly, but I could never figure out why etc |
2021-02-21 19:32:38 +0100 | tromp | (~tromp@dhcp-077-249-230-040.chello.nl) |
2021-02-21 19:33:34 +0100 | <maerwald> | and then again... WSL |
2021-02-21 19:33:41 +0100 | <maerwald> | is it even worth the trouble |
2021-02-21 19:33:46 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 19:33:54 +0100 | <yushyin> | `stack path' will list (among other things) the ghc path |
2021-02-21 19:34:59 +0100 | <rkk95> | @yus |
2021-02-21 19:34:59 +0100 | <lambdabot> | Maybe you meant: yow run bug |
2021-02-21 19:35:07 +0100 | <tomsmeding> | @yow |
2021-02-21 19:35:07 +0100 | <lambdabot> | Hmmm ... A hash-singer and a cross-eyed guy were SLEEPING on a deserted |
2021-02-21 19:35:07 +0100 | <lambdabot> | island, when ... |
2021-02-21 19:35:08 +0100 | <rkk95> | yushyin so add whatevers at ghc-paths: to my windows PATH? |
2021-02-21 19:35:16 +0100 | tomsmeding | wonders what that's about |
2021-02-21 19:35:46 +0100 | <yushyin> | rkk95: I don't know why you would want to do that |
2021-02-21 19:35:47 +0100 | <tomsmeding> | rkk95: you... can, but that's not what you're "supposed" to do with stack |
2021-02-21 19:36:08 +0100 | <rkk95> | so its just better to do stack new and create a project and do it that way? |
2021-02-21 19:36:16 +0100 | <tomsmeding> | that's the idea, yes |
2021-02-21 19:36:26 +0100 | <geekosaur> | tomsmeding: yow's not supposed to make sense |
2021-02-21 19:36:30 +0100 | <tomsmeding> | I see |
2021-02-21 19:36:33 +0100 | <geekosaur> | ("zippy the pinhead") |
2021-02-21 19:37:07 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
2021-02-21 19:37:10 +0100 | <tomsmeding> | rkk95: if you really want a standalone global ghc, one way is to use the chocolatey method |
2021-02-21 19:37:38 +0100 | <tomsmeding> | can attest that that works, but I don't know enough about windows to be able to say how much cruft that puts on your system |
2021-02-21 19:38:04 +0100 | <geekosaur> | I think chocolatey has uninstall abilities |
2021-02-21 19:39:07 +0100 | <justsomeguy> | Last time I used chocolately it had to resort to automating installs by driving gui wizards with AutoIt scripts for some packages. |
2021-02-21 19:40:06 +0100 | <justsomeguy> | Other things were more streamlined -- Cli apps installed like any sane package manager. So the quality of packages varied a lot. |
2021-02-21 19:40:23 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) |
2021-02-21 19:40:51 +0100 | <tomsmeding> | ghc installs sanely :) |
2021-02-21 19:40:59 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 19:41:18 +0100 | darjeeling_ | (~darjeelin@122.245.216.187) (Ping timeout: 256 seconds) |
2021-02-21 19:42:04 +0100 | <justsomeguy> | :D |
2021-02-21 19:43:57 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) (Client Quit) |
2021-02-21 19:44:35 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 19:44:55 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 19:45:30 +0100 | rkk95 | (41bf0bfc@065-191-011-252.inf.spectrum.com) (Quit: Connection closed) |
2021-02-21 19:49:45 +0100 | perrier-jouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0) |
2021-02-21 19:50:17 +0100 | MVQq | (~anja@198.254.199.42) (Quit: q) |
2021-02-21 19:50:45 +0100 | geowiesnot | (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 240 seconds) |
2021-02-21 19:50:51 +0100 | MarcelineVQ | (~anja@198.254.199.42) |
2021-02-21 19:50:58 +0100 | hexfive | (~hexfive@50.35.83.177) |
2021-02-21 19:51:15 +0100 | dragestil_ | (~quassel@fsf/member/dragestil) |
2021-02-21 19:52:35 +0100 | dragestil | (~quassel@fsf/member/dragestil) (Ping timeout: 256 seconds) |
2021-02-21 19:54:27 +0100 | <ij> | can I compose two lenses to update both? Lens s t a1 b1 + Lens s t a2 b2 = s t (a1, a1) (b1, b2) |
2021-02-21 19:54:37 +0100 | darjeeling_ | (~darjeelin@122.245.217.214) |
2021-02-21 19:55:06 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
2021-02-21 19:55:08 +0100 | <ij> | a yes/no also works |
2021-02-21 19:57:10 +0100 | <ij> | I'm leaning towards no, because f is a functor and you'll have two fs, which would have to be combined |
2021-02-21 19:57:55 +0100 | viluon | (uid453725@gateway/web/irccloud.com/x-vfqtytiryjprhruz) |
2021-02-21 19:58:53 +0100 | <ij> | and that's something the applicative has, not necessarily functor |
2021-02-21 19:59:01 +0100 | perrier-jouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-02-21 20:00:02 +0100 | desophos | (~desophos@2601:249:1680:a570:d500:73bc:696a:d401) |
2021-02-21 20:01:02 +0100 | zebrag | (~inkbottle@aaubervilliers-654-1-4-36.w83-200.abo.wanadoo.fr) |
2021-02-21 20:02:35 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) |
2021-02-21 20:02:36 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) (Excess Flood) |
2021-02-21 20:03:17 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) |
2021-02-21 20:03:32 +0100 | berberman_ | (~berberman@unaffiliated/berberman) |
2021-02-21 20:03:32 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 20:03:34 +0100 | geowiesnot | (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
2021-02-21 20:03:52 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 20:04:47 +0100 | berberman | (~berberman@unaffiliated/berberman) (Ping timeout: 272 seconds) |
2021-02-21 20:05:31 +0100 | denisse | (~spaceCat@gateway/tor-sasl/alephzer0) (Ping timeout: 268 seconds) |
2021-02-21 20:06:47 +0100 | <jollygood2> | hi. what image recognition libraries are there for haskell? I found OpenCV on hackage, but it has not been updated since 2018 |
2021-02-21 20:06:56 +0100 | <jollygood2> | anything else? |
2021-02-21 20:07:04 +0100 | <maerwald> | use C++ :p |
2021-02-21 20:07:30 +0100 | <jollygood2> | that's my last option |
2021-02-21 20:07:58 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (EOF)) |
2021-02-21 20:08:27 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
2021-02-21 20:08:42 +0100 | xff0x | (~xff0x@port-92-193-195-86.dynamic.as20676.net) (Ping timeout: 260 seconds) |
2021-02-21 20:08:55 +0100 | denisse | (~spaceCat@gateway/tor-sasl/alephzer0) |
2021-02-21 20:10:12 +0100 | h2017 | (~h2017@bras-base-clbaon0201w-grc-32-142-114-145-140.dsl.bell.ca) |
2021-02-21 20:10:13 +0100 | <h2017> | hi |
2021-02-21 20:10:20 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) |
2021-02-21 20:10:28 +0100 | <h2017> | i'm trying to print some unicode stuff and it's coming out in my terminal as some garbage |
2021-02-21 20:10:35 +0100 | xff0x | (xff0x@gateway/vpn/mullvad/xff0x) |
2021-02-21 20:10:45 +0100 | <h2017> | (\"e\"\8712\"e\") is an example of some output |
2021-02-21 20:11:00 +0100 | Rudd0 | (~Rudd0@185.189.115.103) (Ping timeout: 265 seconds) |
2021-02-21 20:11:03 +0100 | <Taneb> | maerwald: I think you had me mixed up with someone else there? I don't use Windows and barely use stack |
2021-02-21 20:11:06 +0100 | <h2017> | there you see \8712 that's supposed to be the set membership symbol |
2021-02-21 20:11:20 +0100 | <maerwald> | Taneb: Tamara, right |
2021-02-21 20:11:23 +0100 | <maerwald> | or something |
2021-02-21 20:11:31 +0100 | <h2017> | what am i doing wrong? i don't want to see numeric codes in my terminal output |
2021-02-21 20:11:36 +0100 | <maerwald> | the chocolatey maintainer |
2021-02-21 20:11:45 +0100 | jollygood2 | (~bc8134e3@217.29.117.252) |
2021-02-21 20:12:01 +0100 | <geekosaur> | h2017, use putStrLn instead of print |
2021-02-21 20:12:17 +0100 | <geekosaur> | print invokes show which converts non-ASCII to escape sequences |
2021-02-21 20:12:39 +0100 | <jollygood2> | OpenCV requires base (>=4.8 && <5), what latest GCC version matches that requirement? https://hackage.haskell.org/package/opencv |
2021-02-21 20:13:05 +0100 | <maerwald> | jollygood2: 9.0.1 |
2021-02-21 20:13:08 +0100 | <h2017> | thanks geekosaur. it's working now |
2021-02-21 20:13:33 +0100 | <maerwald> | there's no base-5 yet |
2021-02-21 20:13:44 +0100 | teardown | (~user@gateway/tor-sasl/mrush) (Remote host closed the connection) |
2021-02-21 20:13:51 +0100 | <geekosaur> | assuming you meant ghc, pretty nmuch any ghc since 8.0 fits that constraint |
2021-02-21 20:13:56 +0100 | <jollygood2> | ok, then what ghc was pre 2018-01-01 |
2021-02-21 20:14:03 +0100 | teardown | (~user@gateway/tor-sasl/mrush) |
2021-02-21 20:14:39 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
2021-02-21 20:15:25 +0100 | <monochrom> | probably 8.6.something or even 8.4.something |
2021-02-21 20:15:51 +0100 | teardown | (~user@gateway/tor-sasl/mrush) (Remote host closed the connection) |
2021-02-21 20:17:10 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Remote host closed the connection) |
2021-02-21 20:17:24 +0100 | Pickchea | (~private@unaffiliated/pickchea) |
2021-02-21 20:17:47 +0100 | ddellacosta | (~ddellacos@86.106.143.10) |
2021-02-21 20:17:57 +0100 | ukari | (~ukari@unaffiliated/ukari) (Ping timeout: 264 seconds) |
2021-02-21 20:19:06 +0100 | teardown | (~user@gateway/tor-sasl/mrush) |
2021-02-21 20:19:08 +0100 | verement | (~anonymous@cpe-76-167-229-223.san.res.rr.com) |
2021-02-21 20:19:27 +0100 | xff0x | (xff0x@gateway/vpn/mullvad/xff0x) (Ping timeout: 272 seconds) |
2021-02-21 20:20:39 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-02-21 20:20:47 +0100 | xff0x | (~xff0x@2001:1a81:52c4:2f00:8c9d:1c49:2ec6:afff) |
2021-02-21 20:20:50 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 260 seconds) |
2021-02-21 20:21:55 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-02-21 20:22:36 +0100 | ddellacosta | (~ddellacos@86.106.143.10) (Ping timeout: 265 seconds) |
2021-02-21 20:23:07 +0100 | fissureman | (~quassel@c-73-201-159-163.hsd1.dc.comcast.net) |
2021-02-21 20:23:19 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
2021-02-21 20:23:20 +0100 | vicfred | (vicfred@gateway/vpn/mullvad/vicfred) |
2021-02-21 20:23:33 +0100 | <jollygood2> | what are my other options? is there any other image recognition library for haskell? |
2021-02-21 20:23:58 +0100 | ukari | (~ukari@unaffiliated/ukari) |
2021-02-21 20:24:00 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-02-21 20:24:33 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
2021-02-21 20:24:55 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 20:25:24 +0100 | <geekosaur> | my guess is you get to bind to some C / C++ library |
2021-02-21 20:25:37 +0100 | Aquazi | (uid312403@gateway/web/irccloud.com/x-pjlkokppvykdzkgr) |
2021-02-21 20:26:57 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-02-21 20:30:52 +0100 | Tops2 | (~Tobias@dyndsl-095-033-094-064.ewe-ip-backbone.de) |
2021-02-21 20:32:14 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 20:33:26 +0100 | sMuNiX | (~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) (Ping timeout: 260 seconds) |
2021-02-21 20:33:42 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 20:35:02 +0100 | conal | (~conal@64.71.133.70) (Client Quit) |
2021-02-21 20:37:03 +0100 | sMuNiX | (~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) |
2021-02-21 20:41:17 +0100 | hexo | (~hexo@gateway/tor-sasl/hexo) (Ping timeout: 268 seconds) |
2021-02-21 20:42:03 +0100 | <jollygood2> | can haskell even interface with a C++ library? |
2021-02-21 20:42:31 +0100 | srk | (~sorki@gateway/tor-sasl/sorki) (Ping timeout: 268 seconds) |
2021-02-21 20:42:47 +0100 | srk | (~sorki@gateway/tor-sasl/sorki) |
2021-02-21 20:42:47 +0100 | hexo | (~hexo@gateway/tor-sasl/hexo) |
2021-02-21 20:43:00 +0100 | ezrakilty | (~ezrakilty@97-113-55-149.tukw.qwest.net) |
2021-02-21 20:43:19 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) |
2021-02-21 20:43:35 +0100 | nut | (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2021-02-21 20:43:51 +0100 | <nut> | what does default () mean in the haskell source code? |
2021-02-21 20:45:39 +0100 | <monochrom> | No, you have to do the extern "C" thing. |
2021-02-21 20:46:08 +0100 | <geekosaur> | nut, disables type defaulting (so for example you have to specify explicitly the type of many numeric calculations) |
2021-02-21 20:46:54 +0100 | <GreyFaceNoSpace> | back with another question guys. the <- removes IO from a given variable of type IO a. correct? |
2021-02-21 20:47:31 +0100 | <GreyFaceNoSpace> | and so : x <- v means that x::a |
2021-02-21 20:47:45 +0100 | <GreyFaceNoSpace> | assuming v :: IO a |
2021-02-21 20:47:53 +0100 | <geekosaur> | https://www.haskell.org/onlinereport/haskell2010/haskellch4.html#x10-790004.3.4 |
2021-02-21 20:48:20 +0100 | <geekosaur> | you could say it does so temporarily, provided you put it back in IO when you're done |
2021-02-21 20:48:42 +0100 | ezrakilty | (~ezrakilty@97-113-55-149.tukw.qwest.net) (Remote host closed the connection) |
2021-02-21 20:49:02 +0100 | <nut> | How to makeClassy a type with a type variable? |
2021-02-21 20:49:34 +0100 | <GreyFaceNoSpace> | whats wrong with this code then? https://pastebin.com/89f1A7B0 |
2021-02-21 20:49:43 +0100 | <nut> | makeClassy ''MyType , where data MyType a = MyType a |
2021-02-21 20:49:46 +0100 | <Cale> | GreyFaceNoSpace: Yeah, though it's perhaps more helpful to say that x <- v means to execute the action v, and name its result x |
2021-02-21 20:50:09 +0100 | <Cale> | GreyFaceNoSpace: So, naturally, if v was an IO action whose result will have type a, then x will indeed have type a |
2021-02-21 20:50:32 +0100 | <geekosaur> | GreyFaceNoSpace, you ignored the "provided that" part |
2021-02-21 20:50:34 +0100 | <Cale> | GreyFaceNoSpace: The do-block as a whole will itself be an IO action |
2021-02-21 20:50:44 +0100 | <geekosaur> | you don't get to arbitrarily remove something from IO |
2021-02-21 20:50:51 +0100 | <Cale> | GreyFaceNoSpace: and its result will be the result of the last action in the do-block |
2021-02-21 20:50:59 +0100 | <geekosaur> | you can do so temporarily but you *must* put it back |
2021-02-21 20:51:12 +0100 | ezrakilty | (~ezrakilty@97-113-55-149.tukw.qwest.net) |
2021-02-21 20:51:27 +0100 | <Cale> | The second line of your do-block there is a list, which it can't be, since you executed the IO action x on the previous line |
2021-02-21 20:51:53 +0100 | <monochrom> | "<- removes IO" is a comforting model that has only 2 minutes of predictive power. |
2021-02-21 20:51:55 +0100 | <Cale> | (every statement of your do-block must be of the same monad) |
2021-02-21 20:52:46 +0100 | <monochrom> | My http://www.vex.net/~trebla/haskell/IO.xhtml is a non-nonsense IO tutorial. |
2021-02-21 20:52:58 +0100 | Moyst | (~moyst@212-149-213-144.bb.dnainternet.fi) |
2021-02-21 20:53:33 +0100 | <Cale> | Also, this entire right hand side can't be correct, since the type signature of your function is [IO a] -> [a], and so you're meant to produce a list. A do-block which executes IO actions will itself be an IO action, and not a list. |
2021-02-21 20:53:39 +0100 | <GreyFaceNoSpace> | so if i want to write a function f :: [IO a] -> IO [a] |
2021-02-21 20:53:53 +0100 | <Cale> | That's a more interesting and useful type |
2021-02-21 20:54:29 +0100 | <Cale> | You could then construct an action that will execute the IO actions in the given list |
2021-02-21 20:54:35 +0100 | <Cale> | and collect up their results |
2021-02-21 20:55:32 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) |
2021-02-21 20:55:40 +0100 | someaspie | (565024ca@86-80-36-202.fixed.kpn.net) |
2021-02-21 20:56:15 +0100 | <Cale> | With something like [IO a] -> [a], you're sort of stuck -- you have to produce a list, but you can't execute the IO actions in the given list, so you have no way to get interesting values of type a, and so the result is either going to be an empty list, or a bunch of bottom values (infinite loops or errors) |
2021-02-21 20:56:44 +0100 | someaspie | (565024ca@86-80-36-202.fixed.kpn.net) (Client Quit) |
2021-02-21 20:57:58 +0100 | <GreyFaceNoSpace> | so if i fold on xs :: [IO a] with foldl id [] xs |
2021-02-21 20:58:12 +0100 | <Cale> | That wouldn't typecheck |
2021-02-21 20:58:25 +0100 | <GreyFaceNoSpace> | hmm |
2021-02-21 20:58:38 +0100 | royal_screwup21 | (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
2021-02-21 20:58:41 +0100 | <Cale> | But don't worry about folding before you've figured out what you want to do in a recursive way for now |
2021-02-21 20:58:47 +0100 | <jollygood2> | that function already exists, it is called sequence. but writing it yourself is a useful excercise |
2021-02-21 20:59:06 +0100 | <Cale> | If you want, I can walk you through how it's done |
2021-02-21 20:59:15 +0100 | <GreyFaceNoSpace> | no let me think about it for a bit |
2021-02-21 20:59:27 +0100 | <GreyFaceNoSpace> | i wanna know what i am screwing up |
2021-02-21 20:59:39 +0100 | <GreyFaceNoSpace> | im gonna get it right eventually |
2021-02-21 20:59:56 +0100 | <Cale> | In English, the idea should be that if the list is empty, you want to produce an action that does nothing except to produce an empty list when you execute it. |
2021-02-21 21:00:02 +0100 | ddellacosta | (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 260 seconds) |
2021-02-21 21:00:09 +0100 | <GreyFaceNoSpace> | so return [] |
2021-02-21 21:00:12 +0100 | <Cale> | yep |
2021-02-21 21:00:29 +0100 | <GreyFaceNoSpace> | yes i tried that but it failed for some reason |
2021-02-21 21:00:38 +0100 | <Cale> | If the list is nonempty, then you want to execute the first action, and then you want to execute all the others, and combine the result of the first action with the list of results of the others |
2021-02-21 21:02:18 +0100 | nhs | (~nhs@c-67-180-177-103.hsd1.ca.comcast.net) |
2021-02-21 21:03:02 +0100 | <GreyFaceNoSpace> | this is what i have now: https://pastebin.com/FDwzg3Df |
2021-02-21 21:03:08 +0100 | <GreyFaceNoSpace> | but its still not working |
2021-02-21 21:03:43 +0100 | <Cale> | Your base case is still wrong -- you got it right before, it should be return [] |
2021-02-21 21:03:57 +0100 | <GreyFaceNoSpace> | oh |
2021-02-21 21:04:04 +0100 | <Cale> | [] is an empty list |
2021-02-21 21:04:18 +0100 | <Cale> | return [] is an action that if you run it will do nothing, but produce an empty list as its result |
2021-02-21 21:04:36 +0100 | DataComputist | (~lumeng@50.43.26.251) (Ping timeout: 240 seconds) |
2021-02-21 21:05:03 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
2021-02-21 21:05:05 +0100 | petersen | (~petersen@redhat/juhp) (Ping timeout: 240 seconds) |
2021-02-21 21:05:22 +0100 | nullniverse | (~null@unaffiliated/nullniverse) |
2021-02-21 21:05:22 +0100 | <GreyFaceNoSpace> | but now. at some point i will execute a step : return $ (a: [] :: IO [a]) |
2021-02-21 21:05:38 +0100 | <Cale> | (a:[]) :: [a] |
2021-02-21 21:05:43 +0100 | <Cale> | return (a:[]) :: IO [a] |
2021-02-21 21:06:10 +0100 | <GreyFaceNoSpace> | but the case for f [] = return [] thats of type IO [a] |
2021-02-21 21:06:15 +0100 | <Cale> | yep |
2021-02-21 21:06:19 +0100 | <Cale> | which is correct |
2021-02-21 21:06:36 +0100 | <Cale> | a:[] is definitely a list and not an IO action |
2021-02-21 21:06:42 +0100 | <GreyFaceNoSpace> | so what i have is : return $ (a : return []) |
2021-02-21 21:06:45 +0100 | <Cale> | no |
2021-02-21 21:07:01 +0100 | ezrakilty | (~ezrakilty@97-113-55-149.tukw.qwest.net) (Remote host closed the connection) |
2021-02-21 21:07:06 +0100 | <monochrom> | I think you're reading too much into the function name "return". |
2021-02-21 21:07:06 +0100 | <Cale> | Remember that as <- f xs means that as is the result of executing f xs |
2021-02-21 21:07:10 +0100 | <jollygood2> | your code should work, just fix your base case for an empty list |
2021-02-21 21:07:29 +0100 | <Cale> | So, in the case where xs is the empty list |
2021-02-21 21:07:34 +0100 | <GreyFaceNoSpace> | i did fix it. I am just trying to understand why its working |
2021-02-21 21:07:35 +0100 | <Cale> | that will become as <- return [] |
2021-02-21 21:07:42 +0100 | <GreyFaceNoSpace> | yes |
2021-02-21 21:07:42 +0100 | MarcelineVQ | (~anja@198.254.199.42) (Remote host closed the connection) |
2021-02-21 21:07:44 +0100 | <GreyFaceNoSpace> | aaaah |
2021-02-21 21:07:47 +0100 | <GreyFaceNoSpace> | now i get it |
2021-02-21 21:07:51 +0100 | petersen | (~petersen@redhat/juhp) |
2021-02-21 21:07:53 +0100 | <Cale> | and so as = [] |
2021-02-21 21:07:56 +0100 | <GreyFaceNoSpace> | yes yes |
2021-02-21 21:08:01 +0100 | <GreyFaceNoSpace> | i get it now |
2021-02-21 21:08:01 +0100 | <GreyFaceNoSpace> | haha |
2021-02-21 21:08:13 +0100 | <jollygood2> | return doesn't return from the function, btw. it just turns a into IO a |
2021-02-21 21:08:17 +0100 | <GreyFaceNoSpace> | hmm interesting |
2021-02-21 21:08:17 +0100 | Pickchea | (~private@unaffiliated/pickchea) (Quit: Leaving) |
2021-02-21 21:08:33 +0100 | <GreyFaceNoSpace> | jollygood2, yes i understand that. i was just confused |
2021-02-21 21:08:33 +0100 | MarcelineVQ | (~anja@198.254.199.42) |
2021-02-21 21:09:25 +0100 | <jollygood2> | btw, there's another, more concise, way to write that function, with liftA2 or <$> and <*> |
2021-02-21 21:09:30 +0100 | <GreyFaceNoSpace> | the fact that do makes everything happen sequentially confused me. |
2021-02-21 21:09:41 +0100 | DataComputist | (~lumeng@50.43.26.251) |
2021-02-21 21:09:42 +0100 | <GreyFaceNoSpace> | i still havent done monads |
2021-02-21 21:09:55 +0100 | <merijn> | I doesn't make anything happen sequentially |
2021-02-21 21:09:58 +0100 | <jollygood2> | you just did it with monads :) |
2021-02-21 21:10:02 +0100 | <merijn> | It makes things happen via >>= |
2021-02-21 21:10:04 +0100 | <geekosaur> | do doesn't do as much as you think, rither |
2021-02-21 21:10:08 +0100 | <jollygood2> | liftA2 and <$> <*> are Applicatives |
2021-02-21 21:10:08 +0100 | <geekosaur> | either* |
2021-02-21 21:10:08 +0100 | <merijn> | What that means depends on the monad |
2021-02-21 21:10:16 +0100 | gioyik | (~gioyik@gateway/tor-sasl/gioyik) (Ping timeout: 268 seconds) |
2021-02-21 21:10:25 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 21:10:43 +0100 | <jollygood2> | :t liftA2 |
2021-02-21 21:10:44 +0100 | <lambdabot> | Applicative f => (a -> b -> c) -> f a -> f b -> f c |
2021-02-21 21:11:04 +0100 | <jollygood2> | f (x:xs) = liftA2 (:) x (g xs) |
2021-02-21 21:11:20 +0100 | <jollygood2> | g (x:xs) = liftA2 (:) x (f xs), even |
2021-02-21 21:11:28 +0100 | <monochrom> | merijn, https://xkcd.com/1818/ applies |
2021-02-21 21:11:29 +0100 | <jollygood2> | f (x:xs) = liftA2 (:) x (f xs), even |
2021-02-21 21:11:32 +0100 | jollygood2 | calls it a day |
2021-02-21 21:11:49 +0100 | <monochrom> | Since do-notation is equivalent to >>=, if >>= causes sequencing then so does do-notation. |
2021-02-21 21:12:09 +0100 | <monochrom> | But as usual, both are equally wrong. |
2021-02-21 21:12:18 +0100 | <monochrom> | IO causes sequencing. |
2021-02-21 21:12:53 +0100 | Entertainment | (~entertain@104.246.145.85) |
2021-02-21 21:13:11 +0100 | gienah | (~mwright@gentoo/developer/gienah) (Quit: leaving) |
2021-02-21 21:14:21 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
2021-02-21 21:15:59 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-02-21 21:18:04 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 21:19:20 +0100 | <merijn> | monochrom: Sure, but that assumes beginners *know* it is equivalent |
2021-02-21 21:19:45 +0100 | mnrmnaugh | (~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 240 seconds) |
2021-02-21 21:21:06 +0100 | conal | (~conal@64.71.133.70) |
2021-02-21 21:21:22 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 21:21:39 +0100 | slack1256 | (~slack1256@dvc-186-186-101-190.movil.vtr.net) |
2021-02-21 21:22:50 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 264 seconds) |
2021-02-21 21:24:59 +0100 | acidjnk_new | (~acidjnk@pd9e0bf4a.dip0.t-ipconnect.de) |
2021-02-21 21:26:38 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
2021-02-21 21:27:15 +0100 | mnrmnaugh | (~mnrmnaugh@unaffiliated/mnrmnaugh) |
2021-02-21 21:27:34 +0100 | nut | (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds) |
2021-02-21 21:28:28 +0100 | slack1256 | (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection) |
2021-02-21 21:28:46 +0100 | rayyyy | (~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 268 seconds) |
2021-02-21 21:32:23 +0100 | Entertainment | (~entertain@104.246.145.85) () |
2021-02-21 21:36:36 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) |
2021-02-21 21:38:18 +0100 | nullniv4 | (~null@unaffiliated/nullniverse) |
2021-02-21 21:40:45 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 264 seconds) |
2021-02-21 21:42:21 +0100 | nullniverse | (~null@unaffiliated/nullniverse) (Ping timeout: 265 seconds) |
2021-02-21 21:42:47 +0100 | kuribas | (~user@ptr-25vy0i9d8ddz063tr0c.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-02-21 21:44:18 +0100 | xcmw | (~textual@dyn-72-33-2-47.uwnet.wisc.edu) |
2021-02-21 21:45:56 +0100 | nullniverse | (~null@unaffiliated/nullniverse) |
2021-02-21 21:46:30 +0100 | nullniv4 | (~null@unaffiliated/nullniverse) (Read error: Connection reset by peer) |
2021-02-21 21:46:50 +0100 | nullniv72 | (~null@unaffiliated/nullniverse) |
2021-02-21 21:47:14 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 21:50:05 +0100 | xcmw | (~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 21:50:16 +0100 | edwinb | (sid69486@gateway/web/irccloud.com/x-ahfrajgjspekgwex) (Read error: Connection reset by peer) |
2021-02-21 21:50:16 +0100 | dsturnbull | (sid347899@gateway/web/irccloud.com/x-vrnzpijbgungjari) (Read error: Connection reset by peer) |
2021-02-21 21:50:26 +0100 | kupi | (uid212005@gateway/web/irccloud.com/x-pssuakftcukcxfkk) (Ping timeout: 240 seconds) |
2021-02-21 21:50:30 +0100 | nullniverse | (~null@unaffiliated/nullniverse) (Ping timeout: 256 seconds) |
2021-02-21 21:50:53 +0100 | PoliticsII______ | (sid193551@gateway/web/irccloud.com/x-ahjdxgzhinwgmulm) (Read error: Connection reset by peer) |
2021-02-21 21:51:01 +0100 | SanchayanMaity | (sid478177@gateway/web/irccloud.com/x-emqjrggggxtjzmmc) (Ping timeout: 256 seconds) |
2021-02-21 21:51:02 +0100 | dsturnbull | (sid347899@gateway/web/irccloud.com/x-asyraowfziwxkufz) |
2021-02-21 21:51:03 +0100 | edwinb | (sid69486@gateway/web/irccloud.com/x-qvjalasgpdxobhmu) |
2021-02-21 21:51:11 +0100 | average | (uid473595@gateway/web/irccloud.com/x-ajbakqsurwmqkezd) (Ping timeout: 272 seconds) |
2021-02-21 21:51:11 +0100 | gluegadget | (sid22336@gateway/web/irccloud.com/x-nsgcjsqinyltxtco) (Ping timeout: 272 seconds) |
2021-02-21 21:51:24 +0100 | PoliticsII______ | (sid193551@gateway/web/irccloud.com/x-slpupmeuvesxhpke) |
2021-02-21 21:51:41 +0100 | hnOsmium0001 | (uid453710@gateway/web/irccloud.com/x-atwsihcjqkpkjann) |
2021-02-21 21:51:48 +0100 | frozenErebus | (~frozenEre@94.128.219.166) |
2021-02-21 21:51:55 +0100 | gluegadget | (sid22336@gateway/web/irccloud.com/x-aztbcwiepgvjkpoz) |
2021-02-21 21:52:03 +0100 | SanchayanMaity | (sid478177@gateway/web/irccloud.com/x-qrhxnevmgmdapsbs) |
2021-02-21 21:52:09 +0100 | average | (uid473595@gateway/web/irccloud.com/x-vjticfovgmrwoddf) |
2021-02-21 21:52:35 +0100 | kupi | (uid212005@gateway/web/irccloud.com/x-mbplkmlzcjbllchc) |
2021-02-21 21:53:14 +0100 | elfets | (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds) |
2021-02-21 21:55:10 +0100 | <monochrom> | merijn: When students listen to me exclusively, I don't even bring up the do-notation. But on #haskell beginners are not my exclusive students, they look all over the place on the Internet, and the Internet is full of do-notation all over the place. Hell, even the textbooks that I recommend, they switch from >>= to do in like 5 seconds. (Like I have a choice in recommending a textbook that doesn't do this.) |
2021-02-21 21:55:58 +0100 | <monochrom> | If a beginner here is already knee-deep in do-notation, we may as well go with it and not get into a fight. |
2021-02-21 21:56:46 +0100 | <monochrom> | We can recommend them to work more with >>=, but it's their call. |
2021-02-21 21:57:07 +0100 | <MarcelineVQ> | I just link your do/IO tutorial and go back to reading shitty mangas |
2021-02-21 21:57:13 +0100 | <maerwald> | lol |
2021-02-21 21:57:17 +0100 | <monochrom> | heh |
2021-02-21 22:00:33 +0100 | Natch | (~Natch@c-b471e255.014-297-73746f25.bbcust.telenor.se) (Remote host closed the connection) |
2021-02-21 22:02:29 +0100 | Guest19 | (88982c94@gateway/web/cgi-irc/kiwiirc.com/ip.136.152.44.148) |
2021-02-21 22:02:40 +0100 | <Guest19> | quick! how does one define fucntions in the interpreter on haskell.org? |
2021-02-21 22:02:50 +0100 | <Guest19> | getting parse error on = |
2021-02-21 22:02:57 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
2021-02-21 22:02:58 +0100 | <Guest19> | addMaybe x y = Just(x + y) |
2021-02-21 22:03:01 +0100 | amerigo | (uid331857@gateway/web/irccloud.com/x-yxxhsaxuybcqvhua) (Quit: Connection closed for inactivity) |
2021-02-21 22:03:15 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-02-21 22:03:19 +0100 | <MarcelineVQ> | try let, eg. :let foo x = x + 3 dunno though, haven't used it |
2021-02-21 22:03:38 +0100 | <Guest19> | oh there are interpreter commands prefixed by colon? haven't used haskell in... boy, over five years |
2021-02-21 22:03:54 +0100 | <maerwald> | didn't know there's an interpreter on haskell.org lol |
2021-02-21 22:03:58 +0100 | <Guest19> | got a parse error grrr |
2021-02-21 22:03:59 +0100 | <MarcelineVQ> | appearantly not, guess this things a little limited :> |
2021-02-21 22:04:04 +0100 | <Guest19> | noooo! |
2021-02-21 22:04:14 +0100 | <Guest19> | I could use let but will it let me do multiline input? >:( |
2021-02-21 22:04:27 +0100 | forgottenone | (~forgotten@176.42.28.68) (Read error: Connection reset by peer) |
2021-02-21 22:04:33 +0100 | <MarcelineVQ> | it doesn't like where either :( |
2021-02-21 22:04:45 +0100 | nullniv72 | (~null@unaffiliated/nullniverse) (Quit: -a- IRC for Android 2.1.59) |
2021-02-21 22:04:48 +0100 | <Guest19> | apparently not. let me find a different interpreter |
2021-02-21 22:04:49 +0100 | <MarcelineVQ> | it being this page |
2021-02-21 22:05:05 +0100 | <MarcelineVQ> | ghci is the defacto haskell interpreter if you're on a system that can have a ghc install |
2021-02-21 22:05:20 +0100 | nullniverse | (~null@unaffiliated/nullniverse) |
2021-02-21 22:05:21 +0100 | <Guest19> | I'm not going to install anything today sorry |
2021-02-21 22:05:31 +0100 | <MarcelineVQ> | np :> |
2021-02-21 22:06:19 +0100 | <Guest19> | getting "no location info" for let blah... grr |
2021-02-21 22:06:52 +0100 | <MarcelineVQ> | oh I'm a dummy, this is just for expressions, so you need to use in |
2021-02-21 22:07:03 +0100 | Rufflewind | (6b80d677@107-128-214-119.lightspeed.sntcca.sbcglobal.net) |
2021-02-21 22:07:17 +0100 | <MarcelineVQ> | let f x = x + 3 in f 1 |
2021-02-21 22:07:57 +0100 | son0p | (~son0p@181.136.122.143) |
2021-02-21 22:07:59 +0100 | <MarcelineVQ> | I discovered this by doing the tutorial to the right of the interpreter :> |
2021-02-21 22:08:01 +0100 | <Guest19> | found an online interpreter with ghci hanks y'all |
2021-02-21 22:08:17 +0100 | Guest19 | (88982c94@gateway/web/cgi-irc/kiwiirc.com/ip.136.152.44.148) (Quit: Connection closed) |
2021-02-21 22:08:44 +0100 | perrier-jouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0) |
2021-02-21 22:08:53 +0100 | <MarcelineVQ> | I feel silly since it plainly says it too "Type Haskell expressions in here." |
2021-02-21 22:10:02 +0100 | Natch | (~natch@c-b471e255.014-297-73746f25.bbcust.telenor.se) |
2021-02-21 22:10:13 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 22:10:18 +0100 | perrier-jouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-02-21 22:13:14 +0100 | gioyik | (~gioyik@gateway/tor-sasl/gioyik) |
2021-02-21 22:17:12 +0100 | geekosaur | (ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Quit: Connection closed) |
2021-02-21 22:19:05 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 22:23:00 +0100 | <monochrom> | Error messages contain "<hint>: ..." so that's an insider hint on what that prompt really does. |
2021-02-21 22:23:32 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) (Ping timeout: 260 seconds) |
2021-02-21 22:23:44 +0100 | <monochrom> | In retrospect it's confusing because beginners don't know that our "hint" has a different meaning. |
2021-02-21 22:24:07 +0100 | <monochrom> | Well, too late to change now. |
2021-02-21 22:24:46 +0100 | <MarcelineVQ> | heterogeneous int? |
2021-02-21 22:26:13 +0100 | <monochrom> | http://hackage.haskell.org/package/hint |
2021-02-21 22:26:30 +0100 | <monochrom> | Today's lambdabot uses mueval, but there was a time it used hint. |
2021-02-21 22:27:53 +0100 | gioyik | (~gioyik@gateway/tor-sasl/gioyik) (Remote host closed the connection) |
2021-02-21 22:28:51 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) |
2021-02-21 22:31:02 +0100 | gioyik | (~gioyik@gateway/tor-sasl/gioyik) |
2021-02-21 22:32:08 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
2021-02-21 22:33:19 +0100 | pera | (~pera@unaffiliated/pera) (Quit: leaving) |
2021-02-21 22:33:50 +0100 | frozenErebus | (~frozenEre@94.128.219.166) (Ping timeout: 260 seconds) |
2021-02-21 22:34:04 +0100 | ddellacosta | (~ddellacos@86.106.143.124) |
2021-02-21 22:39:56 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) (Ping timeout: 240 seconds) |
2021-02-21 22:40:35 +0100 | danvet | (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds) |
2021-02-21 22:42:01 +0100 | stree | (~stree@68.36.8.116) (Ping timeout: 256 seconds) |
2021-02-21 22:43:44 +0100 | dale | (dale@unaffiliated/dale) (Remote host closed the connection) |
2021-02-21 22:43:48 +0100 | ddellacosta | (~ddellacos@86.106.143.124) (Remote host closed the connection) |
2021-02-21 22:48:10 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-02-21 22:49:43 +0100 | gienah | (~mwright@gentoo/developer/gienah) |
2021-02-21 22:52:52 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 22:53:21 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds) |
2021-02-21 22:54:51 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 265 seconds) |
2021-02-21 22:55:04 +0100 | stree | (~stree@68.36.8.116) |
2021-02-21 22:55:13 +0100 | Franciman | (~francesco@host-82-49-79-189.retail.telecomitalia.it) (Quit: Leaving) |
2021-02-21 22:55:51 +0100 | nullniverse | (~null@unaffiliated/nullniverse) (Remote host closed the connection) |
2021-02-21 22:58:26 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) |
2021-02-21 22:58:38 +0100 | heatsink | (~heatsink@2600:1700:bef1:5e10:2c3b:7c69:7266:b507) |
2021-02-21 23:02:06 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
2021-02-21 23:06:33 +0100 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:1c31:ba91:4135:5f73) (Ping timeout: 272 seconds) |
2021-02-21 23:08:44 +0100 | coot | (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
2021-02-21 23:12:46 +0100 | conal | (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
2021-02-21 23:12:51 +0100 | nullniverse | (~null@unaffiliated/nullniverse) |
2021-02-21 23:16:26 +0100 | nullniverse | (~null@unaffiliated/nullniverse) (Read error: Connection reset by peer) |
2021-02-21 23:16:55 +0100 | nullniverse | (~null@unaffiliated/nullniverse) |
2021-02-21 23:17:22 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:d4c9:fc31:dde3:18c9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-02-21 23:20:12 +0100 | Rufflewind | (6b80d677@107-128-214-119.lightspeed.sntcca.sbcglobal.net) (Quit: Connection closed) |
2021-02-21 23:25:02 +0100 | rob01 | (~rob0@195.140.213.38) (Remote host closed the connection) |
2021-02-21 23:27:16 +0100 | Rudd0 | (~Rudd0@185.189.115.103) |
2021-02-21 23:30:33 +0100 | shatriff | (~vitaliish@protective.remission.volia.net) |
2021-02-21 23:32:50 +0100 | Kaiepi | (~Kaiepi@47.54.252.148) |
2021-02-21 23:34:04 +0100 | kam1 | (~kam1@5.125.10.108) |
2021-02-21 23:34:21 +0100 | minoru_shiraeesh | (~shiraeesh@109.166.57.22) |
2021-02-21 23:34:27 +0100 | acarrico | (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) |
2021-02-21 23:35:41 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) (Ping timeout: 272 seconds) |
2021-02-21 23:36:42 +0100 | loller_ | (uid358106@gateway/web/irccloud.com/x-kbcihpyfexgxmziw) |
2021-02-21 23:38:58 +0100 | notzmv | (~user@unaffiliated/zmv) (Remote host closed the connection) |
2021-02-21 23:39:19 +0100 | dale | (dale@unaffiliated/dale) |
2021-02-21 23:40:37 +0100 | notzmv | (~user@unaffiliated/zmv) |
2021-02-21 23:42:01 +0100 | nbloomf | (~nbloomf@2600:1700:ad14:3020:e027:ed4b:9a92:9af6) |
2021-02-21 23:43:07 +0100 | notzmv | (~user@unaffiliated/zmv) (Remote host closed the connection) |
2021-02-21 23:43:43 +0100 | xcmw | (~textual@dyn-72-33-2-47.uwnet.wisc.edu) |
2021-02-21 23:43:45 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
2021-02-21 23:43:52 +0100 | notzmv | (~user@unaffiliated/zmv) |
2021-02-21 23:47:22 +0100 | nullniv93 | (~null@unaffiliated/nullniverse) |
2021-02-21 23:47:59 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-02-21 23:49:14 +0100 | Mrbuck | (~Mrbuck@gateway/tor-sasl/mrbuck) (Quit: WeeChat 1.9.1) |
2021-02-21 23:49:36 +0100 | nullniverse | (~null@unaffiliated/nullniverse) (Ping timeout: 240 seconds) |
2021-02-21 23:49:56 +0100 | kam1 | (~kam1@5.125.10.108) (Ping timeout: 240 seconds) |
2021-02-21 23:50:17 +0100 | kam1 | (~kam1@37.129.135.98) |
2021-02-21 23:50:28 +0100 | ddellacosta | (~ddellacos@86.106.143.46) |
2021-02-21 23:51:38 +0100 | Varis | (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
2021-02-21 23:53:16 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
2021-02-21 23:55:51 +0100 | ph88 | (~ph88@ip5f5af71a.dynamic.kabel-deutschland.de) |
2021-02-21 23:56:21 +0100 | DavidEichmann | (~david@234.109.45.217.dyn.plus.net) (Remote host closed the connection) |
2021-02-21 23:57:53 +0100 | hnOsmium0001 | (uid453710@gateway/web/irccloud.com/x-atwsihcjqkpkjann) (Quit: Connection closed for inactivity) |
2021-02-21 23:58:29 +0100 | mirrorbird | (~psutcliff@2a00:801:446:6dfc:fadb:e310:6ed2:16d) |