2021-08-28 00:00:43 +0200 | sszark | (~sszark@h-155-4-128-59.NA.cust.bahnhof.se) (Ping timeout: 250 seconds) |
2021-08-28 00:04:28 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2021-08-28 00:05:03 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 250 seconds) |
2021-08-28 00:05:37 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 00:12:10 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 240 seconds) |
2021-08-28 00:13:41 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-08-28 00:14:21 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 00:14:55 +0200 | Cajun | (~Cajun@user/cajun) |
2021-08-28 00:17:49 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:b5b4:3a1f:2123:21ea) (Remote host closed the connection) |
2021-08-28 00:19:12 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:b5b4:3a1f:2123:21ea) |
2021-08-28 00:19:41 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 00:21:34 +0200 | doors | (~a@p200300ef970830a645b8de8f8152bf35.dip0.t-ipconnect.de) (Quit: WeeChat 3.0.1) |
2021-08-28 00:22:10 +0200 | son0p | (~ff@181.136.122.143) |
2021-08-28 00:22:20 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-08-28 00:23:18 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving) |
2021-08-28 00:24:01 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2) |
2021-08-28 00:25:25 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
2021-08-28 00:29:24 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-28 00:33:05 +0200 | Gurkenglas | (~Gurkengla@dslb-088-064-053-140.088.064.pools.vodafone-ip.de) (Ping timeout: 248 seconds) |
2021-08-28 00:33:27 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
2021-08-28 00:35:14 +0200 | Morrow_ | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-08-28 00:41:46 +0200 | CnnibisIndica | CannabisIndica |
2021-08-28 00:43:07 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-08-28 00:43:40 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 240 seconds) |
2021-08-28 00:45:47 +0200 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
2021-08-28 00:47:50 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 00:48:32 +0200 | jumper149 | (~jumper149@80.240.31.34) (Quit: WeeChat 3.2) |
2021-08-28 00:49:49 +0200 | <jle`> | hm .. what's the version of %%= for lens that only modifies/doesn't return a result? |
2021-08-28 00:50:25 +0200 | <glguy> | %= ? |
2021-08-28 00:50:26 +0200 | <jle`> | #mylens %%= \x -> ((), f x) |
2021-08-28 00:50:44 +0200 | <jle`> | ah, thanks :) |
2021-08-28 00:51:10 +0200 | <jle`> | ooh, it was in Control.Lens.Setter |
2021-08-28 00:55:34 +0200 | minimario | (~minimario@2603:900a:1600:ba00:a4f2:2ae3:8f32:437f) (Ping timeout: 246 seconds) |
2021-08-28 00:57:27 +0200 | mikoto-chan | (~mikoto-ch@83.137.2.251) (Ping timeout: 240 seconds) |
2021-08-28 00:58:17 +0200 | <hololeap> | what was the function that takes a list and repeats infinitely? |
2021-08-28 00:59:03 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:b5b4:3a1f:2123:21ea) (Remote host closed the connection) |
2021-08-28 01:00:14 +0200 | <nitrix> | repeat ._. |
2021-08-28 01:00:26 +0200 | <nitrix> | Oh, cycle? |
2021-08-28 01:00:40 +0200 | <nitrix> | > cycle [1,2,3] |
2021-08-28 01:00:41 +0200 | <lambdabot> | [1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2... |
2021-08-28 01:09:22 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds) |
2021-08-28 01:09:38 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:b5b4:3a1f:2123:21ea) |
2021-08-28 01:11:21 +0200 | vysn | (~vysn@user/vysn) (Ping timeout: 250 seconds) |
2021-08-28 01:13:57 +0200 | eggplant_ | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-28 01:15:34 +0200 | argento | (~argent0@191.81.228.237) (Ping timeout: 250 seconds) |
2021-08-28 01:15:47 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:b5b4:3a1f:2123:21ea) (Read error: Connection reset by peer) |
2021-08-28 01:17:32 +0200 | argento | (~argent0@168-227-96-26.ptr.westnet.com.ar) |
2021-08-28 01:25:19 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 252 seconds) |
2021-08-28 01:27:37 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 01:28:55 +0200 | dajoer | (~david@user/gvx) |
2021-08-28 01:38:47 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 240 seconds) |
2021-08-28 01:43:51 +0200 | acidjnk_new | (~acidjnk@p200300d0c72b95925da55fe159cc0756.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-08-28 01:44:58 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 01:49:31 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 252 seconds) |
2021-08-28 01:50:11 +0200 | azeem | (~azeem@5.168.199.98) |
2021-08-28 02:01:05 +0200 | azeem | (~azeem@5.168.199.98) (Ping timeout: 248 seconds) |
2021-08-28 02:05:56 +0200 | <hololeap> | cycle. thanks |
2021-08-28 02:08:51 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:f142:8765:520:6c04) |
2021-08-28 02:09:12 +0200 | yin[m] | (~zwromatri@2001:470:69fc:105::1d4) |
2021-08-28 02:11:09 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 250 seconds) |
2021-08-28 02:11:26 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) |
2021-08-28 02:12:42 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 02:15:55 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) (Ping timeout: 250 seconds) |
2021-08-28 02:16:06 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 02:21:25 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 252 seconds) |
2021-08-28 02:21:34 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 02:22:06 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 02:28:01 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 252 seconds) |
2021-08-28 02:28:47 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-08-28 02:29:59 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:f142:8765:520:6c04) (Remote host closed the connection) |
2021-08-28 02:30:31 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:f142:8765:520:6c04) |
2021-08-28 02:31:52 +0200 | sim590 | (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 252 seconds) |
2021-08-28 02:34:27 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:f142:8765:520:6c04) (Ping timeout: 240 seconds) |
2021-08-28 02:37:08 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:f814:103:43a8:3466) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-28 02:37:28 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 02:38:24 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-08-28 02:38:28 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
2021-08-28 02:38:28 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
2021-08-28 02:38:45 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 02:39:38 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-08-28 02:41:26 +0200 | img | (~img@user/img) |
2021-08-28 02:50:09 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 248 seconds) |
2021-08-28 02:50:17 +0200 | iqubic | (~user@c-67-180-134-109.hsd1.ca.comcast.net) |
2021-08-28 02:50:24 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 02:51:32 +0200 | <iqubic> | So, I'm trying to remember how to use parsec, and I'm hitting a roadblock. I would like to be able to parse a string full of only digits (I.E. "1432912902156") into a [Int]. What's the best way to do that? |
2021-08-28 02:52:42 +0200 | <pavonia> | To [1,4,3,2,...] in that example? |
2021-08-28 02:53:07 +0200 | <iqubic> | Yes. Correct. |
2021-08-28 02:53:28 +0200 | <iqubic> | I want to parse it to a [Int] where each element is in the range 0-9 inclusive |
2021-08-28 02:53:29 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:c862:7d44:846c:a0b5) |
2021-08-28 02:54:13 +0200 | <pavonia> | many1 $ (\c -> ord c - ord '0') <$> satisfy isDigit |
2021-08-28 02:55:18 +0200 | <iqubic> | How does that work? |
2021-08-28 02:56:04 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 02:56:20 +0200 | <dsal> | > ord '3' - ord '0' |
2021-08-28 02:56:22 +0200 | <lambdabot> | 3 |
2021-08-28 02:56:45 +0200 | <dsal> | I think megaparsec has a digit. |
2021-08-28 02:57:37 +0200 | <dsal> | > digitToInt '3' |
2021-08-28 02:57:39 +0200 | <lambdabot> | 3 |
2021-08-28 02:57:59 +0200 | <pavonia> | Ah nice |
2021-08-28 02:58:21 +0200 | <dsal> | Megaparsec has digitChar. I assume that's `satisfy isDigit` |
2021-08-28 02:58:55 +0200 | <dsal> | digitChar = satisfy isDigit <?> "digit" |
2021-08-28 02:59:10 +0200 | <pavonia> | Is GHC able to optimize constant function application like ord '0'? |
2021-08-28 02:59:32 +0200 | <eggplant_> | yes |
2021-08-28 03:00:45 +0200 | <dsal> | digitToInt includes `dec = ord c - ord '0'` but is more complicated with hex and what-not |
2021-08-28 03:02:36 +0200 | <pavonia> | > map digitToInt "09afg" |
2021-08-28 03:02:38 +0200 | <lambdabot> | [0,9,10,15,*Exception: Char.digitToInt: not a digit 'g' |
2021-08-28 03:03:01 +0200 | <dsal> | Yeah, it's also partial |
2021-08-28 03:04:15 +0200 | <pavonia> | > digitToInt '0' |
2021-08-28 03:04:16 +0200 | <lambdabot> | *Exception: Char.digitToInt: not a digit '\65296' |
2021-08-28 03:04:23 +0200 | <pavonia> | Too bad |
2021-08-28 03:05:16 +0200 | <pavonia> | There are many Unicode characters that have a numerical value |
2021-08-28 03:08:40 +0200 | roboguy_ | (~roboguy_@136.37.123.186) |
2021-08-28 03:09:39 +0200 | roboguy_ | (~roboguy_@136.37.123.186) (Client Quit) |
2021-08-28 03:12:01 +0200 | neurocyte0 | (~neurocyte@45.131.39.239) |
2021-08-28 03:12:01 +0200 | neurocyte0 | (~neurocyte@45.131.39.239) (Changing host) |
2021-08-28 03:12:01 +0200 | neurocyte0 | (~neurocyte@user/neurocyte) |
2021-08-28 03:12:34 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-28 03:13:54 +0200 | xsperry | (~as@user/xsperry) () |
2021-08-28 03:14:19 +0200 | xsperry | (~as@user/xsperry) |
2021-08-28 03:14:25 +0200 | neurocyte | (~neurocyte@user/neurocyte) (Ping timeout: 250 seconds) |
2021-08-28 03:14:25 +0200 | neurocyte0 | neurocyte |
2021-08-28 03:15:00 +0200 | kimjetwav | (~user@2607:fea8:235f:9730:98d1:a22e:1d0c:6a1f) (Remote host closed the connection) |
2021-08-28 03:15:49 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:c862:7d44:846c:a0b5) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-28 03:17:01 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
2021-08-28 03:22:41 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 248 seconds) |
2021-08-28 03:23:01 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
2021-08-28 03:23:14 +0200 | kimjetwav | (~user@2607:fea8:235f:9730:4718:18aa:30c8:2ab8) |
2021-08-28 03:23:18 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 03:23:21 +0200 | <iqubic> | So is there no built in megaparsec parser for single digit numbers? I have to roll my own? |
2021-08-28 03:27:17 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 03:27:21 +0200 | <dsal> | @hoogle digitChar |
2021-08-28 03:27:21 +0200 | <lambdabot> | Text.Megaparsec.Byte digitChar :: (MonadParsec e s m, Token s ~ Word8) => m (Token s) |
2021-08-28 03:27:21 +0200 | <lambdabot> | Text.Megaparsec.Char digitChar :: (MonadParsec e s m, Token s ~ Char) => m (Token s) |
2021-08-28 03:27:21 +0200 | <lambdabot> | Toml.Parser.Core digitChar :: (MonadParsec e s m, Token s ~ Char) => m (Token s) |
2021-08-28 03:27:44 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 03:29:01 +0200 | <iqubic> | What I want is this: |
2021-08-28 03:29:03 +0200 | <iqubic> | type Parser = Parsec Void String |
2021-08-28 03:29:09 +0200 | <iqubic> | singleDigit :: Num a => Parser a |
2021-08-28 03:29:31 +0200 | <iqubic> | Which will parse a single character, and succeed only if that character is a digit. |
2021-08-28 03:30:12 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:15d1:827c:596e:b228) |
2021-08-28 03:30:16 +0200 | sim590 | (~simon@76.65.67.73) |
2021-08-28 03:30:19 +0200 | <iqubic> | How can get that? |
2021-08-28 03:30:36 +0200 | <hololeap> | iqubic: look at Text.Parsec.Char.alphaNum |
2021-08-28 03:30:42 +0200 | <dsal> | You fmap digitToInt over digitChar |
2021-08-28 03:31:00 +0200 | <iqubic> | dsal, won't that give me an Int? |
2021-08-28 03:31:13 +0200 | <iqubic> | won't I have to then fmap fromIntegral? |
2021-08-28 03:31:48 +0200 | <dsal> | OK, then `fmap (fromIntegral . digitToInt) digitChar` |
2021-08-28 03:32:05 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-08-28 03:32:17 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
2021-08-28 03:33:26 +0200 | hololeap | meant .digit |
2021-08-28 03:35:41 +0200 | <iqubic> | Weird. Megaparsec only has digitChar. |
2021-08-28 03:37:04 +0200 | <dsal> | I guess if you're going partial, you've also got `fmap read digitChar` |
2021-08-28 03:37:26 +0200 | <iqubic> | Yeah, I suppose. |
2021-08-28 03:37:54 +0200 | <iqubic> | But it's nice to have this as a megaparsec parser, so that I can put this into a much large parser later. |
2021-08-28 03:38:10 +0200 | xff0x | (~xff0x@2001:1a81:53dc:be00:a197:89df:f531:cbff) (Ping timeout: 240 seconds) |
2021-08-28 03:38:18 +0200 | <dsal> | You can always just give that a name. |
2021-08-28 03:38:40 +0200 | <iqubic> | But for my usecase this is entirely overkill. I'm just solving Advent Of Code 2017 Day 1 right now. https://adventofcode.com/2017/day/1 |
2021-08-28 03:39:04 +0200 | <dsal> | Oh, huh. I guess I've not done that year. |
2021-08-28 03:40:14 +0200 | xff0x | (~xff0x@2001:1a81:5215:d000:44b2:e3e1:102e:1373) |
2021-08-28 03:40:17 +0200 | <iqubic> | Basically part 1 is, given a large number, find all the digits such that the digit at position N matches the digit at position N + 1, and sum those. |
2021-08-28 03:40:41 +0200 | <iqubic> | Assume the list is circular, so that the first digit comes right after the last one. |
2021-08-28 03:41:27 +0200 | <dsal> | What type were you planning to use? |
2021-08-28 03:41:28 +0200 | <dsal> | > digitToInt <$> "12345" |
2021-08-28 03:41:29 +0200 | <lambdabot> | [1,2,3,4,5] |
2021-08-28 03:41:43 +0200 | <monochrom> | "Num a" is the overkill. |
2021-08-28 03:41:56 +0200 | <iqubic> | I was planning on using Int here. |
2021-08-28 03:42:49 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
2021-08-28 03:43:06 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 03:43:18 +0200 | <iqubic> | Also, "pairs (x:xs) = let cyclic = xs ++ [x] in zip cyclic (tail cyclic)" is really powerful. |
2021-08-28 03:43:53 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds) |
2021-08-28 03:44:18 +0200 | <iqubic> | Then I just mapMaybe to both turn pairs into single Ints and filter out the non-matching pairs. Then I sum that. |
2021-08-28 03:46:32 +0200 | falafel | (~falafel@2600:100e:b144:da16:a499:a934:ae0d:b97) |
2021-08-28 03:46:55 +0200 | <hololeap> | % :m + Text.Parsec |
2021-08-28 03:46:55 +0200 | <yahb> | hololeap: |
2021-08-28 03:46:58 +0200 | <dsal> | I don't quite understand why `pairs` is powerful there. It seems very specific. |
2021-08-28 03:47:04 +0200 | <hololeap> | % :m + Text.Parsec.Char |
2021-08-28 03:47:04 +0200 | <yahb> | hololeap: |
2021-08-28 03:47:11 +0200 | <hololeap> | % parseDigits = fmap (fmap (read . pure)) (Text.Parsec.many digit) |
2021-08-28 03:47:11 +0200 | <yahb> | hololeap: |
2021-08-28 03:47:17 +0200 | <hololeap> | % parseTest (parseDigits :: Parsec String () [Int]) "243439102" |
2021-08-28 03:47:18 +0200 | <yahb> | hololeap: [2,4,3,4,3,9,1,0,2] |
2021-08-28 03:47:23 +0200 | <hololeap> | iqubic: ^ ? |
2021-08-28 03:47:43 +0200 | alx741 | (~alx741@181.196.68.187) (Quit: alx741) |
2021-08-28 03:47:56 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-08-28 03:53:25 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 250 seconds) |
2021-08-28 03:53:42 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 03:54:09 +0200 | <iqubic> | hololeap, yes that. |
2021-08-28 03:54:21 +0200 | <iqubic> | Why are you fmaping twice? |
2021-08-28 03:54:37 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-08-28 03:54:55 +0200 | <dsal> | It's reading the result of a parse inside of the parser. |
2021-08-28 03:55:09 +0200 | <hololeap> | because it's operating on `Parsec [Char]` , so there are two functors to get up through to operate on the Char |
2021-08-28 03:55:13 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 248 seconds) |
2021-08-28 03:55:27 +0200 | azeem | (~azeem@5.168.221.147) |
2021-08-28 03:56:00 +0200 | <hololeap> | the `pure` turns that Char into [Char] (aka String) |
2021-08-28 03:56:01 +0200 | zaquest | (~notzaques@5.128.210.178) (Remote host closed the connection) |
2021-08-28 03:56:10 +0200 | <hololeap> | and then it gets read |
2021-08-28 03:57:08 +0200 | <hololeap> | I could have also written it: fmap (map (read . pure)) |
2021-08-28 03:57:39 +0200 | <hololeap> | or: fmap (map (read . ( \x -> [x] ) )) |
2021-08-28 03:59:17 +0200 | <iqubic> | Ah. I see. Makes sense. |
2021-08-28 04:00:25 +0200 | <dsal> | Oh weird. I apparently have stars on this, but I have no idea where my code went. |
2021-08-28 04:01:01 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 04:01:04 +0200 | chris | Guest9286 |
2021-08-28 04:01:39 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-08-28 04:03:45 +0200 | <hololeap> | iqubic: so right after the `pure` the type would be `Parsec http://en.wikipedia.org/wiki/Special:Search?go=Go&search=Char` aka `Parsec [String]`, and then the `read` inside the map turns this into `Read a => Parsec [a]` |
2021-08-28 04:04:01 +0200 | <hololeap> | that was weird |
2021-08-28 04:04:29 +0200 | <hololeap> | * double-list of Char |
2021-08-28 04:05:10 +0200 | hololeap | turns off "auto-replace" "feature" in the IRC client |
2021-08-28 04:05:22 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-28 04:05:28 +0200 | <monochrom> | Type-level URLs! |
2021-08-28 04:05:36 +0200 | <hololeap> | lol |
2021-08-28 04:06:14 +0200 | gonz__ | (sid304396@id-304396.tooting.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-28 04:07:21 +0200 | <iqubic> | Anyways, mapMaybe is an excellent list function. Does there exist such a function that works on all Foldables, or would that not really make sense? |
2021-08-28 04:07:21 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) |
2021-08-28 04:07:23 +0200 | <hololeap> | *so right after the `pure` the type would be `Parsec [[Char]]` aka `Parsec [String]`, and then the `read` inside the map turns this into `Read a => Parsec [a]` |
2021-08-28 04:07:34 +0200 | <hololeap> | iqubic: witherable |
2021-08-28 04:07:38 +0200 | hendi | (sid489601@id-489601.tooting.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-28 04:07:53 +0200 | gonz__ | (sid304396@tooting.irccloud.com) |
2021-08-28 04:08:10 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 240 seconds) |
2021-08-28 04:08:12 +0200 | Adeon | (sid418992@id-418992.tooting.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-28 04:08:13 +0200 | <iqubic> | But after the pure, you just get a list of strings of length 1. Is that really what you need in order to make the call to read typecheck? |
2021-08-28 04:09:20 +0200 | christiaanb | (sid84827@id-84827.tooting.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-28 04:09:37 +0200 | <hololeap> | it always typechecks... because it's partial. it will throw a pure error if it doesn't read, and we're depending on parsec to give it something that it can |
2021-08-28 04:10:14 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) (Max SendQ exceeded) |
2021-08-28 04:10:22 +0200 | hendi | (sid489601@id-489601.tooting.irccloud.com) |
2021-08-28 04:10:58 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) |
2021-08-28 04:11:02 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 04:11:04 +0200 | nrr | (sid20938@id-20938.tooting.irccloud.com) (Ping timeout: 250 seconds) |
2021-08-28 04:11:46 +0200 | christiaanb | (sid84827@tooting.irccloud.com) |
2021-08-28 04:12:00 +0200 | adamse | (sid72084@user/adamse) (Ping timeout: 272 seconds) |
2021-08-28 04:12:06 +0200 | Adeon | (sid418992@id-418992.tooting.irccloud.com) |
2021-08-28 04:12:12 +0200 | <hololeap> | @hoogle Witherable |
2021-08-28 04:12:12 +0200 | <lambdabot> | Data.Witherable.Class class (Traversable t, Filterable t) => Witherable t |
2021-08-28 04:12:12 +0200 | <lambdabot> | package witherable |
2021-08-28 04:12:12 +0200 | <lambdabot> | package witherable-class |
2021-08-28 04:12:28 +0200 | hsiktas | (sid224847@tooting.irccloud.com) (Ping timeout: 268 seconds) |
2021-08-28 04:12:38 +0200 | <hololeap> | iqubic: ^ -- in regards to your second question about mapMaybe |
2021-08-28 04:13:21 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-28 04:13:43 +0200 | <dsal> | :t read |
2021-08-28 04:13:44 +0200 | <lambdabot> | Read a => String -> a |
2021-08-28 04:14:01 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) |
2021-08-28 04:14:40 +0200 | PotatoGim | (sid99505@tooting.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-28 04:14:43 +0200 | adamse | (sid72084@user/adamse) |
2021-08-28 04:14:53 +0200 | <hololeap> | pure error meaning a runtime error that can't be caught, e.g. `head []` |
2021-08-28 04:15:01 +0200 | hsiktas | (sid224847@id-224847.tooting.irccloud.com) |
2021-08-28 04:15:02 +0200 | <hololeap> | (or maybe you can in IO somehow... can't remember) |
2021-08-28 04:15:59 +0200 | nrr | (sid20938@id-20938.tooting.irccloud.com) |
2021-08-28 04:16:36 +0200 | <Cale> | You can, but you definitely don't want to be forced to. I'd sooner fork a library than try to catch an exception it's throwing from evaluation. |
2021-08-28 04:16:55 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 252 seconds) |
2021-08-28 04:17:50 +0200 | <hololeap> | I think that calling `read` here is safe because the input is coming from parsec's `digit` |
2021-08-28 04:17:52 +0200 | elf_fortrez | (~elf_fortr@adsl-72-50-4-145.prtc.net) (Ping timeout: 246 seconds) |
2021-08-28 04:18:51 +0200 | <Cale> | if the list is nonempty |
2021-08-28 04:18:53 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-08-28 04:19:02 +0200 | <Cale> | You can also use reads |
2021-08-28 04:19:22 +0200 | <hololeap> | which list needs to be nonempty? |
2021-08-28 04:19:35 +0200 | <Cale> | the string you're parsing |
2021-08-28 04:19:58 +0200 | <hololeap> | the string is made by running (\x -> [x]) on a Char from parsec |
2021-08-28 04:20:11 +0200 | <hololeap> | so that won't be a problem |
2021-08-28 04:20:40 +0200 | <Cale> | ah, yeah |
2021-08-28 04:22:07 +0200 | falafel | (~falafel@2600:100e:b144:da16:a499:a934:ae0d:b97) (Read error: Connection reset by peer) |
2021-08-28 04:24:04 +0200 | Boarders | (sid425905@id-425905.tooting.irccloud.com) (Ping timeout: 250 seconds) |
2021-08-28 04:24:35 +0200 | PotatoGim | (sid99505@id-99505.tooting.irccloud.com) |
2021-08-28 04:24:37 +0200 | <hololeap> | iqubic: if you use that parser, be sure to change the signature to: (Stream s m Char, Num a, Read a) => ParsecT s u m [a] |
2021-08-28 04:24:38 +0200 | integral | (sid296274@user/integral) (Ping timeout: 256 seconds) |
2021-08-28 04:25:00 +0200 | <hololeap> | so that a) it's more flexible b) you can't try to parse anything other than a Num |
2021-08-28 04:25:45 +0200 | AlistairB | (~AlistairB@121-200-5-212.79c805.syd.nbn.aussiebb.net) |
2021-08-28 04:26:53 +0200 | integral | (sid296274@user/integral) |
2021-08-28 04:27:16 +0200 | Boarders | (sid425905@id-425905.tooting.irccloud.com) |
2021-08-28 04:27:55 +0200 | <iqubic> | hololeap: I'm using this signature: |
2021-08-28 04:28:05 +0200 | td_ | (~td@94.134.91.64) (Ping timeout: 250 seconds) |
2021-08-28 04:28:10 +0200 | <iqubic> | type Parser = Parsec Void String |
2021-08-28 04:28:17 +0200 | <iqubic> | singleDigit :: Num a => Parser a |
2021-08-28 04:28:29 +0200 | <iqubic> | Using definitions from Megaparsec. |
2021-08-28 04:28:31 +0200 | kimjetwav | (~user@2607:fea8:235f:9730:4718:18aa:30c8:2ab8) (Ping timeout: 250 seconds) |
2021-08-28 04:28:56 +0200 | <hololeap> | I think you'll need (Read a) as well |
2021-08-28 04:28:57 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) (Ping timeout: 250 seconds) |
2021-08-28 04:29:57 +0200 | td_ | (~td@muedsl-82-207-238-049.citykom.de) |
2021-08-28 04:32:07 +0200 | azeem | (~azeem@5.168.221.147) (Ping timeout: 240 seconds) |
2021-08-28 04:32:23 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 04:32:27 +0200 | <iqubic> | I won't, if I'm using this definition: "singleDigit = fmap (fromIntegral . digitToInt) digitChar" |
2021-08-28 04:32:46 +0200 | <iqubic> | :t digitToInt |
2021-08-28 04:32:47 +0200 | <lambdabot> | Char -> Int |
2021-08-28 04:32:55 +0200 | <iqubic> | :t digitChar |
2021-08-28 04:32:56 +0200 | <lambdabot> | error: Variable not in scope: digitChar |
2021-08-28 04:33:17 +0200 | <iqubic> | digitChar being this: https://hackage.haskell.org/package/megaparsec-9.1.0/docs/Text-Megaparsec-Char.html#v:digitChar |
2021-08-28 04:34:04 +0200 | <iqubic> | digitChar = satisfy isDigit |
2021-08-28 04:34:09 +0200 | <iqubic> | :t isDigit |
2021-08-28 04:34:10 +0200 | <lambdabot> | Char -> Bool |
2021-08-28 04:42:10 +0200 | matthias1 | (~igloo@casewireless11.cwru.edu) |
2021-08-28 04:43:13 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-08-28 04:43:27 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 240 seconds) |
2021-08-28 04:44:39 +0200 | matthias1 | (~igloo@casewireless11.cwru.edu) (Remote host closed the connection) |
2021-08-28 04:48:00 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-28 04:54:57 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds) |
2021-08-28 04:55:09 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 05:01:27 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 250 seconds) |
2021-08-28 05:08:46 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-08-28 05:08:59 +0200 | redeveder | (~user@221.232.105.47) |
2021-08-28 05:10:17 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 05:11:16 +0200 | img | (~img@user/img) |
2021-08-28 05:13:27 +0200 | <dsal> | digitToInt is still partial. |
2021-08-28 05:16:52 +0200 | otto_s | (~user@p5de2f51d.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-08-28 05:18:36 +0200 | otto_s | (~user@p5de2f7f6.dip0.t-ipconnect.de) |
2021-08-28 05:25:12 +0200 | HarveyPwca | (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) |
2021-08-28 05:28:07 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 05:33:28 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:9004:d4f8:82b6:f105) |
2021-08-28 05:36:30 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-08-28 05:40:10 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:15d1:827c:596e:b228) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-28 05:44:47 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 250 seconds) |
2021-08-28 05:49:10 +0200 | sim590 | (~simon@76.65.67.73) (Quit: WeeChat 2.9) |
2021-08-28 05:54:49 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 05:56:30 +0200 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) |
2021-08-28 05:56:48 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2021-08-28 05:58:30 +0200 | <arahael> | How do I list all the current targets I can build in a cabal project? |
2021-08-28 05:58:51 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds) |
2021-08-28 06:01:37 +0200 | edr | (~edr@user/edr) (Ping timeout: 248 seconds) |
2021-08-28 06:02:31 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 06:03:56 +0200 | edr | (~edr@enlo.co) |
2021-08-28 06:03:56 +0200 | edr | (~edr@enlo.co) (Changing host) |
2021-08-28 06:03:56 +0200 | edr | (~edr@user/edr) |
2021-08-28 06:10:59 +0200 | <sclv> | don’t think there’s a command at the moment :-/ |
2021-08-28 06:18:31 +0200 | <arahael> | Ah, that's a pity. |
2021-08-28 06:19:01 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 252 seconds) |
2021-08-28 06:19:53 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 06:32:53 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 250 seconds) |
2021-08-28 06:38:39 +0200 | azeem | (~azeem@5.168.207.77) |
2021-08-28 06:41:39 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-08-28 06:42:07 +0200 | Guest9286 | (~chris@81.96.113.213) (Ping timeout: 240 seconds) |
2021-08-28 06:44:26 +0200 | <arahael> | Can I run hoogle on a different port? |
2021-08-28 06:46:19 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 250 seconds) |
2021-08-28 06:47:02 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 06:47:05 +0200 | chris | Guest9689 |
2021-08-28 06:50:14 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-08-28 06:53:45 +0200 | Guest9689 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 06:54:22 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 06:54:25 +0200 | chris | Guest3277 |
2021-08-28 06:58:08 +0200 | <hololeap> | arahael: see: hoogle server --help |
2021-08-28 06:58:25 +0200 | <arahael> | hololeap: Ah, thanks, I was only using hoogle --help. :) |
2021-08-28 06:58:40 +0200 | Guest3277 | (~chris@81.96.113.213) (Ping timeout: 240 seconds) |
2021-08-28 06:58:46 +0200 | <arahael> | And my attempts to specify a port only said "Unhandled argument, none expected..." |
2021-08-28 06:59:29 +0200 | <hololeap> | in general, when something has subcommands, those also have flags (including help) that are passed after you specify the subcommand |
2021-08-28 06:59:56 +0200 | <hololeap> | (for haskell stuff anyway) |
2021-08-28 07:00:01 +0200 | <arahael> | Yes, but there was no indication it had subcommands. :) |
2021-08-28 07:00:09 +0200 | AlistairB | (~AlistairB@121-200-5-212.79c805.syd.nbn.aussiebb.net) (*.net *.split) |
2021-08-28 07:00:09 +0200 | Cajun | (~Cajun@user/cajun) (*.net *.split) |
2021-08-28 07:00:34 +0200 | <hololeap> | if you look at the output of `hoogle --help`, you'll see "Commands:" which is how you can tell |
2021-08-28 07:02:40 +0200 | azeem | (~azeem@5.168.207.77) (Ping timeout: 240 seconds) |
2021-08-28 07:02:54 +0200 | <arahael> | Hmm, right now I've got it running, but when I query http://192.168.1.2:8081, it hits the hoogle server (I see the log output), but the web browser basically hangs - something is blocked. |
2021-08-28 07:03:58 +0200 | <hololeap> | probably try it with --local |
2021-08-28 07:05:41 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 07:05:48 +0200 | <arahael> | Just did, same thing. I notice that only the / path works, the rest are all broken, including hoogle.css |
2021-08-28 07:09:14 +0200 | <hololeap> | not sure exactly what you're trying to do, but on my system I run `hoogle generate --local` and `hoogle server --local` to have offline access to my installed library docs |
2021-08-28 07:09:16 +0200 | <arahael> | Hmm, seems to be trying to establish a secure connection, but I didn't specify the certificates. |
2021-08-28 07:09:36 +0200 | <arahael> | Yeah, but my dev system is on my server, and I want to access all that stuff from the laptop. |
2021-08-28 07:12:55 +0200 | <arahael> | Ok, it seems that https is mandatory for some reason. |
2021-08-28 07:14:20 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-28 07:14:40 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 240 seconds) |
2021-08-28 07:15:38 +0200 | roboguy_ | (~roboguy_@2605:a601:afe7:9f00:9004:d4f8:82b6:f105) () |
2021-08-28 07:16:21 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-08-28 07:18:58 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-08-28 07:22:08 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 07:27:24 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-08-28 07:31:36 +0200 | argento | (~argent0@168-227-96-26.ptr.westnet.com.ar) (Remote host closed the connection) |
2021-08-28 07:33:08 +0200 | falafel | (~falafel@74.214.230.170) |
2021-08-28 07:34:14 +0200 | <arahael> | Ok, and for some weird reason hoogle server's completely broken now. I think I'll make do with the command line hoogle. |
2021-08-28 07:40:51 +0200 | zebrag | (~chris@user/zebrag) (Remote host closed the connection) |
2021-08-28 07:41:10 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 240 seconds) |
2021-08-28 07:41:23 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 07:45:05 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 248 seconds) |
2021-08-28 07:45:25 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-08-28 07:50:10 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2021-08-28 07:51:36 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:15d1:827c:596e:b228) |
2021-08-28 07:59:07 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 250 seconds) |
2021-08-28 07:59:27 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 240 seconds) |
2021-08-28 08:00:11 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 08:02:02 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-28 08:02:02 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-08-28 08:02:02 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-08-28 08:02:56 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-08-28 08:02:58 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 08:06:40 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2021-08-28 08:09:53 +0200 | markpythonicbtc | (~textual@2601:647:5a00:35:15d1:827c:596e:b228) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-28 08:22:30 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-08-28 08:24:25 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 252 seconds) |
2021-08-28 08:24:54 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 08:24:54 +0200 | DJ_Ikstra | (~mike@174.127.249.180) (Quit: leaving) |
2021-08-28 08:25:28 +0200 | AlistairB | (~AlistairB@121-200-5-212.79c805.syd.nbn.aussiebb.net) |
2021-08-28 08:28:53 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-08-28 08:32:23 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-28 08:32:23 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-08-28 08:32:23 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-08-28 08:32:48 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 250 seconds) |
2021-08-28 08:33:13 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 08:33:46 +0200 | Gurkenglas | (~Gurkengla@dslb-088-064-053-140.088.064.pools.vodafone-ip.de) |
2021-08-28 08:37:37 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-08-28 08:38:44 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2021-08-28 08:43:38 +0200 | vysn | (~vysn@user/vysn) |
2021-08-28 08:52:19 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Quit: mikoto-chan) |
2021-08-28 08:59:13 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 248 seconds) |
2021-08-28 08:59:23 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 09:00:10 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 252 seconds) |
2021-08-28 09:05:13 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 09:06:11 +0200 | Cajun | (~Cajun@user/cajun) |
2021-08-28 09:08:27 +0200 | mud | (~mud@user/kadoban) (Ping timeout: 250 seconds) |
2021-08-28 09:08:43 +0200 | fendor | (~fendor@77.119.210.198.wireless.dyn.drei.com) |
2021-08-28 09:10:37 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 252 seconds) |
2021-08-28 09:11:07 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 09:13:28 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-08-28 09:14:45 +0200 | AlistairB | (~AlistairB@121-200-5-212.79c805.syd.nbn.aussiebb.net) (Quit: Client closed) |
2021-08-28 09:20:10 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 240 seconds) |
2021-08-28 09:20:28 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 250 seconds) |
2021-08-28 09:20:52 +0200 | azeem | (~azeem@5.168.235.73) |
2021-08-28 09:22:53 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-08-28 09:31:51 +0200 | azeem | (~azeem@5.168.235.73) (Ping timeout: 250 seconds) |
2021-08-28 09:33:05 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 09:37:34 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 252 seconds) |
2021-08-28 09:37:57 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 09:41:39 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 09:42:08 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 250 seconds) |
2021-08-28 09:49:38 +0200 | acidjnk_new | (~acidjnk@p200300d0c72b95925da55fe159cc0756.dip0.t-ipconnect.de) |
2021-08-28 09:49:40 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 09:50:49 +0200 | eggplant_ | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-08-28 09:51:23 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 09:51:52 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-08-28 09:57:30 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-08-28 09:59:07 +0200 | redeveder | (~user@221.232.105.47) (Ping timeout: 240 seconds) |
2021-08-28 10:02:09 +0200 | falafel | (~falafel@74.214.230.170) (Ping timeout: 248 seconds) |
2021-08-28 10:05:13 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-08-28 10:08:27 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 276 seconds) |
2021-08-28 10:09:15 +0200 | maerwald | (~maerwald@user/maerwald) (Quit: gone) |
2021-08-28 10:10:30 +0200 | maerwald | (~maerwald@mail.hasufell.de) |
2021-08-28 10:11:50 +0200 | maerwald | (~maerwald@mail.hasufell.de) (Changing host) |
2021-08-28 10:11:50 +0200 | maerwald | (~maerwald@user/maerwald) |
2021-08-28 10:12:40 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
2021-08-28 10:13:40 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 10:14:58 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 10:16:32 +0200 | <tomsmeding> | in ghcup tui, is the "show all tools" button supposed to do anything? It doesn't change the list of displayed tools at all for me :) |
2021-08-28 10:16:47 +0200 | qbt | (~edun@user/edun) |
2021-08-28 10:17:10 +0200 | <maerwald> | tomsmeding: initially, stack was in the list of tools to be hidden by default |
2021-08-28 10:17:13 +0200 | <maerwald> | now it's empty |
2021-08-28 10:17:17 +0200 | <tomsmeding> | ah |
2021-08-28 10:17:39 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-08-28 10:17:39 +0200 | <maerwald> | https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/1fb048777c099ef6c0caa7619387513e5ee63888/app/gh… |
2021-08-28 10:17:39 +0200 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-08-28 10:17:42 +0200 | allbery_b | geekosaur |
2021-08-28 10:17:48 +0200 | <tomsmeding> | heh |
2021-08-28 10:18:13 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 250 seconds) |
2021-08-28 10:18:25 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection) |
2021-08-28 10:18:25 +0200 | <maerwald> | there was a distant idea of maybe distributing more than just basic toolchain (e.g. hlint, etc?) |
2021-08-28 10:18:39 +0200 | <maerwald> | but I'm not sure that's going to happen |
2021-08-28 10:19:07 +0200 | <tomsmeding> | in any case I'm not sure if putting tools like that in a hidden list is optimal UI |
2021-08-28 10:19:33 +0200 | <tomsmeding> | but I guess that's an issue that only needs to be discussed if those tools indeed get added to ghcup :) |
2021-08-28 10:20:30 +0200 | <maerwald> | the idea is that the TUI list fits into a single screen always without scrolling |
2021-08-28 10:21:13 +0200 | cods | (~fred@82-65-232-44.subs.proxad.net) (Ping timeout: 268 seconds) |
2021-08-28 10:21:43 +0200 | <tomsmeding> | I think it would be nicer if, to reach that goal (which I think is a good goal!), one should make meaningful categories instead of "common" vs "all" |
2021-08-28 10:21:53 +0200 | <tomsmeding> | because everyone's definition of "common" is going to differ :) |
2021-08-28 10:22:23 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-08-28 10:22:55 +0200 | <maerwald> | well, we have a definition of "Haskell toolchain" that's kinda agreed upon, which includes ghc, cabal, stack and optionally HLS |
2021-08-28 10:23:17 +0200 | <maerwald> | so that haskell toolchain should always be visible |
2021-08-28 10:24:10 +0200 | <tomsmeding> | makes sense |
2021-08-28 10:29:16 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 252 seconds) |
2021-08-28 10:29:42 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 10:32:22 +0200 | Xnuk | (~xnuk@45.76.202.58) (Quit: ZNC - https://znc.in) |
2021-08-28 10:32:39 +0200 | Xnuk | (~xnuk@45.76.202.58) |
2021-08-28 10:37:36 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-08-28 10:38:35 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-08-28 10:38:40 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 10:39:22 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 10:39:24 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 10:39:39 +0200 | neurocyte | (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
2021-08-28 10:40:41 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-08-28 10:40:42 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-28 10:42:39 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 10:43:45 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
2021-08-28 10:44:28 +0200 | neurocyte | (~neurocyte@45.131.39.239) |
2021-08-28 10:44:28 +0200 | neurocyte | (~neurocyte@45.131.39.239) (Changing host) |
2021-08-28 10:44:28 +0200 | neurocyte | (~neurocyte@user/neurocyte) |
2021-08-28 10:47:07 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
2021-08-28 10:47:31 +0200 | kenran | (~kenran@200116b82bc0270099b2de0ffa120b08.dip.versatel-1u1.de) |
2021-08-28 10:51:39 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 10:54:36 +0200 | kuribas | (~user@ptr-25vy0i6qx5na6znp5k4.18120a2.ip6.access.telenet.be) |
2021-08-28 10:55:55 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) (Ping timeout: 250 seconds) |
2021-08-28 10:56:10 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 10:57:47 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 10:59:28 +0200 | t3hyoshi | (~snicf@2600:8804:1b96:4900:1472:5a94:c594:83ca) |
2021-08-28 10:59:55 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 11:02:36 +0200 | emliunix | (~emliunix@61-216-165-205.hinet-ip.hinet.net) |
2021-08-28 11:04:33 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
2021-08-28 11:12:20 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
2021-08-28 11:12:34 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
2021-08-28 11:18:25 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 11:27:07 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 250 seconds) |
2021-08-28 11:29:22 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-08-28 11:33:53 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 248 seconds) |
2021-08-28 11:34:27 +0200 | kenran | (~kenran@200116b82bc0270099b2de0ffa120b08.dip.versatel-1u1.de) (Ping timeout: 240 seconds) |
2021-08-28 11:35:43 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 11:36:08 +0200 | __monty__ | (~toonn@user/toonn) |
2021-08-28 11:36:18 +0200 | kenran | (~kenran@200116b82bc02700d2fed1b66be991af.dip.versatel-1u1.de) |
2021-08-28 11:51:13 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 252 seconds) |
2021-08-28 11:53:00 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 11:53:00 +0200 | img | (~img@user/img) (Ping timeout: 250 seconds) |
2021-08-28 11:53:20 +0200 | polyphem | (~polyphem@2a02:810d:640:776c:b139:3454:9b21:7c63) |
2021-08-28 11:54:25 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c72b95310c4cb6300b253e7e.dip0.t-ipconnect.de) |
2021-08-28 11:55:02 +0200 | img | (~img@user/img) |
2021-08-28 11:57:27 +0200 | acidjnk_new | (~acidjnk@p200300d0c72b95925da55fe159cc0756.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-08-28 11:58:22 +0200 | martin02 | (~silas@141.84.69.76) (Ping timeout: 252 seconds) |
2021-08-28 11:59:56 +0200 | benin036932 | (~benin@183.82.178.152) |
2021-08-28 12:02:02 +0200 | kenran | (~kenran@200116b82bc02700d2fed1b66be991af.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
2021-08-28 12:07:10 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 12:12:19 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 12:13:01 +0200 | zmt00 | (~zmt00@user/zmt00) |
2021-08-28 12:14:48 +0200 | <kaol> | If I have a top level function that uses (for example) "Num n => ..." how do I use the same n if I define a function in my where section? GHC has renamed my use as "Num n1" and complains that it can't deduce it. It compiles if I omit the type definition of my auxiliary function. |
2021-08-28 12:15:32 +0200 | zmt01 | (~zmt00@user/zmt00) (Ping timeout: 250 seconds) |
2021-08-28 12:15:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 12:16:03 +0200 | hannessteffenhag | (~hannesste@77.20.255.200) |
2021-08-28 12:17:47 +0200 | <maerwald> | ScopedTypeVariables |
2021-08-28 12:20:07 +0200 | hannessteffenhag | (~hannesste@77.20.255.200) (Ping timeout: 240 seconds) |
2021-08-28 12:20:53 +0200 | <kaol> | Nope, that had no effect. I tried to make a trivial example of it but that works just as I'd expect. Odd. |
2021-08-28 12:22:47 +0200 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
2021-08-28 12:23:43 +0200 | <kaol> | Oh, right. What I needed was to add "Num n =>" to that inner function. |
2021-08-28 12:24:33 +0200 | <kaol> | It's going to be always the same n as on top level but never mind that. |
2021-08-28 12:25:11 +0200 | <tomsmeding> | kaol: that's probably the right fix, what you now did |
2021-08-28 12:25:29 +0200 | martin02 | (~silas@141.84.69.76) |
2021-08-28 12:25:46 +0200 | <tomsmeding> | using ScopedTypeVariables you have to put some 'forall' keywords in the right places. See the ghc user's guide on the extension: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/scoped_type_variables.html#ex… |
2021-08-28 12:26:37 +0200 | <kaol> | The type's optional in this case but it makes "getSum . (foldMap . foldMap . foldMap . foldMap) Sum" easier to read. |
2021-08-28 12:27:04 +0200 | <tomsmeding> | by default, type variables aren't "inherited" by nested functions |
2021-08-28 12:27:23 +0200 | <tomsmeding> | if you can make it work like that, which in this case you could by adding "Num n =>", apparently, that's always the right thing |
2021-08-28 12:27:47 +0200 | <tomsmeding> | if you can't because you use some values from the parent function so the types really need to be linked for it to typecheck, you can use ScopedTypeVariables |
2021-08-28 12:34:47 +0200 | jtomas | (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) (Remote host closed the connection) |
2021-08-28 12:34:49 +0200 | d0ku | (~d0ku@178.43.56.75.ipv4.supernova.orange.pl) |
2021-08-28 12:47:28 +0200 | oxide | (~lambda@user/oxide) |
2021-08-28 12:49:00 +0200 | jtomas | (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) |
2021-08-28 12:49:54 +0200 | sjb0 | (~stephen@2001:8004:2738:35de:a1a3:a1c1:6e62:ba62) (Quit: Leaving.) |
2021-08-28 12:51:45 +0200 | d0ku | (~d0ku@178.43.56.75.ipv4.supernova.orange.pl) (Ping timeout: 248 seconds) |
2021-08-28 12:53:04 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 12:57:10 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) (Ping timeout: 240 seconds) |
2021-08-28 13:01:03 +0200 | alx741 | (~alx741@181.196.68.187) |
2021-08-28 13:01:03 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-28 13:01:15 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 13:10:26 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-08-28 13:10:58 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
2021-08-28 13:18:29 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 250 seconds) |
2021-08-28 13:18:52 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 13:19:13 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 13:24:06 +0200 | Pickchea | (~private@user/pickchea) |
2021-08-28 13:26:07 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 240 seconds) |
2021-08-28 13:34:26 +0200 | polyphem | (~polyphem@2a02:810d:640:776c:b139:3454:9b21:7c63) (Read error: Connection reset by peer) |
2021-08-28 13:38:03 +0200 | <hololeap> | @unmtl StateT s (ExceptT e) a |
2021-08-28 13:38:03 +0200 | <lambdabot> | err: `ExceptT e (a, s)' is not applied to enough arguments. |
2021-08-28 13:38:12 +0200 | <hololeap> | @unmtl StateT s (Except e) a |
2021-08-28 13:38:12 +0200 | <lambdabot> | s -> Except e (a, s) |
2021-08-28 13:38:20 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 13:38:31 +0200 | <hololeap> | @unmtl ExceptT e (State s) a |
2021-08-28 13:38:31 +0200 | <lambdabot> | s -> (Either e a, s) |
2021-08-28 13:44:40 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
2021-08-28 13:46:41 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 248 seconds) |
2021-08-28 13:47:45 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 13:50:34 +0200 | martin02 | (~silas@141.84.69.76) (Ping timeout: 252 seconds) |
2021-08-28 13:50:34 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-28 13:51:33 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) |
2021-08-28 13:54:26 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-08-28 13:55:31 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Client Quit) |
2021-08-28 13:56:27 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 13:58:12 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-08-28 14:01:50 +0200 | Codaraxis__ | (~Codaraxis@user/codaraxis) |
2021-08-28 14:04:47 +0200 | Codaraxis_ | (~Codaraxis@user/codaraxis) (Ping timeout: 240 seconds) |
2021-08-28 14:05:11 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 14:09:52 +0200 | feepo | (sid28508@id-28508.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-28 14:09:55 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 14:12:00 +0200 | timCF | (~timCF@m91-129-108-244.cust.tele2.ee) (Quit: leaving) |
2021-08-28 14:14:10 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
2021-08-28 14:17:25 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) (Ping timeout: 250 seconds) |
2021-08-28 14:21:45 +0200 | xff0x | (~xff0x@2001:1a81:5215:d000:44b2:e3e1:102e:1373) (Ping timeout: 250 seconds) |
2021-08-28 14:23:14 +0200 | aman | (~aman@user/aman) |
2021-08-28 14:23:19 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-08-28 14:26:14 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) |
2021-08-28 14:26:26 +0200 | peterhil | (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) |
2021-08-28 14:28:15 +0200 | favonia | (~favonia@user/favonia) |
2021-08-28 14:29:29 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-08-28 14:31:29 +0200 | hannessteffenhag | (~hannesste@ip4d14ffc8.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
2021-08-28 14:39:20 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-28 14:39:32 +0200 | Vajb | (~Vajb@85-76-137-121-nat.elisa-mobile.fi) |
2021-08-28 14:40:23 +0200 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
2021-08-28 14:41:04 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-08-28 14:42:32 +0200 | xff0x | (~xff0x@2001:1a81:5215:d000:44b2:e3e1:102e:1373) |
2021-08-28 14:46:38 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-08-28 14:46:54 +0200 | icebreaker | (~icebreake@user/icebreaker) () |
2021-08-28 14:50:02 +0200 | martin02 | (~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1) |
2021-08-28 14:52:49 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 248 seconds) |
2021-08-28 14:54:39 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 14:54:52 +0200 | <siers> | I have found this nix shell to work well for getting cabal/hls for freshly cloned projects: nix-shell -p cabal2nix --run 'nix-shell -E "$(cabal2nix --shell .)" --run "nix-shell -p cabal-install -p haskell-language-server --run zsh"' |
2021-08-28 14:55:15 +0200 | <siers> | as I don't like declaring unneeded dependencies for my user profile |
2021-08-28 14:55:34 +0200 | <maerwald> | how long does that run? :) |
2021-08-28 14:56:35 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-08-28 14:57:52 +0200 | <siers> | instantly |
2021-08-28 14:58:04 +0200 | <siers> | ah, well depends on whether you have the deps :) |
2021-08-28 14:58:13 +0200 | <maerwald> | in my experience, entering a nix shell takes a couple hours depending on your configuration :p |
2021-08-28 14:58:35 +0200 | <siers> | no, very fast after the first download run. do you have a HDD? |
2021-08-28 14:58:54 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) (Ping timeout: 250 seconds) |
2021-08-28 14:59:26 +0200 | <maerwald> | it also didn't share subdirectories from git clones, not sure that's fixed |
2021-08-28 14:59:50 +0200 | mykyta | (~mykyta@37.53.0.230) |
2021-08-28 15:00:17 +0200 | APic | (apic@apic.name) (Ping timeout: 248 seconds) |
2021-08-28 15:02:24 +0200 | mykyta | (~mykyta@37.53.0.230) () |
2021-08-28 15:02:53 +0200 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-08-28 15:03:19 +0200 | [itchyjunk] | Guest3360 |
2021-08-28 15:03:19 +0200 | Guest3360 | (~itchyjunk@user/itchyjunk/x-7353470) (Killed (silver.libera.chat (Nickname regained by services))) |
2021-08-28 15:03:19 +0200 | [_] | [itchyjunk] |
2021-08-28 15:03:43 +0200 | Guest3360 | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-08-28 15:03:57 +0200 | Guest3360 | (~itchyjunk@user/itchyjunk/x-7353470) (Client Quit) |
2021-08-28 15:04:52 +0200 | <siers> | is SetEnv a function? https://gitlab.com/goldfirere/stitch/blob/58f49b8c8f6cc66cc634944afd9961c7bc15d9d1/src/Language/St… |
2021-08-28 15:05:53 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) |
2021-08-28 15:05:55 +0200 | cods | (~fred@82-65-232-44.subs.proxad.net) |
2021-08-28 15:06:14 +0200 | <siers> | hlocal/MonadHReader breaks my head |
2021-08-28 15:06:33 +0200 | <maerwald> | associated type family |
2021-08-28 15:07:01 +0200 | egoist | (~egoist@186.235.82.117) |
2021-08-28 15:07:02 +0200 | <siers> | I can't also conceptually understand how it may result in a ReaderT r1 m, if it returns a r2 and the SetEnv seems to convert to r2 also |
2021-08-28 15:08:32 +0200 | <maerwald> | https://downloads.haskell.org/~ghc/8.10.7/docs/html/users_guide/glasgow_exts.html#associated-type-… |
2021-08-28 15:08:51 +0200 | <siers> | I'll take a look |
2021-08-28 15:10:18 +0200 | <maerwald> | you can view type families as functions on types |
2021-08-28 15:10:53 +0200 | ArctVaulMarsHMPJ | (~pjetcetal@128-71-152-79.broadband.corbina.ru) |
2021-08-28 15:10:57 +0200 | <siers> | that is how I viewed them already |
2021-08-28 15:11:14 +0200 | <maerwald> | 1. function: value -> value, 2. type family: type -> type, 3. class: type -> value, 4. GADT: value -> type |
2021-08-28 15:11:18 +0200 | <maerwald> | I think it was like that? |
2021-08-28 15:11:40 +0200 | <maerwald> | so the combination of class and type family is especially interesting |
2021-08-28 15:11:45 +0200 | <siers> | that's an interesting list, I'd never seen one like that |
2021-08-28 15:11:54 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds) |
2021-08-28 15:12:30 +0200 | <siers> | it looks like a type, not a type family at the first glance |
2021-08-28 15:12:43 +0200 | <maerwald> | it is a family |
2021-08-28 15:12:48 +0200 | <maerwald> | becuaes it's in the class |
2021-08-28 15:12:56 +0200 | <maerwald> | and can have multiple type instances |
2021-08-28 15:13:00 +0200 | <siers> | ahm ok |
2021-08-28 15:13:04 +0200 | <siers> | m = , |
2021-08-28 15:13:55 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-08-28 15:13:58 +0200 | <maerwald> | you also have open type families and closed type families |
2021-08-28 15:14:08 +0200 | <maerwald> | https://downloads.haskell.org/~ghc/8.10.7/docs/html/users_guide/glasgow_exts.html#closed-type-fami… |
2021-08-28 15:16:01 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 15:17:25 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-28 15:19:17 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.2) |
2021-08-28 15:20:20 +0200 | <maerwald> | maybe also check out https://hackage.haskell.org/package/mtl-tf |
2021-08-28 15:21:52 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
2021-08-28 15:22:26 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) (Ping timeout: 258 seconds) |
2021-08-28 15:22:52 +0200 | pfurla | (~pfurla@ool-182ed2e2.dyn.optonline.net) (Quit: gone to sleep. ZZZzzz…) |
2021-08-28 15:24:22 +0200 | <siers> | is Mark a brother/relative of Simon or something? |
2021-08-28 15:24:51 +0200 | acidjnk_new | (~acidjnk@p200300d0c72b9531c50f6552fc7b880d.dip0.t-ipconnect.de) |
2021-08-28 15:24:51 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-08-28 15:26:53 +0200 | acidjnk | (~acidjnk@p200300d0c72b9531c50f6552fc7b880d.dip0.t-ipconnect.de) |
2021-08-28 15:28:29 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c72b95310c4cb6300b253e7e.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-08-28 15:29:26 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 15:29:30 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-28 15:29:40 +0200 | acidjnk_new | (~acidjnk@p200300d0c72b9531c50f6552fc7b880d.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-08-28 15:29:41 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 15:31:51 +0200 | <siers> | ok, I get what hlocal is doing now, finally |
2021-08-28 15:33:58 +0200 | <siers> | haddock is a fish! ha, I just found out |
2021-08-28 15:35:08 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-28 15:36:48 +0200 | oxide | (~lambda@user/oxide) (Quit: oxide) |
2021-08-28 15:41:03 +0200 | benin0369322 | (~benin@183.82.206.21) |
2021-08-28 15:41:29 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 250 seconds) |
2021-08-28 15:41:41 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-08-28 15:42:16 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 15:42:24 +0200 | <sshine_> | siers, yes |
2021-08-28 15:43:19 +0200 | benin036932 | (~benin@183.82.178.152) (Ping timeout: 252 seconds) |
2021-08-28 15:43:19 +0200 | benin0369322 | benin036932 |
2021-08-28 15:44:01 +0200 | <sshine_> | I didn't know. :) but it makes sense, considering Captain Haddock from Tintin is a fisherman. |
2021-08-28 15:49:10 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds) |
2021-08-28 15:50:09 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
2021-08-28 15:53:11 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) |
2021-08-28 15:53:28 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) |
2021-08-28 15:54:08 +0200 | oxide | (~lambda@user/oxide) |
2021-08-28 15:56:07 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 240 seconds) |
2021-08-28 15:56:54 +0200 | fendor_ | (~fendor@178.165.164.244.wireless.dyn.drei.com) |
2021-08-28 15:59:15 +0200 | fendor | (~fendor@77.119.210.198.wireless.dyn.drei.com) (Ping timeout: 250 seconds) |
2021-08-28 16:07:28 +0200 | APic | (apic@apic.name) |
2021-08-28 16:08:53 +0200 | dagi59194 | (~dagit@2001:558:6025:38:6476:a063:d05a:44da) |
2021-08-28 16:09:23 +0200 | dagit | (~dagit@2001:558:6025:38:6476:a063:d05a:44da) (Read error: Connection reset by peer) |
2021-08-28 16:10:24 +0200 | acidjnk | (~acidjnk@p200300d0c72b9531c50f6552fc7b880d.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-08-28 16:11:17 +0200 | oxide | (~lambda@user/oxide) (Quit: oxide) |
2021-08-28 16:13:26 +0200 | Gurkenglas | (~Gurkengla@dslb-088-064-053-140.088.064.pools.vodafone-ip.de) (Ping timeout: 250 seconds) |
2021-08-28 16:15:26 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 16:17:53 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-08-28 16:20:55 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 250 seconds) |
2021-08-28 16:20:58 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-08-28 16:22:01 +0200 | PinealGlandOptic | (~PinealGla@37.115.210.35) |
2021-08-28 16:27:51 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 250 seconds) |
2021-08-28 16:28:38 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 16:30:17 +0200 | oxide | (~lambda@user/oxide) |
2021-08-28 16:30:21 +0200 | pfurla | (~pfurla@ool-182ed2e2.dyn.optonline.net) |
2021-08-28 16:36:27 +0200 | MQ-17J | (~MQ-17J@8.6.144.209) (Ping timeout: 240 seconds) |
2021-08-28 16:40:38 +0200 | lep | lep- |
2021-08-28 16:44:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-28 16:44:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-08-28 16:44:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-08-28 16:45:51 +0200 | markpythonicbtc | (~textual@50.228.44.6) |
2021-08-28 16:50:02 +0200 | APic | (apic@apic.name) (Ping timeout: 245 seconds) |
2021-08-28 16:51:37 +0200 | lep- | lep |
2021-08-28 16:54:05 +0200 | lep | lep- |
2021-08-28 16:54:06 +0200 | Vajb | (~Vajb@85-76-137-121-nat.elisa-mobile.fi) (Read error: Connection reset by peer) |
2021-08-28 16:54:36 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 16:56:24 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 16:57:49 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-08-28 17:00:19 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-08-28 17:00:35 +0200 | markpythonicbtc | (~textual@50.228.44.6) (Remote host closed the connection) |
2021-08-28 17:00:40 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) (Ping timeout: 240 seconds) |
2021-08-28 17:01:13 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Ping timeout: 250 seconds) |
2021-08-28 17:01:21 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) |
2021-08-28 17:03:20 +0200 | lep- | lep |
2021-08-28 17:07:17 +0200 | mei | (~mei@user/mei) (Read error: Connection reset by peer) |
2021-08-28 17:12:03 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer) |
2021-08-28 17:12:25 +0200 | alx741 | (~alx741@181.196.68.187) (Ping timeout: 252 seconds) |
2021-08-28 17:13:07 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 17:14:00 +0200 | lep | lep- |
2021-08-28 17:14:37 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-28 17:14:39 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2021-08-28 17:14:56 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 17:16:01 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-08-28 17:20:56 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 17:22:09 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 248 seconds) |
2021-08-28 17:24:03 +0200 | azeem | (~azeem@62.18.164.196) |
2021-08-28 17:24:51 +0200 | cheater | (~Username@user/cheater) |
2021-08-28 17:24:56 +0200 | lep- | lep |
2021-08-28 17:25:39 +0200 | alx741 | (~alx741@186.178.108.114) |
2021-08-28 17:26:10 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
2021-08-28 17:27:15 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-28 17:27:59 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 17:29:15 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) (Remote host closed the connection) |
2021-08-28 17:29:58 +0200 | jiribenes | (~jiribenes@rosa.jiribenes.com) |
2021-08-28 17:30:33 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-08-28 17:33:50 +0200 | lep | lep- |
2021-08-28 17:35:40 +0200 | azeem | (~azeem@62.18.164.196) (Ping timeout: 240 seconds) |
2021-08-28 17:36:11 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 17:38:25 +0200 | lep- | lep |
2021-08-28 17:42:40 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 17:42:59 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 17:43:13 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Ping timeout: 252 seconds) |
2021-08-28 17:43:50 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 17:46:17 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 17:48:31 +0200 | lep | lep- |
2021-08-28 17:49:07 +0200 | <DigitalKiwi> | hi i'm here to talk about stocks |
2021-08-28 17:51:54 +0200 | hexfive | (~eric@50.35.83.177) |
2021-08-28 17:53:45 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 17:53:48 +0200 | chris | Guest3892 |
2021-08-28 17:53:59 +0200 | lep- | lep |
2021-08-28 17:57:28 +0200 | <maerwald> | what you got for me today |
2021-08-28 17:58:18 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 250 seconds) |
2021-08-28 17:58:40 +0200 | renzhi | (~xp@2607:fa49:6500:3d00::d986) (Ping timeout: 240 seconds) |
2021-08-28 17:58:59 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 17:59:40 +0200 | <DigitalKiwi> | jokes |
2021-08-28 18:01:19 +0200 | hexfive | (~eric@50.35.83.177) (Quit: WeeChat 3.0.1) |
2021-08-28 18:03:01 +0200 | Morrow_ | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 252 seconds) |
2021-08-28 18:06:24 +0200 | <maerwald> | https://www.haskell.org/tutorial/ what's this |
2021-08-28 18:07:39 +0200 | <monochrom> | The best Haskell tutorial. |
2021-08-28 18:07:43 +0200 | Guest3199 | (~Guest31@82.40.121.143) |
2021-08-28 18:07:55 +0200 | Guest3199 | (~Guest31@82.40.121.143) (Client Quit) |
2021-08-28 18:08:10 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 18:08:25 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 18:08:31 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 18:14:36 +0200 | derelict | (~derelict@user/derelict) (Quit: WeeChat 3.2) |
2021-08-28 18:15:34 +0200 | <DigitalKiwi> | is it really the best? |
2021-08-28 18:15:57 +0200 | <DigitalKiwi> | simply being official doesn't make it the gest |
2021-08-28 18:16:04 +0200 | <DigitalKiwi> | or best |
2021-08-28 18:16:16 +0200 | derelict | (derelict@2600:3c02::f03c:92ff:fe45:2498) |
2021-08-28 18:16:34 +0200 | dajoer | (~david@user/gvx) (Quit: leaving) |
2021-08-28 18:18:11 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-28 18:18:21 +0200 | <maerwald> | I think we just established that it's the best. |
2021-08-28 18:19:23 +0200 | <DigitalKiwi> | have we though |
2021-08-28 18:20:37 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-08-28 18:21:04 +0200 | neo2 | (~neo3@cpe-292712.ip.primehome.com) |
2021-08-28 18:21:14 +0200 | Vajb | (~Vajb@85-76-37-217-nat.elisa-mobile.fi) |
2021-08-28 18:22:44 +0200 | derelict | (derelict@2600:3c02::f03c:92ff:fe45:2498) (Quit: bye) |
2021-08-28 18:22:59 +0200 | derelict | (derelict@user/derelict) |
2021-08-28 18:25:48 +0200 | Vajb | (~Vajb@85-76-37-217-nat.elisa-mobile.fi) (Read error: Connection reset by peer) |
2021-08-28 18:26:42 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-28 18:27:40 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 18:28:27 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 3.2) |
2021-08-28 18:28:48 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 18:33:05 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 248 seconds) |
2021-08-28 18:33:43 +0200 | falafel | (~falafel@74.214.230.170) |
2021-08-28 18:34:08 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 18:34:46 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-08-28 18:37:53 +0200 | Guest3892 | (~chris@81.96.113.213) (Ping timeout: 248 seconds) |
2021-08-28 18:42:06 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 18:42:09 +0200 | chris | Guest2283 |
2021-08-28 18:42:38 +0200 | Guest2283 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 18:43:22 +0200 | falafel | (~falafel@74.214.230.170) (Ping timeout: 245 seconds) |
2021-08-28 18:44:46 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-08-28 18:46:15 +0200 | APic | (apic@apic.name) |
2021-08-28 18:49:38 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 18:49:42 +0200 | chris | Guest8241 |
2021-08-28 18:51:29 +0200 | Pickchea | (~private@user/pickchea) |
2021-08-28 18:51:56 +0200 | jrm | (~jrm@156.34.187.65) (Quit: ciao) |
2021-08-28 18:53:23 +0200 | <monochrom> | It's how I learned Haskell, and I think it's the best, or least worst, compared to tutorials that came after. |
2021-08-28 18:54:25 +0200 | <monochrom> | One of its strengths is that it does not have broken analogies or misleading pictures that everyone praises in other, worse, tutorials. |
2021-08-28 18:55:51 +0200 | <monochrom> | Note that there is a line to be drawn between tutorials and textbooks. I am comparing tutorials with tutorials, not tutorials with textbooks. |
2021-08-28 18:57:13 +0200 | <monochrom> | http://www.vex.net/~trebla/haskell/learn-sources.html#a-gentle-introduction-to-haskell |
2021-08-28 19:04:52 +0200 | kuribas | (~user@ptr-25vy0i6qx5na6znp5k4.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-08-28 19:10:48 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-08-28 19:11:26 +0200 | Morrow_ | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-08-28 19:11:42 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 245 seconds) |
2021-08-28 19:14:07 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-08-28 19:14:35 +0200 | <hololeap> | is there a monad (transformer) similar to ExceptT, but with different semantics, where the monad will "short-circuit" and return when a computation is finished, as opposed to on an error? |
2021-08-28 19:15:20 +0200 | <janus> | hololeap: not sure i understand, why not just swap success and error types in ExceptT ? |
2021-08-28 19:17:19 +0200 | <monochrom> | I don't understand how "finished" and "short-circuit" can be brought together. |
2021-08-28 19:17:23 +0200 | <janus> | maybe if we eschew the "success/error" terminology and just call it "returned on short circuit" "returned when no short circuiting appears". that captures ExceptT just as accurately, no? |
2021-08-28 19:17:34 +0200 | <monochrom> | I would think "short-circuit" means "unfinished but quit". |
2021-08-28 19:17:34 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 19:18:19 +0200 | <hololeap> | monochrom: for instance, I'm building a data structure using Accum using "pieces" that come in from a list, and I want to stop reading from the list when the data structure is complete |
2021-08-28 19:18:47 +0200 | <monochrom> | I don't know Accum. |
2021-08-28 19:19:05 +0200 | <hololeap> | It's basically just State but specialized for monoids as `s` |
2021-08-28 19:19:07 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
2021-08-28 19:19:14 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-28 19:19:21 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
2021-08-28 19:19:23 +0200 | <hololeap> | it's actually in transformers |
2021-08-28 19:20:00 +0200 | <monochrom> | But "f (x:y:_) = (x,y)" satisfies "stop reading from the list when the tuple (x,y) is complete". |
2021-08-28 19:20:57 +0200 | <hololeap> | this is more like, `data MyThing (Maybe X) (Maybe Y) (Maybe Z)` and I want to stop when all the fields are (Just X), (Just Y), etc |
2021-08-28 19:22:16 +0200 | <hololeap> | oh, I just remembered monad-loops. takeWhileM is probably what I'm looking for |
2021-08-28 19:23:40 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
2021-08-28 19:24:18 +0200 | <monochrom> | Equivalently, making a recursive call means "don't stop", therefore simply don't make a recursive call to "stop". |
2021-08-28 19:25:24 +0200 | <hololeap> | true, but I like to avoid rolling my own recursion when possible. I find the code easier to comprehend that way |
2021-08-28 19:27:36 +0200 | <monochrom> | When I'm writing in C, half of the loops are for-loops that don't contain "break", "continue", "return", "exit()". They are the pure loops, they would be foldl, foldr, foldMap, mapM_ if I were writing Haskell. |
2021-08-28 19:27:41 +0200 | <kaol> | I've used ContT for my not-ExceptT things sometimes. |
2021-08-28 19:28:54 +0200 | <monochrom> | But the other half, they were really handwritten recursion in my head, and for just cause, but then it's C so I compiled recursion to "loop"s with "break" and "continue" and "return". |
2021-08-28 19:30:00 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-08-28 19:30:28 +0200 | <monochrom> | Basically trying to explain that half of the "loops" in C are dishonest loops. They don't improve comprehensibility. |
2021-08-28 19:33:05 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-08-28 19:33:51 +0200 | <kaol> | flip runContT return $ callCC $ \exit -> ... and exit can be called to short circuit and it'll have the same type as the whole computation, with no Either involved. |
2021-08-28 19:35:27 +0200 | <monochrom> | http://www.vex.net/~trebla/haskell/cont.xhtml#yield for using that to exit and re-enter and re-exit and re-enter... >:) |
2021-08-28 19:38:35 +0200 | <hpc> | if you want to be extra mean, flip runContT pure $ callCC $ \return -> ... |
2021-08-28 19:39:02 +0200 | <hpc> | now return actually affects control flow! :D |
2021-08-28 19:39:16 +0200 | <monochrom> | That's only the 2nd meanest. s/pure/return/ to be the meanest. |
2021-08-28 19:40:17 +0200 | <hpc> | then you can't nest it though |
2021-08-28 19:40:27 +0200 | <monochrom> | But let me optimize it for you. |
2021-08-28 19:40:27 +0200 | martin02 | (~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1) (Ping timeout: 240 seconds) |
2021-08-28 19:40:27 +0200 | <maerwald> | is `pure` even politically correct? |
2021-08-28 19:40:30 +0200 | <hpc> | it's fun to not know if your return is going to take you too far up, or not take you too far up enough |
2021-08-28 19:40:41 +0200 | <monochrom> | flip runContT pure $ \pure -> ... |
2021-08-28 19:41:07 +0200 | <monochrom> | err |
2021-08-28 19:41:13 +0200 | <hpc> | actually, hmm |
2021-08-28 19:41:16 +0200 | <monochrom> | flip runContT pure $ ContT $ \pure -> ... |
2021-08-28 19:41:30 +0200 | <hpc> | in \pure, that pure has the same type as actual pure |
2021-08-28 19:41:37 +0200 | <hpc> | monochrom: so yes, yours is better |
2021-08-28 19:41:48 +0200 | <hpc> | because then who even knows what nesting it will do |
2021-08-28 19:46:40 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 19:46:54 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 19:51:10 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 19:52:15 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 19:52:43 +0200 | Gurkenglas | (~Gurkengla@dslb-088-064-053-140.088.064.pools.vodafone-ip.de) |
2021-08-28 19:52:53 +0200 | martin02 | (~silas@141.84.69.76) |
2021-08-28 19:59:37 +0200 | APic | (apic@apic.name) (Ping timeout: 252 seconds) |
2021-08-28 20:01:10 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 240 seconds) |
2021-08-28 20:02:06 +0200 | azeem | (~azeem@5.168.90.242) |
2021-08-28 20:03:33 +0200 | <monochrom> | On second thought, callCC is necessary. |
2021-08-28 20:04:06 +0200 | <hpc> | it's always on second thought with callCC :P |
2021-08-28 20:06:05 +0200 | ArctVaulMarsHMPJ | (~pjetcetal@128-71-152-79.broadband.corbina.ru) (Remote host closed the connection) |
2021-08-28 20:06:13 +0200 | azeem | (~azeem@5.168.90.242) (Ping timeout: 252 seconds) |
2021-08-28 20:07:18 +0200 | azeem | (~azeem@5.168.86.163) |
2021-08-28 20:07:41 +0200 | <hololeap> | is there something (premade) that combines takeWhile with a fold, so that you can access the state of the fold in the check? |
2021-08-28 20:08:24 +0200 | <Rembane_> | MonadPlus might be your friend here, I haven't used it though, only seen something about it in the docs. |
2021-08-28 20:08:46 +0200 | <hololeap> | I don't think that would help here, but explain |
2021-08-28 20:11:33 +0200 | <hololeap> | @hoogle (b -> Either b c) -> (a -> b -> b) -> b -> t a -> Either b c |
2021-08-28 20:11:34 +0200 | <lambdabot> | No results found |
2021-08-28 20:12:27 +0200 | d0ku | (~d0ku@178.43.56.75.ipv4.supernova.orange.pl) |
2021-08-28 20:15:07 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 240 seconds) |
2021-08-28 20:15:12 +0200 | <hololeap> | well, I think I'll just stick with what I have: mapM_ using ExceptT (Bare T) (Accum (Partial T)) () |
2021-08-28 20:15:39 +0200 | <hololeap> | although that () in the last position makes me feel like the monad interface is too powerful here |
2021-08-28 20:16:06 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds) |
2021-08-28 20:17:04 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 20:17:09 +0200 | hololeap | renames Bare to Finished -- there, that makes more sense |
2021-08-28 20:17:47 +0200 | eldritch_ | (~eldritch@134.209.221.71) (Changing host) |
2021-08-28 20:17:47 +0200 | eldritch_ | (~eldritch@user/eldritch/x-9272577) |
2021-08-28 20:18:06 +0200 | TranquilEcho | (~grom@user/tranquilecho) |
2021-08-28 20:18:17 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-08-28 20:19:53 +0200 | andinus | (andinus@tilde.institute) (Remote host closed the connection) |
2021-08-28 20:20:33 +0200 | andinus | (andinus@tilde.institute) |
2021-08-28 20:23:38 +0200 | Jeanne-Kamikaze | (~Jeanne-Ka@static-198-54-131-126.cust.tzulo.com) |
2021-08-28 20:25:27 +0200 | azeem | (~azeem@5.168.86.163) (Ping timeout: 240 seconds) |
2021-08-28 20:26:11 +0200 | azeem | (~azeem@5.168.86.163) |
2021-08-28 20:26:40 +0200 | ArctVaulMarsHMPJ | (~pjetcetal@128-71-152-79.broadband.corbina.ru) |
2021-08-28 20:27:53 +0200 | mud | (~mud@user/kadoban) |
2021-08-28 20:32:36 +0200 | Guest8241 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 20:32:41 +0200 | azeem | (~azeem@5.168.86.163) (Ping timeout: 250 seconds) |
2021-08-28 20:33:13 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 20:33:16 +0200 | chris | Guest3524 |
2021-08-28 20:33:23 +0200 | Guest3524 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 20:34:21 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 20:34:24 +0200 | chris | Guest9786 |
2021-08-28 20:35:29 +0200 | azeem | (~azeem@5.168.86.163) |
2021-08-28 20:36:00 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
2021-08-28 20:41:47 +0200 | azeem | (~azeem@5.168.86.163) (Ping timeout: 250 seconds) |
2021-08-28 20:43:02 +0200 | azeem | (~azeem@5.168.86.163) |
2021-08-28 20:43:09 +0200 | desophos | (~desophos@2601:249:1680:a570:b9dc:dd21:8c3e:8765) |
2021-08-28 20:43:34 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-08-28 20:49:40 +0200 | azeem | (~azeem@5.168.86.163) (Ping timeout: 252 seconds) |
2021-08-28 20:50:06 +0200 | azeem | (~azeem@5.168.92.20) |
2021-08-28 20:51:10 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
2021-08-28 21:01:07 +0200 | azeem | (~azeem@5.168.92.20) (Ping timeout: 240 seconds) |
2021-08-28 21:01:38 +0200 | azeem | (~azeem@5.168.92.20) |
2021-08-28 21:01:40 +0200 | Pickchea | (~private@user/pickchea) |
2021-08-28 21:03:25 +0200 | Jeanne-Kamikaze | (~Jeanne-Ka@static-198-54-131-126.cust.tzulo.com) (Ping timeout: 252 seconds) |
2021-08-28 21:11:49 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-08-28 21:12:01 +0200 | martin02 | (~silas@141.84.69.76) (Ping timeout: 248 seconds) |
2021-08-28 21:13:10 +0200 | kenran | (~kenran@200116b82bc02700b5002519151f8c73.dip.versatel-1u1.de) |
2021-08-28 21:14:27 +0200 | _xor | (~xor@74.215.232.67) (Read error: Connection reset by peer) |
2021-08-28 21:14:35 +0200 | pavonia | (~user@user/siracusa) |
2021-08-28 21:14:58 +0200 | _xor | (~xor@74.215.232.67) |
2021-08-28 21:15:14 +0200 | vysn | (~vysn@user/vysn) |
2021-08-28 21:15:49 +0200 | Guest9786 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 21:15:55 +0200 | martin02 | (~silas@141.84.69.76) |
2021-08-28 21:16:20 +0200 | neo2 | (~neo3@cpe-292712.ip.primehome.com) (Ping timeout: 250 seconds) |
2021-08-28 21:16:29 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 21:16:33 +0200 | chris | Guest473 |
2021-08-28 21:21:01 +0200 | Guest473 | (~chris@81.96.113.213) (Ping timeout: 252 seconds) |
2021-08-28 21:23:26 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 21:23:29 +0200 | chris | Guest1221 |
2021-08-28 21:24:43 +0200 | mastarija | (~mastarija@78-3-210-70.adsl.net.t-com.hr) |
2021-08-28 21:27:13 +0200 | <mastarija> | any idea how I might be able to escape this in haddock: `failIf [UnderAge] (<18)`? It interprets [UnderAge] (<18) as a markdown link syntax. I tried "escaping" the brackets, but then they render with backslashes (which isn't really escaping them). |
2021-08-28 21:31:26 +0200 | <hololeap> | are you trying to put a code snippet in the doc? |
2021-08-28 21:31:32 +0200 | acidjnk | (~acidjnk@p200300d0c72b9531c50f6552fc7b880d.dip0.t-ipconnect.de) |
2021-08-28 21:32:24 +0200 | <hololeap> | https://www.haskell.org/haddock/doc/html/ch03s08.html#idm140354810780208 |
2021-08-28 21:32:24 +0200 | <hololeap> | you wrap the code in "at signs" @ |
2021-08-28 21:32:24 +0200 | <hololeap> | it doesn't use the markdown syntax |
2021-08-28 21:32:46 +0200 | <mastarija> | hololeap, I use @@ block, not inline |
2021-08-28 21:32:57 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 21:33:08 +0200 | <mastarija> | and it has that problem |
2021-08-28 21:33:20 +0200 | Guest1221 | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-08-28 21:34:02 +0200 | chris | (~chris@81.96.113.213) |
2021-08-28 21:34:05 +0200 | chris | Guest7545 |
2021-08-28 21:35:18 +0200 | <mastarija> | I mean, it's the same if I do it inline as well. |
2021-08-28 21:38:33 +0200 | Guest7545 | (~chris@81.96.113.213) (Ping timeout: 250 seconds) |
2021-08-28 21:40:36 +0200 | azeem | (~azeem@5.168.92.20) (Ping timeout: 250 seconds) |
2021-08-28 21:40:52 +0200 | azeem | (~azeem@5.168.92.20) |
2021-08-28 21:42:40 +0200 | <hololeap> | can you post the actual line of code? |
2021-08-28 21:43:50 +0200 | <mastarija> | Sure, just a sec |
2021-08-28 21:43:53 +0200 | tput | (~tim@S0106a84e3fe54613.ed.shawcable.net) |
2021-08-28 21:44:11 +0200 | <mastarija> | hololeap, `ageV = 'adapt' unAge $ 'passIf' [AgeUnder] (>18) <> 'failIf' [AgeOver] (>65)` |
2021-08-28 21:45:01 +0200 | <hololeap> | so are you using backticks or @ ? |
2021-08-28 21:45:23 +0200 | <mastarija> | sorry, habit |
2021-08-28 21:45:25 +0200 | <mastarija> | I use @ |
2021-08-28 21:45:44 +0200 | <hololeap> | can you post the actual line of code copied directly from your sorce? |
2021-08-28 21:46:53 +0200 | <hololeap> | sorry, lines, since you said it was a block... you can use https://paste.tomsmeding.com |
2021-08-28 21:47:30 +0200 | <mastarija> | hololeap, https://paste.tomsmeding.com/p9hVfre9 |
2021-08-28 21:49:43 +0200 | <hololeap> | maralorn: hm, try indenting the code block (not the @'s) by four spaces |
2021-08-28 21:50:13 +0200 | <hololeap> | that's the way it's shown in the doc |
2021-08-28 21:50:22 +0200 | <mastarija> | hololeap, nope doesn't work |
2021-08-28 21:50:34 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2021-08-28 21:50:35 +0200 | <maerwald> | is there a optparse-applicative plugin that shows suggestions on mistyping flags/commands? |
2021-08-28 21:50:54 +0200 | <maerwald> | foo --heeelp -- did you mean `--help`? |
2021-08-28 21:51:03 +0200 | <mastarija> | It still renders as linked AgeOver instead of [AgeOver] (>65) |
2021-08-28 21:51:18 +0200 | <hololeap> | mastarija: > Additionally, the character > has a special meaning at the beginning of a line, and the following characters have special meanings at the beginning of a paragraph: *, -. These characters can also be escaped using \. |
2021-08-28 21:51:56 +0200 | <hololeap> | mastarija: try escaping the > in front of 18 like so: (\>18)@ |
2021-08-28 21:52:13 +0200 | <hololeap> | and also 64 |
2021-08-28 21:52:15 +0200 | <hololeap> | *65 |
2021-08-28 21:52:33 +0200 | hololeap | might be clutching at straws here |
2021-08-28 21:52:53 +0200 | <mastarija> | I tried escaping [ with \[, but it just renders it as \[. Similarly, escaping > does nothing :( |
2021-08-28 21:53:22 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-08-28 21:53:41 +0200 | <hololeap> | mastarija: you might have a typo if you meant <18 :p |
2021-08-28 21:54:23 +0200 | <mastarija> | hololeap, `passIf`, not `failIf` :P |
2021-08-28 21:54:55 +0200 | <hololeap> | oh, good point |
2021-08-28 21:55:24 +0200 | <mastarija> | damn, this is annoying |
2021-08-28 21:55:38 +0200 | <mastarija> | Almost done with all the documentation, and this is such pain in the ass |
2021-08-28 21:55:46 +0200 | <mastarija> | And I have plenty of such examples |
2021-08-28 21:56:16 +0200 | PinealGlandOptic | (~PinealGla@37.115.210.35) (Quit: leaving) |
2021-08-28 21:57:24 +0200 | <hololeap> | mastarija: can you identify which one of these you think it is erroneously parsing from your code block: https://www.haskell.org/haddock/doc/html/ch03s08.html#idm140354810770608 |
2021-08-28 21:57:27 +0200 | <mastarija> | hm.. I can use > to start a code line, but then I loose ability to link to my functions within the documentation |
2021-08-28 21:57:37 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds) |
2021-08-28 21:57:56 +0200 | <hololeap> | it's hard to verify since I can't see the output |
2021-08-28 21:59:11 +0200 | <mastarija> | It's not listed there, but it is a markdown link syntax. e.g. [Link text](https://linkurl.com) |
2021-08-28 21:59:29 +0200 | dsrt^ | (~dsrt@12.16.129.111) (Ping timeout: 248 seconds) |
2021-08-28 21:59:31 +0200 | <mastarija> | It's technically correct |
2021-08-28 21:59:38 +0200 | Guest32 | (~Guest32@188.113.204.172) |
2021-08-28 21:59:38 +0200 | <mastarija> | But I can't find a way to escape it |
2021-08-28 21:59:47 +0200 | juhp_ | (~juhp@bb116-14-48-29.singnet.com.sg) (Ping timeout: 240 seconds) |
2021-08-28 22:00:51 +0200 | dsrt^ | (~dsrt@12.16.129.111) |
2021-08-28 22:01:07 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-08-28 22:02:35 +0200 | Guest32 | (~Guest32@188.113.204.172) (Quit: Client closed) |
2021-08-28 22:03:44 +0200 | josh | (~lordgrenv@141.226.14.154) |
2021-08-28 22:04:08 +0200 | josh | Guest8166 |
2021-08-28 22:06:03 +0200 | <hololeap> | mastarija: ok, I confirmed it |
2021-08-28 22:06:21 +0200 | <mastarija> | I reported it in the meantime :D |
2021-08-28 22:06:33 +0200 | <hololeap> | good idea |
2021-08-28 22:06:39 +0200 | <hololeap> | because I don't see that documented |
2021-08-28 22:06:51 +0200 | <hololeap> | and it shouldn't be happening inside a code block |
2021-08-28 22:07:40 +0200 | APic | (apic@apic.name) |
2021-08-28 22:07:44 +0200 | <mastarija> | I've found a stackoverflow question where they confirmed it used to happen on GitHub as well, but they have added ability to escape [] later. |
2021-08-28 22:08:02 +0200 | <jiribenes> | maerwald: AFAICT optparse-applicative already does this automatically when you're close enough |
2021-08-28 22:08:07 +0200 | <jiribenes> | something like "edit distance at most two" |
2021-08-28 22:08:57 +0200 | <jiribenes> | yeah, see here https://github.com/pcapriotti/optparse-applicative/blob/8edc41994984cbfdfc1ee960e4d4d112cfccbc11/s… |
2021-08-28 22:10:00 +0200 | emliunix | (~emliunix@61-216-165-205.hinet-ip.hinet.net) (Remote host closed the connection) |
2021-08-28 22:10:18 +0200 | emliunix | (~emliunix@61-216-165-205.HINET-IP.hinet.net) |
2021-08-28 22:10:57 +0200 | fresheyeball | (~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |
2021-08-28 22:15:12 +0200 | tllp | (~tllp@69.233.98.238) |
2021-08-28 22:15:31 +0200 | <maerwald> | jiribenes: doesn't seem to work for subcommands |
2021-08-28 22:19:46 +0200 | hololeap_ | (~hololeap@user/hololeap) |
2021-08-28 22:20:25 +0200 | azeem | (~azeem@5.168.92.20) (Ping timeout: 252 seconds) |
2021-08-28 22:21:58 +0200 | azeem | (~azeem@5.168.92.20) |
2021-08-28 22:22:18 +0200 | hololeap | (~hololeap@user/hololeap) (Ping timeout: 276 seconds) |
2021-08-28 22:22:41 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer) |
2021-08-28 22:23:06 +0200 | hololeap_ | hololeap |
2021-08-28 22:30:52 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-28 22:31:19 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-08-28 22:35:40 +0200 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
2021-08-28 22:41:42 +0200 | azeem | (~azeem@5.168.92.20) (Ping timeout: 250 seconds) |
2021-08-28 22:42:44 +0200 | azeem | (~azeem@5.168.92.20) |
2021-08-28 22:44:44 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-28 22:44:44 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-08-28 22:44:44 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-08-28 22:47:06 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-28 22:47:56 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2021-08-28 22:56:58 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-08-28 22:59:07 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2021-08-28 23:00:39 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Client Quit) |
2021-08-28 23:00:43 +0200 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2021-08-28 23:01:09 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-08-28 23:03:52 +0200 | Morrow_ | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 252 seconds) |
2021-08-28 23:07:21 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-08-28 23:08:33 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) (Remote host closed the connection) |
2021-08-28 23:11:29 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-08-28 23:12:43 +0200 | wroathe | (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) |
2021-08-28 23:12:43 +0200 | wroathe | (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) (Changing host) |
2021-08-28 23:12:43 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-08-28 23:12:46 +0200 | oxide | (~lambda@user/oxide) (Quit: oxide) |
2021-08-28 23:13:01 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 250 seconds) |
2021-08-28 23:17:21 +0200 | azeem | (~azeem@5.168.92.20) (Ping timeout: 250 seconds) |
2021-08-28 23:18:26 +0200 | azeem | (~azeem@5.168.106.177) |
2021-08-28 23:21:15 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
2021-08-28 23:21:28 +0200 | Guest8166 | (~lordgrenv@141.226.14.154) (Ping timeout: 252 seconds) |
2021-08-28 23:24:30 +0200 | favonia | (~favonia@user/favonia) |
2021-08-28 23:24:35 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-08-28 23:26:48 +0200 | kimjetwav | (~user@2607:fea8:235f:9730:4718:18aa:30c8:2ab8) |
2021-08-28 23:28:21 +0200 | mnrmnaugh | (~mnrmnaugh@68.162.206.56) |
2021-08-28 23:29:01 +0200 | berberman_ | (~berberman@user/berberman) |
2021-08-28 23:29:17 +0200 | berberman | (~berberman@user/berberman) (Ping timeout: 252 seconds) |
2021-08-28 23:29:58 +0200 | mnrmnaugh | (~mnrmnaugh@68.162.206.56) () |
2021-08-28 23:38:09 +0200 | kenran | (~kenran@200116b82bc02700b5002519151f8c73.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
2021-08-28 23:40:04 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:45ef:351a:e045:ed35) |
2021-08-28 23:42:46 +0200 | minimario | (~minimario@2603:900a:1600:ba00:f194:27a7:3a07:9cc5) |
2021-08-28 23:43:44 +0200 | <minimario> | i'm trying to read the type families article on ghc, what exactly is this syntax: "data instance XList Char = XCons !Char !(XList Char) | XNil" |
2021-08-28 23:44:08 +0200 | <minimario> | what's the significance of ~ and | |
2021-08-28 23:44:11 +0200 | <minimario> | *! |
2021-08-28 23:45:45 +0200 | <minimario> | i know it's kind of like list syntax, but what are the key differences here? |
2021-08-28 23:46:10 +0200 | <minimario> | (article here for reference: https://wiki.haskell.org/GHC/Type_families) |
2021-08-28 23:48:28 +0200 | <mastarija> | minimario, ~ is a type equality and | is just a separator for different value constructors |
2021-08-28 23:48:39 +0200 | <mastarija> | Just like with regular data definitions |
2021-08-28 23:48:40 +0200 | t3hyoshi | (~snicf@2600:8804:1b96:4900:1472:5a94:c594:83ca) (Quit: Konversation terminated!) |
2021-08-28 23:48:56 +0200 | <minimario> | sorry i meant !, not ~ |
2021-08-28 23:49:08 +0200 | <mastarija> | ! is strictness modifier |
2021-08-28 23:49:10 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 240 seconds) |
2021-08-28 23:49:14 +0200 | <minimario> | what does that mean |
2021-08-28 23:49:43 +0200 | <mastarija> | in short, it says that XCon doesn't contain a pointer to a Char, but Char it self |
2021-08-28 23:49:52 +0200 | <mastarija> | Not really, but you can think of it that way |
2021-08-28 23:50:20 +0200 | <mastarija> | Although, neither of those things are related to the type families |
2021-08-28 23:51:16 +0200 | Morrow_ | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-08-28 23:52:10 +0200 | martin02 | (~silas@141.84.69.76) (Ping timeout: 240 seconds) |
2021-08-28 23:53:37 +0200 | AlistairB | (~AlistairB@121-200-5-212.79c805.syd.nbn.aussiebb.net) |
2021-08-28 23:55:00 +0200 | <yushyin> | minimario: https://wiki.haskell.org/Performance/Data_types#Strict_fields |
2021-08-28 23:56:47 +0200 | mastarija | (~mastarija@78-3-210-70.adsl.net.t-com.hr) (Quit: Leaving) |