Logs on 2021-12-25 (liberachat/#haskell)
| 00:01:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 00:01:59 | → | Alex_test_ joins (~al_test@178.34.160.99) |
| 00:02:00 | → | AlexZenon_2 joins (~alzenon@178.34.160.99) |
| 00:02:37 | × | dan-so quits (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) (Ping timeout: 240 seconds) |
| 00:03:32 | × | farn quits (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (Ping timeout: 240 seconds) |
| 00:03:37 | × | AlexZenon quits (~alzenon@178.34.160.99) (Ping timeout: 256 seconds) |
| 00:03:37 | × | Alex_test quits (~al_test@178.34.160.99) (Ping timeout: 256 seconds) |
| 00:04:02 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Ping timeout: 240 seconds) |
| 00:04:06 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 00:04:27 | → | farn joins (~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) |
| 00:04:31 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 00:05:03 | → | dan-so joins (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) |
| 00:06:43 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 00:08:04 | × | max22- quits (~maxime@2a01cb0883359800d70950f17875b6a2.ipv6.abo.wanadoo.fr) (Quit: Leaving) |
| 00:10:08 | → | rlj joins (~rlj@62.119.244.114) |
| 00:12:39 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 00:12:39 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 00:12:39 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:18:25 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 268 seconds) |
| 00:19:38 | × | dan-so quits (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) (Ping timeout: 268 seconds) |
| 00:22:27 | × | zer0bitz quits (~zer0bitz@dsl-hkibng32-54f844-160.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 00:26:18 | → | jgeerds joins (~jgeerds@55d4ac73.access.ecotel.net) |
| 00:26:25 | × | lechner quits (~lechner@debian/lechner) (Ping timeout: 268 seconds) |
| 00:31:35 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 00:32:59 | × | KvL quits (~KvL@195.216.219.76) (Quit: KvL) |
| 00:33:19 | → | KvL joins (~KvL@195.216.219.76) |
| 00:33:56 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 00:34:13 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 00:38:35 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 00:39:37 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 00:42:52 | <[itchyjunk]> | What are the pre-req to understand this thing called "y-combinator" ? |
| 00:43:08 | <[itchyjunk]> | something something anynomous function, recursion, higher order function but i don't get it. |
| 00:43:48 | <geekosaur> | the usual formulation of the Y combinator requires an understanding of the untyped lambda calculus |
| 00:44:56 | <geekosaur> | "\x -> x x" takes a function (we know it's a function because it's applied in the body) and applies it to itself |
| 00:45:00 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 00:45:59 | <[itchyjunk]> | woha, applies it to itself, what a crazy concept.. |
| 00:46:20 | <[itchyjunk]> | I need to look into this lambda calculus stuff, its been getting in the way a lot more these days. |
| 00:46:44 | × | Everything quits (~Everythin@37.115.210.35) (Quit: leaving) |
| 00:47:33 | <geekosaur> | quite a bit of Haskell will make more sense with an understanding of lambda calculus, because in many ways Haskell is about as close as you can get to programming directly with lambda calculus |
| 00:48:14 | <geekosaur> | mostly because of Haskell's laziness, which means it's evaluated by reduction of terms the same way lambda calculi are |
| 00:48:21 | <[itchyjunk]> | What are the prereq for learning lambda calc? |
| 00:49:34 | <geekosaur> | not much, actually. the untyped lambda calculus in particular is fairly simple, you jsut need to learn the rules for expanding and reducing terms. and of course the syntax, which may be the hardest part to get used to |
| 00:49:37 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 00:50:20 | <geekosaur> | but expanding and reducing terms is actually fairly mechanical |
| 00:50:20 | × | rlj quits (~rlj@62.119.244.114) (Quit: Client closed) |
| 00:50:37 | <[itchyjunk]> | ah i see |
| 00:51:14 | <geekosaur> | other types of lambda calculus add more to that, but they're relatively small steps upward after you have the untyped lambda calculus |
| 00:52:12 | <[itchyjunk]> | I've heard of this concept. i was reading a little bit of godel, escher, bach and they talk about formal systems and axioms and how you build theorems out of it |
| 00:52:36 | <geekosaur> | it's when you start applyingt those rules to \x -> x x that you start to realize what all the yelling is about :) |
| 00:52:52 | → | lechner joins (~lechner@debian/lechner) |
| 00:53:36 | <geekosaur> | yeh, I was just trying to remember if GEB presented much of lambda calculus at all. I don't think it did though |
| 00:54:09 | <geekosaur> | not directly relevant to demonstrating Gödel's theorem |
| 00:54:17 | <[itchyjunk]> | ahh |
| 00:54:24 | <geekosaur> | it'd just be another thing to demonstrate encoding of |
| 00:56:58 | <geekosaur> | well, no. you could I think demonstrate the Incompleteness Theorem with lambda calculus, but the original was demonstrated on number theory as described by _Principia Mathematica_ so (a subset of) that was what Hofstadter stuck to |
| 00:57:20 | <geekosaur> | LC and number theory are fairly different things though |
| 00:59:08 | <geekosaur> | (although I am vaguely recalling that there is an approach to set theory based on lambda calculus, which would lead to number theory eventually) |
| 01:01:32 | × | acidjnk quits (~acidjnk@p200300d0c7271e974de60a217c79c2cb.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 01:03:37 | × | n3rdy1 quits (~n3rdy1@2601:281:c780:a510:c82b:6078:8c93:1082) (Ping timeout: 240 seconds) |
| 01:06:31 | × | Tuplanolla quits (~Tuplanoll@91-159-68-52.elisa-laajakaista.fi) (Quit: Leaving.) |
| 01:06:51 | → | kaph_ joins (~kaph@net-2-45-51-147.cust.vodafonedsl.it) |
| 01:09:17 | × | kaph quits (~kaph@net-2-45-51-147.cust.vodafonedsl.it) (Ping timeout: 240 seconds) |
| 01:11:25 | × | jgeerds quits (~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 240 seconds) |
| 01:14:26 | → | x88x88x joins (~x88x88x@2001:19f0:5:39a8:5400:3ff:feb6:73cb) |
| 01:17:28 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 01:17:44 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:17:45 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:19:12 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 01:19:45 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:19:46 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:21:30 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:21:30 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:24:10 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 260 seconds) |
| 01:24:17 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:24:18 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:24:43 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:24:44 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:28:41 | × | Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in) |
| 01:28:59 | → | Alleria joins (~textual@user/alleria) |
| 01:29:30 | × | KvL quits (~KvL@195.216.219.76) (Quit: KvL) |
| 01:30:35 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:30:36 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:31:19 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:31:19 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:31:58 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:31:59 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:32:49 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:32:50 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:34:27 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Remote host closed the connection) |
| 01:34:50 | → | Techcable joins (~Techcable@168.235.93.147) |
| 01:35:53 | → | dan-so joins (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) |
| 01:36:16 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 01:38:03 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:38:04 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:38:33 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:38:34 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:40:03 | <otherwise> | > head [3,2,1]:head (tail [3,2,1]):[head (tail (tail [3,2,1]) )] |
| 01:40:04 | <lambdabot> | [3,2,1] |
| 01:40:20 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:40:21 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:41:05 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:41:06 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:41:32 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:41:32 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:42:14 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:42:15 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:42:37 | → | BrokenClutch joins (~pioneer@2804:d41:c2a7:d800:e627:b00b:2c62:134) |
| 01:43:48 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:43:48 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:43:51 | <BrokenClutch> | First, merry Christmas. Second, Is common to feel unable to understand reactive-banana? Am I too dumb? |
| 01:44:14 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:44:15 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:46:59 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:47:00 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:47:26 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:47:27 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:47:52 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 01:48:59 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:49:00 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:49:29 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:49:30 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:49:44 | <dsal> | BrokenClutch: I've had no issues understanding reactive banana. |
| 01:49:46 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:49:46 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:49:49 | dsal | doesn't know what reactive banana is |
| 01:51:07 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:51:18 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:51:54 | <BrokenClutch> | dsal: How? |
| 01:52:15 | <dsal> | ? |
| 01:52:25 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 01:52:28 | <BrokenClutch> | dsal: I'm like, crying rn (not really). How to understand it? |
| 01:52:35 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:52:35 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:52:54 | <dsal> | I've never seen it. What is it? Why is it important to you? |
| 01:53:09 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:53:10 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:53:22 | <BrokenClutch> | dsal: FRP |
| 01:53:46 | <BrokenClutch> | dsal: Looks cool, I can do text adventures, lots of things |
| 01:54:10 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 01:54:28 | <dsal> | Oh. What kind of problem are you having? |
| 01:55:45 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 01:55:46 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 01:56:03 | <BrokenClutch> | dsal: I don't get it. Is it possible to define monad/applicative operations that register something as a callback? |
| 01:56:17 | <BrokenClutch> | Like, as a side-effect |
| 01:56:19 | <[itchyjunk]> | Never heard of "reactive programming" before |
| 01:56:39 | <BrokenClutch> | [itchyjunk]: it's cool |
| 01:57:56 | <dsal> | BrokenClutch: Well, sure. That's basically what things like modify do. |
| 01:57:57 | <dsal> | :t modify |
| 01:57:58 | <lambdabot> | MonadState s m => (s -> s) -> m () |
| 01:58:22 | <EvanR> | reactive banana probably has it's own way to do such things |
| 01:58:50 | <BrokenClutch> | Is it viable to do FRP without those libs? |
| 01:58:51 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:59:33 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 268 seconds) |
| 01:59:52 | <EvanR> | maybe there is a reactive banana tutorial or guide laying around? |
| 02:00:01 | <EvanR> | crash course |
| 02:00:52 | <BrokenClutch> | There is, but I found the lib to be very "not intuitive" |
| 02:00:56 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:00:57 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:01:14 | <dsal> | That's often a good thing. |
| 02:01:29 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:01:30 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:01:44 | <dsal> | Have you got a good intuition for the stuff it's built on yet? |
| 02:01:46 | <BrokenClutch> | dsal: At least this makes it a good challenge |
| 02:01:47 | <EvanR> | on the bright side, your experience is the first step to being one of those people with any experience at all with FRP |
| 02:02:25 | <EvanR> | so one day you can provide some insight on the lib xD |
| 02:02:38 | <dsal> | "not intuitive" often means you're having to learn things. If everything fit into what you already know, you'd be limited to only doing things you already know. |
| 02:02:39 | <BrokenClutch> | EvanR: Isn't FRP popular? |
| 02:03:00 | <BrokenClutch> | dsal: That's why I'm studying haskell, I agree with you |
| 02:03:03 | <dsal> | "popular" is a weird metric . Popular with whom, for what? |
| 02:03:24 | <EvanR> | it was blogosphere buzzwordy for a few years |
| 02:03:26 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:03:27 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:03:50 | <EvanR> | conal's formulation from earlier never really caught on |
| 02:03:53 | <BrokenClutch> | dsal: Don't know |
| 02:04:02 | <BrokenClutch> | EvanR: I can see why |
| 02:04:27 | <BrokenClutch> | Those stuff that i want to do are more easily done with imperative languages, but they ain't fun |
| 02:04:32 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:04:33 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:04:53 | <EvanR> | there are some beautiful ideas behind FRP out there, maybe it's the thought that counts xD |
| 02:04:53 | <dsal> | You being able to do them more easily with imperative languages doesn't mean they're more easily done with imperative languages. |
| 02:05:49 | <EvanR> | BrokenClutch, what exactly are you trying to achieve |
| 02:05:57 | <BrokenClutch> | EvanR: fun |
| 02:06:09 | <EvanR> | "exactly" |
| 02:06:28 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:06:28 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:06:29 | <dsal> | I do something similar with my mqtt broker. The reference implementations were too buggy, so I threw one together real quick. It just… works. Handling concurrent data structure access with lots of weird mutation paths is trivial in Haskell. Reference implementation continues to be incomplete and buggy. Mine continues to just be a boring project that works. |
| 02:06:35 | × | neceve quits (~quassel@2.26.93.228) (Ping timeout: 256 seconds) |
| 02:06:37 | <BrokenClutch> | I want to make some cute stuff, like some little gaming things |
| 02:06:59 | <EvanR> | you're in good company |
| 02:07:07 | <EvanR> | check out #haskell-game if you get a chance |
| 02:07:23 | <BrokenClutch> | EvanR: I will |
| 02:08:03 | <BrokenClutch> | dsal: Didn't understood a word, but i got the spirit |
| 02:08:20 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 02:08:28 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:08:30 | <dsal> | Managing state in haskell is so much easier than managing state in any other language, IME. |
| 02:08:43 | <dsal> | parallelism is ~0 effort. Concurrency is composable. |
| 02:08:55 | <EvanR> | I'll add YMMV to that xD |
| 02:09:44 | <EvanR> | if someone just asks you to manage some state and absolutely nothing else, I can see how it would be easy |
| 02:10:27 | <dsal> | Well, sure. I've done pretty high volume concurrency code in java, C++, C, go, and a few other languages. Haskell is the one that's been the easiest. |
| 02:10:33 | <BrokenClutch> | I just started to use haskell because lambdas are fun, managing states with haskell isn't easy to me, but it's more readable. |
| 02:10:39 | <dsal> | (not counting stuff like javascript and python, but I've done a few of those as well) |
| 02:11:20 | <BrokenClutch> | dsal: Did you tried with rust or erlang? |
| 02:12:24 | <dsal> | Oh yeah, I've built a company around an erlang core as well. |
| 02:12:28 | <dsal> | erlang is also pretty good at this. |
| 02:12:58 | <dsal> | I've not used rust. It's not much a fit for most things I do. But I hear there are some pretty sharp edges. |
| 02:13:08 | <EvanR> | after enough haskellisms, you might begin to think differently about "managing state" or even what "state" is |
| 02:13:36 | <dsal> | If you don't use StateT, your code is stateless. |
| 02:13:52 | <EvanR> | sometimes you can accomplish something and not realize what happened to the state you thought you needed |
| 02:14:00 | <BrokenClutch> | EvanR: I like it because I can think linearly, without being afraid that something will get crazy |
| 02:14:15 | <dsal> | Like which? |
| 02:14:22 | <EvanR> | you mean like modifying a bunch of variables with a line by line imperative program? |
| 02:14:32 | <EvanR> | that sounds crazy to me, if it gets beyond a single-page algorithm |
| 02:14:34 | <dsal> | That's horrifying. |
| 02:15:02 | <dsal> | I like looking at a type signature and having some idea what might happen… though a lot of people argue you should do everything in IO for some reason. |
| 02:15:14 | × | kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 02:15:16 | <BrokenClutch> | When i write Scheme i really avoid "set!", most people do this to avoid those crazy stuff |
| 02:15:41 | <EvanR> | so you could be construing "state" with mutable variables |
| 02:15:54 | <dsal> | When I write a function in Haskell, I know it doesn't do any weird stuff that affects the rest of my program. :) |
| 02:16:12 | <dsal> | But I still have State, ST, STM, and whatever else I need. |
| 02:16:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Remote host closed the connection) |
| 02:16:47 | <dsal> | STM basically doesn't outside of Haskell, at least not with sanity. Various libraries "do" STM in different languages as long as you're really super careful. |
| 02:17:20 | <dsal> | STM in haskell doesn't require all that much care. Most dumb things won't compile. You can still write bugs, but the language allows you to build a library that is hard to use incorrectly. |
| 02:18:04 | <EvanR> | this library is so hard to use! incorrectly! |
| 02:18:21 | <BrokenClutch> | dsal: This helps me a lot. I'm not a smart cookie, haskell helps me to be sure that I'm not doing something strange |
| 02:18:33 | <BrokenClutch> | EvanR: using incorrectly is half of the fun |
| 02:18:33 | <dsal> | Yes, I use Haskell because I'm dumb. |
| 02:19:15 | <dsal> | The major fancy language features that are fancy and unique to go are easy to write as a library in Haskell, but unlike in go, you can also compose them. |
| 02:19:16 | <EvanR> | I need haskell because I'm dumb, I can use haskell because I'm smart? xD |
| 02:19:50 | <dsal> | go channels have a really narrow composition mechanism. In practice, you do not make channels part of your API, even though doing so *might* make it possible to do some basic composition. |
| 02:20:02 | <BrokenClutch> | the source code of reactive-banana isn't too big, should i read it? I'm pretty new with haskell, but I think i can get it. |
| 02:20:29 | <dsal> | In STM, you *should* expose STM operations in your API (where it makes sense at least), but they compose easily in all kinds of fancy ways. |
| 02:20:35 | <EvanR> | sure read the source |
| 02:21:30 | <dsal> | BrokenClutch: If you're not to Haskell, you're not doing yourself any favors by dropping yourself naked in the middle of a small village where you don't speak the language and try to work out how to write a book from what you think people are yelling at you. |
| 02:21:50 | <dsal> | er, s/not to/new to/ |
| 02:22:58 | × | ProfSimm quits (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
| 02:23:02 | <dsal> | It's far easier to learn by knowing the fundamentals and then learning new abstractions as your needs grow in their direction. Starting from weird high level abstractions built on top of layers and layers of foundational bits will always be disorienting. |
| 02:23:55 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:23:56 | <BrokenClutch> | dsal: Why naked? |
| 02:23:56 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:24:15 | <EvanR> | this metaphor is NSFW |
| 02:24:36 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:24:36 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:27:14 | <BrokenClutch> | The books can be too boring. I actually like to read those kind of books, but for haskell they are too slow. I would like a book like the math ones I read, more dense and direct |
| 02:27:43 | <BrokenClutch> | If i was naked I would write one |
| 02:27:50 | × | Jing quits (~hedgehog@2604:a840:3::1061) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 02:27:55 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 02:28:21 | <EvanR> | just don't fall into the monad tutorial fallacy |
| 02:28:44 | <dsal> | I've never seen a monad tutorial that helped me understand anything. |
| 02:29:35 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 02:29:36 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 02:29:38 | <dsal> | The reason monads are hard to explain to people is because they have no context whatsoever to talk about things. If you try to explain what they need to know to understand things, they complain about it being too complicated. If you walk them there without that being the actual goal, it's pretty easy to arrive. |
| 02:29:40 | <BrokenClutch> | I've just used LSP on emacs to see what was going on |
| 02:30:46 | <BrokenClutch> | I see like a sequence of computations inside a context |
| 02:32:20 | <EvanR> | ghci has a debugger that can show you the state of a computation |
| 02:32:26 | → | lavaman joins (~lavaman@98.38.249.169) |
| 02:32:37 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 02:32:47 | <BrokenClutch> | EvanR: LSP is more intuitive for me. |
| 02:32:53 | <EvanR> | LSP is a haskell thing? |
| 02:33:04 | <BrokenClutch> | Language Server Protocol |
| 02:33:07 | <EvanR> | cool |
| 02:33:08 | <BrokenClutch> | I use on emacs |
| 02:33:28 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 02:33:29 | <BrokenClutch> | because I'm very h4ck3r :) :) :) |
| 02:34:01 | <EvanR> | I know what that says because I speak leet |
| 02:34:14 | → | retro_ joins (~retro@05412d78.skybroadband.com) |
| 02:35:05 | <BrokenClutch> | EvanR: h4ck3r br0 |
| 02:35:46 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 02:36:10 | <BrokenClutch> | going to play xcom (openxcom), merry christmas |
| 02:36:17 | × | mvk quits (~mvk@2607:fea8:5cdd:f000::917a) (Ping timeout: 240 seconds) |
| 02:37:39 | <EvanR> | cheers |
| 02:37:46 | × | retroid_ quits (~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds) |
| 02:37:46 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 02:47:17 | × | falafel quits (~falafel@2603-8000-d800-688c-502d-7280-71cc-20e7.res6.spectrum.com) (Ping timeout: 240 seconds) |
| 02:48:42 | <sm> | Merry Christmas 🎄 Holidays 🌴 Friday, all |
| 02:49:11 | × | Morrow quits (~quassel@bzq-110-168-31-106.red.bezeqint.net) (Remote host closed the connection) |
| 02:51:25 | × | xff0x quits (~xff0x@2001:1a81:5311:2b00:3f8f:ed06:c623:ab7c) (Ping timeout: 240 seconds) |
| 02:52:30 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 02:53:24 | → | xff0x joins (~xff0x@2001:1a81:534f:cd00:7f66:dac0:537e:5302) |
| 02:56:53 | × | johnw quits (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
| 03:00:07 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 03:02:36 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:02:36 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 03:02:36 | finn_elija | is now known as FinnElija |
| 03:05:31 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 268 seconds) |
| 03:06:13 | → | vicfred joins (~vicfred@user/vicfred) |
| 03:07:45 | <otherwise> | > (head (tail (tail (tail (tail (tail (tail "!sknahT"))))))):(head (tail (tail (tail (tail (tail "!sknahT")))))):(head (tail (tail (tail (tail "!sknahT"))))):(head (tail (tail (tail "!sknahT")))):(head (tail (tail "!sknahT"))):(head (tail "!sknahT")):[(head "!sknahT")] |
| 03:07:47 | <lambdabot> | "Thanks!" |
| 03:11:04 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 268 seconds) |
| 03:14:45 | <dsal> | There's an easier way to write that. :) |
| 03:15:17 | × | euandreh quits (~euandreh@2804:14c:33:9fe5:157f:fad:702e:d7a) (Ping timeout: 240 seconds) |
| 03:15:57 | × | td_ quits (~td@muedsl-82-207-238-144.citykom.de) (Ping timeout: 240 seconds) |
| 03:16:20 | <dsal> | First, |
| 03:16:22 | <dsal> | > let cdddddr = head . tail . tail . tail . tail . tail . tail in cdddddr "!sknahT" |
| 03:16:24 | <lambdabot> | 'T' |
| 03:17:02 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 03:18:07 | → | td_ joins (~td@muedsl-82-207-238-172.citykom.de) |
| 03:21:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 03:25:40 | → | mbuf joins (~Shakthi@122.162.66.42) |
| 03:26:00 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 03:26:32 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 03:26:33 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 03:30:37 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 03:30:38 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:30:38 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 03:30:38 | finn_elija | is now known as FinnElija |
| 03:33:32 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 03:35:05 | <otherwise> | Prelude> head . tail . tail . (tail "12345") : head . tail . (tail "12345"): head . {tail "12345"): (head "12345":[]) |
| 03:35:18 | <otherwise> | thats as close as I could get... |
| 03:35:49 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 03:37:37 | × | waleee quits (~waleee@h-98-128-229-110.NA.cust.bahnhof.se) (Ping timeout: 240 seconds) |
| 03:37:48 | <otherwise> | > restructure <Expr> reverse [3,2,1] |
| 03:37:50 | <lambdabot> | error: |
| 03:37:50 | <lambdabot> | Precedence parsing error |
| 03:37:50 | <lambdabot> | cannot mix ‘<’ [infix 4] and ‘>’ [infix 4] in the same infix expression |
| 03:39:16 | ← | BrokenClutch parts (~pioneer@2804:d41:c2a7:d800:e627:b00b:2c62:134) () |
| 03:41:18 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 268 seconds) |
| 03:50:58 | <dsal> | @src reverse |
| 03:50:58 | <lambdabot> | reverse = foldl (flip (:)) [] |
| 03:54:17 | → | Brandon_IX joins (~brandon@178-79-138-117.ip.linodeusercontent.com) |
| 04:00:40 | → | vicfred joins (~vicfred@user/vicfred) |
| 04:03:49 | <otherwise> | I'm working through recursion chapter in "learn you a haskell..." and am trying to get used to evaluating the recursive process by hand to get a better intuitive understanding. reverse is what I was trying to explicitly evaluate. :) |
| 04:04:46 | <otherwise> | wait... what is @src? that is not the same as :t |
| 04:05:01 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 04:06:56 | <otherwise> | How can I do a comparable command to @src in ghci? It is not :doc and it is not :def |
| 04:08:10 | × | dsrt^ quits (~dsrt@207.5.54.6) (Remote host closed the connection) |
| 04:08:12 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 04:10:19 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 04:12:46 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 04:13:06 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 260 seconds) |
| 04:19:17 | <int-e> | otherwise: no, @src is specific to lambdabot, cf. https://github.com/lambdabot/lambdabot/blob/master/lambdabot/State/source for all the things it knows. (So since it's just a text file, you should take its definitions with a grain of salt. Some of them are what the report says, not what base implements; some are older versions of what base uses. Some may even be completely made up.) |
| 04:19:24 | <int-e> | :t Mu |
| 04:19:25 | <lambdabot> | error: |
| 04:19:25 | <lambdabot> | • Data constructor not in scope: Mu |
| 04:19:25 | <lambdabot> | • Perhaps you meant one of these: |
| 04:19:27 | <int-e> | @src Mu |
| 04:19:27 | <lambdabot> | newtype Mu f = In { out :: f (Mu f) } |
| 04:20:02 | <int-e> | This one, for example, is a type that lambdabot defined locally for some time. Nobody seems to miss it much :P |
| 04:21:00 | <monochrom> | If you don't mind a bit of strong opinion... No, evaluating recursion by hand is not insightful. Your computer has been doing it for its life, has it got smarter? Induction proof is a better way to understand recursion and think up recursive code that works. See my http://www.cs.utoronto.ca/~trebla/CSCC24-2021-Summer/01-haskell-basic.html#synev |
| 04:21:53 | <int-e> | otherwise: as for finding source code... :i in ghci tells you which module defines a function, and that maps to a file name; ghc-pkg can tell you which package that resides in; cabal unpack can unpack the source code for most of the packages |
| 04:21:59 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 04:21:59 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 04:21:59 | → | wroathe joins (~wroathe@user/wroathe) |
| 04:22:07 | ← | nitrix parts (~nitrix@user/nitrix) (Leaving) |
| 04:25:41 | × | ralu quits (~ralu@static.211.245.203.116.clients.your-server.de) (Ping timeout: 268 seconds) |
| 04:29:22 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 04:29:37 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 04:31:52 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:2cf4:5f96:7154:f400) |
| 04:34:01 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 04:34:03 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 04:35:02 | → | vicfred joins (~vicfred@user/vicfred) |
| 04:38:37 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 04:40:54 | → | dyeplexer joins (~dyeplexer@user/dyeplexer) |
| 04:41:54 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 04:41:58 | <otherwise> | momochrom: thanks for the link! :) |
| 04:42:01 | × | Midjak quits (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: This computer has gone to sleep) |
| 04:42:29 | <otherwise> | int-e I see how to run :i |
| 04:42:52 | <otherwise> | but I don't see how to run ghc-pkg |
| 04:43:23 | <otherwise> | I'm typing it into prelude> in many variations, but to no avail... |
| 04:43:36 | <int-e> | otherwise: it's a shell command |
| 04:44:13 | <int-e> | try `ghc-pkg find-module Data.Maybe` |
| 04:45:27 | <otherwise> | oh I see :) |
| 04:45:38 | → | ralu joins (~ralu@static.211.245.203.116.clients.your-server.de) |
| 04:45:57 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 240 seconds) |
| 04:46:20 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4) |
| 04:46:36 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 04:46:37 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 04:47:59 | <otherwise> | ls |
| 04:48:14 | <otherwise> | wrong browser |
| 04:51:44 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 04:52:45 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 05:01:44 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 05:02:20 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 05:03:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 05:05:12 | → | img joins (~img@user/img) |
| 05:07:58 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 05:07:59 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 05:08:29 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 05:08:35 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 05:09:26 | → | alfonsox joins (~quassel@103.92.42.192) |
| 05:14:39 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 05:19:50 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 260 seconds) |
| 05:21:09 | → | mvk joins (~mvk@2607:fea8:5cdd:f000::917a) |
| 05:38:27 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
| 05:39:19 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 05:43:49 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 05:50:26 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 05:51:21 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 05:52:40 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 05:53:48 | → | img joins (~img@user/img) |
| 05:53:49 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 05:54:57 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 05:55:22 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 05:55:22 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 05:55:22 | → | wroathe joins (~wroathe@user/wroathe) |
| 05:58:17 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 05:58:34 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Remote host closed the connection) |
| 06:00:03 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 06:18:13 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 06:21:56 | → | kadir joins (~kadir@88.251.54.120) |
| 06:23:05 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 252 seconds) |
| 06:28:22 | → | johnw joins (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
| 06:35:11 | <int-e> | > unwords $ map (\x -> printf "%.2f" (191 - x/50)) [9386,9386,9232,9098,9000,8916,8870,8856,8819,8680] -- 7th is bogus (only 48 stars) |
| 06:35:12 | <lambdabot> | "3.28 3.28 6.36 9.04 11.00 12.68 13.60 13.88 14.62 17.40" |
| 06:36:51 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 06:38:08 | → | vicfred joins (~vicfred@user/vicfred) |
| 06:38:31 | → | falafel joins (~falafel@2603-8000-d800-688c-502d-7280-71cc-20e7.res6.spectrum.com) |
| 06:40:37 | × | x88x88x quits (~x88x88x@2001:19f0:5:39a8:5400:3ff:feb6:73cb) (Ping timeout: 240 seconds) |
| 06:43:21 | → | x88x88x joins (~x88x88x@2001:19f0:5:39a8:5400:3ff:feb6:73cb) |
| 06:48:39 | → | fef joins (~thedawn@user/thedawn) |
| 06:52:35 | → | ym joins (~ym@pool-96-253-29-94.prvdri.fios.verizon.net) |
| 06:52:51 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 06:57:12 | → | jonathanx joins (~jonathan@217-210-129-139-no2450.tbcn.telia.com) |
| 06:58:18 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 260 seconds) |
| 06:58:58 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 07:00:05 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:03:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 07:12:59 | → | coolnickname joins (uid531864@user/coolnickname) |
| 07:18:34 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 07:18:46 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 07:19:09 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
| 07:20:03 | <otherwise> | trying to take a range of adjacent elements from a list, not sure how to select a specific range... |
| 07:21:31 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 07:21:46 | <otherwise> | I know tail, head, last, `elem` , take, (!!) but none of those will grab, say, the 4th through the 7th indexed elements from a list of length 20. |
| 07:23:06 | <int-e> | > take 4 . drop 3 $ [1..20] |
| 07:23:07 | <lambdabot> | [4,5,6,7] |
| 07:24:35 | <int-e> | > map ([1..20] !!) [3..6] -- make complexity theorists weep |
| 07:24:37 | <lambdabot> | [4,5,6,7] |
| 07:25:21 | <otherwise> | oooooh, I get that . replaces ( ), but what is $ doing? |
| 07:25:44 | × | ym quits (~ym@pool-96-253-29-94.prvdri.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:25:46 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 07:25:50 | <otherwise> | > take 4 (drop 3 [1..20]) |
| 07:25:51 | <lambdabot> | [4,5,6,7] |
| 07:25:54 | <int-e> | it's function application (f $ x = f x) but with a low precedence |
| 07:26:22 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
| 07:26:36 | <dsal> | > (take 4 . drop) [1..20] |
| 07:26:38 | <lambdabot> | error: |
| 07:26:38 | <lambdabot> | • Couldn't match type ‘[a0] -> [a0]’ with ‘[a]’ |
| 07:26:38 | <lambdabot> | Expected type: Int -> [a] |
| 07:26:46 | <dsal> | > (take 4 . drop 3) [1..20] |
| 07:26:47 | <lambdabot> | [4,5,6,7] |
| 07:26:59 | <int-e> | yeah I was typing that :) |
| 07:27:02 | <dsal> | saves you from writing ()s sometimes. Don't mistake it for parens, though. :) |
| 07:30:12 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 07:30:44 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 252 seconds) |
| 07:31:40 | → | lavaman joins (~lavaman@98.38.249.169) |
| 07:33:14 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 07:34:02 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 07:35:33 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 07:35:34 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 07:36:14 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 07:36:56 | → | img joins (~img@user/img) |
| 07:37:07 | <otherwise> | hmmm... !!! It is snowing! |
| 07:41:58 | → | retroid_ joins (~retro@05412d78.skybroadband.com) |
| 07:44:54 | × | fef quits (~thedawn@user/thedawn) (Quit: Leaving) |
| 07:45:19 | → | Morrow joins (~quassel@bzq-110-168-31-106.red.bezeqint.net) |
| 07:45:29 | × | retro_ quits (~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds) |
| 07:45:31 | → | rlj joins (~rlj@62.119.244.114) |
| 07:54:43 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 07:57:17 | × | euandreh quits (~euandreh@2804:14c:33:9fe5:2cf4:5f96:7154:f400) (Ping timeout: 240 seconds) |
| 08:02:19 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 08:02:43 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 08:07:22 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Ping timeout: 260 seconds) |
| 08:07:31 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 08:09:17 | × | img quits (~img@user/img) (Ping timeout: 240 seconds) |
| 08:17:10 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 08:27:28 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 08:35:50 | × | Akiva quits (~Akiva@user/Akiva) (Ping timeout: 260 seconds) |
| 08:43:11 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Remote host closed the connection) |
| 08:46:39 | × | jonathanx quits (~jonathan@217-210-129-139-no2450.tbcn.telia.com) (Ping timeout: 256 seconds) |
| 08:47:01 | → | max22- joins (~maxime@2a01cb0883359800368bc5f3b1060b26.ipv6.abo.wanadoo.fr) |
| 08:49:32 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 08:57:05 | → | acidjnk joins (~acidjnk@p200300d0c7271e974de60a217c79c2cb.dip0.t-ipconnect.de) |
| 09:00:08 | × | thedward[m] quits (~thedwardm@2001:470:69fc:105::f79) (Quit: You have been kicked for being idle) |
| 09:07:45 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Remote host closed the connection) |
| 09:15:22 | → | dsrt^ joins (~dsrt@207.5.54.6) |
| 09:17:42 | → | allbery_b joins (~geekosaur@xmonad/geekosaur) |
| 09:17:42 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 09:17:45 | allbery_b | is now known as geekosaur |
| 09:21:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 09:35:06 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 09:35:20 | → | Tuplanolla joins (~Tuplanoll@91-159-69-236.elisa-laajakaista.fi) |
| 09:35:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 09:38:01 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 09:38:02 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 09:38:33 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 09:38:43 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 09:38:55 | ← | jakalx parts (~jakalx@base.jakalx.net) (Disconnected: Replaced by new connection) |
| 09:38:56 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 09:53:14 | → | vysn joins (~vysn@user/vysn) |
| 10:01:37 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 10:06:04 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 10:08:08 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 10:10:54 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:11:31 | × | rlj quits (~rlj@62.119.244.114) (Ping timeout: 256 seconds) |
| 10:12:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 10:15:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 10:16:34 | → | jonathanx joins (~jonathan@217-210-129-139-no2450.tbcn.telia.com) |
| 10:18:58 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 10:23:33 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
| 10:23:41 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 10:24:58 | Lord_of_Life_ | is now known as Lord_of_Life |
| 10:26:34 | × | meinside quits (uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 10:32:42 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 10:32:43 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 10:33:13 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 10:33:23 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 10:36:01 | × | sim590 quits (~simon@modemcable157.243-56-74.mc.videotron.ca) (Ping timeout: 256 seconds) |
| 10:42:15 | × | foul_owl quits (~kerry@94.140.8.107) (Ping timeout: 256 seconds) |
| 10:43:23 | × | kaph_ quits (~kaph@net-2-45-51-147.cust.vodafonedsl.it) (Ping timeout: 256 seconds) |
| 10:44:57 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:47:21 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 10:57:28 | → | foul_owl joins (~kerry@212.102.47.57) |
| 11:00:52 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 11:15:57 | × | jonathanx quits (~jonathan@217-210-129-139-no2450.tbcn.telia.com) (Ping timeout: 240 seconds) |
| 11:16:20 | → | jonathanx joins (~jonathan@217-210-129-139-no2450.tbcn.telia.com) |
| 11:18:32 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 11:18:59 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 11:20:20 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
| 11:20:56 | → | rito_ joins (~rito_gh@45.112.243.69) |
| 11:32:42 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 11:32:43 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 11:33:12 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 11:33:20 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 11:34:46 | → | SummerSonw joins (~The_viole@203.77.49.232) |
| 11:38:39 | × | otherwise quits (~otherwise@2601:602:880:90f0:2164:480c:998d:fc7c) (Remote host closed the connection) |
| 11:47:50 | × | jonathanx quits (~jonathan@217-210-129-139-no2450.tbcn.telia.com) (Ping timeout: 268 seconds) |
| 11:52:38 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 12:01:17 | → | zer0bitz joins (~zer0bitz@196.244.192.54) |
| 12:07:57 | × | falafel quits (~falafel@2603-8000-d800-688c-502d-7280-71cc-20e7.res6.spectrum.com) (Ping timeout: 240 seconds) |
| 12:08:43 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 12:10:24 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 12:11:02 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
| 12:11:47 | × | acidjnk quits (~acidjnk@p200300d0c7271e974de60a217c79c2cb.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 12:14:37 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 12:17:20 | → | otherwise joins (~otherwise@2601:602:880:90f0:99a0:b26e:2b10:8f04) |
| 12:17:44 | → | waleee joins (~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) |
| 12:19:20 | → | Midjak joins (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) |
| 12:21:37 | × | otherwise quits (~otherwise@2601:602:880:90f0:99a0:b26e:2b10:8f04) (Ping timeout: 240 seconds) |
| 12:25:10 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 12:25:46 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 12:25:51 | → | Hanicef joins (~hanicef@78-71-43-30-no260.tbcn.telia.com) |
| 12:27:02 | × | mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 240 seconds) |
| 12:28:17 | → | __monty__ joins (~toonn@user/toonn) |
| 12:29:46 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 12:30:36 | × | Alex_test_ quits (~al_test@178.34.160.99) (Quit: ;-) |
| 12:30:49 | → | Alex_test joins (~al_test@178.34.160.99) |
| 12:31:01 | × | AlexZenon_2 quits (~alzenon@178.34.160.99) (Quit: ;-) |
| 12:31:16 | → | AlexZenon joins (~alzenon@178.34.160.99) |
| 12:35:53 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 12:47:22 | → | Jing joins (~hedgehog@2604:a840:3::1061) |
| 12:51:22 | → | neceve joins (~quassel@2.26.93.228) |
| 12:54:02 | → | zincy joins (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) |
| 12:54:26 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds) |
| 12:58:18 | → | otherwise joins (~otherwise@2601:602:880:90f0:e950:bc2c:6464:aa5b) |
| 13:02:17 | × | otherwise quits (~otherwise@2601:602:880:90f0:e950:bc2c:6464:aa5b) (Ping timeout: 240 seconds) |
| 13:15:32 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 13:21:25 | × | zincy quits (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) (Remote host closed the connection) |
| 13:23:00 | → | zincy joins (~zincy@host86-151-99-97.range86-151.btcentralplus.com) |
| 13:28:04 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 13:28:50 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 13:29:19 | → | jonathanx joins (~jonathan@217-210-129-139-no2450.tbcn.telia.com) |
| 13:30:42 | → | syrkis joins (~syrkis@82.192.167.70) |
| 13:34:08 | → | lavaman joins (~lavaman@98.38.249.169) |
| 13:34:40 | × | xkuru quits (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
| 13:38:17 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 13:42:49 | × | zincy quits (~zincy@host86-151-99-97.range86-151.btcentralplus.com) (Remote host closed the connection) |
| 13:46:59 | × | Hanicef quits (~hanicef@78-71-43-30-no260.tbcn.telia.com) (Quit: leaving) |
| 13:48:54 | → | neurocyte0132889 joins (~neurocyte@94.16.90.231) |
| 13:48:54 | × | neurocyte0132889 quits (~neurocyte@94.16.90.231) (Changing host) |
| 13:48:54 | → | neurocyte0132889 joins (~neurocyte@user/neurocyte) |
| 13:49:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 13:49:43 | → | zincy joins (~zincy@host86-151-99-97.range86-151.btcentralplus.com) |
| 13:52:37 | × | zincy quits (~zincy@host86-151-99-97.range86-151.btcentralplus.com) (Remote host closed the connection) |
| 13:52:48 | <alfonsox> | snowing is lot better than implementing bubble sort in haskell. :) |
| 13:59:11 | × | Inoperable quits (~PLAYER_1@fancydata.science) (Excess Flood) |
| 14:05:34 | → | Inoperable joins (~PLAYER_1@fancydata.science) |
| 14:05:35 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 14:05:36 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 14:05:52 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 14:15:13 | × | rito_ quits (~rito_gh@45.112.243.69) (Quit: Leaving) |
| 14:19:19 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 14:19:55 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 14:23:32 | → | notzmv joins (~zmv@user/notzmv) |
| 14:24:37 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 14:25:55 | × | max22- quits (~maxime@2a01cb0883359800368bc5f3b1060b26.ipv6.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
| 14:26:58 | → | CiaoSen joins (~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 14:29:04 | → | kupi joins (uid212005@id-212005.hampstead.irccloud.com) |
| 14:37:08 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:5d5c:8c41:79c4:9b80) |
| 14:37:48 | → | max22- joins (~maxime@2a01cb0883359800ac192c9334b98292.ipv6.abo.wanadoo.fr) |
| 14:38:19 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 14:53:36 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 14:53:36 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 14:53:36 | finn_elija | is now known as FinnElija |
| 15:02:19 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 15:04:34 | × | jonathanx quits (~jonathan@217-210-129-139-no2450.tbcn.telia.com) (Ping timeout: 260 seconds) |
| 15:06:48 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
| 15:07:29 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 15:08:52 | × | syrkis quits (~syrkis@82.192.167.70) (Quit: Client closed) |
| 15:09:11 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 15:10:34 | <ProfSimm> | Is it possible to have something be both a function and a number, until it's used in some context |
| 15:11:40 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:11:40 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 15:11:40 | → | wroathe joins (~wroathe@user/wroathe) |
| 15:12:27 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 15:16:37 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 15:22:41 | <pavonia> | `Num a => a` can also be a function |
| 15:22:44 | × | coolnickname quits (uid531864@user/coolnickname) (Quit: Connection closed for inactivity) |
| 15:23:05 | <pavonia> | ProfSimm: Could you explain a bit more what you are trying to do? |
| 15:30:36 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds) |
| 15:32:20 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 15:34:10 | × | timCF quits (~timCF@m91-129-100-224.cust.tele2.ee) (Ping timeout: 268 seconds) |
| 15:35:16 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 15:35:33 | × | rembo10 quits (~rembo10@2a01:4f9:c010:b5b9::1) (Quit: ZNC 1.8.2 - https://znc.in) |
| 15:36:43 | → | rembo10 joins (~rembo10@remulis.com) |
| 15:41:27 | × | dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 256 seconds) |
| 15:46:17 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 15:49:51 | → | ym joins (~ym@pool-96-253-29-94.prvdri.fios.verizon.net) |
| 15:54:52 | → | dyeplexer joins (~dyeplexer@user/dyeplexer) |
| 16:00:37 | × | xff0x quits (~xff0x@2001:1a81:534f:cd00:7f66:dac0:537e:5302) (Ping timeout: 240 seconds) |
| 16:01:37 | → | xff0x joins (~xff0x@port-92-195-117-208.dynamic.as20676.net) |
| 16:01:55 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 16:03:45 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 16:04:04 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 16:08:31 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 16:11:41 | → | jonathanx joins (~jonathan@c-5eea3423-74736162.cust.telenor.se) |
| 16:15:19 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 16:20:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 16:31:53 | × | amk quits (~amk@109.255.169.126) (Ping timeout: 256 seconds) |
| 16:32:54 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:33:22 | → | amk joins (~amk@109.255.169.126) |
| 16:36:49 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 16:37:08 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 16:39:18 | → | zincy joins (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) |
| 16:40:02 | × | dan-so quits (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) (Ping timeout: 240 seconds) |
| 16:40:26 | → | dan-so joins (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) |
| 16:41:23 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 16:43:52 | → | acode joins (~acode@151.65.31.181) |
| 16:46:32 | × | alfonsox quits (~quassel@103.92.42.192) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 16:46:59 | → | BrokenClutch joins (~pioneer@2804:d41:c2a7:d800:e627:b00b:2c62:134) |
| 16:57:14 | → | coolnickname joins (uid531864@user/coolnickname) |
| 16:57:59 | × | zincy quits (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) (Remote host closed the connection) |
| 16:59:31 | × | dan-so quits (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) (Ping timeout: 245 seconds) |
| 17:01:27 | → | dan-so joins (~danso@2001:1970:52e7:d000:96b8:6dff:feb3:c009) |
| 17:03:16 | × | mbuf quits (~Shakthi@122.162.66.42) (Quit: Leaving) |
| 17:05:21 | → | jonathanx_ joins (~jonathan@94.234.52.93) |
| 17:07:52 | → | jonathanx__ joins (~jonathan@94.234.54.197) |
| 17:08:17 | × | jonathanx quits (~jonathan@c-5eea3423-74736162.cust.telenor.se) (Ping timeout: 240 seconds) |
| 17:09:25 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 17:09:29 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 17:09:57 | × | CiaoSen quits (~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 17:10:02 | × | jonathanx_ quits (~jonathan@94.234.52.93) (Ping timeout: 240 seconds) |
| 17:14:04 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 17:18:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 240 seconds) |
| 17:20:01 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 17:21:06 | → | zaquest joins (~notzaques@5.130.79.72) |
| 17:21:27 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 17:22:11 | → | bollu joins (uid233390@id-233390.helmsley.irccloud.com) |
| 17:24:37 | → | jonathanx joins (~jonathan@c-5eea36c5-74736162.cust.telenor.se) |
| 17:25:17 | × | jonathanx__ quits (~jonathan@94.234.54.197) (Ping timeout: 240 seconds) |
| 17:26:54 | × | d34df00d quits (~d34df00d@2600:1700:8c60:3a10::48) (Remote host closed the connection) |
| 17:29:41 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 17:32:12 | → | econo joins (uid147250@user/econo) |
| 17:34:19 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 17:35:24 | → | lavaman joins (~lavaman@98.38.249.169) |
| 17:37:28 | → | sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca) |
| 17:38:07 | × | xff0x quits (~xff0x@port-92-195-117-208.dynamic.as20676.net) (Ping timeout: 268 seconds) |
| 17:39:53 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 17:44:10 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
| 17:44:53 | → | otherwise joins (~otherwise@2601:602:880:90f0:1e0:4b16:58ed:4062) |
| 17:45:57 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 17:48:57 | × | otherwise quits (~otherwise@2601:602:880:90f0:1e0:4b16:58ed:4062) (Ping timeout: 240 seconds) |
| 17:49:51 | → | falafel joins (~falafel@2603-8000-d800-688c-502d-7280-71cc-20e7.res6.spectrum.com) |
| 17:51:47 | × | jonathanx quits (~jonathan@c-5eea36c5-74736162.cust.telenor.se) (Ping timeout: 256 seconds) |
| 17:57:52 | → | bitmapper joins (uid464869@id-464869.lymington.irccloud.com) |
| 17:59:41 | → | y04nn joins (~y04nn@92.223.89.196) |
| 18:00:44 | → | otherwise joins (~otherwise@2601:602:880:90f0:7d7a:d907:94bf:c6c8) |
| 18:04:00 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 18:07:05 | × | SummerSonw quits (~The_viole@203.77.49.232) (Ping timeout: 256 seconds) |
| 18:09:34 | → | xff0x joins (~xff0x@2001:1a81:534f:cd00:913d:8a40:152a:49ac) |
| 18:11:41 | × | kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 18:15:04 | × | acode quits (~acode@151.65.31.181) (Quit: Client closed) |
| 18:16:56 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:19:53 | <BrokenClutch> | after days of not sleeping well, i think i got reactive-banana |
| 18:20:09 | <dsal> | Hopefully it's treatable. |
| 18:20:19 | <BrokenClutch> | \o/. I think it's too much for what i want to do. It's not |
| 18:20:50 | <BrokenClutch> | I got the idea of reactive-banana. Sorry, don't know how to form phrases |
| 18:33:37 | × | dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 268 seconds) |
| 18:35:16 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 18:35:19 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 18:35:46 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 18:35:57 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 18:36:14 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 18:36:14 | × | ridcully quits (~ridcully@pd951fb88.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 18:36:26 | → | ridcully joins (~ridcully@pd951fb88.dip0.t-ipconnect.de) |
| 18:36:32 | <BrokenClutch> | is it wrong to store callbacks inside a state monad? |
| 18:38:01 | <Noinia> | Question: I'm building some web application with haskell frontend and backend. When in "development mode" I essentially want the server to send some piece of JS that tells the client to use JSAddle rather than the "real" js implementation. Does anyone know how to achieve that? I'm sure I'm not the first one who would want s.t. like this. |
| 18:42:22 | <BrokenClutch> | Noinia: Let me see if I understood, You want to listen to the server and wait a signal? |
| 18:45:16 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: Replaced by new connection) |
| 18:45:17 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 18:45:44 | ← | qrpnxz parts (abc4f95c31@user/qrpnxz) (Disconnected: closed) |
| 18:45:45 | <Noinia> | I want something like this: in my browser I go to myServerAddress.com, which would normally serve some piece of js code containing the full client. Rather than the "full client" I want to locally run a jsaddle process (of the client), so that whatever js interactions I do with my page are actually handled by that local jsaddle process. |
| 18:45:51 | → | qrpnxz joins (abc4f95c31@user/qrpnxz) |
| 18:46:13 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 18:46:33 | <Noinia> | so presumably instead of the "full js" the server would need to send some piece of js that says something along the lines of "start communicating with this local process" |
| 18:48:08 | <BrokenClutch> | Oh. Now I understood. But I don't know how to do it. :( |
| 18:48:18 | <Noinia> | I tried copying the jsaddle.js that jsaddle normally serves, but even if I approprately adapt the port it opens some websocket to it seems that does not yet work (because of security reasons it seems). |
| 18:48:39 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 18:51:11 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 18:51:25 | × | y04nn quits (~y04nn@92.223.89.196) (Remote host closed the connection) |
| 18:52:18 | × | shapr quits (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 260 seconds) |
| 18:53:37 | × | falafel quits (~falafel@2603-8000-d800-688c-502d-7280-71cc-20e7.res6.spectrum.com) (Ping timeout: 240 seconds) |
| 19:03:57 | × | otherwise quits (~otherwise@2601:602:880:90f0:7d7a:d907:94bf:c6c8) (Ping timeout: 240 seconds) |
| 19:11:01 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 19:11:32 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 19:12:34 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 19:14:57 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 19:15:49 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 19:16:02 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Ping timeout: 240 seconds) |
| 19:20:23 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) (Ping timeout: 250 seconds) |
| 19:21:33 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 19:23:37 | → | yauhsien joins (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) |
| 19:26:07 | → | Pickchea joins (~private@user/pickchea) |
| 19:26:36 | → | vicfred joins (~vicfred@user/vicfred) |
| 19:28:41 | × | yauhsien quits (~yauhsien@118-167-43-174.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 19:29:41 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 19:30:01 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 19:30:23 | × | benin quits (~benin@183.82.27.57) (Ping timeout: 256 seconds) |
| 19:30:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:31:16 | justSleigh | is now known as justIrresolute |
| 19:32:40 | ← | BrokenClutch parts (~pioneer@2804:d41:c2a7:d800:e627:b00b:2c62:134) () |
| 19:32:53 | → | benin joins (~benin@183.82.27.57) |
| 19:34:13 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 19:40:21 | → | shapr joins (~user@pool-108-28-144-11.washdc.fios.verizon.net) |
| 19:50:23 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8415:925f:506a:a363) |
| 19:57:17 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 19:57:59 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 20:04:57 | × | juhp quits (~juhp@128.106.188.82) (Ping timeout: 240 seconds) |
| 20:07:33 | → | juhp joins (~juhp@128.106.188.82) |
| 20:17:28 | → | zincy joins (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) |
| 20:22:40 | → | shriekingnoise joins (~shrieking@186.137.144.80) |
| 20:23:33 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 20:23:33 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 20:23:33 | finn_elija | is now known as FinnElija |
| 20:24:36 | × | shapr quits (~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 20:27:26 | → | Everything joins (~Everythin@37.115.210.35) |
| 20:27:43 | × | zincy quits (~zincy@2a00:23c8:970c:4801:bdb9:8c5f:3085:2807) (Remote host closed the connection) |
| 20:28:13 | × | Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in) |
| 20:30:47 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:30:47 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 20:30:47 | → | wroathe joins (~wroathe@user/wroathe) |
| 20:31:40 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 20:31:59 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 20:33:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 20:36:33 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 20:40:55 | × | benin quits (~benin@183.82.27.57) (Quit: The Lounge - https://thelounge.chat) |
| 20:43:21 | → | acode joins (~acode@151.65.31.181) |
| 20:50:07 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 20:50:55 | → | pavonia joins (~user@user/siracusa) |
| 21:01:40 | <monochrom> | Nice, GHC 9.0.2, now supports M1. |
| 21:01:51 | × | bollu quits (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
| 21:03:38 | → | otherwise joins (~otherwise@2601:602:880:90f0:8162:5dfa:7602:6575) |
| 21:03:49 | × | juri_ quits (~juri@178.63.35.222) (Ping timeout: 240 seconds) |
| 21:04:43 | <sshine> | woot. two days before I hand back my M1 MacBook. |
| 21:08:31 | <otherwise> | phwew, for a second I thought you said "back hand". |
| 21:11:09 | → | ProfSimm joins (~ProfSimm@87.227.196.109) |
| 21:14:41 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 21:21:45 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 21:30:03 | → | zebrag joins (~chris@user/zebrag) |
| 21:32:43 | → | xkuru joins (~xkuru@user/xkuru) |
| 21:34:17 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 240 seconds) |
| 21:35:15 | → | xlei joins (~akans@pool-68-129-84-118.nycmny.fios.verizon.net) |
| 21:37:07 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:37:32 | × | xff0x quits (~xff0x@2001:1a81:534f:cd00:913d:8a40:152a:49ac) (Ping timeout: 240 seconds) |
| 21:38:46 | → | xff0x joins (~xff0x@2001:1a81:534f:cd00:2537:409e:e003:9b4d) |
| 21:41:17 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 21:42:22 | × | xlei quits (~akans@pool-68-129-84-118.nycmny.fios.verizon.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 21:43:03 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 21:43:11 | → | xlei joins (~akans@pool-68-129-84-118.nycmny.fios.verizon.net) |
| 21:46:00 | → | juri_ joins (~juri@178.63.35.222) |
| 21:47:45 | → | Pickchea joins (~private@user/pickchea) |
| 21:48:28 | × | zer0bitz quits (~zer0bitz@196.244.192.54) (Ping timeout: 268 seconds) |
| 21:48:42 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 21:49:20 | ← | kadir parts (~kadir@88.251.54.120) (goodnight) |
| 21:52:52 | → | yauhsien joins (~yauhsien@61-231-42-148.dynamic-ip.hinet.net) |
| 21:52:56 | → | falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com) |
| 21:53:07 | → | jgeerds joins (~jgeerds@55d4ac73.access.ecotel.net) |
| 21:54:37 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 240 seconds) |
| 21:55:41 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 21:57:09 | → | CiaoSen joins (~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 21:58:17 | × | yauhsien quits (~yauhsien@61-231-42-148.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 22:00:29 | → | BrokenClutch joins (~pioneer@2804:d41:c2a7:d800:e627:b00b:2c62:134) |
| 22:01:10 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 22:01:20 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:02:23 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 22:03:27 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
| 22:03:44 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 22:08:58 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 22:10:21 | → | coot joins (~coot@89-64-85-93.dynamic.chello.pl) |
| 22:11:18 | × | jgeerds quits (~jgeerds@55d4ac73.access.ecotel.net) (Remote host closed the connection) |
| 22:11:43 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Remote host closed the connection) |
| 22:12:13 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 22:13:26 | × | otherwise quits (~otherwise@2601:602:880:90f0:8162:5dfa:7602:6575) (Remote host closed the connection) |
| 22:14:46 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 22:15:09 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 22:19:07 | → | otherwise joins (~otherwise@2601:602:880:90f0:144d:55a8:1e87:818) |
| 22:26:36 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds) |
| 22:28:12 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 22:30:41 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:31:10 | → | kupi joins (uid212005@id-212005.hampstead.irccloud.com) |
| 22:34:05 | × | coot quits (~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot) |
| 22:36:49 | × | deadmarshal quits (~deadmarsh@95.38.229.175) (Ping timeout: 256 seconds) |
| 22:37:47 | × | ym quits (~ym@pool-96-253-29-94.prvdri.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 22:41:45 | → | benin joins (~benin@183.82.27.57) |
| 22:47:07 | <otherwise> | > let multVector n [] = []; multVector n (x:xs) = n*x : multVector n xs in multVector 3 [1,2,3,4] |
| 22:47:09 | <lambdabot> | [3,6,9,12] |
| 22:47:16 | <otherwise> | BOOYA! |
| 22:47:46 | <otherwise> | my first successful recursive function. Feels good |
| 22:49:21 | → | ymherklotz joins (~ymherklot@139.59.166.119) |
| 22:57:05 | × | max22- quits (~maxime@2a01cb0883359800ac192c9334b98292.ipv6.abo.wanadoo.fr) (Quit: Leaving) |
| 22:57:32 | × | falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 268 seconds) |
| 22:59:07 | <BrokenClutch> | otherwise: congrats :) |
| 23:00:45 | <otherwise> | :) certainly is a little awkward getting the hang of this type of notation at first. So this little triumph is motivating. |
| 23:01:19 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 23:02:19 | <lechner> | Hi, Hackage has no documentation for aeson-schema. Can I find it anywhere else? Thanks! |
| 23:03:37 | → | aaron joins (~user@93.48.228.52) |
| 23:04:19 | × | juri_ quits (~juri@178.63.35.222) (Ping timeout: 268 seconds) |
| 23:04:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 23:04:50 | → | KvL joins (~KvL@45.248.78.202) |
| 23:04:50 | × | KvL quits (~KvL@45.248.78.202) (Client Quit) |
| 23:05:29 | → | KvL joins (~KvL@45.248.78.202) |
| 23:05:35 | <aaron> | hi, does anyone know what happened to the learnyouahaskell.com site? |
| 23:06:46 | → | vysn joins (~vysn@user/vysn) |
| 23:08:12 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds) |
| 23:08:22 | × | ProfSimm quits (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
| 23:08:39 | <aaron> | I would like to purchase the book, but noticed that the only edition is from 2011 |
| 23:09:23 | <aaron> | so I was hoping to visit the website to see if there have been substantial changes online compared to the printed edition |
| 23:09:54 | → | acidjnk joins (~acidjnk@p200300d0c7271e268c494fdd7858bb85.dip0.t-ipconnect.de) |
| 23:10:45 | <BrokenClutch> | lechner: I think that the whole lib is outdated, but i'm not sure |
| 23:11:06 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 23:12:15 | <BrokenClutch> | lechner: I was wrong, but I can't find the documentation too |
| 23:12:28 | <otherwise> | aaron: Are you wanting to buy the book to support the author or because you prefer to have physical copy? |
| 23:13:43 | <aaron> | well, I surely would like to support the author, but to be honest my main reason is having a printed copy from which to study |
| 23:14:15 | <BrokenClutch> | lechner: I think I've found it, https://hackage.haskell.org/package/aeson-schema-0.2.0.0/docs/Data-Aeson-Schema.html |
| 23:14:41 | <lechner> | BrokenClutch: i think that one is outdated |
| 23:14:52 | <geekosaur> | very |
| 23:14:57 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 23:15:00 | <BrokenClutch> | lechner: But it's the only one I think |
| 23:15:14 | <BrokenClutch> | 0.4 |
| 23:15:20 | <geekosaur> | I note the latest version has a build conflict on template-haskell according to its build log |
| 23:15:30 | <BrokenClutch> | https://hackage.haskell.org/package/aeson-schema-0.4.0.0/docs/Data-Aeson-Schema.html |
| 23:15:39 | <lechner> | thanks! |
| 23:15:40 | <BrokenClutch> | that one is the newest |
| 23:15:43 | → | sprout joins (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) |
| 23:15:50 | <BrokenClutch> | but isn't the newest version |
| 23:16:23 | <otherwise> | in my opinion (I'm a beginner going through learn you a haskell right now, by the way), learn you a haskell is not to be used as "the one and only resource for learning haskell" |
| 23:16:26 | <BrokenClutch> | but it has the same little number, dunno, me dumb |
| 23:16:45 | → | Lycurgus joins (~juan@98.4.112.204) |
| 23:17:26 | <otherwise> | point being, the printed version would be very useful even if it is not as updated as the website (I don't have the answer to whether it is), and regardless of whether using the printed or online version, you will probably be supplementing with other resources. |
| 23:17:55 | <BrokenClutch> | lenchner: https://hackage.haskell.org/package/aeson-schema-0.4.1.2/docs/Data-Aeson-Schema.html, Now I've verified, that's the most att one |
| 23:17:55 | <Lycurgus> | aaron, apparently the author decided that your buying the last available print editions is what e wants |
| 23:18:04 | <Lycurgus> | e still owns the domain |
| 23:18:33 | <Lycurgus> | the title in question has to some extent jaded the intended audience |
| 23:18:51 | <aaron> | ok, thank you very much for your answers |
| 23:18:55 | <lechner> | how long has it been down? |
| 23:19:58 | Lycurgus | has no idea |
| 23:20:37 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 240 seconds) |
| 23:20:46 | <Lycurgus> | i sense a has moved on from haskell situation |
| 23:21:25 | <aaron> | I just noticed this evening |
| 23:21:48 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:21:51 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds) |
| 23:21:55 | <lechner> | maybe unattended updates broke the site? |
| 23:22:35 | <Lycurgus> | don't think so |
| 23:22:36 | <geekosaur> | it's a domain failure |
| 23:22:42 | <Lycurgus> | the domain's not routing |
| 23:22:43 | <aaron> | I was worried that I might purchase the book and then the site gets update with the second edition, ahah |
| 23:22:45 | <geekosaur> | nxdomain = domain gone |
| 23:22:51 | <acode> | It was up yesterday, I was reading it |
| 23:23:01 | <aaron> | ok, awesome news |
| 23:23:06 | <Lycurgus> | ah, a fact! |
| 23:23:07 | <hpc> | use archive.org |
| 23:23:19 | <geekosaur> | hm, so did they just let the domain expire? |
| 23:23:55 | <geekosaur> | or is this a DNS configuration issue that might get fixed sometime next week (or next year if the folks responsible take the entire holiday period off) |
| 23:23:59 | <hpc> | it expires in august of next year |
| 23:24:02 | <Lycurgus> | i.e. as distinct from an after-the |
| 23:24:09 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 23:24:25 | <Lycurgus> | with the new fact |
| 23:24:44 | <hpc> | it's a temporary error, hopefully |
| 23:24:53 | <hpc> | in my dig it's not nxdomain, it's servfail |
| 23:24:55 | <Lycurgus> | the surmise is he just let the name expiry or such lapse and will restore presently |
| 23:24:59 | × | Bartol quits (~Bartol@user/Bartol) (Ping timeout: 256 seconds) |
| 23:25:01 | <Lycurgus> | 30% confidence |
| 23:25:24 | <geekosaur> | nxdomain is what chrome gave me here |
| 23:25:30 | <Lycurgus> | 70% moved on from hs |
| 23:25:34 | <hpc> | chrome doesn't know how to error correctly |
| 23:25:36 | <BrokenClutch> | probably a conspiracy, the schemers are behind this! |
| 23:25:50 | <acode> | In the meantime I checked archive.org as suggested above and there seems to be a full copy of the website there |
| 23:25:54 | <int-e> | the domain hasn't expired, but the listed nameservers don't know about it |
| 23:25:59 | <geekosaur> | interestingly dig also gives servfail |
| 23:26:20 | <lechner> | DNS does not resolve via Google's public DNS. it could be an error implementing DNSSEC |
| 23:26:26 | <Lycurgus> | right that's how I knew he still owned it and yeah that means it can't be name expiry |
| 23:26:48 | <aaron> | awesome, trying to use archive.org as suggested by hpc |
| 23:26:56 | <aaron> | in the meanwhile |
| 23:27:43 | <Lycurgus> | updates to it are utterly a non issue, should think that was clear by no |
| 23:27:45 | <Lycurgus> | w |
| 23:27:47 | <BrokenClutch> | I still think it's a conspiracy, a l33t hack3r 4tt4ck |
| 23:28:35 | <Lycurgus> | so we now have |
| 23:29:10 | <Lycurgus> | 20% hosting ignored and might come back soon |
| 23:29:26 | <Lycurgus> | 80% hs fatigue |
| 23:29:58 | <int-e> | So... the hosting provider says... "You have requested a site that is currently offline. This generally happens when a site is temporarily disabled for some reason, but has not been permanently removed." |
| 23:30:01 | <geekosaur> | servfail is unlikely to be hs fatigue, more likely to be dns misconfiguration |
| 23:30:30 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:30:36 | <int-e> | (That's after putting 208.94.116.26 learnyouahaskell.com into my /etc/hosts) |
| 23:30:47 | <Lycurgus> | it coming back quickly would support dns misconfig |
| 23:31:25 | <int-e> | so it seems deliberate, no clue what's going on |
| 23:31:55 | <geekosaur> | servfail seems an odd way to do that though |
| 23:32:10 | <lechner> | yeah, a link to amazon would be better |
| 23:32:59 | <geekosaur> | a link to that "offline" page would be better. or a straight up failure to resolve as opposed to a servfail |
| 23:33:22 | <lechner> | maybe the author is busy with a major public holiday |
| 23:33:32 | Lycurgus | AWS hosting would be a salient fact but defocusing this stream |
| 23:33:39 | × | Lycurgus quits (~juan@98.4.112.204) (Quit: Exeunt) |
| 23:33:48 | <int-e> | "deliberate" -- on part of the hosting provider (nearlyfreespeech.net), not the site author... |
| 23:36:11 | <int-e> | geekosaur: and yeah, it is weird to just drop the DNS entry like that |
| 23:36:38 | <geekosaur> | dropping the entry would not be that weird. servfail-ing it is |
| 23:37:17 | <geekosaur> | nxdomain vs. servfail |
| 23:37:23 | <otherwise> | uhh, i just refreshed my learn you a haskell page (which was working yesterday) and now it cant be reached... only archive.org as you all say |
| 23:39:52 | <otherwise> | aaron, also try your online collection of e-books from your local library. Mine has access to "Get Programming In Haskell" by Will Kurt, which is probably a better resource anyway, albeit less whimsical... |
| 23:40:19 | <BrokenClutch> | wait, is pastebin not working too? |
| 23:40:42 | <lechner> | alien invasion! |
| 23:40:54 | <geekosaur> | which pastebin? |
| 23:41:05 | <geekosaur> | paste.tomsmeding.com works here |
| 23:41:24 | <int-e> | FWIW: https://int-e.eu/~bf3/tmp/lyah-offline.png ...of course if this is a case of server maintenance gone wrong then this may be a fluke too. |
| 23:41:37 | <BrokenClutch> | pastebin.com |
| 23:42:08 | <acode> | pastebin.com is working for me |
| 23:42:17 | <geekosaur> | consider that a request to not use it :) |
| 23:42:39 | <BrokenClutch> | wait, my ISP blocked pastebin. WHY? |
| 23:42:54 | geekosaur | has abrowser add-on to force the raw site because ye gods, but that also disables e.g. line numbers |
| 23:43:30 | <BrokenClutch> | geekosaur: What's the problem with pastebin.com ? |
| 23:43:51 | <geekosaur> | pastebins are often blocked by content-based blockers because they're often used for sharing stolen passwords and the like |
| 23:44:07 | <geekosaur> | it's ugly, it's full of ads, its haskell markup is eye-bleeding |
| 23:44:34 | <BrokenClutch> | But, but, I wanted to use it :( |
| 23:44:46 | <hpc> | use the link in the topic instead |
| 23:45:03 | <lechner> | for GP, dpaste.org is nice |
| 23:46:05 | <lechner> | never mind: "dpaste is going to be terminated as of January 1, 2022." |
| 23:47:01 | × | Jing quits (~hedgehog@2604:a840:3::1061) (Remote host closed the connection) |
| 23:47:39 | → | Jing joins (~hedgehog@2604:a840:3::1061) |
| 23:48:02 | × | sprout quits (~quassel@2a02:a467:ccd6:1:5c9e:b916:30fd:4234) (Ping timeout: 240 seconds) |
| 23:51:29 | <sm> | I don't know why anyone would use pastebin . com except for the mnemonic url |
| 23:53:10 | <sm> | guess I answered my own question |
| 23:53:34 | <aaron> | otherwise thanks very much for your advice on "Get Programming In Haskell" |
| 23:54:02 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 23:54:06 | <aaron> | am looking in to it (amazon preview) |
| 23:55:57 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
| 23:57:21 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 268 seconds) |
| 23:57:21 | <lechner> | there are many options. fwiw, i like this one: http://dev.stephendiehl.com/hask/ |
| 23:58:20 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 23:58:48 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
| 23:58:48 | <geekosaur> | bpa.st is still around |
| 23:59:24 | <geekosaur> | new url but still around (bpaste.net redirects to it) |
All times are in UTC on 2021-12-25.