2022-02-20 00:00:37 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 00:04:52 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 00:10:28 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2022-02-20 00:12:02 +0100 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Read error: Connection reset by peer) |
2022-02-20 00:12:48 +0100 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
2022-02-20 00:15:12 +0100 | modnar | (~modnar@shell.sonic.net) (Quit: No Ping reply in 180 seconds.) |
2022-02-20 00:16:25 +0100 | modnar | (~modnar@shell.sonic.net) |
2022-02-20 00:16:26 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 00:22:01 +0100 | michalz | (~michalz@185.246.204.33) (Remote host closed the connection) |
2022-02-20 00:22:25 +0100 | zer0bitz | (~zer0bitz@2001:2003:f74d:b800:34e0:8b74:dd2c:1d62) (Ping timeout: 256 seconds) |
2022-02-20 00:23:09 +0100 | cynomys | (~cynomys@user/cynomys) (Quit: Lost terminal) |
2022-02-20 00:23:49 +0100 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 272 seconds) |
2022-02-20 00:24:58 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 00:24:59 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 00:25:10 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 00:25:48 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 00:29:05 +0100 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Quit: ERC (IRC client for Emacs 27.1)) |
2022-02-20 00:30:45 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 00:30:45 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 00:30:45 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 00:43:10 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 00:46:26 +0100 | chomwitt | (~chomwitt@2a02:587:dc04:5f00:97ff:5c76:a7e3:730d) (Remote host closed the connection) |
2022-02-20 00:46:39 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 00:54:16 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 00:57:17 +0100 | thyriaen | (~thyriaen@dynamic-078-055-141-021.78.55.pool.telefonica.de) |
2022-02-20 00:58:54 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-02-20 00:59:08 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:682c:7604:30f7:a4ea) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 00:59:52 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:682c:7604:30f7:a4ea) |
2022-02-20 01:00:20 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 256 seconds) |
2022-02-20 01:01:04 +0100 | acidjnk | (~acidjnk@p200300d0c7363f90cc2edb7570cac520.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2022-02-20 01:03:26 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 01:04:38 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 01:06:49 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 01:07:48 +0100 | jtomas | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) (Ping timeout: 240 seconds) |
2022-02-20 01:08:55 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 01:09:27 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) |
2022-02-20 01:12:57 +0100 | max22- | (~maxime@2a01cb088335980000d616136ecfccf9.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2022-02-20 01:13:57 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) (Ping timeout: 240 seconds) |
2022-02-20 01:16:41 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:682c:7604:30f7:a4ea) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 01:17:19 +0100 | travisb | tabemann |
2022-02-20 01:20:58 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:682c:7604:30f7:a4ea) |
2022-02-20 01:23:28 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 01:26:26 +0100 | thyriaen | (~thyriaen@dynamic-078-055-141-021.78.55.pool.telefonica.de) (Quit: Leaving) |
2022-02-20 01:26:50 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 01:30:54 +0100 | acidjnk | (~acidjnk@p200300d0c7363f905d1e0b81e1ec2707.dip0.t-ipconnect.de) |
2022-02-20 01:37:10 +0100 | machinedgod | (~machinedg@24.105.81.50) |
2022-02-20 01:38:02 +0100 | iteratee | (~kyle@162.218.222.107) (Read error: Connection reset by peer) |
2022-02-20 01:38:03 +0100 | iteratee_ | (~kyle@162.218.222.107) |
2022-02-20 01:40:25 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) (Remote host closed the connection) |
2022-02-20 01:40:51 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) |
2022-02-20 01:43:28 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 01:43:31 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) |
2022-02-20 01:47:57 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) (Ping timeout: 240 seconds) |
2022-02-20 01:48:03 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 01:48:11 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) (Quit: Leaving.) |
2022-02-20 01:52:57 +0100 | Me-me | (~me-me@user/me-me) |
2022-02-20 01:53:31 +0100 | <Me-me> | Yes hello I do not know how to read haskell, and I would like some help reading this haskell code. |
2022-02-20 01:54:06 +0100 | <Me-me> | https://paste.debian.net/1231570/ |
2022-02-20 01:56:59 +0100 | <pavonia> | Any specific questions? |
2022-02-20 01:57:30 +0100 | <Me-me> | Sure. Lines 7 and 8, what th' heck are they? variable declarations, but... how? |
2022-02-20 01:58:15 +0100 | <Me-me> | And what? |
2022-02-20 01:58:35 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-02-20 01:59:22 +0100 | <pavonia> | `c n k` defines a function c with two parameters n and k |
2022-02-20 01:59:40 +0100 | <pavonia> | like `function c(n, k)` in JavaScript, for example |
2022-02-20 01:59:52 +0100 | <Me-me> | Ah, okay, that's just saying how to do combinatorics. Sure. |
2022-02-20 02:00:12 +0100 | <pavonia> | Haskell uses whitespace for separating arguments |
2022-02-20 02:00:19 +0100 | <Me-me> | So then on line 13 where it says (among other things) c (n - 1) (k - 1) it's running c for those two numbers. |
2022-02-20 02:00:38 +0100 | <pavonia> | Right |
2022-02-20 02:00:43 +0100 | Topsi | (~Tobias@95.33.25.255) |
2022-02-20 02:00:47 +0100 | <Me-me> | But wait, then how is it defining c twice? |
2022-02-20 02:01:03 +0100 | <Me-me> | Ohh I get it, overloadinng. Sure. |
2022-02-20 02:01:32 +0100 | <pavonia> | It's a single definition, but spilt into several cases |
2022-02-20 02:01:44 +0100 | <pavonia> | Line 7 is the definition for k=0 |
2022-02-20 02:02:00 +0100 | <Me-me> | Next question! Line 11, it's defining a mapper, that's fine, but I have no idea what k = sum $ do means, or how it fits into the rest of the mapper. |
2022-02-20 02:03:14 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-02-20 02:03:26 +0100 | <pavonia> | Hhm, that's a bit complicated to explain if you are not familiar with monads |
2022-02-20 02:03:59 +0100 | <Me-me> | Uhhhhh Leibniz? |
2022-02-20 02:04:01 +0100 | <pavonia> | $ is just function application, so it's sum(...) where ... is a list build from a monadic action |
2022-02-20 02:04:17 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4) |
2022-02-20 02:04:30 +0100 | <pavonia> | https://en.wikipedia.org/wiki/Monad_(functional_programming) |
2022-02-20 02:04:52 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 02:05:29 +0100 | <Me-me> | Okay ... so k is just the sum of the results of the loop comprising lines 12-18, right? |
2022-02-20 02:06:01 +0100 | <pavonia> | No, the result of pie applied to k is the sum |
2022-02-20 02:06:01 +0100 | <Me-me> | No, that doesn't make sense... |
2022-02-20 02:06:21 +0100 | <pavonia> | pie(k) = sum(...) |
2022-02-20 02:06:31 +0100 | <Me-me> | Right, another argument. |
2022-02-20 02:08:58 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 02:09:06 +0100 | <Me-me> | Okay... So n is the amount of different values in ns. Easy. What is "fromIntegral"? |
2022-02-20 02:09:26 +0100 | <pavonia> | That whole do-block is a bit like another list comprehension where `return` specifies how the return values look like |
2022-02-20 02:09:48 +0100 | <pavonia> | :t fromIntegral |
2022-02-20 02:09:49 +0100 | <lambdabot> | (Integral a, Num b) => a -> b |
2022-02-20 02:10:01 +0100 | <Me-me> | So it's casting? |
2022-02-20 02:10:06 +0100 | <pavonia> | It converts between different number types |
2022-02-20 02:10:10 +0100 | <Me-me> | Got it. |
2022-02-20 02:10:24 +0100 | <pavonia> | Explicity casting, so to say |
2022-02-20 02:10:30 +0100 | <pavonia> | -y |
2022-02-20 02:10:39 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2022-02-20 02:14:01 +0100 | <Me-me> | And then the number it's casting is the sum of ... c(length(ns)-1, k-1), which is a positive if k is even and a negative if k is odd (is that just another way of saying abs?), plus all the numbers between l and k and all the numbers between 0 and l. |
2022-02-20 02:14:38 +0100 | <Me-me> | Which are two separate things because... sometimes a <- [a..b] can be invalid? |
2022-02-20 02:16:06 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) |
2022-02-20 02:16:16 +0100 | <Me-me> | Is that right? |
2022-02-20 02:16:45 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2022-02-20 02:18:55 +0100 | <pavonia> | [ e | x <- list ] is a mapping of values (with possible filtering) and means "take all the values from list, bind each respective value to the variable x and add a new element e to the result list. e can use the value x to form the new value |
2022-02-20 02:19:34 +0100 | <Me-me> | Okay now I'm confused again. |
2022-02-20 02:19:45 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 02:20:30 +0100 | <Me-me> | In your words, what is line 13 doing? |
2022-02-20 02:20:36 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) (Ping timeout: 240 seconds) |
2022-02-20 02:21:11 +0100 | capo_greco | (~textual@60-241-161-167.static.tpgi.com.au) (Quit: Textual IRC Client: www.textualapp.com) |
2022-02-20 02:24:48 +0100 | <pavonia> | For each l = 0..k calculate the sum of all values (-1)^(k' - l) * c (n - l) (k' - l) for each k' from k..l |
2022-02-20 02:24:58 +0100 | <pavonia> | Does that make sense? |
2022-02-20 02:25:24 +0100 | <Me-me> | No. |
2022-02-20 02:25:25 +0100 | <pavonia> | It's extra confusing as they are using another valuable k for the inner "loop", shadowing the function parameter k |
2022-02-20 02:25:39 +0100 | <Me-me> | Yeah the namespace is bothering me but I think I have a grip on it. |
2022-02-20 02:26:03 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 02:27:07 +0100 | <Me-me> | Okay let's ignore that part for now. |
2022-02-20 02:27:39 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) (Ping timeout: 256 seconds) |
2022-02-20 02:27:40 +0100 | <Me-me> | ns' <- subsequences ns. I looked up subsequences and I figured out that it's grabbing the different combinations of ns. |
2022-02-20 02:28:38 +0100 | <Me-me> | And the original writer said that it's doing a thing to each of those combinations. |
2022-02-20 02:28:55 +0100 | <Me-me> | What lines are the thing that it is doing? |
2022-02-20 02:29:37 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 02:29:58 +0100 | <pavonia> | Line 13 is basically this https://bpa.st/3CBA |
2022-02-20 02:30:29 +0100 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 272 seconds) |
2022-02-20 02:30:31 +0100 | <pavonia> | s/ws.add/ws.append/ |
2022-02-20 02:30:37 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:682c:7604:30f7:a4ea) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 02:30:45 +0100 | <Me-me> | Same dif, it's wrapped in sum. |
2022-02-20 02:30:47 +0100 | <Me-me> | I assume that's javascript? |
2022-02-20 02:31:22 +0100 | <pavonia> | It's pseudo code |
2022-02-20 02:31:35 +0100 | <Me-me> | Okay sure. |
2022-02-20 02:32:02 +0100 | <pavonia> | > subsequences "abcd" |
2022-02-20 02:32:04 +0100 | <lambdabot> | ["","a","b","ab","c","ac","bc","abc","d","ad","bd","abd","cd","acd","bcd","a... |
2022-02-20 02:32:59 +0100 | <pavonia> | It selects each element from that list and binds the current value to ns' |
2022-02-20 02:33:16 +0100 | <Me-me> | Current based on what? |
2022-02-20 02:33:32 +0100 | <pavonia> | On the iteration through that list |
2022-02-20 02:33:42 +0100 | <Me-me> | Okay, and what is it doing to each iteration? |
2022-02-20 02:34:34 +0100 | <pavonia> | What is specified after the return |
2022-02-20 02:35:06 +0100 | <pavonia> | guard adds some filtering to ignore values |
2022-02-20 02:35:25 +0100 | <Me-me> | I thought the return was the return value to be summed up by pie. |
2022-02-20 02:35:30 +0100 | <pavonia> | > do { x <- [1,2,3]; guard (odd x); return x } |
2022-02-20 02:35:32 +0100 | <lambdabot> | [1,3] |
2022-02-20 02:36:05 +0100 | <pavonia> | No, the result value for pie is that sum |
2022-02-20 02:36:26 +0100 | <Me-me> | I thought the sum was summing the results of the return value. What's it summing? |
2022-02-20 02:37:20 +0100 | <pavonia> | That do-block builds a new lst form scratch, sum sums that new list |
2022-02-20 02:37:41 +0100 | scav | (sid309693@id-309693.helmsley.irccloud.com) (Ping timeout: 250 seconds) |
2022-02-20 02:37:49 +0100 | scav | (sid309693@id-309693.helmsley.irccloud.com) |
2022-02-20 02:38:14 +0100 | <pavonia> | Everything from l. 12-18 describes how to build that new list |
2022-02-20 02:38:40 +0100 | <pavonia> | return ... specifies how each element looks like |
2022-02-20 02:38:58 +0100 | <pavonia> | The ... <- ... portions define there the elements come from |
2022-02-20 02:39:14 +0100 | <pavonia> | plus some extra filtering done by guard |
2022-02-20 02:39:30 +0100 | k8yun | (~k8yun@user/k8yun) (Ping timeout: 256 seconds) |
2022-02-20 02:40:13 +0100 | <Me-me> | How many nested loops are there here? |
2022-02-20 02:40:31 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-02-20 02:41:14 +0100 | <pavonia> | `ns' <- subsequences ns` is the "main loop" |
2022-02-20 02:41:20 +0100 | <Me-me> | Right. |
2022-02-20 02:41:27 +0100 | <pavonia> | plus two nested loops for calculating ws |
2022-02-20 02:41:33 +0100 | <Me-me> | And for each of those it's executing lines 15-18 |
2022-02-20 02:41:57 +0100 | <pavonia> | Yes |
2022-02-20 02:42:51 +0100 | <Me-me> | And the results are being summed up in line 11? |
2022-02-20 02:43:02 +0100 | <Me-me> | The results of ns' <- subsequences |
2022-02-20 02:43:51 +0100 | zachel | (~zachel@user/zachel) |
2022-02-20 02:44:09 +0100 | <pavonia> | Yeah, the results of that main loop |
2022-02-20 02:44:24 +0100 | ofl^ | (~ofl@50.233.120.162) (Remote host closed the connection) |
2022-02-20 02:44:26 +0100 | <Me-me> | Okay. |
2022-02-20 02:45:16 +0100 | Erutuon | (~Erutuon@user/erutuon) |
2022-02-20 02:45:29 +0100 | <Me-me> | % still means modulo in haskell right? |
2022-02-20 02:45:30 +0100 | <yahb> | Me-me: ; <interactive>:80:20: error: parse error on input `in' |
2022-02-20 02:45:36 +0100 | <Me-me> | Ahh! |
2022-02-20 02:45:42 +0100 | Me-me | dives for cover |
2022-02-20 02:46:31 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 02:46:57 +0100 | <pavonia> | Nah, a % b is a rational number a / b :p |
2022-02-20 02:47:05 +0100 | <Me-me> | Okay. |
2022-02-20 02:47:50 +0100 | <Me-me> | So yes. It's inverting the odds of getting 5 or fewer colours of marbles. Excellent. |
2022-02-20 02:48:21 +0100 | <Me-me> | line 13 is the only remaining mystery. |
2022-02-20 02:48:30 +0100 | <Me-me> | But I will take a break before attempting that again. |
2022-02-20 02:48:35 +0100 | <Me-me> | Thank you for all the assistance so far. |
2022-02-20 02:48:58 +0100 | <pavonia> | No problem |
2022-02-20 02:49:59 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) |
2022-02-20 02:50:16 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 02:51:15 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 02:54:48 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2022-02-20 03:02:35 +0100 | <FernandoChu[m]> | isn't it kind of redundant for newtypes to have constructors? not sure about this but it seems to me that removing the constructor wouldn't cause any ambiguity as the types can be inferred |
2022-02-20 03:04:51 +0100 | <ski> | how would you distinguish between the definiendum and the definiens, the defined type, and the type it's defined in terms of (the representation type) ? |
2022-02-20 03:05:56 +0100 | <ski> | (also, what if it's a recursive `newtype' ?) |
2022-02-20 03:07:01 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) (Ping timeout: 245 seconds) |
2022-02-20 03:07:27 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 03:08:36 +0100 | <FernandoChu[m]> | I think the first one should be possible to be honest, but I don't know enough to give a decent answer, but with recursion I'm convinced that it can't |
2022-02-20 03:08:38 +0100 | <FernandoChu[m]> | thanks |
2022-02-20 03:10:04 +0100 | <int-e> | FernandoChu[m]: If you have newtype Foo a = {-Foo-} a and f :: a -> Foo a; f x = id x, do you apply id to Foo x, or do you do Foo (id x)? Note that if you use a class member like `succ` then this will affect semantics. |
2022-02-20 03:10:50 +0100 | <int-e> | "can be inferred" isn't really true when there's polymorphic types everywhere. |
2022-02-20 03:11:52 +0100 | <int-e> | pavonia: ah, sorry for that terrible piece of code up there :P (fwiw, `c` computes binomial coefficients. The rest is... complicated, still don't really want to explain it in detail.) |
2022-02-20 03:13:04 +0100 | <FernandoChu[m]> | int-e: shouldn't there be some free theorem that essentially it doesn't matter though? I know that is just an example but I think that in cases like this both should be equal (assuming Eq a) |
2022-02-20 03:13:21 +0100 | dsrt^ | (~dsrt@50.233.120.162) |
2022-02-20 03:13:50 +0100 | <int-e> | No there isn't. You could have an "opposite" instance for Enum that swaps the roles of succ and pred. |
2022-02-20 03:14:02 +0100 | <int-e> | We do have such a thing for Ord. |
2022-02-20 03:15:10 +0100 | waleee | (~waleee@h-98-128-229-110.NA.cust.bahnhof.se) (Ping timeout: 260 seconds) |
2022-02-20 03:15:30 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 03:18:56 +0100 | <FernandoChu[m]> | hmm I'm not really getting how, could you please give an example? |
2022-02-20 03:23:43 +0100 | <int-e> | FernandoChu[m]: https://paste.debian.net/1231573/ ...note that under your proposal, f1 and f2 would be syntactically the same. |
2022-02-20 03:24:58 +0100 | <FernandoChu[m]> | brilliant! thank you |
2022-02-20 03:25:23 +0100 | <int-e> | it's worth noting that this kind of thing, providing alternative type class implementations, is a common use case of newtypes |
2022-02-20 03:27:20 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 03:30:09 +0100 | marquis_andras | (~marquis_a@124.170.160.147) (Remote host closed the connection) |
2022-02-20 03:31:55 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2022-02-20 03:33:50 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 03:34:22 +0100 | <pavonia> | int-e: Can you explain in simple words what that pie function does? |
2022-02-20 03:35:03 +0100 | <Me-me> | Yes hello I am interested also. |
2022-02-20 03:35:14 +0100 | <Me-me> | pavonia: I can tell you its intent, just not exactly how it does it. |
2022-02-20 03:35:51 +0100 | <Me-me> | "If you have a bag of marbles, each of which is one of 15 colours, and you pull n marbles from it at random, what are the odds that you get 6 or more colours in the marbles you pull?" |
2022-02-20 03:35:56 +0100 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) (Quit: Konversation terminated!) |
2022-02-20 03:36:24 +0100 | <Me-me> | The algorithm is supposed to calculate the odds of each possible combination of getting 5 or fewer colours. |
2022-02-20 03:36:32 +0100 | <pavonia> | Ah, that was for that ##math question earlier |
2022-02-20 03:36:35 +0100 | <Me-me> | Yeh. |
2022-02-20 03:37:01 +0100 | <Me-me> | Binomial coefficients, he says. |
2022-02-20 03:37:16 +0100 | <Me-me> | I have no idea what that is but I think there's a function for it in excel. |
2022-02-20 03:37:16 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 03:38:20 +0100 | <pavonia> | It's this (n k) thing |
2022-02-20 03:38:35 +0100 | <pavonia> | n over k |
2022-02-20 03:38:46 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) |
2022-02-20 03:38:58 +0100 | <Me-me> | Yeah I just don't know how it factors into the greater algorithm. |
2022-02-20 03:39:12 +0100 | Topsi | (~Tobias@95.33.25.255) (Read error: Connection reset by peer) |
2022-02-20 03:39:45 +0100 | <pavonia> | The binomial coefficient is just function c |
2022-02-20 03:39:55 +0100 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2022-02-20 03:40:09 +0100 | <Me-me> | I understand what part of the code represents something called a "binomial coefficient". |
2022-02-20 03:40:34 +0100 | <Me-me> | I can even mostly follow the math of that function. I do not know how that is necessary to the end result. |
2022-02-20 03:40:35 +0100 | <pavonia> | Okay :p |
2022-02-20 03:40:46 +0100 | <Me-me> | :P |
2022-02-20 03:40:55 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 03:42:27 +0100 | <pavonia> | (n k) is the number of ways to choose k elements from a set of n elements |
2022-02-20 03:42:39 +0100 | <Me-me> | So it is combinatorics. |
2022-02-20 03:43:00 +0100 | Null_A | (~null_a@2601:645:8700:2290:890f:d3a0:aab0:f3f) (Ping timeout: 240 seconds) |
2022-02-20 03:46:28 +0100 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2022-02-20 03:47:55 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) |
2022-02-20 03:48:57 +0100 | xff0x | (~xff0x@2001:1a81:52c9:2700:c4c8:f455:66db:3020) (Ping timeout: 240 seconds) |
2022-02-20 03:51:08 +0100 | xff0x | (~xff0x@2001:1a81:5301:6400:24c5:5158:4f07:abb5) |
2022-02-20 03:53:53 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 03:56:30 +0100 | <yushyin> | hi Me-me ;) |
2022-02-20 03:56:34 +0100 | <Me-me> | Tsup. |
2022-02-20 03:57:02 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-02-20 04:02:10 +0100 | zachel | (~zachel@user/zachel) (Quit: Quit: Leaving!) |
2022-02-20 04:02:39 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 04:03:22 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 04:05:36 +0100 | zachel | (~zachel@user/zachel) |
2022-02-20 04:05:51 +0100 | ix | (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Remote host closed the connection) |
2022-02-20 04:05:58 +0100 | ix | (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
2022-02-20 04:06:00 +0100 | ix | (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Remote host closed the connection) |
2022-02-20 04:06:08 +0100 | ix | (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
2022-02-20 04:06:46 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 04:11:37 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
2022-02-20 04:15:18 +0100 | Ariakenom_ | (~Ariakenom@h-82-196-111-63.NA.cust.bahnhof.se) (Quit: Leaving) |
2022-02-20 04:16:07 +0100 | ubert | (~Thunderbi@5.253.207.46) (Ping timeout: 256 seconds) |
2022-02-20 04:18:15 +0100 | ubert | (~Thunderbi@86.107.21.238) |
2022-02-20 04:18:40 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2022-02-20 04:22:21 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-02-20 04:23:41 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 04:25:17 +0100 | td_ | (~td@94.134.91.184) (Ping timeout: 240 seconds) |
2022-02-20 04:25:20 +0100 | <Sqaure> | Are Profunctors widely used? Looking at base instances and the only type i remember seeing having one is Arrow. |
2022-02-20 04:27:20 +0100 | td_ | (~td@94.134.91.130) |
2022-02-20 04:27:21 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 04:37:59 +0100 | acidjnk | (~acidjnk@p200300d0c7363f905d1e0b81e1ec2707.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2022-02-20 04:38:47 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 256 seconds) |
2022-02-20 04:42:51 +0100 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat) |
2022-02-20 04:44:04 +0100 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
2022-02-20 04:45:04 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 04:45:55 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-02-20 04:46:48 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 04:46:48 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 04:46:48 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 04:48:12 +0100 | modnar | (~modnar@shell.sonic.net) (Quit: No Ping reply in 180 seconds.) |
2022-02-20 04:48:37 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 04:49:29 +0100 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2022-02-20 04:50:16 +0100 | modnar | (~modnar@shell.sonic.net) |
2022-02-20 04:52:21 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 272 seconds) |
2022-02-20 04:52:36 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 04:57:00 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
2022-02-20 05:01:58 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-02-20 05:02:33 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-02-20 05:02:58 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 05:06:26 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 05:07:24 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 05:10:16 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 05:10:56 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 05:11:05 +0100 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2022-02-20 05:13:39 +0100 | deadmarshal | (~deadmarsh@95.38.118.170) |
2022-02-20 05:16:46 +0100 | haasn | (~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
2022-02-20 05:17:11 +0100 | haasn | (~nand@haasn.dev) |
2022-02-20 05:19:18 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 05:19:23 +0100 | cynomys | (~cynomys@user/cynomys) |
2022-02-20 05:30:09 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds) |
2022-02-20 05:34:52 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) |
2022-02-20 05:36:21 +0100 | <random-jellyfish> | is there a difference in speed between LL and LR parsers? |
2022-02-20 05:36:41 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 05:37:24 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 05:41:41 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2022-02-20 05:41:58 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 05:44:06 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 05:49:10 +0100 | deadmarshal_ | (~deadmarsh@95.38.4.150) |
2022-02-20 05:50:37 +0100 | deadmarshal | (~deadmarsh@95.38.118.170) (Ping timeout: 272 seconds) |
2022-02-20 05:51:13 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-02-20 05:51:13 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 05:51:53 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 05:53:23 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 05:55:30 +0100 | Welkin | (~Welkin@216.243.35.47) |
2022-02-20 05:55:37 +0100 | <Welkin> | So is this like Liberia? |
2022-02-20 06:03:13 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 06:04:10 +0100 | Welkin | (~Welkin@216.243.35.47) () |
2022-02-20 06:04:42 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 06:07:27 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 06:08:46 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 06:08:46 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 06:08:46 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 06:11:31 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 272 seconds) |
2022-02-20 06:12:20 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2022-02-20 06:12:58 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 06:13:42 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-02-20 06:21:11 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 06:22:29 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 06:24:17 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 06:24:32 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) |
2022-02-20 06:25:00 +0100 | deadmarshal_ | (~deadmarsh@95.38.4.150) (Ping timeout: 240 seconds) |
2022-02-20 06:25:47 +0100 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) |
2022-02-20 06:27:57 +0100 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection) |
2022-02-20 06:28:54 +0100 | <jackdk> | Sqaure: they show up a lot in Opaleye (+ some other abstractions), but are generally quite useful if you find yourself with values that represent some "thing" with an input and an output |
2022-02-20 06:29:39 +0100 | <Sqaure> | jackdk, Good to know. Thanks |
2022-02-20 06:30:34 +0100 | <jackdk> | If you are trying to form a list of what things to learn when, you can defer them for a while |
2022-02-20 06:31:06 +0100 | <jackdk> | oh, and the choice subclass of profunctor is used in the implementation of prisms, once you get into lens |
2022-02-20 06:34:47 +0100 | <Sqaure> | allright! Well used both lens and optics a bunch so i guess they are worth knowing about at least. |
2022-02-20 06:35:46 +0100 | analognoise | (~analognoi@91.196.220.77) |
2022-02-20 06:37:29 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 06:40:55 +0100 | modnar | (~modnar@shell.sonic.net) (Quit: No Ping reply in 180 seconds.) |
2022-02-20 06:43:18 +0100 | modnar | (~modnar@shell.sonic.net) |
2022-02-20 06:46:21 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 272 seconds) |
2022-02-20 06:46:21 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 06:47:49 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 06:51:38 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) (Quit: Client closed) |
2022-02-20 06:53:05 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 06:54:04 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 07:01:03 +0100 | caimeo | (uid540603@id-540603.lymington.irccloud.com) |
2022-02-20 07:04:07 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 07:06:23 +0100 | <jackdk> | you can use prisms without understanding profunctors, it was just another example |
2022-02-20 07:15:35 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 07:17:58 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 07:18:35 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 07:20:04 +0100 | cynomys | (~cynomys@user/cynomys) (Quit: Lost terminal) |
2022-02-20 07:31:47 +0100 | k8yun | (~k8yun@user/k8yun) |
2022-02-20 07:33:19 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 07:34:51 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 07:35:27 +0100 | sumanthyedoti | (~sumanthye@49.207.194.101) |
2022-02-20 07:36:11 +0100 | sumanthyedoti | (~sumanthye@49.207.194.101) (Client Quit) |
2022-02-20 07:36:11 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 07:36:23 +0100 | sumanthyedoti | (~sumanthye@49.207.194.101) |
2022-02-20 07:36:47 +0100 | sumanthyedoti | (~sumanthye@49.207.194.101) (Client Quit) |
2022-02-20 07:40:41 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-02-20 07:42:06 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 07:50:57 +0100 | xff0x | (~xff0x@2001:1a81:5301:6400:24c5:5158:4f07:abb5) (Ping timeout: 240 seconds) |
2022-02-20 07:52:11 +0100 | xff0x | (~xff0x@2001:1a81:5301:6400:b772:c1d8:3c5d:2da4) |
2022-02-20 07:54:11 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 07:59:03 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 07:59:39 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 08:04:07 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 08:08:53 +0100 | mbuf | (~Shakthi@223.178.126.157) |
2022-02-20 08:12:36 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds) |
2022-02-20 08:14:46 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-02-20 08:15:45 +0100 | k8yun | (~k8yun@user/k8yun) (Quit: Leaving) |
2022-02-20 08:19:30 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2022-02-20 08:20:47 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 08:21:12 +0100 | <Me-me> | Okay that was a cleansing four hour Stellaris session. Now to look at the code again. |
2022-02-20 08:21:53 +0100 | <Me-me> | Five hour. |
2022-02-20 08:24:31 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2022-02-20 08:28:55 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) |
2022-02-20 08:28:56 +0100 | <Me-me> | In the line "let w = ws !! l", what does !! mean? |
2022-02-20 08:29:16 +0100 | <ski> | "select the `l'th element of `ws'" |
2022-02-20 08:29:31 +0100 | <Me-me> | Ah, perfect. |
2022-02-20 08:29:32 +0100 | <ski> | > [2,3,5,7] !! 3 |
2022-02-20 08:29:33 +0100 | <lambdabot> | 7 |
2022-02-20 08:29:40 +0100 | <ski> | > [2,3,5,7] !! 4 |
2022-02-20 08:29:41 +0100 | <lambdabot> | *Exception: Prelude.!!: index too large |
2022-02-20 08:30:21 +0100 | <ski> | @src !! |
2022-02-20 08:30:21 +0100 | <lambdabot> | xs !! n | n < 0 = undefined |
2022-02-20 08:30:21 +0100 | <lambdabot> | [] !! _ = undefined |
2022-02-20 08:30:22 +0100 | <lambdabot> | (x:_) !! 0 = x |
2022-02-20 08:30:24 +0100 | <lambdabot> | (_:xs) !! n = xs !! (n-1) |
2022-02-20 08:30:39 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 08:31:17 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 08:33:50 +0100 | cynomys | (~cynomys@user/cynomys) |
2022-02-20 08:36:16 +0100 | <Me-me> | So then, the line "let ws = [fromIntegral $ sum [(-1)^(k - l) * c (n - l) (k - l) | k <- [l..k]] | l <- [0..k]]" is creating an array? |
2022-02-20 08:37:01 +0100 | <Rembane> | No, a linked list |
2022-02-20 08:37:01 +0100 | <chronon> | What is that @src command? It doesn't work for me in ghci. |
2022-02-20 08:37:02 +0100 | <ski> | a list, not an array |
2022-02-20 08:37:09 +0100 | <Me-me> | Okay. |
2022-02-20 08:37:21 +0100 | <Me-me> | But multiple results. |
2022-02-20 08:37:29 +0100 | <ski> | it's a lambdabot command, displaying source from a hand-written collection of source snippets |
2022-02-20 08:37:37 +0100 | <ski> | @help src |
2022-02-20 08:37:37 +0100 | <lambdabot> | src <id>. Display the implementation of a standard function |
2022-02-20 08:38:07 +0100 | <ski> | (the actual implementation used may be different) |
2022-02-20 08:38:32 +0100 | <ski> | chronon : fwiw, i think it's possible to install lambdabot locally, and to be able to call it from the interactor |
2022-02-20 08:38:35 +0100 | ski | hasn't tried, though |
2022-02-20 08:39:02 +0100 | <ski> | @version |
2022-02-20 08:39:02 +0100 | <lambdabot> | lambdabot 5.3.0.1 |
2022-02-20 08:39:02 +0100 | <lambdabot> | git clone https://github.com/lambdabot/lambdabot |
2022-02-20 08:39:04 +0100 | <ski> | @where lambdabot |
2022-02-20 08:39:04 +0100 | <lambdabot> | http://haskell.org/haskellwiki/Lambdabot |
2022-02-20 08:39:22 +0100 | <chronon> | Or maybe I can /msg lambdabot can I? |
2022-02-20 08:39:27 +0100 | <ski> | sure, you can |
2022-02-20 08:40:03 +0100 | <ski> | (that's encouraged, in case you're just trying things out, and don't want to show, or ask about, something in particular, to the channel) |
2022-02-20 08:40:03 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 08:40:45 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 08:40:48 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
2022-02-20 08:42:02 +0100 | <chronon> | Ok, I'll experiment. Thanks. |
2022-02-20 08:42:39 +0100 | <ski> | Me-me : yes, a sequence of multiple numbers (each being a sum of another list) |
2022-02-20 08:43:11 +0100 | <Me-me> | So here is the full snippet: https://paste.debian.net/1231570/ |
2022-02-20 08:43:41 +0100 | <ski> | that's int-e's snippet, yea ? |
2022-02-20 08:43:41 +0100 | <Me-me> | I'm just confused as to why the l is declared on line 15 but used on line 13. |
2022-02-20 08:43:43 +0100 | <Me-me> | Yeah. |
2022-02-20 08:44:03 +0100 | <ski> | oh, those are different variables `l' |
2022-02-20 08:44:15 +0100 | <Me-me> | Okay, what's the one on line 13 then? |
2022-02-20 08:44:16 +0100 | <ski> | the one on line 13 is bound by the generator `l <- [0..k]' |
2022-02-20 08:44:23 +0100 | <Me-me> | Ah, right. |
2022-02-20 08:45:00 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 08:45:07 +0100 | <ski> | for each value `l' in the (inclusive-inclusive) range from `0' to `k', we collect the values `fromIntegral (sum [...])' into a list |
2022-02-20 08:46:28 +0100 | <ski> | hm, i guess the `fromIntegral' here is converting from `Int' to `Integer' |
2022-02-20 08:47:19 +0100 | <ski> | oh, i see why both variables are names the same (`l') |
2022-02-20 08:47:46 +0100 | <ski> | in the definition of `ws', `l' is the running index, used when defining each element (at index `l') in the list `ws' |
2022-02-20 08:48:17 +0100 | <ski> | then, the `l' on line 15 is a particular index, which is then used on line 17 to select a particular element (number) from the list `ws' |
2022-02-20 08:49:02 +0100 | <ski> | (also that `l' is used on line 16 to ensure `l' is not greater than `k', which is the maximum index in the list `ws') |
2022-02-20 08:49:49 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2022-02-20 08:50:03 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 08:50:32 +0100 | <ski> | the whole `do'-block, with commands from line 12 to line 18 is nondeterministically computing an `Integer' (meaning, it's computing a list of `Integer's) .. the only nondeterministic choice here is ns' <- subsequences ns |
2022-02-20 08:51:32 +0100 | <ski> | (well, `guard (...)' is also, strictly speaking, a choice -- but only in the trivial sense that it acts like a veto, or a `filter', stopping the generation of a solution when `l' is greater than `k') |
2022-02-20 08:51:57 +0100 | <Me-me> | Yeah. |
2022-02-20 08:52:27 +0100 | <ski> | so, for every possible subsequence of `ns' (such that `l <= k'), lines 12 to 18 compute an `Integer'. all these are collected in a list, and the `sum' on line 11 is adding all these together |
2022-02-20 08:52:45 +0100 | <ski> | > subsequences "abcd" |
2022-02-20 08:52:47 +0100 | <lambdabot> | ["","a","b","ab","c","ac","bc","abc","d","ad","bd","abd","cd","acd","bcd","a... |
2022-02-20 08:52:50 +0100 | <ski> | > subsequences "abc" |
2022-02-20 08:52:51 +0100 | <lambdabot> | ["","a","b","ab","c","ac","bc","abc"] |
2022-02-20 08:53:15 +0100 | <Me-me> | Aye. |
2022-02-20 08:53:20 +0100 | <ski> | instead of using `do' here, one could just as well be using a list comprehension |
2022-02-20 08:53:24 +0100 | <Me-me> | I'm mostly just trying to figure out the "compute an integer" bit. |
2022-02-20 08:54:25 +0100 | <ski> | (in that case, one'd separate each of the commands by commas, remove the `guard $ ' bit, and move the last line first (removing the `return $ '), terminating it with a `|', and, of course, enclosing everything in square brackets) |
2022-02-20 08:55:08 +0100 | acidjnk | (~acidjnk@p200300d0c7363f90955657ea6b285d32.dip0.t-ipconnect.de) |
2022-02-20 08:55:42 +0100 | <ski> | well, i guess we have a sum of binomial coefficients, with alternating signs |
2022-02-20 08:56:36 +0100 | tabemann | (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Ping timeout: 240 seconds) |
2022-02-20 08:57:36 +0100 | <Me-me> | Right. |
2022-02-20 08:57:48 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-02-20 08:58:45 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2022-02-20 09:00:39 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 09:01:25 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Quit: Leaving...) |
2022-02-20 09:01:32 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2022-02-20 09:01:40 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 09:02:31 +0100 | raym | (~raym@user/raym) (Ping timeout: 272 seconds) |
2022-02-20 09:03:07 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 09:07:23 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) (Ping timeout: 256 seconds) |
2022-02-20 09:07:59 +0100 | raym | (~raym@user/raym) |
2022-02-20 09:07:59 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 09:08:12 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) |
2022-02-20 09:17:33 +0100 | little_mac | (~little_ma@2601:410:4300:3ce0:14ec:228f:c3ec:ab2c) (Quit: Leaving) |
2022-02-20 09:18:36 +0100 | wolfshappen | (~waff@irc.furworks.de) (Ping timeout: 240 seconds) |
2022-02-20 09:19:17 +0100 | wolfshappen | (~waff@irc.furworks.de) |
2022-02-20 09:19:51 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 09:20:43 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer) |
2022-02-20 09:20:55 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) |
2022-02-20 09:22:21 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 09:23:42 +0100 | Batzy | (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-02-20 09:24:17 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 09:24:44 +0100 | Batzy | (~quassel@user/batzy) |
2022-02-20 09:25:25 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 09:29:43 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 09:30:19 +0100 | analognoise | (~analognoi@91.196.220.77) (Read error: Connection reset by peer) |
2022-02-20 09:30:34 +0100 | caimeo | (uid540603@id-540603.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2022-02-20 09:31:01 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
2022-02-20 09:37:53 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-02-20 09:37:55 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-02-20 09:38:23 +0100 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:4edf:af0d:d165:e093) |
2022-02-20 09:38:28 +0100 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:4edf:af0d:d165:e093) (Remote host closed the connection) |
2022-02-20 09:38:59 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 09:39:08 +0100 | srk | (~sorki@user/srk) (Remote host closed the connection) |
2022-02-20 09:39:26 +0100 | srk | (~sorki@user/srk) |
2022-02-20 09:47:57 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 09:51:20 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 09:51:28 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 09:51:47 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 09:52:25 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 09:56:42 +0100 | cosimone | (~user@93-34-133-75.ip49.fastwebnet.it) |
2022-02-20 09:57:15 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 10:00:32 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) |
2022-02-20 10:05:35 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2022-02-20 10:06:31 +0100 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-02-20 10:14:43 +0100 | max22- | (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) |
2022-02-20 10:14:48 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 10:19:10 +0100 | enemeth79 | (sid309041@id-309041.lymington.irccloud.com) () |
2022-02-20 10:19:22 +0100 | enemeth79 | (sid309041@id-309041.lymington.irccloud.com) |
2022-02-20 10:19:22 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 10:20:30 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 10:23:14 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 10:25:24 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2022-02-20 10:32:36 +0100 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) (Remote host closed the connection) |
2022-02-20 10:33:02 +0100 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) |
2022-02-20 10:35:14 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-02-20 10:35:44 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 10:38:05 +0100 | drdo | (~drdo@roach0.drdo.eu) (Quit: Ping timeout (120 seconds)) |
2022-02-20 10:38:15 +0100 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) |
2022-02-20 10:38:46 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 10:39:38 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 10:40:13 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 10:40:43 +0100 | drdo | (~drdo@roach0.drdo.eu) |
2022-02-20 10:42:42 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-02-20 10:43:09 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2022-02-20 10:43:37 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 10:43:38 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 10:48:32 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-02-20 10:50:45 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) |
2022-02-20 10:52:11 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 10:56:17 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
2022-02-20 11:01:40 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 11:03:59 +0100 | mc47 | (~mc47@xmonad/TheMC47) |
2022-02-20 11:04:20 +0100 | themc47 | (~mc47@xmonad/TheMC47) |
2022-02-20 11:04:22 +0100 | mc47 | (~mc47@xmonad/TheMC47) (Client Quit) |
2022-02-20 11:04:24 +0100 | themc47 | (~mc47@xmonad/TheMC47) (Client Quit) |
2022-02-20 11:04:40 +0100 | mc47 | (~mc47@xmonad/TheMC47) |
2022-02-20 11:04:45 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-02-20 11:06:13 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 11:07:44 +0100 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) (Quit: Konversation terminated!) |
2022-02-20 11:08:46 +0100 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Read error: Connection reset by peer) |
2022-02-20 11:10:15 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 11:13:58 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 11:15:24 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
2022-02-20 11:21:24 +0100 | Midjak | (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
2022-02-20 11:23:38 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 11:24:12 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 11:28:36 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Ping timeout: 240 seconds) |
2022-02-20 11:28:49 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 11:30:34 +0100 | coot | (~coot@213.134.190.95) |
2022-02-20 11:31:11 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 11:32:57 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 11:36:22 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 11:36:22 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 11:36:22 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 11:39:44 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 252 seconds) |
2022-02-20 11:40:51 +0100 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-02-20 11:41:29 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 272 seconds) |
2022-02-20 11:41:29 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
2022-02-20 11:41:37 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 11:43:12 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-02-20 11:43:17 +0100 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
2022-02-20 11:44:25 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2022-02-20 11:45:35 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 11:45:48 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
2022-02-20 11:46:44 +0100 | acidjnk | (~acidjnk@p200300d0c7363f90955657ea6b285d32.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2022-02-20 11:49:31 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
2022-02-20 11:52:14 +0100 | averell | (~averell@user/averell) |
2022-02-20 11:54:13 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-02-20 11:58:28 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 11:59:04 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 12:03:14 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 12:04:22 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
2022-02-20 12:06:33 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 12:18:52 +0100 | themc47 | (~mc47@xmonad/TheMC47) |
2022-02-20 12:21:17 +0100 | mc47 | (~mc47@xmonad/TheMC47) (Ping timeout: 240 seconds) |
2022-02-20 12:21:33 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 12:22:32 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2022-02-20 12:22:53 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2022-02-20 12:25:21 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 12:37:53 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 12:37:53 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 12:37:53 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 12:41:33 +0100 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2022-02-20 12:41:34 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 12:43:17 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-02-20 12:44:59 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 12:51:47 +0100 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:447b:39c4:735e:5310) |
2022-02-20 12:53:51 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 12:54:56 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) |
2022-02-20 13:00:57 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 13:02:57 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 13:03:38 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2022-02-20 13:03:53 +0100 | dcoutts__ | (~duncan@host86-144-78-249.range86-144.btcentralplus.com) |
2022-02-20 13:06:13 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 13:06:31 +0100 | dcoutts_ | (~duncan@host86-144-78-249.range86-144.btcentralplus.com) (Ping timeout: 256 seconds) |
2022-02-20 13:07:41 +0100 | arievw | (~arievw@85.148.234.95) |
2022-02-20 13:08:07 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
2022-02-20 13:08:17 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds) |
2022-02-20 13:08:41 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 13:08:41 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 13:08:41 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 13:13:17 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2022-02-20 13:18:19 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) |
2022-02-20 13:18:42 +0100 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 256 seconds) |
2022-02-20 13:20:16 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-02-20 13:21:21 +0100 | themc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2022-02-20 13:22:37 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) (Ping timeout: 240 seconds) |
2022-02-20 13:22:44 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) (Remote host closed the connection) |
2022-02-20 13:22:56 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) |
2022-02-20 13:23:00 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 13:23:46 +0100 | CiaoSen | (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-02-20 13:27:52 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 13:28:28 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 13:31:59 +0100 | `2jt | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) |
2022-02-20 13:32:07 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 13:39:46 +0100 | img | (~img@user/img) |
2022-02-20 13:42:13 +0100 | `2jt | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) (Remote host closed the connection) |
2022-02-20 13:45:40 +0100 | vysn | (~vysn@user/vysn) |
2022-02-20 13:46:49 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 13:48:42 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 13:50:57 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 13:54:55 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 13:56:04 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
2022-02-20 13:56:06 +0100 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 256 seconds) |
2022-02-20 13:56:15 +0100 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
2022-02-20 13:56:21 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2022-02-20 13:58:36 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Ping timeout: 240 seconds) |
2022-02-20 14:01:01 +0100 | notzmv | (~zmv@user/notzmv) |
2022-02-20 14:05:32 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 14:05:59 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-02-20 14:06:18 +0100 | machinedgod | (~machinedg@24.105.81.50) |
2022-02-20 14:13:17 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 14:13:56 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-02-20 14:15:05 +0100 | cynomys | (~cynomys@user/cynomys) (Ping timeout: 256 seconds) |
2022-02-20 14:15:29 +0100 | alp | (~alp@user/alp) |
2022-02-20 14:17:21 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-02-20 14:19:28 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2022-02-20 14:19:56 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 14:23:37 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 14:24:30 +0100 | <ehammarstrom> | jackdk: Thanks sharing that demo. As a side note, Sandy Maguire has written a neat book called Thinking with Types - Type-level programming in Haskell. But I don't think it discusses effect-systems |
2022-02-20 14:26:21 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 14:26:31 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 14:27:15 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 14:28:26 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
2022-02-20 14:29:21 +0100 | thyriaen | (~thyriaen@dynamic-077-191-029-223.77.191.pool.telefonica.de) |
2022-02-20 14:30:37 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Ping timeout: 240 seconds) |
2022-02-20 14:31:51 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Ping timeout: 256 seconds) |
2022-02-20 14:32:34 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) |
2022-02-20 14:36:43 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 14:40:08 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 14:40:18 +0100 | son0p | (~ff@181.136.122.143) |
2022-02-20 14:44:28 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
2022-02-20 14:44:48 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
2022-02-20 14:49:06 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
2022-02-20 14:50:41 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 14:52:09 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
2022-02-20 14:54:00 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 14:54:10 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 14:54:31 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 256 seconds) |
2022-02-20 14:56:38 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 14:58:07 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 14:58:12 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
2022-02-20 15:00:02 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
2022-02-20 15:00:21 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
2022-02-20 15:00:37 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 15:04:57 +0100 | ProfSimm | (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
2022-02-20 15:05:01 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-02-20 15:05:20 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-02-20 15:07:21 +0100 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) |
2022-02-20 15:11:37 +0100 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
2022-02-20 15:13:44 +0100 | tubogram40 | (~tubogram@user/tubogram) |
2022-02-20 15:13:51 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) |
2022-02-20 15:15:04 +0100 | tubogram4 | (~tubogram@user/tubogram) (Ping timeout: 260 seconds) |
2022-02-20 15:15:04 +0100 | tubogram40 | tubogram4 |
2022-02-20 15:17:25 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 15:17:27 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 15:18:03 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) |
2022-02-20 15:18:27 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 15:18:27 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 15:18:27 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 15:19:24 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 15:22:14 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-02-20 15:22:24 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-02-20 15:23:05 +0100 | max22- | (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 256 seconds) |
2022-02-20 15:23:19 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2022-02-20 15:23:54 +0100 | son0p | (~ff@181.136.122.143) (Remote host closed the connection) |
2022-02-20 15:29:27 +0100 | max22- | (~maxime@2a01cb0883359800f08509aefb13de74.ipv6.abo.wanadoo.fr) |
2022-02-20 15:32:39 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-02-20 15:33:14 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 15:33:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-02-20 15:35:29 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 15:38:23 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-02-20 15:42:36 +0100 | merijn | (~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-02-20 15:43:48 +0100 | fendor | (~fendor@77.119.193.215.wireless.dyn.drei.com) |
2022-02-20 15:46:37 +0100 | <int-e> | pavonia, Me-me: About https://paste.debian.net/1231570/ ... Well I'm more awake now, so I can try... So the problem is, there's a bag of marbles with 10 marbles of color 1, 20 marbles of color 2, etc., to 150 marbles of color 15. We select 10 of those marbles and want to know the probability that we get at least 6 colors, or, taken the complement, that we have at most 5 colors. Now if we focus on... |
2022-02-20 15:46:43 +0100 | <int-e> | ...any l of the colors (a sublist of length l of ns) then there's a simple formula to count in how many ways we can use a subset of those marbles, that's line 18. However, that count includes cases with fewer than l colors, and if we simply added those up for all the 5-element lists we'd overcount. We need to compensate for that, using the Inclusion-Exclusion Principle (hence `pie`). The amount... |
2022-02-20 15:46:49 +0100 | <int-e> | ...of overcounting that happens for sublists of length l is accounted in ws !! l. If we wanted to count the possibilities with *exactly* k colors, then we'd simply have ws !! l = (-1)^(k-l) * c (n - l) (k - l), where the (-1)^(k-l) comes straight from the inclusion-exclusion principle, and c (n-l) (k-l) is the number of ways to extend an l-element subset of {1..n} to a k-element subset of... |
2022-02-20 15:46:55 +0100 | <int-e> | ...{1..n}. But we want to count the number of ways to get at most k (== 5) colors, so we sum those terms for k' = 0..k, which becomes l..k because the expression is zero for 0..l-1 (and the implementation of `c` doesn't actually cope with those cases). [This is actually how the code evolved, so it explains the shadowing of k: overloading on the spot is less error-prone than adjusting the formula.... |
2022-02-20 15:47:01 +0100 | <int-e> | ...I'd change the variable name if I ever cleaned up the code.] |
2022-02-20 15:47:37 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Ping timeout: 240 seconds) |
2022-02-20 15:48:58 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 15:50:09 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 15:53:17 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 15:53:51 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 15:54:49 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) (Ping timeout: 272 seconds) |
2022-02-20 15:56:37 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 15:57:34 +0100 | zebrag | (~chris@user/zebrag) |
2022-02-20 15:57:44 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 16:00:35 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) |
2022-02-20 16:01:09 +0100 | neurocyte0917090 | (~neurocyte@IP-213188112151.dynamic.medianet-world.de) |
2022-02-20 16:01:09 +0100 | neurocyte0917090 | (~neurocyte@IP-213188112151.dynamic.medianet-world.de) (Changing host) |
2022-02-20 16:01:09 +0100 | neurocyte0917090 | (~neurocyte@user/neurocyte) |
2022-02-20 16:01:15 +0100 | vorpuni | (~pvorp@2001:861:3881:c690:2806:79fd:17ad:ce07) |
2022-02-20 16:06:10 +0100 | travisb | (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net) |
2022-02-20 16:09:01 +0100 | coot | (~coot@213.134.190.95) (Quit: coot) |
2022-02-20 16:12:58 +0100 | alx741 | (~alx741@181.199.42.143) |
2022-02-20 16:16:00 +0100 | alx741 | (~alx741@181.199.42.143) (Read error: Connection reset by peer) |
2022-02-20 16:17:50 +0100 | zincy_ | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) |
2022-02-20 16:18:32 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-02-20 16:19:21 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 16:22:12 +0100 | zincy_ | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) (Ping timeout: 240 seconds) |
2022-02-20 16:24:17 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-02-20 16:25:00 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) |
2022-02-20 16:27:57 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 16:28:45 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-02-20 16:29:23 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) (Ping timeout: 256 seconds) |
2022-02-20 16:29:37 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-02-20 16:32:12 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Ping timeout: 240 seconds) |
2022-02-20 16:32:47 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) (Ping timeout: 256 seconds) |
2022-02-20 16:33:13 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 16:33:57 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) |
2022-02-20 16:35:53 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 16:36:42 +0100 | zincy_ | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) |
2022-02-20 16:40:19 +0100 | yrlnry | (~mjd@pool-74-109-20-19.phlapa.fios.verizon.net) |
2022-02-20 16:41:47 +0100 | alp | (~alp@user/alp) (Remote host closed the connection) |
2022-02-20 16:41:57 +0100 | <yrlnry> | Hi folks. I want to learn to use setrvant (https://github.com/haskell-servant/) . It has a tutorial, and the tutorial has three sets of installation instructions, one each for cabal, stack, and nix, but none of them worked for me. I wrote up the problems I encountered here: https://github.com/haskell-servant/servant/issues/1540 |
2022-02-20 16:42:20 +0100 | alp | (~alp@user/alp) |
2022-02-20 16:42:34 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-02-20 16:42:44 +0100 | <yrlnry> | The cabal installation complains about an unmet dependency. The stack installation tries to use HTP to retrieve something that replies 404. And nix seems to work but the instructions are extremely incomplete and it doesn't say what to actually do. |
2022-02-20 16:43:16 +0100 | <yrlnry> | The instructions here are https://docs.servant.dev/en/stable/tutorial/install.html . Does someone have time and interest to work through some of the problems with me? |
2022-02-20 16:43:27 +0100 | alp | (~alp@user/alp) (Remote host closed the connection) |
2022-02-20 16:44:00 +0100 | alp | (~alp@user/alp) |
2022-02-20 16:44:31 +0100 | <geekosaur> | you're having basically the same probloem with both cabal and stack: ubuntu ships ancient versions of everything |
2022-02-20 16:44:39 +0100 | <geekosaur> | wrt cabal, your ghc is too old |
2022-02-20 16:45:06 +0100 | <geekosaur> | wrt stack, it tries to download a newer one but ubuntu's stack is so old that the main repository has moved and it can't find anything |
2022-02-20 16:45:08 +0100 | alp | (~alp@user/alp) (Remote host closed the connection) |
2022-02-20 16:45:23 +0100 | <geekosaur> | I suggest you remove the ubuntu packages and use ghcup to install newer versions |
2022-02-20 16:45:57 +0100 | <yrlnry> | I manually installed cabal 3.4 |
2022-02-20 16:46:01 +0100 | <geekosaur> | https://www.haskell.org/ghcup/install/ |
2022-02-20 16:46:10 +0100 | <yrlnry> | I'll try that, thanks. |
2022-02-20 16:46:12 +0100 | <geekosaur> | cabal isn't enough. you need a nbewer *ghc* |
2022-02-20 16:46:20 +0100 | <yrlnry> | Roger that. Thanks very much. |
2022-02-20 16:46:45 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
2022-02-20 16:46:50 +0100 | <geekosaur> | specifically, cabal is complaining that the version of base (which is tied to the version of ghc) is too old |
2022-02-20 16:47:55 +0100 | <yrlnry> | That's useful, thanks. |
2022-02-20 16:48:32 +0100 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-02-20 16:49:03 +0100 | <geekosaur> | you might be able to get the stack instructions to work if you first run stack upgrade, then hash -r |
2022-02-20 16:49:22 +0100 | <geekosaur> | and make sure ~/.local/bin is first in your $PATH |
2022-02-20 16:53:10 +0100 | zer0bitz | (~zer0bitz@2001:2003:f74d:b800:7d50:ed7b:88e6:c382) |
2022-02-20 16:53:40 +0100 | <geekosaur> | but really, I'd just ditch the ancient ubuntu stuff and start over with ghcup which will get you a modern ghc, a modern cabal, and a modern stack |
2022-02-20 16:53:42 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 16:54:10 +0100 | <geekosaur> | and haskell-language-server which enables editors to be haskell IDEs |
2022-02-20 16:54:11 +0100 | <yrlnry> | That is what I did, so far it looks good. |
2022-02-20 16:54:33 +0100 | <yrlnry> | Do you recommend proceeding with the stack or the cabal installation? |
2022-02-20 16:54:49 +0100 | <geekosaur> | that's up to you. I personally prefer cabal |
2022-02-20 16:56:18 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 16:57:02 +0100 | <yrlnry> | cabal seems to be working. |
2022-02-20 16:57:58 +0100 | <yrlnry> | Oh, it's brandon allbery. I think we've met before, probably on usenet. |
2022-02-20 16:58:02 +0100 | <yrlnry> | Hello again. |
2022-02-20 16:59:06 +0100 | zmt00 | (~zmt00@user/zmt00) |
2022-02-20 16:59:10 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2022-02-20 16:59:28 +0100 | <geekosaur> | yes, your nick seemed familiar. been a while |
2022-02-20 17:00:06 +0100 | SawyerBergeron[m | (~sawyerber@2001:470:69fc:105::3036) (Quit: You have been kicked for being idle) |
2022-02-20 17:01:00 +0100 | Midjak | (~Midjak@82.66.147.146) |
2022-02-20 17:01:11 +0100 | <ehammarstrom> | Is it possible for me to pattern-match on the `z` here https://paste.tomsmeding.com/fKUJge3F ? |
2022-02-20 17:01:19 +0100 | zmt01 | (~zmt00@user/zmt00) (Ping timeout: 250 seconds) |
2022-02-20 17:01:48 +0100 | <ehammarstrom> | All my attempts throws me a `Parse error in ...` |
2022-02-20 17:01:54 +0100 | <yrlnry> | Do you mean like with `z@(pattern)`? |
2022-02-20 17:02:11 +0100 | <yrlnry> | If all else calse you can have the body of the function be `case z of PAT -> …` |
2022-02-20 17:02:16 +0100 | <yrlnry> | *fails |
2022-02-20 17:02:24 +0100 | <lyxia> | there's no pattern to be had there because z's type is abstract |
2022-02-20 17:03:14 +0100 | <yrlnry> | @geekosaur: installation seems to have completed successfully. Thanks very much! |
2022-02-20 17:03:14 +0100 | <lambdabot> | Unknown command, try @list |
2022-02-20 17:03:28 +0100 | <geekosaur> | np |
2022-02-20 17:04:47 +0100 | notzmv | (~zmv@user/notzmv) |
2022-02-20 17:05:27 +0100 | dvdrw | (~dvdrw@87.116.177.189) |
2022-02-20 17:10:36 +0100 | fendor | (~fendor@77.119.193.215.wireless.dyn.drei.com) (Remote host closed the connection) |
2022-02-20 17:11:04 +0100 | <yrlnry> | In type UserAPI = "users" :> QueryParam "sortby" SortBy :> Get '[JSON] [User] |
2022-02-20 17:11:05 +0100 | <yrlnry> | what kind of lexical token is the unclosed single quote? |
2022-02-20 17:12:27 +0100 | <pavonia> | int-e: Thanks. I don't understand the details, but I get the idea |
2022-02-20 17:12:49 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 17:13:46 +0100 | mbuf | (~Shakthi@223.178.126.157) (Quit: Leaving) |
2022-02-20 17:15:17 +0100 | <dvdrw> | I've been playing with GHC 9.2's impredicative polymorphism, trying to get heterogeneous lists to typecheck. I've had limited success, though. |
2022-02-20 17:16:06 +0100 | <dvdrw> | Given an f :: forall a. F a -> G a, and xs :: [forall a. F a]; how would I 'lift' map so as to work with a nested forall? |
2022-02-20 17:16:48 +0100 | <dvdrw> | Just applying it like 'map f xs' infers (correctly) that F a ~ forall a. F a |
2022-02-20 17:17:10 +0100 | <dvdrw> | Obviously, there'd be a few constraints thrown in there, too, but I don't think that changes things much. |
2022-02-20 17:17:29 +0100 | xkuru | (~xkuru@user/xkuru) |
2022-02-20 17:20:26 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 17:20:38 +0100 | <dvdrw> | In fact, I can't seem to write the type for any map-like function that would typecheck here. They all involve the `a` in `[forall a. F a] -> [forall a. G a]` bridging the gap, which is definitionally impossible. |
2022-02-20 17:20:40 +0100 | <geekosaur> | yrlnry, that's a lifted type |
2022-02-20 17:21:34 +0100 | <geekosaur> | with the DataKinds extension enabled, a `data Foo = Bar | Baz` is not only a type with data constructors, but a lifted kind with type constructors (typically marked with that single quote) |
2022-02-20 17:21:41 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:25f4:e878:3056:b5be) |
2022-02-20 17:22:42 +0100 | dextaa_ | (~dextaa@user/dextaa) |
2022-02-20 17:24:15 +0100 | vysn | (~vysn@user/vysn) |
2022-02-20 17:29:10 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-02-20 17:32:51 +0100 | dyeplexer | (~dyeplexer@user/dyeplexer) (Ping timeout: 256 seconds) |
2022-02-20 17:34:26 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-02-20 17:34:26 +0100 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-02-20 17:34:26 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-02-20 17:34:36 +0100 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2022-02-20 17:36:56 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 17:38:41 +0100 | zincy_ | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) (Ping timeout: 272 seconds) |
2022-02-20 17:38:51 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-02-20 17:38:58 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 17:40:05 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 17:46:50 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 17:47:59 +0100 | jakalx | (~jakalx@base.jakalx.net) () |
2022-02-20 17:48:39 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 17:48:55 +0100 | arievw | (~arievw@85.148.234.95) (Quit: Nettalk6 - www.ntalk.de) |
2022-02-20 17:49:21 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) |
2022-02-20 17:50:58 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2022-02-20 17:53:00 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 17:57:11 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 17:59:47 +0100 | waleee | (~waleee@h-98-128-229-110.NA.cust.bahnhof.se) |
2022-02-20 18:00:20 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 18:00:54 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2022-02-20 18:05:59 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 18:06:31 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 18:07:06 +0100 | fjmorazan | (~quassel@user/fjmorazan) (Quit: fjmorazan) |
2022-02-20 18:07:36 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2022-02-20 18:07:37 +0100 | fjmorazan | (~quassel@user/fjmorazan) |
2022-02-20 18:08:36 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 240 seconds) |
2022-02-20 18:08:36 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
2022-02-20 18:08:56 +0100 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) (Ping timeout: 240 seconds) |
2022-02-20 18:08:56 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-02-20 18:08:56 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2022-02-20 18:08:56 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
2022-02-20 18:09:16 +0100 | alMalsamo | (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
2022-02-20 18:09:16 +0100 | LiaoTao_ | (~LiaoTao@gateway/tor-sasl/liaotao) (Ping timeout: 240 seconds) |
2022-02-20 18:09:16 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Ping timeout: 240 seconds) |
2022-02-20 18:09:16 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 240 seconds) |
2022-02-20 18:09:17 +0100 | max22- | (~maxime@2a01cb0883359800f08509aefb13de74.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2022-02-20 18:09:36 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds) |
2022-02-20 18:09:36 +0100 | hololeap | (~hololeap@user/hololeap) (Ping timeout: 240 seconds) |
2022-02-20 18:09:42 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2022-02-20 18:10:22 +0100 | max22- | (~maxime@2a01cb0883359800761b1c69d9198b7f.ipv6.abo.wanadoo.fr) |
2022-02-20 18:14:58 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2022-02-20 18:16:18 +0100 | CiaoSen | (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2022-02-20 18:17:06 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 18:18:47 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 18:22:15 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 18:22:31 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) (Quit: WeeChat 3.3) |
2022-02-20 18:22:47 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-02-20 18:22:51 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-02-20 18:23:09 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) |
2022-02-20 18:23:54 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-02-20 18:24:12 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 18:24:16 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2022-02-20 18:24:25 +0100 | hololeap | (~hololeap@user/hololeap) |
2022-02-20 18:24:29 +0100 | LiaoTao | (~LiaoTao@gateway/tor-sasl/liaotao) |
2022-02-20 18:25:59 +0100 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) |
2022-02-20 18:26:17 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-02-20 18:26:18 +0100 | alMalsamo | (~alMalsamo@gateway/tor-sasl/almalsamo) |
2022-02-20 18:26:21 +0100 | ec | (~ec@gateway/tor-sasl/ec) |
2022-02-20 18:27:08 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2022-02-20 18:27:20 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2022-02-20 18:28:08 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 18:28:59 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-02-20 18:30:11 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) |
2022-02-20 18:34:36 +0100 | yauhsien_ | (~yauhsien@61-231-37-106.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
2022-02-20 18:39:09 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 256 seconds) |
2022-02-20 18:40:25 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 18:55:20 +0100 | Achylles | (~Achylles_@2804:431:d724:7449:3b4d:585c:367b:f390) |
2022-02-20 18:55:29 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
2022-02-20 18:56:34 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 18:57:33 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) |
2022-02-20 18:58:59 +0100 | paddymahoney | (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds) |
2022-02-20 19:00:07 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2022-02-20 19:02:46 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-02-20 19:03:33 +0100 | dsrt^ | (~dsrt@50.233.120.162) (Ping timeout: 272 seconds) |
2022-02-20 19:05:19 +0100 | econo | (uid147250@user/econo) |
2022-02-20 19:11:48 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Ping timeout: 240 seconds) |
2022-02-20 19:14:47 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 19:18:24 +0100 | dsrt^ | (~dsrt@50.233.120.162) |
2022-02-20 19:21:04 +0100 | poss | (~fes@mobile-access-567357-189.dhcp.inet.fi) |
2022-02-20 19:22:04 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 19:22:12 +0100 | dsrt^ | (~dsrt@50.233.120.162) (Remote host closed the connection) |
2022-02-20 19:23:48 +0100 | <joel135> | do you use xmonad ? |
2022-02-20 19:24:08 +0100 | <joel135> | i tried it right now, without any config |
2022-02-20 19:24:22 +0100 | <geekosaur> | it's very stupid without a config |
2022-02-20 19:24:34 +0100 | <joel135> | i bet :) |
2022-02-20 19:24:50 +0100 | <geekosaur> | you might want to go through https://xmonad.org/TUTORIAL.html |
2022-02-20 19:25:13 +0100 | <geekosaur> | without a config it does the absolute bare minimum it needs to |
2022-02-20 19:25:24 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 19:27:38 +0100 | <joel135> | i just spent a few hours setting up arch linux in virtualbox so i could install xmonad. maybe i will go through the tutorial another weekend |
2022-02-20 19:28:59 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 19:29:29 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 19:30:10 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2022-02-20 19:30:46 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2022-02-20 19:31:40 +0100 | <dvdrw> | joel135: It might be a bit more to learn, but Nix (the package manager) and NixOS (the distro built around it) might be more elegant to configure in the long run |
2022-02-20 19:31:52 +0100 | <joel135> | good point |
2022-02-20 19:32:44 +0100 | <joel135> | i had forgot about nixos |
2022-02-20 19:33:24 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 19:33:51 +0100 | <geekosaur> | that, and arch is not the best distro to play with haskell stuff unless you're starting from ghcup instead of distro packages |
2022-02-20 19:34:14 +0100 | <geekosaur> | they do really *annoying* things with their haskell packages |
2022-02-20 19:35:54 +0100 | <dvdrw> | I think any install ought to go through ghcup/stack, it's much easier than whatever 'native' package manager solution you have in place |
2022-02-20 19:35:58 +0100 | <yrlnry> | ghci now says that the kind of Functor is (* -> *) -> Constraint. I expected just * -> *. Has it changed? What's "constraint"? |
2022-02-20 19:36:13 +0100 | <dvdrw> | just like pip with python/nvm with node |
2022-02-20 19:37:19 +0100 | <dvdrw> | yrlnry: There's been a fair few kind system tweaks over the years, the chronology of which I'm not so sure about. But there's now two kinds, * (or Type as it's now called) and Constraint |
2022-02-20 19:37:19 +0100 | <monochrom> | If F is an instance of Functor, then F's kind is * -> *. That doesn't mean Functor's kind is * -> *. |
2022-02-20 19:37:20 +0100 | <geekosaur> | Functor is a typeclass, not a type constructor |
2022-02-20 19:37:28 +0100 | <dvdrw> | Constraint is the typeclass kind |
2022-02-20 19:37:34 +0100 | <geekosaur> | Constraint is something that appears to the left of => |
2022-02-20 19:38:15 +0100 | <monochrom> | Instead, given that "Functor F" is a constraint, therefore, Functor maps *->* to constraint. |
2022-02-20 19:38:52 +0100 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
2022-02-20 19:39:14 +0100 | <yrlnry> | Oh, I see. Thanks. |
2022-02-20 19:40:16 +0100 | alx741 | (~alx741@157.100.197.240) |
2022-02-20 19:40:35 +0100 | dyeplexer | (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
2022-02-20 19:43:18 +0100 | alx741 | (~alx741@157.100.197.240) (Read error: Connection reset by peer) |
2022-02-20 19:44:59 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) () |
2022-02-20 19:45:13 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 19:45:50 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2022-02-20 19:48:00 +0100 | Megant | (megant@user/megant) (Ping timeout: 256 seconds) |
2022-02-20 19:48:08 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2022-02-20 19:48:21 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2022-02-20 19:49:32 +0100 | Megant | (megant@user/megant) |
2022-02-20 19:54:46 +0100 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
2022-02-20 19:55:29 +0100 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
2022-02-20 19:56:55 +0100 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
2022-02-20 19:58:12 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) (Ping timeout: 240 seconds) |
2022-02-20 19:59:44 +0100 | paddymahoney | (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) |
2022-02-20 20:01:52 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4) |
2022-02-20 20:02:09 +0100 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) |
2022-02-20 20:02:15 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-02-20 20:02:15 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 20:02:43 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-02-20 20:03:24 +0100 | dwt_ | (~dwt_@c-98-198-103-176.hsd1.tx.comcast.net) (Ping timeout: 240 seconds) |
2022-02-20 20:06:31 +0100 | dwt_ | (~dwt_@c-98-198-103-176.hsd1.tx.comcast.net) |
2022-02-20 20:07:00 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 20:15:15 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) (Ping timeout: 256 seconds) |
2022-02-20 20:20:11 +0100 | neurocyte0917090 | (~neurocyte@user/neurocyte) (Ping timeout: 272 seconds) |
2022-02-20 20:24:25 +0100 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
2022-02-20 20:28:53 +0100 | neurocyte0917090 | (~neurocyte@IP-213188112151.dynamic.medianet-world.de) |
2022-02-20 20:28:53 +0100 | neurocyte0917090 | (~neurocyte@IP-213188112151.dynamic.medianet-world.de) (Changing host) |
2022-02-20 20:28:53 +0100 | neurocyte0917090 | (~neurocyte@user/neurocyte) |
2022-02-20 20:29:54 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 20:31:19 +0100 | Achylles | (~Achylles_@2804:431:d724:7449:3b4d:585c:367b:f390) (Remote host closed the connection) |
2022-02-20 20:33:53 +0100 | mcglk | (~mcglk@131.191.49.120) (Read error: Connection reset by peer) |
2022-02-20 20:33:57 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Ping timeout: 240 seconds) |
2022-02-20 20:34:40 +0100 | mcglk | (~mcglk@131.191.49.120) |
2022-02-20 20:34:58 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Remote host closed the connection) |
2022-02-20 20:37:12 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) |
2022-02-20 20:40:12 +0100 | jao | (~jao@static-68-235-44-22.cust.tzulo.com) |
2022-02-20 20:43:30 +0100 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2022-02-20 20:44:00 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2022-02-20 20:44:17 +0100 | alp | (~alp@user/alp) |
2022-02-20 20:44:36 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2022-02-20 20:44:57 +0100 | neurocyte0917090 | (~neurocyte@user/neurocyte) (Ping timeout: 256 seconds) |
2022-02-20 20:45:17 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
2022-02-20 20:46:44 +0100 | Lord_of_Life_ | Lord_of_Life |
2022-02-20 20:47:42 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2022-02-20 20:50:37 +0100 | jao | (~jao@static-68-235-44-22.cust.tzulo.com) (Ping timeout: 256 seconds) |
2022-02-20 20:50:52 +0100 | CiaoSen | (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-02-20 20:52:22 +0100 | jao | (~jao@static-68-235-44-61.cust.tzulo.com) |
2022-02-20 20:55:41 +0100 | <joel135> | hmm... what do you think about installing `stack` using pacman in arch linux? |
2022-02-20 20:55:43 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
2022-02-20 20:56:10 +0100 | <Rembane> | joel135: It will give you infinite amounts of pain, so only do that if you want to fight everything all the time to get something to work. |
2022-02-20 20:56:23 +0100 | <joel135> | ok then i will install stack without pacman |
2022-02-20 20:56:26 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 20:56:57 +0100 | <joel135> | weird that the command for installing stack using pacman is listed here https://xmonad.org/INSTALL.html |
2022-02-20 20:57:54 +0100 | <Rembane> | Maybe that part of the docs are so old that it was a good experience using Haskell on Arch? |
2022-02-20 20:58:57 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) |
2022-02-20 20:59:56 +0100 | <geekosaur> | we reworked the docs. I believe the intent for Arch is you install *only* stack via pacman and let stack install everything else |
2022-02-20 21:00:33 +0100 | <Rembane> | That seems like a reasonable solution. |
2022-02-20 21:01:21 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 272 seconds) |
2022-02-20 21:01:37 +0100 | Midjak | (~Midjak@82.66.147.146) (Read error: Connection reset by peer) |
2022-02-20 21:01:42 +0100 | random | (~random@46.254.129.49) |
2022-02-20 21:02:14 +0100 | Midjak | (~Midjak@82.66.147.146) |
2022-02-20 21:02:48 +0100 | <random> | hey guys, got what's probably a dumb question |
2022-02-20 21:02:58 +0100 | <Hecate> | damn |
2022-02-20 21:03:03 +0100 | <random> | I'm used to deriving json instances with TH via `$(deriveJSON defaultOptions 'MyType)` |
2022-02-20 21:03:03 +0100 | <Hecate> | hope you ask it then :) |
2022-02-20 21:03:03 +0100 | <joel135> | geekosaur: but arch wants to install lots of haskell-* packages when i install stack |
2022-02-20 21:03:27 +0100 | <random> | now I've got a type that has a parameter `newtype SomeType a = ..` |
2022-02-20 21:03:31 +0100 | <geekosaur> | itwillinstall a bunch of shared objects, yes. you can ignore those; stack installs its own copies of everything including the compiler |
2022-02-20 21:03:37 +0100 | echoreply | (~echoreply@45.32.163.16) (Quit: WeeChat 2.8) |
2022-02-20 21:03:43 +0100 | <random> | and when I try to do `$(deriveJSON defaultOptions '(SomeType Something))` |
2022-02-20 21:03:45 +0100 | <joel135> | ok then i will use pacman |
2022-02-20 21:03:52 +0100 | <geekosaur> | so nothing else will use the stuff pacman installs |
2022-02-20 21:03:53 +0100 | <random> | it fails with a parse error at the opening parentheses |
2022-02-20 21:04:05 +0100 | echoreply | (~echoreply@45.32.163.16) |
2022-02-20 21:04:21 +0100 | <random> | so it seems you can't do ''(SomeType) which is weird |
2022-02-20 21:04:26 +0100 | <geekosaur> | if this annoysa you then use ghcup to install ghc and stack |
2022-02-20 21:04:54 +0100 | vorpuni | (~pvorp@2001:861:3881:c690:2806:79fd:17ad:ce07) (Remote host closed the connection) |
2022-02-20 21:05:09 +0100 | juhp | (~juhp@128.106.188.82) (Ping timeout: 272 seconds) |
2022-02-20 21:05:31 +0100 | wavemode | (~wavemode@2601:241:0:fc90:79a9:b149:73a6:32c7) |
2022-02-20 21:06:29 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) (Ping timeout: 256 seconds) |
2022-02-20 21:06:45 +0100 | juhp | (~juhp@128.106.188.82) |
2022-02-20 21:07:04 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2022-02-20 21:08:57 +0100 | jao | (~jao@static-68-235-44-61.cust.tzulo.com) (Ping timeout: 272 seconds) |
2022-02-20 21:09:12 +0100 | Erutuon | (~Erutuon@user/erutuon) |
2022-02-20 21:10:00 +0100 | <random> | so it seems like I'm looking for a way to construct a https://hackage.haskell.org/package/template-haskell-2.16.0.0/docs/Language-Haskell-TH-Syntax.html… via the '' syntax |
2022-02-20 21:10:04 +0100 | raghavgururajan | (ea769b8000@user/raghavgururajan) (Ping timeout: 250 seconds) |
2022-02-20 21:10:05 +0100 | <random> | for a type that has a parameter |
2022-02-20 21:10:42 +0100 | <random> | in an expression like $(deriveJSON defaultOptions ''(MyTypeWithParameter Int)) |
2022-02-20 21:11:16 +0100 | raghavgururajan | (ea769b8000@user/raghavgururajan) |
2022-02-20 21:12:10 +0100 | Me-me | (~me-me@user/me-me) (Read error: Connection reset by peer) |
2022-02-20 21:12:42 +0100 | Me-me | (~me-me@v.working.name) |
2022-02-20 21:14:13 +0100 | <geekosaur> | you just derive it without the parameter, it looks like |
2022-02-20 21:14:36 +0100 | <geekosaur> | example: https://github.com/lachenmayer/arrowsmith/blob/34b6bdeddddb2d8b9c6f41002e87ec65ce8a701a/backend/Ar… |
2022-02-20 21:14:45 +0100 | <geekosaur> | (yay github search) |
2022-02-20 21:19:11 +0100 | <random> | hahhaa my god this actually compiled |
2022-02-20 21:20:02 +0100 | shreyasminocha | (51fdc93eda@user/shreyasminocha) (Ping timeout: 250 seconds) |
2022-02-20 21:20:02 +0100 | tdmm | (1c9b9145fc@2604:bf00:561:2000::1c8) (Ping timeout: 250 seconds) |
2022-02-20 21:20:31 +0100 | cjb | (~cjb@user/cjb) |
2022-02-20 21:21:20 +0100 | lukec | (9dfd4d094e@2604:bf00:561:2000::10e) (Ping timeout: 250 seconds) |
2022-02-20 21:21:20 +0100 | filwisher | (2e6936c793@2604:bf00:561:2000::170) (Ping timeout: 250 seconds) |
2022-02-20 21:21:46 +0100 | sm2n | (ae95cb1267@user/sm2n) (Ping timeout: 250 seconds) |
2022-02-20 21:21:46 +0100 | bsima1 | (9d7e39c8ad@2604:bf00:561:2000::dd) (Ping timeout: 250 seconds) |
2022-02-20 21:21:50 +0100 | shreyasminocha | (51fdc93eda@user/shreyasminocha) |
2022-02-20 21:21:50 +0100 | lukec | (9dfd4d094e@2604:bf00:561:2000::10e) |
2022-02-20 21:21:53 +0100 | tdmm | (1c9b9145fc@2604:bf00:561:2000::1c8) |
2022-02-20 21:21:53 +0100 | filwisher | (2e6936c793@2604:bf00:561:2000::170) |
2022-02-20 21:22:05 +0100 | bsima1 | (9d7e39c8ad@2604:bf00:561:2000::dd) |
2022-02-20 21:22:18 +0100 | sm2n | (ae95cb1267@user/sm2n) |
2022-02-20 21:25:25 +0100 | Null_A | (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2022-02-20 21:26:46 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) |
2022-02-20 21:29:01 +0100 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) |
2022-02-20 21:29:56 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Ping timeout: 240 seconds) |
2022-02-20 21:30:23 +0100 | jao | (~jao@static-68-235-44-45.cust.tzulo.com) |
2022-02-20 21:31:45 +0100 | deadmarshal | (~deadmarsh@95.38.116.229) (Ping timeout: 272 seconds) |
2022-02-20 21:32:43 +0100 | mcglk | (~mcglk@131.191.49.120) (Quit: (seeya)) |
2022-02-20 21:33:15 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2022-02-20 21:34:25 +0100 | EDP1035 | (~EDP1035@2607:fb90:2164:7428:e55c:6036:7494:489e) |
2022-02-20 21:34:46 +0100 | fluffyballoon | (45ce440a48@2604:bf00:561:2000::e2) (Ping timeout: 250 seconds) |
2022-02-20 21:35:07 +0100 | EDP1035 | (~EDP1035@2607:fb90:2164:7428:e55c:6036:7494:489e) (Client Quit) |
2022-02-20 21:35:26 +0100 | fluffyballoon | (45ce440a48@2604:bf00:561:2000::e2) |
2022-02-20 21:36:25 +0100 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) (Quit: Konversation terminated!) |
2022-02-20 21:39:21 +0100 | michalz | (~michalz@185.246.204.61) |
2022-02-20 21:39:56 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 21:44:25 +0100 | <FernandoChu[m]> | `StateT s m a` is a functor as long as `m` is a functor, similarly with monads. If `m` is an Applicative does that implies that `StateT s m a` is Applicative too? |
2022-02-20 21:47:02 +0100 | <jackdk> | % :info StateT |
2022-02-20 21:47:03 +0100 | <yahb> | jackdk: type role StateT nominal representational nominal; type StateT :: * -> (* -> *) -> * -> *; newtype StateT s m a = StateT {runStateT :: s -> m (a, s)}; -- Defined in `Control.Monad.Trans.State.Lazy'; instance [safe] forall (m :: * -> *) s. (Functor m, MonadPlus m) => Alternative (StateT s m) -- Defined in `Control.Monad.Trans.State.Lazy'; instance [safe] forall (m :: * -> *) s. (Functor m, Monad m) = |
2022-02-20 21:47:28 +0100 | <geekosaur> | %% :info StateT |
2022-02-20 21:47:28 +0100 | <yahb> | geekosaur: http://qp.mniip.com/y/43 |
2022-02-20 21:47:34 +0100 | pragma- | (~chaos@user/pragmatic-chaos) (Bye!) |
2022-02-20 21:47:56 +0100 | <jackdk> | `instance [safe] forall (m :: * -> *) s. (Functor m, Monad m) => Applicative (StateT s m) -- Defined in `Control.Monad.Trans.State.Lazy'` Guess not, but probably for historical reasons. |
2022-02-20 21:48:04 +0100 | <geekosaur> | interestingly it seems to require (Functor m, Monad m) which sounds like a holdover from pre-AMP |
2022-02-20 21:48:40 +0100 | little_mac | (~little_ma@2601:410:4300:3ce0:45bc:2e9e:c6:5360) |
2022-02-20 21:48:42 +0100 | <FernandoChu[m]> | yep, that's why I'm wondering if that's just an unnecessary (historic) constraint |
2022-02-20 21:49:04 +0100 | <geekosaur> | Monad implies Functor so the extra constraint is pointless, yes |
2022-02-20 21:49:17 +0100 | <geekosaur> | the question is whether it should be Application => |
2022-02-20 21:49:21 +0100 | <geekosaur> | erApplicative |
2022-02-20 21:49:35 +0100 | <FernandoChu[m]> | not that, I meant Monad implies Applicative too, so wondering if Applicative is enough |
2022-02-20 21:49:38 +0100 | <FernandoChu[m]> | yeah that |
2022-02-20 21:50:17 +0100 | <geekosaur> | right, but as these constraints predate that too, I think it's just an oversight |
2022-02-20 21:50:31 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 21:50:41 +0100 | <geekosaur> | wonder if the infamous next release will fix it |
2022-02-20 21:51:30 +0100 | <geekosaur> | (infamous because we've been waiting a couple years for it…) |
2022-02-20 21:52:39 +0100 | jao | (~jao@static-68-235-44-45.cust.tzulo.com) (Ping timeout: 272 seconds) |
2022-02-20 21:53:17 +0100 | alp | (~alp@user/alp) (Ping timeout: 256 seconds) |
2022-02-20 21:54:01 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 21:54:18 +0100 | Akiva | (~Akiva@user/Akiva) |
2022-02-20 21:54:23 +0100 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
2022-02-20 21:54:23 +0100 | jao | (~jao@static-68-235-44-77.cust.tzulo.com) |
2022-02-20 21:56:52 +0100 | jkoshy | (99b9359beb@2604:bf00:561:2000::10f) (Ping timeout: 250 seconds) |
2022-02-20 21:57:00 +0100 | jkoshy | (99b9359beb@2604:bf00:561:2000::10f) |
2022-02-20 21:57:41 +0100 | barzo | (~hd@31.155.65.151) |
2022-02-20 21:58:47 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 250 seconds) |
2022-02-20 21:59:11 +0100 | mcglk | (~mcglk@131.191.49.120) |
2022-02-20 22:01:26 +0100 | pavonia | (~user@user/siracusa) |
2022-02-20 22:01:32 +0100 | simplicius | (~simplicio@2a02-a45b-3dc8-1-1d3a-6766-2ae7-f393.fixed6.kpn.net) |
2022-02-20 22:01:37 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) (Ping timeout: 240 seconds) |
2022-02-20 22:02:05 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 22:03:41 +0100 | vysn | (~vysn@user/vysn) (Ping timeout: 245 seconds) |
2022-02-20 22:05:25 +0100 | <ski> | FernandoChu[m] : "If `m` is an Applicative does that implies that `StateT s m a` is Applicative too?" -- no |
2022-02-20 22:05:36 +0100 | alp | (~alp@user/alp) |
2022-02-20 22:06:04 +0100 | <FernandoChu[m]> | I agree but wondering if there's some way of proving that |
2022-02-20 22:06:26 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) |
2022-02-20 22:07:45 +0100 | <FernandoChu[m]> | also I've been reading the source code for StateT and there's code like `~(a, _) <- runStateT m s`, any ideas what the `~` is? very hard to search for something like that on google |
2022-02-20 22:08:17 +0100 | <geekosaur> | lazy pattern match |
2022-02-20 22:08:29 +0100 | <geekosaur> | the technical term is "irrefutable pattern match" |
2022-02-20 22:08:53 +0100 | <FernandoChu[m]> | I see, thanks |
2022-02-20 22:09:15 +0100 | <ski> | `Control.Monad.State.Lazy', i presume |
2022-02-20 22:10:28 +0100 | <jackdk> | FernandoChu[m]: attempt to write the instance, and you will find that to implement (<*>), you'll need to plumb an `s` parameter through things, and I'm pretty sure that's going to require bind |
2022-02-20 22:10:36 +0100 | dextaa_ | (~dextaa@user/dextaa) (Remote host closed the connection) |
2022-02-20 22:11:00 +0100 | <ski> | matching on a pattern `~<pat>' succeeds immediately, binding all identifiers bound by `<pat>'. when any of them are forced, the pattern `<pat>' is matched with the scrutinee (which may result in match failure) |
2022-02-20 22:11:41 +0100 | dextaa_ | (~dextaa@user/dextaa) |
2022-02-20 22:12:59 +0100 | cynomys | (~cynomys@user/cynomys) |
2022-02-20 22:13:36 +0100 | barzo | (~hd@31.155.65.151) (Quit: Leaving) |
2022-02-20 22:15:11 +0100 | mvk | (~mvk@2607:fea8:5cdc:bf00::99e7) |
2022-02-20 22:15:52 +0100 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
2022-02-20 22:21:24 +0100 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds) |
2022-02-20 22:22:52 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 22:22:56 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-02-20 22:23:04 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 22:24:06 +0100 | icrbow[m] | (~icrbowmat@2001:470:69fc:105::ee3) () |
2022-02-20 22:24:36 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-02-20 22:26:43 +0100 | jgeerds | (~jgeerds@55d4b9df.access.ecotel.net) |
2022-02-20 22:28:19 +0100 | cynomys | (~cynomys@user/cynomys) (Quit: Lost terminal) |
2022-02-20 22:28:58 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) |
2022-02-20 22:33:24 +0100 | Null_A | (~null_a@2601:645:8700:2290:44bc:7304:7645:6729) (Ping timeout: 240 seconds) |
2022-02-20 22:37:36 +0100 | nek0 | (~nek0@nek0.eu) (Quit: The Lounge - https://thelounge.chat) |
2022-02-20 22:37:49 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4) |
2022-02-20 22:39:51 +0100 | simplicius | (~simplicio@2a02-a45b-3dc8-1-1d3a-6766-2ae7-f393.fixed6.kpn.net) (Quit: Leaving) |
2022-02-20 22:40:57 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2022-02-20 22:43:56 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-02-20 22:44:16 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-02-20 22:45:19 +0100 | acidjnk | (~acidjnk@p200300d0c7363f90955657ea6b285d32.dip0.t-ipconnect.de) |
2022-02-20 22:47:24 +0100 | analognoise | (~analognoi@ip98-176-154-48.sd.sd.cox.net) |
2022-02-20 22:48:50 +0100 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:447b:39c4:735e:5310) (Quit: ccntrq) |
2022-02-20 22:48:52 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2022-02-20 22:50:50 +0100 | nek0 | (~nek0@nek0.eu) |
2022-02-20 22:55:21 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) |
2022-02-20 23:02:57 +0100 | Akiva | (~Akiva@user/Akiva) (Ping timeout: 272 seconds) |
2022-02-20 23:05:11 +0100 | Topsi | (~Tobias@dyndsl-095-033-018-175.ewe-ip-backbone.de) |
2022-02-20 23:09:22 +0100 | alp | (~alp@user/alp) (Ping timeout: 260 seconds) |
2022-02-20 23:09:57 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 23:10:11 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 23:10:18 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2022-02-20 23:14:14 +0100 | <random-jellyfish> | how many times did you get fired? |
2022-02-20 23:20:27 +0100 | emf | (~emf@c-73-97-137-43.hsd1.wa.comcast.net) (Quit: emf) |
2022-02-20 23:30:52 +0100 | zer0bitz | (~zer0bitz@2001:2003:f74d:b800:7d50:ed7b:88e6:c382) (Read error: Connection reset by peer) |
2022-02-20 23:31:42 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Remote host closed the connection) |
2022-02-20 23:32:01 +0100 | jackalope | (~jackalope@50-24-138-131.bcstcmta02.res.dyn.suddenlink.net) (Quit: = "vale") |
2022-02-20 23:34:06 +0100 | Akiva | (~Akiva@user/Akiva) |
2022-02-20 23:40:50 +0100 | lavaman | (~lavaman@98.38.249.169) |
2022-02-20 23:40:58 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-02-20 23:44:18 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) (Ping timeout: 256 seconds) |
2022-02-20 23:44:57 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
2022-02-20 23:46:02 +0100 | michalz | (~michalz@185.246.204.61) (Remote host closed the connection) |
2022-02-20 23:50:15 +0100 | vglfr | (~vglfr@coupling.penchant.volia.net) |
2022-02-20 23:50:28 +0100 | Topsi | (~Tobias@dyndsl-095-033-018-175.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
2022-02-20 23:51:10 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:5928:8400:a51e:7799) (Remote host closed the connection) |
2022-02-20 23:51:21 +0100 | thyriaen | (~thyriaen@dynamic-077-191-029-223.77.191.pool.telefonica.de) (Remote host closed the connection) |