Logs on 2020-12-05 (freenode/#haskell)
| 00:00:46 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 00:00:46 | × | chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer) |
| 00:01:22 | → | chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) |
| 00:02:01 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:2542:c60f:3a80:283) |
| 00:02:45 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 240 seconds) |
| 00:04:39 | × | cosimone quits (~cosimone@93-47-228-249.ip115.fastwebnet.it) (Ping timeout: 260 seconds) |
| 00:04:39 | × | m0rphism quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 260 seconds) |
| 00:06:51 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 00:07:19 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving) |
| 00:08:23 | → | HarveyPwca joins (~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net) |
| 00:10:39 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:10:48 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 00:11:51 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 00:16:59 | → | AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl) |
| 00:18:02 | × | xff0x_ quits (~fox@2001:1a81:53bd:d700:a2a1:7119:15d0:7c3f) (Ping timeout: 264 seconds) |
| 00:18:44 | → | xff0x_ joins (~fox@2001:1a81:53bd:d700:c516:168f:1d32:856e) |
| 00:20:13 | → | Tops2 joins (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) |
| 00:22:05 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 00:23:37 | × | Tops21 quits (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) (Ping timeout: 264 seconds) |
| 00:24:38 | → | Tops21 joins (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) |
| 00:26:33 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:27:07 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:27:49 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 00:27:59 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 260 seconds) |
| 00:28:07 | × | Tops2 quits (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) (Ping timeout: 246 seconds) |
| 00:28:25 | × | Entertainment quits (~entertain@104.246.132.210) (Ping timeout: 264 seconds) |
| 00:28:50 | → | Tops2 joins (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) |
| 00:29:17 | × | Ariakenom quits (~Ariakenom@h-98-128-229-53.NA.cust.bahnhof.se) (Ping timeout: 265 seconds) |
| 00:30:23 | × | jess quits (jess@freenode/staff/jess) (Quit: updates) |
| 00:30:56 | × | alp quits (~alp@88.126.45.36) (Ping timeout: 240 seconds) |
| 00:31:38 | <texasmynsted> | I see this --> https://hackage.haskell.org/package/fix-imports |
| 00:31:58 | × | Tops21 quits (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) (Ping timeout: 246 seconds) |
| 00:32:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 00:32:35 | → | Tops21 joins (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) |
| 00:32:38 | × | Tops21 quits (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) (Client Quit) |
| 00:32:43 | <texasmynsted> | Is this the best way to fix my imports? |
| 00:33:18 | <texasmynsted> | second best ... best being manually |
| 00:34:35 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@171.5.167.167) |
| 00:34:44 | → | Tario joins (~Tario@201.192.165.173) |
| 00:35:43 | oats | is now known as ot |
| 00:35:48 | ot | is now known as oa |
| 00:36:01 | × | delYsid quits (~user@vra-173-158.tugraz.at) (Remote host closed the connection) |
| 00:36:13 | × | Tops2 quits (~Tobias@dyndsl-095-033-016-243.ewe-ip-backbone.de) (Ping timeout: 264 seconds) |
| 00:36:34 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 256 seconds) |
| 00:37:57 | × | eedgit26 quits (~chat.free@95.179.237.21) (Quit: The Lounge - https://thelounge.chat) |
| 00:38:12 | → | eedgit26 joins (~chat.free@95.179.237.21) |
| 00:39:20 | × | BlackCapCoder quits (~blackcap@48.80-203-23.nextgentel.com) (Ping timeout: 256 seconds) |
| 00:54:28 | → | Jonkimi727406120 joins (~Jonkimi@223.213.165.31) |
| 00:55:56 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 00:55:59 | <MarcelineVQ> | what's broken about them? |
| 00:56:39 | <ezzieyguywuf> | glguy: is there a way to change the order that specs show up in `generateDocs`? |
| 00:57:32 | <glguy> | Umm... |
| 00:58:46 | <glguy> | Looks like it's just alphabetical now. Better ideas? |
| 00:59:10 | <ezzieyguywuf> | I think it'd make better sense to go in hierarchical order |
| 00:59:11 | <glguy> | alphabetical for named things, order of appearance for individual things |
| 00:59:37 | <ezzieyguywuf> | ah, yea I think order of appearance across-the-board makes more sense, b/c otherwise the documention is a bit confusing |
| 00:59:40 | <ezzieyguywuf> | here let me share one h/o. |
| 01:00:14 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:00:36 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:00:43 | <ephemient> | what's the current "alphabetical"? I convinced hspec to sort by "natural" instead of "lexicographic" a while back https://github.com/hspec/hspec/pull/337 |
| 01:01:21 | <ezzieyguywuf> | glguy: https://dpaste.com/2BW5GXBSX so here, since there's no preamble to the docs or anything, I start reading at "Top-Level" and get to "REQUIRED Input-File-Columns" and I'm left wondering "what is that?!", and then I get to "Amount-Column" and start to get lost |
| 01:01:29 | → | Ariakenom joins (~Ariakenom@h-98-128-229-53.NA.cust.bahnhof.se) |
| 01:01:33 | <ezzieyguywuf> | I know it's a little thing, but for a less tech-savvy user this could be quite confusing. |
| 01:01:43 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 01:02:04 | <glguy> | I'm quite open to improvements here; I just didn't know what to do |
| 01:03:18 | <ezzieyguywuf> | ephemient: hey I use hspec! it's always sorted in the order I define specs, you're saying this change is recent? |
| 01:03:42 | <ezzieyguywuf> | glguy: 👍️, I'll take a look at the code, see if I can muster up a pr |
| 01:04:07 | <ephemient> | no, my change just affects hspec-discover order... if you define your specs yourself, then it's in that order |
| 01:04:18 | × | alx741 quits (~alx741@186.178.110.235) (Ping timeout: 260 seconds) |
| 01:04:26 | × | Amras quits (~Amras@unaffiliated/amras) (Ping timeout: 246 seconds) |
| 01:04:28 | → | Seiless joins (~jeremy@110.150.63.35) |
| 01:04:29 | <glguy> | ezzieyguywuf: PRs are fantastic, but even sketches of what you think would look nicer are useful |
| 01:04:34 | × | Jonkimi727406120 quits (~Jonkimi@223.213.165.31) (Quit: Ping timeout (120 seconds)) |
| 01:04:44 | <ezzieyguywuf> | ah hah. wait I think I use hspec-discover too, but it's only ever had to discover a single file lol. |
| 01:04:59 | → | Jonkimi727406120 joins (~Jonkimi@223.213.165.31) |
| 01:05:36 | <ezzieyguywuf> | i wonder why they didn't want the dependency on `text`. `parsec` I kind of get.. |
| 01:06:30 | <ezzieyguywuf> | wow what a great pr, and code review, and eventual merge! |
| 01:07:57 | <glguy> | ezzieyguywuf: Also there doesn't have to be the one-true-documentation-generator. It could make sense for a module to generate Markdown or HTML or something else entirely |
| 01:08:29 | <glguy> | And the data types are exposed if you want to experiment with consuming the specs in different ways |
| 01:10:22 | × | Seiless quits (~jeremy@110.150.63.35) (Ping timeout: 272 seconds) |
| 01:10:27 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 01:13:56 | → | ph88 joins (~ph88@ip5f5af6cd.dynamic.kabel-deutschland.de) |
| 01:13:59 | → | bitmapper joins (uid464869@gateway/web/irccloud.com/x-kvwfkzcfenglexqu) |
| 01:14:32 | → | abhixec joins (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) |
| 01:15:40 | → | doct0rhu joins (~orctarorg@pool-72-88-158-154.nwrknj.fios.verizon.net) |
| 01:16:17 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:16:45 | → | conal joins (~conal@64.71.133.70) |
| 01:16:58 | <doct0rhu> | `ghci` loads `./.ghci` before` `$HOME/.ghci`, which seems strange to me |
| 01:17:15 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 01:17:54 | × | britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep) |
| 01:18:00 | <doct0rhu> | usually per-directory/project configs overrides per-user configs |
| 01:18:25 | × | Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 240 seconds) |
| 01:18:37 | → | alx741 joins (~alx741@181.196.68.200) |
| 01:19:04 | × | dave_uy quits (~david@108.61.193.26) (Ping timeout: 256 seconds) |
| 01:19:14 | × | byorgey quits (~byorgey@155.138.238.211) (Ping timeout: 272 seconds) |
| 01:19:25 | × | bcmiller quits (~bm3719@66.42.95.185) (Ping timeout: 240 seconds) |
| 01:19:29 | → | AndreasK joins (uid320732@gateway/web/irccloud.com/x-kmsetxbzackhcodn) |
| 01:19:45 | <doct0rhu> | specifically, users may want to `:def` some variations of commands that uses a per-directory arguments |
| 01:20:30 | <doct0rhu> | but they have to use a different name or otherwise that'd be overridden by the same named one in `$HOME/.ghci` |
| 01:21:25 | × | ph88 quits (~ph88@ip5f5af6cd.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
| 01:23:08 | → | flyingpotatoman joins (~seiless@85.203.34.15) |
| 01:24:34 | → | drincruz_ joins (~adriancru@ool-44c748be.dyn.optonline.net) |
| 01:29:10 | flyingpotatoman | is now known as Seiless |
| 01:31:13 | → | rayyyy joins (~nanoz@gateway/tor-sasl/nanoz) |
| 01:31:47 | Seiless | is now known as Sayless |
| 01:32:26 | × | borne quits (~fritjof@200116b864198500f60f2508b10af3d6.dip.versatel-1u1.de) (Ping timeout: 264 seconds) |
| 01:32:44 | × | dhil quits (~dhil@195.213.192.34) (Ping timeout: 260 seconds) |
| 01:33:10 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 272 seconds) |
| 01:33:50 | <Sayless> | What's everyone working on? |
| 01:33:56 | × | DavidEichmann quits (~david@62.110.198.146.dyn.plus.net) (Ping timeout: 240 seconds) |
| 01:34:05 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Ping timeout: 240 seconds) |
| 01:34:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 01:35:27 | × | catchme quits (uid355354@gateway/web/irccloud.com/x-efeidyvsbqvqtcow) (Quit: Connection closed for inactivity) |
| 01:38:08 | <dsal> | adventofcode, though I kind of need to build a thing that lets me upload to S3 the same way my GoPro thing does. |
| 01:40:20 | → | drincruz_ joins (~adriancru@ool-44c748be.dyn.optonline.net) |
| 01:41:06 | <solonarv> | I've also been doing AoC, besides uni stuff (which isn't haskell but does involve some programming) |
| 01:42:00 | → | Lord_of_Life_ joins (~Lord@46.217.216.2) |
| 01:43:15 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:43:18 | × | Jonkimi727406120 quits (~Jonkimi@223.213.165.31) (Ping timeout: 272 seconds) |
| 01:44:08 | <Sayless> | that's interesting! I've been doing some stuff on leetcode. This could be a nice change |
| 01:44:44 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 256 seconds) |
| 01:44:57 | × | blissful quits (~azuline@unaffiliated/azuline) (Quit: The Lounge - https://thelounge.chat) |
| 01:45:39 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 01:46:08 | <dsal> | I've written a lot of Haskell I rely on this year. But it's puzzle season. |
| 01:46:43 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 01:48:11 | <Sayless> | I never heard about AoC before! Looks cool. I've been torn between scala and haskell this year as my hobby language |
| 01:48:40 | → | blissful joins (~azuline@unaffiliated/azuline) |
| 01:49:08 | <dsal> | Well, there's likely bias here, but I use haskell for everything except when I can't. |
| 01:49:24 | × | blissful quits (~azuline@unaffiliated/azuline) (Client Quit) |
| 01:50:36 | <Sayless> | I love reading about Haskell and reading its code. It was my first preference. The one thing i've found as a barrier of entry is libraries and documentation surrounding them as a newcomer |
| 01:52:05 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 240 seconds) |
| 01:53:50 | <Sayless> | I definitely prefer it between the two. I have found it easier to port something out of Java and use it in Scala however. Maybe I'll just become more fluent with libs and packages in Haskell over time |
| 01:55:33 | → | blissful joins (~azuline@unaffiliated/azuline) |
| 01:57:16 | × | pjb quits (~t@2a01cb04063ec500f481f246a0d62c86.ipv6.abo.wanadoo.fr) (Ping timeout: 244 seconds) |
| 01:57:54 | × | blissful quits (~azuline@unaffiliated/azuline) (Client Quit) |
| 01:58:45 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:2542:c60f:3a80:283) (Remote host closed the connection) |
| 01:59:00 | <dsal> | Yeah, to be fair, I find documentation for new languages hard to read in general. Part of haskell's problem there is so much is common. |
| 01:59:15 | → | nfd9001 joins (~nfd9001@c-67-183-38-33.hsd1.wa.comcast.net) |
| 01:59:33 | → | Vulfe joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 01:59:41 | <dsal> | So if I give you a data structure and tell you it's foldable, applicative, traversable, etc... you know a *lot* about what you can do with it without me having to say what all those things are. |
| 02:01:50 | → | blissful joins (~azuline@unaffiliated/azuline) |
| 02:01:54 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 02:02:45 | <nfd9001> | Hey, I'm trying to learn megaparsec for AoC day 4 and don't want to look at y'alls full spoilers yet; I'm trying to use Control.Applicative.Permutations and I think it looks nice to try to use a do-style for name binding (despite that all I really need is Alternative power) |
| 02:03:07 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 02:03:26 | <dsal> | You can use do if you want, but there's no do in my day4. |
| 02:03:31 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 02:04:03 | × | Vulfe quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Ping timeout: 260 seconds) |
| 02:04:17 | <nfd9001> | So I have something like passportParser = runPermutation $ do byc <- toPermutationWithDefault Nothing (...); ...; pure (P byc...) |
| 02:04:21 | <c_wraith> | I used do a lot in my validation code without even touching parsers |
| 02:04:53 | <nfd9001> | i mean, i know i can do this without fancy parser combinators, but it seemed like a nice opportunity to learn them |
| 02:05:24 | <dsal> | Sure, half the reason for solving the puzzles is learning new things. :) |
| 02:05:38 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:06:57 | <iqubic> | I learned about refinement types today. Why bother validating stuff when you can have the types/another library do it for you. |
| 02:07:36 | <nfd9001> | anybody familiar with a way i can use those tools with that kind of idiom? there's not a ton of tutorials on using just parser-combinators/megaparsec's Control.Applicative.Permutations or anything |
| 02:08:37 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds) |
| 02:08:50 | × | tinwood quits (~tinwood@general.default.akavanagh.uk0.bigv.io) (Remote host closed the connection) |
| 02:09:07 | <nfd9001> | i clearly have some simple type confusion going on here that I can brain out/share but I figured somebody might've written something on this I hadn't seen |
| 02:09:45 | → | bgamari joins (~bgamari@72.65.101.184) |
| 02:10:35 | × | bgamari_ quits (~bgamari@72.65.104.220) (Ping timeout: 260 seconds) |
| 02:10:48 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 02:11:05 | × | hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 240 seconds) |
| 02:11:58 | → | tinwood joins (~tinwood@general.default.akavanagh.uk0.bigv.io) |
| 02:12:14 | <nfd9001> | it seems like this do block inferred that it was supposed to be in the Maybe monad, so i assume flipping on ApplicativeDo is probably part of this |
| 02:13:56 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 02:15:24 | → | dustypacer joins (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4) |
| 02:17:26 | <ephemient> | I've done some crazy things with megaparsec - looking back at aoc2019d25, I fed input back into the parser while it is running. I don't know what I was thinking :) |
| 02:18:20 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 02:19:29 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 02:19:40 | <nfd9001> | hey, it's not "crazy" if it's "art" |
| 02:20:08 | <ephemient> | in any case, hart to tell from your description, but it does sound like you've just mixed up some types somewhere. have any code to share? |
| 02:21:23 | × | rcdilorenzo quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Client Quit) |
| 02:21:37 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 02:23:43 | × | xff0x_ quits (~fox@2001:1a81:53bd:d700:c516:168f:1d32:856e) (Ping timeout: 272 seconds) |
| 02:25:11 | → | xff0x_ joins (~fox@2001:1a81:53f4:6600:356b:2da8:97c9:b5cf) |
| 02:26:41 | <nfd9001> | yeah, i just mixed up where i was trying to inject a (\x -> Just x) into my equation |
| 02:26:58 | <nfd9001> | foolishly joined IRC on a different box than the one i'm typing this on so sec |
| 02:28:35 | → | Vulfe joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 02:29:16 | <nfd9001> | with ``let tPDN = toPermutationWithDefault Nothing`` i was doing stuff with the pattern ``val <- tPDN $ (\x -> Just x) <$> lexeme $ string "val:" *> someParser`` |
| 02:30:00 | <nfd9001> | i wanted ``val <- tPDN $ lexeme $ string "val:" *> pure (\x -> Just x) <*> someParser`` |
| 02:31:02 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 256 seconds) |
| 02:33:02 | <ephemient> | pure Just <*> someParser === Just <$> someParser |
| 02:33:03 | <nfd9001> | my errors were a little confusing at first because these Permutations are only Alternative m => Applicative (Permutation m) |
| 02:33:12 | → | Vulfe_ joins (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) |
| 02:33:18 | × | Vulfe quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Ping timeout: 256 seconds) |
| 02:33:26 | <solonarv> | also, (\x -> Just x) = Just |
| 02:33:26 | <nfd9001> | and i had ApplicativeDo off |
| 02:33:35 | → | crestfallen joins (~jvw@192-184-135-144.fiber.dynamic.sonic.net) |
| 02:33:56 | <crestfallen> | hi real quick is isSpace :: Char -> BoolSource# |
| 02:34:02 | <nfd9001> | tyty, i'd tried using the constructor without that once and ran into some issue, but i was probably just doing something wrong elsewhere |
| 02:34:18 | <crestfallen> | Returns True for any Unicode space character |
| 02:34:22 | <crestfallen> | sorry .. |
| 02:34:41 | × | mimagic quits (~mimagic@201.82.37.29) (Remote host closed the connection) |
| 02:34:52 | <crestfallen> | is any unicode space char also alphaNumeric? |
| 02:34:59 | → | mimagic joins (~mimagic@201.82.37.29) |
| 02:35:03 | <solonarv> | no, alphanumeric means "letter or digit" |
| 02:35:06 | <nfd9001> | crestfallen: in what library? but I'd expect it's Char -> Bool for most libs |
| 02:35:07 | <nfd9001> | or similar |
| 02:35:19 | <solonarv> | (it's in base, Data.Char to be specific) |
| 02:35:26 | <monochrom> | The "Source#" is an artifact of copy-paste error |
| 02:35:40 | <nfd9001> | Data.Char.isSpace is Char -> Bool yes |
| 02:35:54 | <ephemient> | crestfallen: https://www.unicode.org/Public/UCD/latest/ucd/PropList.txt has a list of all characters for each unicode property |
| 02:36:08 | <monochrom> | Since there is also isAlphaNum, you could have done a few little tests yourself. |
| 02:36:10 | <crestfallen> | I have a function alphanum :: Parser Char 69 alphanum = satisfy isAlphaNum |
| 02:36:15 | <crestfallen> | shit |
| 02:36:53 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 02:37:05 | <crestfallen> | I have a function alphanum = satisfy isAlphaNum and to my surprise it accepts spaces in the middle of a string |
| 02:37:33 | <ephemient> | there's Text.Megaparsec.Char.alphaNumChar :: Parsec e Char (more or less) |
| 02:37:34 | × | Vulfe_ quits (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) (Ping timeout: 244 seconds) |
| 02:37:48 | <monochrom> | You can easily test your hypothesis with isAlphaNum ' ' |
| 02:37:53 | <solonarv> | yes, which parser library are you using? |
| 02:38:14 | <monochrom> | In fact, s/test/refute/ |
| 02:38:16 | → | dave_uy joins (~david@108.61.193.26) |
| 02:38:24 | <crestfallen> | thanks monochrom et al. let me paste: http://ix.io/2GFv |
| 02:38:35 | <solonarv> | also, that. don't be afraid to jump into ghci and test things by hand! |
| 02:38:46 | <monochrom> | Well there goes the Socratic method. |
| 02:39:21 | <crestfallen> | in question in the function "identifier" |
| 02:39:42 | × | mimagic quits (~mimagic@201.82.37.29) (Ping timeout: 256 seconds) |
| 02:40:43 | → | byorgey joins (~byorgey@155.138.238.211) |
| 02:41:17 | → | livvy joins (~livvy@gateway/tor-sasl/livvy) |
| 02:42:18 | × | Ekho quits (~Ekho@unaffiliated/ekho) (Ping timeout: 244 seconds) |
| 02:42:49 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:43:47 | × | benjamingr__ quits (uid23465@gateway/web/irccloud.com/x-jwefvpayxcoyisfw) (Quit: Connection closed for inactivity) |
| 02:43:58 | <crestfallen> | . λ> parse alphanum " " |
| 02:44:00 | <crestfallen> | [] |
| 02:45:11 | <ephemient> | > [c | c <- ['\0'..'\xffff'], isAlphaNum c && isSpace c] |
| 02:45:14 | <lambdabot> | "" |
| 02:45:16 | <monochrom> | And you think that's a bug because...? |
| 02:45:21 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 02:45:38 | <crestfallen> | λ> parse alphanum "ll mm" |
| 02:45:43 | → | Ekho joins (~Ekho@unaffiliated/ekho) |
| 02:46:06 | <crestfallen> | [('l',"l mm")] |
| 02:46:19 | → | bgamari_ joins (~bgamari@72.65.103.183) |
| 02:46:22 | → | bcmiller joins (~bm3719@66.42.95.185) |
| 02:46:24 | <solonarv> | I still don't see a bug here, that seems correct |
| 02:46:29 | <crestfallen> | thanks just sorting it out. not saying its a bug |
| 02:46:56 | × | bgamari quits (~bgamari@72.65.101.184) (Ping timeout: 240 seconds) |
| 02:47:08 | <ephemient> | "I have a function alphanum = satisfy isAlphaNum and to my surprise it accepts spaces in the middle of a string" what is an example of that |
| 02:48:13 | <MarcelineVQ> | crestfallen: only 'l' was parsed there, "l mm" is the unparsed remainder |
| 02:48:44 | <ephemient> | ... yes, because satisfy is defined to take only one token |
| 02:48:48 | <crestfallen> | MarcelineVQ: thanks that's what I overlooked |
| 02:49:16 | <crestfallen> | so the remainder never makes it to the predicate |
| 02:51:13 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
| 02:51:20 | <MarcelineVQ> | satisfy parses at most a single Char as ephemient is suggesting |
| 02:53:03 | <crestfallen> | yeah understood thanks MarcelineVQ ephemient solonarv et al |
| 02:57:29 | <ezzieyguywuf> | I don't understand this error: https://dpaste.com/4VUP2WU2A |
| 02:57:30 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection) |
| 02:57:47 | <ezzieyguywuf> | The "expected" and "got" seem to match |
| 02:58:08 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) |
| 02:59:12 | × | texasmynsted quits (~texasmyns@212.102.44.36) (Remote host closed the connection) |
| 02:59:32 | <MarcelineVQ> | probably Text.Megaparsec.Stream.Token Text is an associated type that resolves to Char |
| 02:59:37 | <ephemient> | Text and (Text.Megaparsec.Stream.Token Text) don't seem to match |
| 02:59:59 | → | texasmynsted joins (~texasmyns@212.102.44.36) |
| 03:00:09 | × | texasmynsted quits (~texasmyns@212.102.44.36) (Remote host closed the connection) |
| 03:00:20 | <ezzieyguywuf> | ahhh |
| 03:00:34 | <ezzieyguywuf> | so `Text.singleton <$> letterChar` fixes it |
| 03:00:56 | <crestfallen> | so my book prefers do blocks while dealing with parsers. is that the norm generally? |
| 03:01:04 | <ephemient> | if you're expecting nLetter :: Text, then yes |
| 03:01:07 | <ezzieyguywuf> | but since the type of `letterChar` is `m (Token s)`, I didn't think I'd have to explicitly make it a Text |
| 03:01:25 | × | ekleog quits (~ii@prologin/ekleog) (Ping timeout: 244 seconds) |
| 03:01:29 | <ezzieyguywuf> | yea, nLetter :: Text is expected |
| 03:01:55 | <crestfallen> | since members have suggested I work with (>>=) if I can.. |
| 03:01:58 | → | ekleog_ joins (~ii@prologin/ekleog) |
| 03:02:32 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) (Ping timeout: 260 seconds) |
| 03:02:37 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 03:03:02 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 03:03:30 | <ephemient> | it's equivalent (except under extensions like ApplicativeDo) |
| 03:03:39 | <MarcelineVQ> | They suggested that just because you didn't understand >>= or do, not because it's generally preferred |
| 03:04:20 | <ephemient> | if you're still figuring things out, I would suggest >>= until you understand |
| 03:07:32 | <crestfallen> | I roughly understand the State Monad, so MarcelineVQ and everyone thanks a lot, it took my months but I'm comfortable generally |
| 03:07:36 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds) |
| 03:07:42 | <crestfallen> | me* |
| 03:07:43 | → | philopso1 joins (~caecilius@gateway/tor-sasl/caecilius) |
| 03:07:46 | × | philopso1 quits (~caecilius@gateway/tor-sasl/caecilius) (Client Quit) |
| 03:08:05 | <crestfallen> | thanks yeah ephemient I prefer it somehow |
| 03:13:19 | × | Noughtmare[m] quits (naughtmare@gateway/shell/matrix.org/x-euxykteztfgdzjor) (*.net *.split) |
| 03:13:19 | × | fgaz quits (fgazmatrix@gateway/shell/matrix.org/x-ypwwwiayrbbyifnk) (*.net *.split) |
| 03:13:20 | × | betawaffle quits (sid2730@gateway/web/irccloud.com/x-packykjqjjbpczgr) (*.net *.split) |
| 03:13:20 | × | bjs quits (sid190364@gateway/web/irccloud.com/x-twiqviauegvkdtyp) (*.net *.split) |
| 03:13:20 | × | cbarrett quits (sid192934@adium/cbarrett) (*.net *.split) |
| 03:13:20 | × | eacameron quits (sid256985@gateway/web/irccloud.com/x-lrjkdvzxlvibxfym) (*.net *.split) |
| 03:13:20 | × | jlpeters quits (sid25606@gateway/web/irccloud.com/x-ajnrzctphgiembrn) (*.net *.split) |
| 03:13:20 | × | dsal quits (sid13060@gateway/web/irccloud.com/x-auonqazuemdkzyye) (*.net *.split) |
| 03:13:20 | × | chpatrick quits (sid239395@gateway/web/irccloud.com/x-rhravxibfvsetmow) (*.net *.split) |
| 03:13:20 | × | lolmac quits (sid171216@gateway/web/irccloud.com/x-hjcjaimdwehnhmlw) (*.net *.split) |
| 03:13:20 | × | parseval quits (sid239098@gateway/web/irccloud.com/x-pmotixrxellomgay) (*.net *.split) |
| 03:13:20 | × | systemfault quits (sid267009@gateway/web/irccloud.com/x-wdlytpqqslmpiaxc) (*.net *.split) |
| 03:13:20 | × | kaychaks quits (sid236345@gateway/web/irccloud.com/x-vfiqhhtxtkjgbdnx) (*.net *.split) |
| 03:13:20 | × | cstrahan quits (sid36118@gateway/web/irccloud.com/x-zgbgvkugvrztuagh) (*.net *.split) |
| 03:13:20 | × | SolarAquarion quits (SolarAquar@gateway/shell/panicbnc/x-kjhphkgroirlqpvp) (*.net *.split) |
| 03:13:20 | × | PotatoGim quits (sid99505@gateway/web/irccloud.com/x-hlnasejbcjzegeqa) (*.net *.split) |
| 03:13:20 | × | thi quits (sid97277@gateway/web/irccloud.com/x-ndauawxdqkdccghj) (*.net *.split) |
| 03:13:20 | × | ashnur quits (~rak@unaffiliated/ashnur) (*.net *.split) |
| 03:13:20 | × | taktoa[c] quits (sid282096@gateway/web/irccloud.com/x-itxakgqwhnqkbebe) (*.net *.split) |
| 03:13:20 | × | milessabin quits (sid86799@gateway/web/irccloud.com/x-ascncjvecpuyiyrz) (*.net *.split) |
| 03:13:20 | × | hazard-pointer quits (sid331723@gateway/web/irccloud.com/x-wwsxwkmcbnytyqgp) (*.net *.split) |
| 03:13:20 | × | dani- quits (sid341953@gateway/web/irccloud.com/x-etuikjdqhtlxnikg) (*.net *.split) |
| 03:13:20 | × | kyagrd__ quits (sid102627@gateway/web/irccloud.com/x-fmxliclmtnkycstb) (*.net *.split) |
| 03:13:20 | × | ghuntley quits (sid16877@gateway/web/irccloud.com/x-qztbkgafmugcryxi) (*.net *.split) |
| 03:13:20 | × | heredoc quits (heredoc@2a01:7e01::f03c:91ff:fec1:de1d) (*.net *.split) |
| 03:13:20 | × | hyiltiz-M quits (hyiltizkde@gateway/shell/kde/matrix/x-zvgetfbstubrdqzf) (*.net *.split) |
| 03:13:20 | × | _flow_ quits (~none@salem.informatik.uni-erlangen.de) (*.net *.split) |
| 03:13:20 | × | joeyh_ quits (joeyh@kitenet.net) (*.net *.split) |
| 03:13:20 | × | thonkpod quits (~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (*.net *.split) |
| 03:13:20 | × | opqdonut quits (opqdonut@pseudo.fixme.fi) (*.net *.split) |
| 03:13:26 | <nfd9001> | alright i'm still missing something probably really silly here; i'd appreciate if someone would give this a quick spotcheck: https://hastebin.com/homawuhele.hs |
| 03:13:36 | → | heredoc joins (heredoc@2a01:7e01::f03c:91ff:fec1:de1d) |
| 03:13:43 | <nfd9001> | compile errors and source incl. there |
| 03:15:11 | <nfd9001> | (yeah, i shouldn't do so much prepro before megaparsec probably, but one thing at a time here) |
| 03:16:25 | <solonarv> | nfd9001: can you link where this permutations thing is from? |
| 03:17:04 | <nfd9001> | parser-combinators, Control.Applicative.Permutations |
| 03:17:14 | <nfd9001> | apparently used to be part of megaparsec prior to megaparsec 7 |
| 03:17:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 03:17:56 | × | Nahra quits (~Nahra@unaffiliated/nahra) (Quit: leaving) |
| 03:18:44 | → | fgaz joins (fgazmatrix@gateway/shell/matrix.org/x-ypwwwiayrbbyifnk) |
| 03:18:44 | → | Noughtmare[m] joins (naughtmare@gateway/shell/matrix.org/x-euxykteztfgdzjor) |
| 03:18:44 | → | betawaffle joins (sid2730@gateway/web/irccloud.com/x-packykjqjjbpczgr) |
| 03:18:44 | → | bjs joins (sid190364@gateway/web/irccloud.com/x-twiqviauegvkdtyp) |
| 03:18:44 | → | cbarrett joins (sid192934@adium/cbarrett) |
| 03:18:44 | → | eacameron joins (sid256985@gateway/web/irccloud.com/x-lrjkdvzxlvibxfym) |
| 03:18:44 | → | jlpeters joins (sid25606@gateway/web/irccloud.com/x-ajnrzctphgiembrn) |
| 03:18:44 | → | dsal joins (sid13060@gateway/web/irccloud.com/x-auonqazuemdkzyye) |
| 03:18:44 | → | chpatrick joins (sid239395@gateway/web/irccloud.com/x-rhravxibfvsetmow) |
| 03:18:44 | → | lolmac joins (sid171216@gateway/web/irccloud.com/x-hjcjaimdwehnhmlw) |
| 03:18:44 | → | parseval joins (sid239098@gateway/web/irccloud.com/x-pmotixrxellomgay) |
| 03:18:44 | → | systemfault joins (sid267009@gateway/web/irccloud.com/x-wdlytpqqslmpiaxc) |
| 03:18:44 | → | kaychaks joins (sid236345@gateway/web/irccloud.com/x-vfiqhhtxtkjgbdnx) |
| 03:18:44 | → | cstrahan joins (sid36118@gateway/web/irccloud.com/x-zgbgvkugvrztuagh) |
| 03:18:44 | → | SolarAquarion joins (SolarAquar@gateway/shell/panicbnc/x-kjhphkgroirlqpvp) |
| 03:18:44 | → | PotatoGim joins (sid99505@gateway/web/irccloud.com/x-hlnasejbcjzegeqa) |
| 03:18:44 | → | thi joins (sid97277@gateway/web/irccloud.com/x-ndauawxdqkdccghj) |
| 03:18:44 | → | ashnur joins (~rak@unaffiliated/ashnur) |
| 03:18:44 | → | taktoa[c] joins (sid282096@gateway/web/irccloud.com/x-itxakgqwhnqkbebe) |
| 03:18:44 | → | milessabin joins (sid86799@gateway/web/irccloud.com/x-ascncjvecpuyiyrz) |
| 03:18:44 | → | hazard-pointer joins (sid331723@gateway/web/irccloud.com/x-wwsxwkmcbnytyqgp) |
| 03:18:44 | → | dani- joins (sid341953@gateway/web/irccloud.com/x-etuikjdqhtlxnikg) |
| 03:18:44 | → | kyagrd__ joins (sid102627@gateway/web/irccloud.com/x-fmxliclmtnkycstb) |
| 03:18:44 | → | ghuntley joins (sid16877@gateway/web/irccloud.com/x-qztbkgafmugcryxi) |
| 03:18:44 | → | hyiltiz-M joins (hyiltizkde@gateway/shell/kde/matrix/x-zvgetfbstubrdqzf) |
| 03:18:44 | → | _flow_ joins (~none@salem.informatik.uni-erlangen.de) |
| 03:18:44 | → | joeyh_ joins (joeyh@kitenet.net) |
| 03:18:44 | → | thonkpod joins (~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) |
| 03:18:44 | → | opqdonut joins (opqdonut@pseudo.fixme.fi) |
| 03:21:01 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 03:22:06 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 03:22:59 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 03:23:56 | <boxscape> | I said earlier today that I wanted to use `compare `on` fst` to compare (String, Int) with (String, String) - turns out with ImpredicativeTypes you can actually define a function `on :: (b -> b -> c) -> (forall z . f a z -> b) -> f a d -> f a e -> c` which can do this, so that's nice |
| 03:25:15 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) |
| 03:26:02 | × | lolmac quits (sid171216@gateway/web/irccloud.com/x-hjcjaimdwehnhmlw) (Max SendQ exceeded) |
| 03:26:47 | → | falafel joins (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) |
| 03:27:06 | × | abhixec quits (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 03:27:20 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 03:28:17 | × | betawaffle quits (sid2730@gateway/web/irccloud.com/x-packykjqjjbpczgr) (Ping timeout: 244 seconds) |
| 03:28:20 | <boxscape> | (though of course there are situations where Data.Function.on works and this wouldn't, at least not without unsaturated tyfams |
| 03:28:22 | <boxscape> | ) |
| 03:29:07 | → | betawaffle joins (sid2730@gateway/web/irccloud.com/x-nwsshpoaasjiiopc) |
| 03:29:20 | × | philopsos quits (~caecilius@gateway/tor-sasl/caecilius) (Remote host closed the connection) |
| 03:29:34 | → | lolmac joins (sid171216@gateway/web/irccloud.com/x-etsrrrsvkbkttjng) |
| 03:29:37 | → | philopsos joins (~caecilius@gateway/tor-sasl/caecilius) |
| 03:29:45 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 03:30:02 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:34c4:973d:64b1:cdbd) (Ping timeout: 264 seconds) |
| 03:32:52 | <MarcelineVQ> | RankNTypes is enough for that |
| 03:33:12 | × | lagothrix quits (~lagothrix@unaffiliated/lagothrix) (Killed (barjavel.freenode.net (Nickname regained by services))) |
| 03:33:18 | → | lagothrix joins (~lagothrix@unaffiliated/lagothrix) |
| 03:33:32 | <boxscape> | hm GHC told me it doesn't support impredicative types when I didn't enable it MarcelineVQ |
| 03:33:45 | × | theDon quits (~td@94.134.91.27) (Ping timeout: 240 seconds) |
| 03:33:48 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9) |
| 03:33:56 | <boxscape> | actually wait |
| 03:34:29 | <nfd9001> | impredicative sometimes causes weirder annotation requirements, yeah? |
| 03:34:35 | <boxscape> | MarcelineVQ fair enough, it was because the function body was `undefined` |
| 03:35:47 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 03:35:53 | → | theDon joins (~td@muedsl-82-207-238-039.citykom.de) |
| 03:38:21 | <nfd9001> | love undefined. it's so polymorphic |
| 03:38:33 | <boxscape> | it sure is |
| 03:39:08 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 03:39:13 | × | AndreasK quits (uid320732@gateway/web/irccloud.com/x-kmsetxbzackhcodn) (Quit: Connection closed for inactivity) |
| 03:39:14 | <boxscape> | % :t +v undefined |
| 03:39:14 | <yahb> | boxscape: forall (r :: RuntimeRep) (a :: TYPE r). GHC.Stack.Types.HasCallStack => a |
| 03:40:16 | <solonarv> | oh, it's representation-polymorphic? I was unaware of this! |
| 03:40:40 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 03:41:49 | <boxscape> | % const () $ I# undefined |
| 03:41:49 | <yahb> | boxscape: () |
| 03:41:53 | <boxscape> | yeah |
| 03:43:54 | → | drbean joins (~drbean@TC210-63-209-40.static.apol.com.tw) |
| 03:44:09 | × | urek quits (~urek@2804:7f1:e10a:a8d:9d56:f4b3:72da:42fc) (Ping timeout: 272 seconds) |
| 03:45:15 | <boxscape> | perhaps somewhat confusingly, that also means that something like `undefined @Int` doesn't work |
| 03:45:28 | <crestfallen> | sorry I said something in error earlier: the first space would reach the predicate and fail, and would end up in the unused section of the string. |
| 03:45:28 | → | Vulfe joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 03:45:55 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:48:37 | × | Vulfe quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Read error: Connection reset by peer) |
| 03:48:44 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:d25:9913:e6c9:4584) |
| 03:50:20 | → | Vulfe_ joins (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) |
| 03:50:31 | → | TooDifficult joins (~TooDiffic@139.59.59.230) |
| 03:51:13 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 03:51:49 | × | Vulfe_ quits (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) (Remote host closed the connection) |
| 03:51:56 | → | Vulfe_ joins (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) |
| 03:52:28 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 03:52:54 | → | conal joins (~conal@64.71.133.70) |
| 03:53:26 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:d25:9913:e6c9:4584) (Ping timeout: 264 seconds) |
| 03:53:59 | × | Vulfe_ quits (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) (Remote host closed the connection) |
| 03:55:35 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) |
| 03:56:37 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@171.5.167.167) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 03:56:53 | → | conal_ joins (~conal@64.71.133.70) |
| 03:57:25 | × | conal quits (~conal@64.71.133.70) (Ping timeout: 246 seconds) |
| 03:57:43 | <ezzieyguywuf> | hooray, I finished days 1 and 2 of AoC today! |
| 03:57:51 | <jle`> | ezzieyguywuf: congrats :D |
| 03:58:00 | <jle`> | just in time for the puzzle today :) |
| 03:58:24 | → | pjb joins (~t@2a01cb04063ec50041ee30a820ddb685.ipv6.abo.wanadoo.fr) |
| 03:59:15 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 03:59:32 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Remote host closed the connection) |
| 04:00:02 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) (Ping timeout: 264 seconds) |
| 04:00:17 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 04:01:14 | <ezzieyguywuf> | jle`: lol thanks. |
| 04:01:16 | → | Rudd0 joins (~Rudd0@185.189.115.108) |
| 04:01:26 | <ezzieyguywuf> | nah, I still need to do days 3 and 4 lol |
| 04:01:31 | <ezzieyguywuf> | I want to do them in order *shrug* |
| 04:02:03 | <boxscape> | yeah the plot would be pretty confusing otherwise |
| 04:02:41 | × | st8less quits (~st8less@inet-167-224-197-181.isp.ozarksgo.net) (Quit: WeeChat 2.9) |
| 04:03:45 | × | falafel quits (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) (Ping timeout: 240 seconds) |
| 04:05:34 | × | darjeeling_ quits (~darjeelin@122.245.218.196) (Ping timeout: 260 seconds) |
| 04:06:20 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) |
| 04:09:14 | × | dave_uy quits (~david@108.61.193.26) (Ping timeout: 256 seconds) |
| 04:09:19 | × | bcmiller quits (~bm3719@66.42.95.185) (Ping timeout: 246 seconds) |
| 04:09:25 | × | byorgey quits (~byorgey@155.138.238.211) (Ping timeout: 240 seconds) |
| 04:10:34 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:c8cc:c465:1d4b:5af7) (Ping timeout: 244 seconds) |
| 04:11:50 | → | TooDifficult_ joins (~TooDiffic@103.122.14.27) |
| 04:13:04 | <dsal> | I only do AoC for the articles. |
| 04:13:30 | <ezzieyguywuf> | a lot of recurssion in this AoC thingy |
| 04:13:35 | <ezzieyguywuf> | well suited to haskell lol |
| 04:13:41 | <dsal> | Which one? |
| 04:13:46 | × | TooDifficult quits (~TooDiffic@139.59.59.230) (Ping timeout: 256 seconds) |
| 04:13:46 | TooDifficult_ | is now known as TooDifficult |
| 04:15:05 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 04:15:30 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 04:15:50 | → | ggole joins (~ggole@2001:8003:8119:7200:1d5:8df6:c4ab:d6ce) |
| 04:17:12 | × | xff0x_ quits (~fox@2001:1a81:53f4:6600:356b:2da8:97c9:b5cf) (Ping timeout: 260 seconds) |
| 04:17:19 | × | eedgit quits (~eedgit@95.179.237.21) (Remote host closed the connection) |
| 04:17:19 | × | eedgit26 quits (~chat.free@95.179.237.21) (Remote host closed the connection) |
| 04:17:39 | → | eedgit26 joins (~chat.free@95.179.237.21) |
| 04:17:43 | → | eedgit joins (~eedgit@95.179.237.21) |
| 04:18:08 | → | xff0x_ joins (~fox@2001:1a81:53f4:6600:b61f:e73a:b494:e067) |
| 04:19:22 | × | nfd9001 quits (~nfd9001@c-67-183-38-33.hsd1.wa.comcast.net) (Ping timeout: 260 seconds) |
| 04:20:37 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds) |
| 04:20:41 | <dsal> | I've not done anything I'd call recursive in AoC so far this year. I guess you could call `fold` recursive, but that's more of an implementation detail. |
| 04:20:49 | → | fEst1ck joins (63fa6642@cpe64777d63d1c3-cm64777d63d1c0.cpe.net.cable.rogers.com) |
| 04:21:11 | × | Wuzzy quits (~Wuzzy@p549c9976.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 04:21:38 | × | solonarv quits (~solonarv@astrasbourg-552-1-28-212.w90-13.abo.wanadoo.fr) (Ping timeout: 272 seconds) |
| 04:21:44 | <ezzieyguywuf> | guess I'm not so fancy |
| 04:22:07 | <ezzieyguywuf> | but I'm not trying to be elegant about it at all |
| 04:22:12 | <ezzieyguywuf> | just hitting it with a huge hammer |
| 04:22:31 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 04:22:53 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 246 seconds) |
| 04:24:15 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:14eb:3996:42c8:f96b) |
| 04:24:19 | <dsal> | Heh, I do some of that. My day 1 was just a list comprehension. |
| 04:24:35 | × | conal_ quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 04:25:01 | → | conal joins (~conal@64.71.133.70) |
| 04:25:06 | → | dave_uy joins (~david@108.61.193.26) |
| 04:25:22 | <dsal> | My day 2 is basically `count . filter` |
| 04:26:10 | → | bcmiller joins (~bm3719@66.42.95.185) |
| 04:26:15 | → | byorgey joins (~byorgey@155.138.238.211) |
| 04:27:47 | × | polyphem quits (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 246 seconds) |
| 04:28:39 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:14eb:3996:42c8:f96b) (Ping timeout: 244 seconds) |
| 04:28:44 | <ezzieyguywuf> | :b4 |
| 04:28:47 | <ezzieyguywuf> | lol whoops |
| 04:29:45 | <MarcelineVQ> | yussa beshep |
| 04:29:59 | → | rayyyy1 joins (~nanoz@gateway/tor-sasl/nanoz) |
| 04:30:43 | × | rayyyy quits (~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 240 seconds) |
| 04:32:55 | → | Feuermagier joins (~Feuermagi@213.178.26.41) |
| 04:32:56 | × | Feuermagier quits (~Feuermagi@213.178.26.41) (Remote host closed the connection) |
| 04:33:37 | → | softwarm joins (4408f588@ip68-8-245-136.sd.sd.cox.net) |
| 04:33:46 | → | Feuermagier joins (~Feuermagi@213.178.26.41) |
| 04:36:38 | → | perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 04:39:03 | × | rayyyy1 quits (~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 240 seconds) |
| 04:39:15 | × | crestfallen quits (~jvw@192-184-135-144.fiber.dynamic.sonic.net) (Quit: leaving) |
| 04:39:27 | × | dave_uy quits (~david@108.61.193.26) (Ping timeout: 260 seconds) |
| 04:40:38 | × | bcmiller quits (~bm3719@66.42.95.185) (Ping timeout: 272 seconds) |
| 04:41:01 | × | byorgey quits (~byorgey@155.138.238.211) (Ping timeout: 264 seconds) |
| 04:42:49 | × | jmchael quits (~Chi1thang@87.112.60.168) (Ping timeout: 264 seconds) |
| 04:43:35 | × | matryoshka` quits (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) (Quit: ZNC 1.8.2 - https://znc.in) |
| 04:44:18 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 04:44:20 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:14eb:3996:42c8:f96b) |
| 04:45:06 | → | matryoshka joins (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) |
| 04:45:28 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 04:47:02 | × | TooDifficult quits (~TooDiffic@103.122.14.27) (Ping timeout: 256 seconds) |
| 04:48:04 | → | TooDifficult_ joins (~TooDiffic@103.122.14.51) |
| 04:48:42 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:14eb:3996:42c8:f96b) (Ping timeout: 260 seconds) |
| 04:48:57 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 04:49:50 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:d98b:e839:e4b4:c855) |
| 04:50:07 | <ephemient> | @tell nfd9001 your problem appears to be operator precedence, *> and <$> are both infixl 4. try instead: string "byr:" *> (Just <$> L.decimal) etc. |
| 04:50:07 | <lambdabot> | Consider it noted. |
| 04:50:11 | → | christo joins (~chris@81.96.113.213) |
| 04:50:15 | → | clever_ joins (~clever@47.55.159.165) |
| 04:51:01 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 04:51:03 | → | conal joins (~conal@64.71.133.70) |
| 04:51:25 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 04:53:25 | × | clever quits (~clever@NixOS/user/clever) (Ping timeout: 240 seconds) |
| 04:54:30 | → | elliott_ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 04:54:38 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:d98b:e839:e4b4:c855) (Ping timeout: 264 seconds) |
| 04:56:05 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds) |
| 04:56:54 | → | mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
| 04:57:06 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 04:59:18 | → | argent0 joins (~argent0@168.227.96.26) |
| 05:01:07 | × | mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 246 seconds) |
| 05:04:15 | × | softwarm quits (4408f588@ip68-8-245-136.sd.sd.cox.net) (Ping timeout: 245 seconds) |
| 05:09:46 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 05:10:18 | <ezzieyguywuf> | dang, couldn't get that 3rd one done today |
| 05:11:40 | <MarcelineVQ> | there's still time, if you keep flying left then today never ends |
| 05:11:56 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 05:12:49 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:13:26 | → | Lycurgus joins (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) |
| 05:14:15 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 05:14:48 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:d98b:e839:e4b4:c855) |
| 05:15:16 | → | Jonkimi727406120 joins (~Jonkimi@223.213.165.31) |
| 05:15:31 | × | Lycurgus quits (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) (Client Quit) |
| 05:15:53 | → | Lycurgus joins (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) |
| 05:16:51 | × | Lycurgus quits (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) (Client Quit) |
| 05:17:01 | <ezzieyguywuf> | lol |
| 05:17:01 | <monochrom> | Indeed, consider the first Christopher Reeve Superman movie. :) |
| 05:17:13 | → | Lycurgus joins (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) |
| 05:17:44 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 05:17:56 | <dolio> | You need to be really fast to do that. |
| 05:18:07 | <dolio> | Like, on the Concorde. |
| 05:18:17 | <MarcelineVQ> | no you just need to yell loud enough |
| 05:18:54 | <MarcelineVQ> | the speed thing is a, red, herring |
| 05:19:25 | × | Jonkimi727406120 quits (~Jonkimi@223.213.165.31) (Ping timeout: 240 seconds) |
| 05:19:30 | × | Ariakenom quits (~Ariakenom@h-98-128-229-53.NA.cust.bahnhof.se) (Ping timeout: 256 seconds) |
| 05:19:34 | <monochrom> | Aww, none of you young ones know that Superman movie. |
| 05:19:37 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:d98b:e839:e4b4:c855) (Ping timeout: 260 seconds) |
| 05:20:11 | <MarcelineVQ> | The one where he doesn't yell while turning back time |
| 05:20:21 | <monochrom> | heh OK |
| 05:20:46 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 05:20:47 | <MarcelineVQ> | Well I guess he has a chance to calm down first, in my mind he's screaming the whole time |
| 05:21:14 | <Lycurgus> | unubermenschlich |
| 05:21:31 | <Lycurgus> | (i.e. shouting) |
| 05:21:47 | <Lycurgus> | also funny there's a galactic year but no galactic day |
| 05:23:00 | × | mozzarella quits (~sam@unaffiliated/sam113101) (Read error: Connection reset by peer) |
| 05:23:03 | <monochrom> | OK, Dune is the one that weaponizes screaming. :) |
| 05:23:21 | <Lycurgus> | ah, the voice aint screamin |
| 05:23:26 | <Lycurgus> | the opposite in fact |
| 05:24:03 | <dolio> | I think they meant the movie. |
| 05:24:04 | <MarcelineVQ> | moad'ib's a hellova dug |
| 05:24:09 | <dolio> | Where you kill people by yelling into a megaphone. |
| 05:24:22 | <Lycurgus> | more like bucks dog whistles |
| 05:24:24 | <dolio> | Yelling gun. |
| 05:24:48 | <Lycurgus> | from which the libral press make so many hard inferences |
| 05:25:19 | <MarcelineVQ> | dune weaponizes patrick stewart in a rubber suit |
| 05:25:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:25:28 | <monochrom> | :) |
| 05:26:11 | <dolio> | Because David Lynch thought yelling guns were less dumb than martial arts. |
| 05:26:33 | <Lycurgus> | also the wierding modules used sound but it wasn't a or the voice |
| 05:26:51 | <Lycurgus> | using them the fremen did sorta shout |
| 05:28:58 | × | suppi quits (~suppi@172.246.241.246) (Quit: ZNC 1.6.2+deb2+precise1 - http://znc.in) |
| 05:30:10 | <Lycurgus> | also lynch, the drehbuch only used herberts elements |
| 05:30:49 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 05:31:37 | <boxscape> | @pl \map -> bimap (map (== 'B')) (map (== 'R')) |
| 05:31:37 | <lambdabot> | liftM2 bimap ($ ('B' ==)) ($ ('R' ==)) |
| 05:31:43 | <boxscape> | hm maybe not |
| 05:32:44 | <MarcelineVQ> | where did map go |
| 05:32:58 | → | toorevitimirp joins (~tooreviti@117.182.181.85) |
| 05:33:14 | <boxscape> | into the pointless aether |
| 05:34:36 | × | Lycurgus quits (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) (Quit: Exeunt) |
| 05:35:06 | × | toorevitimirp quits (~tooreviti@117.182.181.85) (Remote host closed the connection) |
| 05:35:19 | → | Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) |
| 05:36:05 | <MarcelineVQ> | Oh, it does check out, I put on strong glasses and lost my marbles in neverland for a moment |
| 05:36:24 | → | BlackCapCoder joins (~blackcap@48.80-203-23.nextgentel.com) |
| 05:36:35 | <MarcelineVQ> | I wonnder how obscure that reference is |
| 05:37:12 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 05:38:40 | → | nowhere_man joins (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) |
| 05:40:48 | × | rcdilorenzo quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Quit: rcdilorenzo) |
| 05:41:56 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 05:42:06 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 05:42:18 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 05:42:47 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 05:45:15 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 260 seconds) |
| 05:48:14 | → | christo joins (~chris@81.96.113.213) |
| 05:48:29 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:2de7:f25c:68b1:b551) |
| 05:48:37 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 05:53:26 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:2de7:f25c:68b1:b551) (Ping timeout: 264 seconds) |
| 05:55:56 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-ngjtmooaohvreyum) () |
| 05:56:00 | × | geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 272 seconds) |
| 05:56:31 | × | z0k quits (~user@101.50.127.33) (Read error: Connection reset by peer) |
| 05:58:13 | → | rayyyy joins (~nanoz@gateway/tor-sasl/nanoz) |
| 05:58:51 | × | fEst1ck quits (63fa6642@cpe64777d63d1c3-cm64777d63d1c0.cpe.net.cable.rogers.com) (Remote host closed the connection) |
| 06:01:30 | → | Ariakenom joins (~Ariakenom@h-98-128-229-53.NA.cust.bahnhof.se) |
| 06:01:43 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 06:02:21 | → | z0k joins (~user@101.50.127.33) |
| 06:04:27 | × | Harekiet1 quits (~Harekiet@84.39.117.57) (Remote host closed the connection) |
| 06:04:34 | → | Vulfe joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 06:05:36 | × | elliott_ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 06:06:22 | × | jluttine quits (~jluttine@87-95-204-180.bb.dnainternet.fi) (Ping timeout: 256 seconds) |
| 06:09:12 | × | Vulfe quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Ping timeout: 256 seconds) |
| 06:17:13 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 06:17:23 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 06:22:44 | <boxscape> | is there a class for contravariant bifunctors? |
| 06:23:14 | <boxscape> | I suppose optics-core hass Bicontravariant |
| 06:23:19 | → | justsomeguy joins (~justsomeg@216.186.218.241) |
| 06:23:19 | × | justsomeguy quits (~justsomeg@216.186.218.241) (Changing host) |
| 06:23:19 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 06:28:09 | <koz_> | How can one be contravariant in _both_ parameters? |
| 06:28:15 | <koz_> | Are there any natural examples? |
| 06:33:07 | × | Saukk quits (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Ping timeout: 260 seconds) |
| 06:34:34 | <boxscape> | koz_ (a -> b -> c) is contravariant an a and b |
| 06:35:30 | <koz_> | So that'd be equivalent to like 'newtype Op2 c a b = Op2 (a -> b -> c)' by the same logic as contravariant's Op I guess. |
| 06:35:30 | <boxscape> | I suppose so is (Either a b -> c), for example |
| 06:35:41 | <boxscape> | yeah |
| 06:35:47 | <koz_> | Either a b -> c is an interesting example as well. |
| 06:36:13 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 06:37:44 | <koz_> | a -> b -> c is actually isomorphic to (a, b) -> c. |
| 06:37:51 | <boxscape> | right |
| 06:38:00 | <koz_> | So you have 'function with sum argument' and 'function with product argument' as the two natural examples. |
| 06:38:01 | → | alp joins (~alp@2a01:e0a:58b:4920:14d8:6d19:75e:5ab6) |
| 06:39:25 | <boxscape> | more generally if p is a Bifunctor, p a b -> c will be contravariant in a and b |
| 06:39:27 | <boxscape> | I think |
| 06:39:50 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 06:40:09 | <koz_> | I'm not sure that works - how would you derive bicontramap? |
| 06:40:18 | <boxscape> | hm let me try |
| 06:42:12 | → | Seran1 joins (~Seran@185.103.96.147) |
| 06:43:31 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:44:21 | <boxscape> | koz_ https://paste.tomsmeding.com/l1ydTX0M |
| 06:44:22 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 06:45:04 | <koz_> | Oh, clever. |
| 06:45:14 | <boxscape> | no, just following the typed holes :) |
| 06:45:25 | <koz_> | That alone gets you surprisingly far in Haskell. |
| 06:45:29 | <boxscape> | yeah |
| 06:46:41 | → | mozzarella joins (~sam@unaffiliated/sam113101) |
| 06:47:22 | <koz_> | Is there a Bidivisible and Bidecidable too? |
| 06:47:54 | <boxscape> | hm good question |
| 06:48:11 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 06:48:15 | → | Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) |
| 06:48:21 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 06:51:45 | × | Saukk quits (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection) |
| 06:52:08 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 06:53:52 | <koz_> | Also, what does optics-core use Bicontravariant to define? |
| 06:56:32 | <koz_> | Ah, Forget and IxForget. |
| 06:57:13 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds) |
| 06:57:44 | × | dxld quits (~dxld@rush.pub.dxld.at) (Quit: Bye) |
| 07:00:01 | → | dxld joins (~dxld@rush.pub.dxld.at) |
| 07:00:58 | → | jedws joins (~jedws@121.209.181.215) |
| 07:01:45 | → | plutoniix joins (~q@ppp-49-237-20-89.revip6.asianet.co.th) |
| 07:05:13 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b861:e4c1:4a1a:c272) (Remote host closed the connection) |
| 07:05:31 | × | lpy quits (~nyd@unaffiliated/elysian) (Read error: Connection reset by peer) |
| 07:06:32 | → | dave_uy joins (~david@108.61.193.26) |
| 07:06:48 | → | bcmiller joins (~bm3719@66.42.95.185) |
| 07:07:36 | → | byorgey joins (~byorgey@155.138.238.211) |
| 07:11:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:11:16 | → | olligobber joins (~olligobbe@unaffiliated/olligobber) |
| 07:11:53 | × | mrchampion quits (~mrchampio@216-26-218-246.dynamic.tbaytel.net) (Ping timeout: 272 seconds) |
| 07:14:59 | → | mrchampion joins (~mrchampio@216-211-54-88.dynamic.tbaytel.net) |
| 07:16:43 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 07:18:00 | → | TooDifficult joins (~TooDiffic@223.186.137.102) |
| 07:18:13 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 264 seconds) |
| 07:19:34 | × | TooDifficult quits (~TooDiffic@223.186.137.102) (Client Quit) |
| 07:20:46 | × | TooDifficult_ quits (~TooDiffic@103.122.14.51) (Ping timeout: 246 seconds) |
| 07:20:46 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:4c47:1933:def8:7db1) |
| 07:24:13 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 07:25:14 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:4c47:1933:def8:7db1) (Ping timeout: 264 seconds) |
| 07:28:31 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 07:30:26 | × | rayyyy quits (~nanoz@gateway/tor-sasl/nanoz) (Remote host closed the connection) |
| 07:32:40 | × | p-core quits (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) (Ping timeout: 256 seconds) |
| 07:32:54 | → | falafel joins (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) |
| 07:33:36 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c:49ff:f530:726f) |
| 07:34:08 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) () |
| 07:35:57 | × | nowhere_man quits (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) (Ping timeout: 272 seconds) |
| 07:37:51 | × | alp quits (~alp@2a01:e0a:58b:4920:14d8:6d19:75e:5ab6) (Ping timeout: 272 seconds) |
| 07:38:26 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c:49ff:f530:726f) (Ping timeout: 264 seconds) |
| 07:41:03 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 07:44:19 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:4c56:f6cf:1a80:8251) |
| 07:44:48 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 07:45:16 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 07:45:34 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:49:14 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:4c56:f6cf:1a80:8251) (Ping timeout: 264 seconds) |
| 07:58:50 | × | caef^ quits (caef@ip98-184-89-2.mc.at.cox.net) (Read error: Connection reset by peer) |
| 07:59:04 | → | caef^ joins (caef@ip98-184-89-2.mc.at.cox.net) |
| 07:59:42 | × | seliopou quits (seliopou@entropy.tmok.com) (Ping timeout: 256 seconds) |
| 08:01:06 | → | seliopou joins (seliopou@entropy.tmok.com) |
| 08:05:36 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b861:e4c1:4a1a:c272) |
| 08:06:36 | → | fxg joins (~fxg@unaffiliated/fxg) |
| 08:06:50 | × | hololeap quits (~hololeap@unaffiliated/hololeap) (Quit: KVIrc 5.0.1 Aria http://www.kvirc.net/) |
| 08:10:46 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 08:11:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b861:e4c1:4a1a:c272) (Ping timeout: 264 seconds) |
| 08:15:23 | × | livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds) |
| 08:17:56 | × | falafel quits (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) (Ping timeout: 240 seconds) |
| 08:18:40 | → | mimagic joins (~mimagic@201.82.37.29) |
| 08:19:17 | → | alp joins (~alp@2a01:e0a:58b:4920:9cbf:b7c7:d239:3bce) |
| 08:21:02 | × | macrover quits (~macrover@2600:8801:1100:2f14:20e6:98ee:438:fb7c) (Ping timeout: 260 seconds) |
| 08:21:03 | → | m0rphism joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
| 08:22:43 | × | mimagic quits (~mimagic@201.82.37.29) (Ping timeout: 246 seconds) |
| 08:27:15 | → | Vulfe joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 08:32:08 | × | Vulfe quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Ping timeout: 265 seconds) |
| 08:34:43 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 08:35:54 | × | drbean quits (~drbean@TC210-63-209-40.static.apol.com.tw) (Ping timeout: 256 seconds) |
| 08:37:49 | → | cads joins (~cads@ip-64-72-99-232.lasvegas.net) |
| 08:38:29 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:75bf:479b:dfe7:5b22) |
| 08:39:44 | → | mbomba joins (~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) |
| 08:42:27 | × | Seran1 quits (~Seran@185.103.96.147) (Remote host closed the connection) |
| 08:43:05 | × | alp quits (~alp@2a01:e0a:58b:4920:9cbf:b7c7:d239:3bce) (Ping timeout: 272 seconds) |
| 08:43:14 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:75bf:479b:dfe7:5b22) (Ping timeout: 264 seconds) |
| 08:48:34 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 265 seconds) |
| 08:50:39 | → | xchg joins (~xchg@185.204.1.185) |
| 08:53:10 | × | hackage quits (mniip@haskell/bot/hackage) (Read error: Connection reset by peer) |
| 08:53:15 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 08:53:46 | → | hackage joins (mniip@haskell/bot/hackage) |
| 08:57:12 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 08:57:36 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds) |
| 08:59:12 | × | BlackCapCoder quits (~blackcap@48.80-203-23.nextgentel.com) (Ping timeout: 265 seconds) |
| 09:00:05 | × | wanaks[m] quits (wanaksmatr@gateway/shell/matrix.org/x-ncjfiyoyfwrxhjmq) (Quit: Idle for 30+ days) |
| 09:00:05 | × | jlv quits (jlvjustinl@gateway/shell/matrix.org/x-vewvewaygwmdkitl) (Quit: Idle for 30+ days) |
| 09:00:05 | × | miseenplace[m] quits (miseenplac@gateway/shell/matrix.org/x-vdkkkdwfftjmtktj) (Quit: Idle for 30+ days) |
| 09:04:49 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 09:07:04 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:7885:705f:3052:55bc) |
| 09:09:04 | × | thunderrd quits (~thunderrd@183.182.110.8) (Remote host closed the connection) |
| 09:10:08 | → | thunderrd joins (~thunderrd@183.182.110.8) |
| 09:12:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:7885:705f:3052:55bc) (Ping timeout: 264 seconds) |
| 09:12:43 | × | Sayless quits (~seiless@85.203.34.15) (Quit: Lost terminal) |
| 09:15:09 | → | fendor joins (~fendor@178.115.130.110.wireless.dyn.drei.com) |
| 09:15:47 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 09:17:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 09:17:54 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 09:18:30 | → | mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
| 09:18:48 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@mx-ll-171.5.167-167.dynamic.3bb.co.th) |
| 09:19:36 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 240 seconds) |
| 09:24:38 | → | tromp_ joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 09:24:38 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
| 09:27:16 | → | raichoo joins (~raichoo@dslb-188-100-006-110.188.100.pools.vodafone-ip.de) |
| 09:33:25 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 09:38:59 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 09:39:19 | × | hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-npckdfwtcapekmuw) (Quit: Connection closed for inactivity) |
| 09:40:19 | → | christo joins (~chris@81.96.113.213) |
| 09:42:24 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 09:43:09 | → | bitmagie joins (~Thunderbi@200116b806c00200d8b1b8e14fac996e.dip.versatel-1u1.de) |
| 09:43:23 | × | bitmagie quits (~Thunderbi@200116b806c00200d8b1b8e14fac996e.dip.versatel-1u1.de) (Client Quit) |
| 09:45:47 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 09:46:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 09:46:58 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 09:51:16 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:6927:9b85:a79a:dc5e) |
| 09:54:01 | × | jedws quits (~jedws@121.209.181.215) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 09:55:50 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:6927:9b85:a79a:dc5e) (Ping timeout: 264 seconds) |
| 09:55:56 | × | timCF quits (~i.tkachuk@m91-129-106-3.cust.tele2.ee) (Quit: leaving) |
| 09:56:35 | → | olligobber1 joins (~olligobbe@unaffiliated/olligobber) |
| 09:57:48 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:290d:2f1:3d80:4086) |
| 09:58:26 | × | clever_ quits (~clever@47.55.159.165) (Changing host) |
| 09:58:26 | → | clever_ joins (~clever@NixOS/user/clever) |
| 09:58:28 | clever_ | is now known as clever |
| 10:00:01 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 10:01:34 | → | Vulfe_ joins (~vulfe@2600:1702:31b0:34e0:9088:700a:5bf0:5bb6) |
| 10:02:26 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:290d:2f1:3d80:4086) (Ping timeout: 264 seconds) |
| 10:02:54 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 10:03:00 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 10:03:19 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 10:03:57 | → | LKoen joins (~LKoen@73.174.9.109.rev.sfr.net) |
| 10:05:19 | × | acowley quits (~acowley@c-68-83-22-43.hsd1.nj.comcast.net) (Read error: Connection reset by peer) |
| 10:05:58 | → | xiinotulp joins (~q@ppp-27-55-83-236.revip3.asianet.co.th) |
| 10:06:02 | × | Vulfe_ quits (~vulfe@2600:1702:31b0:34e0:9088:700a:5bf0:5bb6) (Ping timeout: 264 seconds) |
| 10:06:28 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 10:08:34 | → | acowley joins (~acowley@c-68-83-22-43.hsd1.nj.comcast.net) |
| 10:09:10 | → | jedws joins (~jedws@121.209.181.215) |
| 10:09:33 | × | plutoniix quits (~q@ppp-49-237-20-89.revip6.asianet.co.th) (Ping timeout: 260 seconds) |
| 10:10:33 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 10:11:34 | → | urek joins (~urek@2804:7f1:e10a:a8d:9d56:f4b3:72da:42fc) |
| 10:18:28 | → | christo joins (~chris@81.96.113.213) |
| 10:18:32 | → | mimagic joins (~mimagic@201.82.37.29) |
| 10:20:31 | → | clever_ joins (~clever@142.68.197.85) |
| 10:20:53 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 10:21:40 | × | clever_ quits (~clever@142.68.197.85) (Changing host) |
| 10:21:40 | → | clever_ joins (~clever@NixOS/user/clever) |
| 10:21:55 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 10:21:56 | × | clever quits (~clever@NixOS/user/clever) (Disconnected by services) |
| 10:22:06 | clever_ | is now known as clever |
| 10:22:44 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 10:23:46 | → | boxscape8 joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 10:25:56 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 10:27:04 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Ping timeout: 272 seconds) |
| 10:27:05 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 240 seconds) |
| 10:27:26 | → | mananamenos joins (~mananamen@vpn236-24.vpns.upv.es) |
| 10:28:18 | → | jluttine joins (~jluttine@87-95-146-110.bb.dnainternet.fi) |
| 10:28:24 | boxscape8 | is now known as boxscape |
| 10:31:10 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 256 seconds) |
| 10:32:23 | × | xiinotulp quits (~q@ppp-27-55-83-236.revip3.asianet.co.th) (Quit: Leaving) |
| 10:33:17 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@mx-ll-171.5.167-167.dynamic.3bb.co.th) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 10:36:00 | Lord_of_Life_ | is now known as Lord_of_Life |
| 10:36:11 | → | nowhere_man joins (~pierre@91-175-29-131.subs.proxad.net) |
| 10:37:57 | → | knupfer joins (~Thunderbi@200116b82c7fd300885d9bfffe93502e.dip.versatel-1u1.de) |
| 10:37:57 | × | knupfer quits (~Thunderbi@200116b82c7fd300885d9bfffe93502e.dip.versatel-1u1.de) (Client Quit) |
| 10:38:13 | → | knupfer joins (~Thunderbi@i5E86B4CB.versanet.de) |
| 10:38:41 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:cb1:a2e:bc62:aff6) |
| 10:41:48 | × | mbomba quits (~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) (Quit: WeeChat 3.0) |
| 10:43:39 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 10:43:56 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 10:47:16 | → | britva joins (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) |
| 10:47:17 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:48:30 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 10:52:00 | → | nfd9001 joins (~nfd9001@c-67-183-38-33.hsd1.wa.comcast.net) |
| 10:52:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 10:53:36 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 10:54:08 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 10:55:38 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 10:56:28 | → | mastarija joins (~mastarija@93-136-140-159.adsl.net.t-com.hr) |
| 10:56:45 | → | AndreasK joins (uid320732@gateway/web/irccloud.com/x-sicmejfaufzfmqid) |
| 10:58:05 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:58:09 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Client Quit) |
| 10:58:25 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 240 seconds) |
| 10:59:08 | <mastarija> | Is there any vim plugin for haskell that only uses GHCi for error checking, completion, type and docs? Something like this VSCode extension: https://marketplace.visualstudio.com/items?itemName=dramforever.vscode-ghc-simple |
| 10:59:12 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:3de3:148f:b7c9:fdb7) |
| 10:59:31 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:59:58 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 11:02:36 | × | knupfer quits (~Thunderbi@i5E86B4CB.versanet.de) (Ping timeout: 240 seconds) |
| 11:03:28 | → | knupfer joins (~Thunderbi@i5E86B4CB.versanet.de) |
| 11:03:38 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:3de3:148f:b7c9:fdb7) (Ping timeout: 264 seconds) |
| 11:03:43 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Client Quit) |
| 11:03:55 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 11:03:58 | → | AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl) |
| 11:08:15 | → | acidjnk_new joins (~acidjnk@p200300d0c719ff04c483db69aedba2cb.dip0.t-ipconnect.de) |
| 11:08:40 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:1401:c674:6b13:1188) |
| 11:09:50 | × | britva quits (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) (Quit: This computer has gone to sleep) |
| 11:09:53 | → | Amras joins (~Amras@unaffiliated/amras) |
| 11:10:55 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 11:11:58 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:a985:6507:1c52:205b:26de) |
| 11:13:13 | → | dhouthoo joins (~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) |
| 11:13:50 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:1401:c674:6b13:1188) (Ping timeout: 264 seconds) |
| 11:16:50 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:a985:6507:1c52:205b:26de) (Ping timeout: 264 seconds) |
| 11:17:29 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:54a4:d693:d718:efc8) |
| 11:22:14 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:54a4:d693:d718:efc8) (Ping timeout: 264 seconds) |
| 11:22:42 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:22:46 | → | p-core joins (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) |
| 11:23:13 | → | darjeeling_ joins (~darjeelin@122.245.218.196) |
| 11:23:14 | → | __monty__ joins (~toonn@unaffiliated/toonn) |
| 11:23:41 | → | britva joins (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) |
| 11:23:55 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 11:24:33 | → | carlomagno1 joins (~cararell@148.87.23.6) |
| 11:25:41 | × | p-core quits (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) (Client Quit) |
| 11:26:02 | → | p-core joins (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) |
| 11:26:08 | × | carlomagno quits (~cararell@148.87.23.11) (Ping timeout: 265 seconds) |
| 11:26:12 | → | jollygood2 joins (~bc8165ab@217.29.117.252) |
| 11:26:44 | × | mimagic quits (~mimagic@201.82.37.29) (Remote host closed the connection) |
| 11:27:02 | → | mimagic joins (~mimagic@201.82.37.29) |
| 11:27:18 | × | Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer) |
| 11:29:32 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 256 seconds) |
| 11:30:53 | <jollygood2> | hi. is there already a function like this? https://pastebin.com/Hw0M7rEc |
| 11:31:40 | × | mimagic quits (~mimagic@201.82.37.29) (Ping timeout: 272 seconds) |
| 11:32:03 | <jollygood2> | also, I'm not sure how to, without making a complete mess of the function, pick first element in the original list if count of elements is the same, instead of always picking the one that is first after sorting |
| 11:32:42 | × | p-core quits (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) (Ping timeout: 256 seconds) |
| 11:34:40 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) |
| 11:36:12 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 11:37:18 | × | fxg quits (~fxg@unaffiliated/fxg) (Ping timeout: 256 seconds) |
| 11:37:19 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
| 11:38:37 | × | britva quits (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) (Quit: This computer has gone to sleep) |
| 11:38:47 | <jollygood2> | compilable example: https://pastebin.com/6nTUuHAh |
| 11:39:43 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 11:42:11 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 11:43:53 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 11:45:34 | × | philopsos quits (~caecilius@gateway/tor-sasl/caecilius) (Remote host closed the connection) |
| 11:46:25 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 240 seconds) |
| 11:47:16 | × | knupfer quits (~Thunderbi@i5E86B4CB.versanet.de) (Ping timeout: 240 seconds) |
| 11:48:16 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Ping timeout: 240 seconds) |
| 11:48:27 | → | bbfish joins (~bbfish@36.46.19.132) |
| 11:51:19 | ← | bbfish parts (~bbfish@36.46.19.132) ("Leaving") |
| 11:52:13 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 11:52:59 | × | doct0rhu quits (~orctarorg@pool-72-88-158-154.nwrknj.fios.verizon.net) (Ping timeout: 260 seconds) |
| 11:53:31 | hackage | uniqueness-periods-vector-stats 0.2.0.0 - A very basic descriptive statistics. https://hackage.haskell.org/package/uniqueness-periods-vector-stats-0.2.0.0 (OleksandrZhabenko) |
| 11:54:33 | × | aib quits (~aib@unaffiliated/aib42) (Ping timeout: 272 seconds) |
| 11:54:41 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 11:54:50 | → | raoul9 joins (~raoulhida@nomnomnomnom.co.uk) |
| 11:54:56 | → | sheaf joins (~sheaf@2a01:cb19:80cc:7e00:ade8:1e5b:84e9:86db) |
| 11:55:09 | × | dftxbs3e quits (~dftxbs3e@unaffiliated/dftxbs3e) (Remote host closed the connection) |
| 11:55:48 | → | mcginleyr1_ joins (uid475794@gateway/web/irccloud.com/x-kmepugnonanirpgl) |
| 11:55:56 | → | aib joins (~aib@unaffiliated/aib42) |
| 11:56:22 | → | fxg joins (~fxg@unaffiliated/fxg) |
| 11:56:36 | → | urek__ joins (~urek@2804:7f1:e10a:a8d:9d56:f4b3:72da:42fc) |
| 11:56:48 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 11:57:25 | × | mcginleyr1 quits (uid475794@gateway/web/irccloud.com/x-osmqhtuhvgdcdnxg) (Ping timeout: 272 seconds) |
| 11:57:25 | × | wpcarro quits (sid397589@gateway/web/irccloud.com/x-mptadpaqtazralft) (Ping timeout: 272 seconds) |
| 11:57:25 | × | urek quits (~urek@2804:7f1:e10a:a8d:9d56:f4b3:72da:42fc) (Ping timeout: 272 seconds) |
| 11:57:25 | × | Orbstheorem quits (~roosember@hellendaal.orbstheorem.ch) (Ping timeout: 272 seconds) |
| 11:57:25 | × | liff quits (liff@kapsi.fi) (Ping timeout: 272 seconds) |
| 11:57:25 | × | `slikts quits (~nelabs@wikipedia/reinis) (Ping timeout: 272 seconds) |
| 11:57:25 | × | raoul quits (~raoulhida@nomnomnomnom.co.uk) (Ping timeout: 272 seconds) |
| 11:57:25 | mcginleyr1_ | is now known as mcginleyr1 |
| 11:57:27 | → | liff joins (liff@kapsi.fi) |
| 11:57:31 | × | AndreasK quits (uid320732@gateway/web/irccloud.com/x-sicmejfaufzfmqid) (Ping timeout: 272 seconds) |
| 11:57:31 | × | heredoc quits (heredoc@2a01:7e01::f03c:91ff:fec1:de1d) (Ping timeout: 272 seconds) |
| 11:57:31 | × | tv- quits (~tv@unaffiliated/tv-) (Ping timeout: 272 seconds) |
| 11:57:31 | × | edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 272 seconds) |
| 11:57:31 | × | jbetz quits (sid283648@gateway/web/irccloud.com/x-sdqysuekfefsmces) (Ping timeout: 272 seconds) |
| 11:57:31 | × | travv0 quits (sid293381@gateway/web/irccloud.com/x-bzeyalubfbhlrrhq) (Ping timeout: 272 seconds) |
| 11:57:32 | → | wpcarro_ joins (sid397589@gateway/web/irccloud.com/x-ealbiyxzmxxgewpr) |
| 11:57:38 | × | Blkt quits (~Blkt@2a01:4f8:200:2425::adda) (Read error: Connection reset by peer) |
| 11:57:39 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 11:57:42 | → | travv0 joins (sid293381@gateway/web/irccloud.com/x-putwjyfohfmmjdnz) |
| 11:57:56 | → | Orbstheorem joins (~roosember@hellendaal.orbstheorem.ch) |
| 11:58:09 | × | shf quits (~sheaf@2a01:cb19:80cc:7e00:d9e0:5dd0:4ff3:cac9) (Ping timeout: 272 seconds) |
| 11:58:09 | × | operand quits (~operand@is.altijd.moe) (Ping timeout: 272 seconds) |
| 11:58:09 | × | ajmcmiddlin quits (sid284402@gateway/web/irccloud.com/x-rzusuwaofduhllmt) (Ping timeout: 272 seconds) |
| 11:58:09 | × | lucas8 quits (~luc@2001:41d0:8:109c::1) (Ping timeout: 272 seconds) |
| 11:58:23 | → | dftxbs3e joins (~dftxbs3e@unaffiliated/dftxbs3e) |
| 11:58:26 | → | lucas8 joins (~luc@2001:41d0:8:109c::1) |
| 11:58:28 | → | Blkt joins (~Blkt@2a01:4f8:200:2425::adda) |
| 11:58:31 | → | ajmcmiddlin joins (sid284402@gateway/web/irccloud.com/x-moukoiwvvkyyxkhc) |
| 11:58:41 | → | AndreasK joins (uid320732@gateway/web/irccloud.com/x-plgftcbqpbpmnyrj) |
| 11:58:43 | → | edwardk joins (sid47016@haskell/developer/edwardk) |
| 11:58:51 | → | alp joins (~alp@88.126.45.36) |
| 11:58:59 | → | `slikts joins (~nelabs@wikipedia/reinis) |
| 11:59:23 | → | jbetz joins (sid283648@gateway/web/irccloud.com/x-mtknylhkbpwnovev) |
| 11:59:34 | → | tv- joins (~tv@unaffiliated/tv-) |
| 11:59:50 | → | heredoc joins (heredoc@2a01:7e01::f03c:91ff:fec1:de1d) |
| 11:59:56 | → | operand joins (~operand@is.altijd.moe) |
| 12:02:16 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:1556:635b:1dc3:c707) |
| 12:04:05 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 12:04:29 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 12:04:31 | hackage | uniqueness-periods-vector-stats 0.2.1.0 - A very basic descriptive statistics. https://hackage.haskell.org/package/uniqueness-periods-vector-stats-0.2.1.0 (OleksandrZhabenko) |
| 12:05:45 | <xerox_> | mastarija: https://github.com/neoclide/coc.nvim |
| 12:06:03 | <xerox_> | together with https://github.com/haskell/haskell-language-server |
| 12:06:24 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:1556:635b:1dc3:c707) (Ping timeout: 240 seconds) |
| 12:06:31 | <mastarija> | Yes, but I don't want language server, I want something that works with just my stock GHCi |
| 12:06:50 | <mastarija> | Like that vscode extension :D |
| 12:06:58 | <xerox_> | I use this but it doesn't integrate with vim https://github.com/ndmitchell/ghcid |
| 12:07:00 | × | nowhere_man quits (~pierre@91-175-29-131.subs.proxad.net) (Remote host closed the connection) |
| 12:07:08 | <xerox_> | well, maybe it can, but in my setup it doesn't (: |
| 12:07:09 | <mastarija> | yes, me too |
| 12:07:23 | <mastarija> | Right now I just have it in separate terminal window |
| 12:07:42 | → | nowhere_man joins (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) |
| 12:08:11 | × | olligobber1 quits (~olligobbe@unaffiliated/olligobber) (Ping timeout: 265 seconds) |
| 12:08:42 | <xerox_> | I use tmux and split the terminal in three, vim, ghcid, repl |
| 12:08:56 | × | dftxbs3e quits (~dftxbs3e@unaffiliated/dftxbs3e) (Remote host closed the connection) |
| 12:09:05 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 12:09:15 | → | dftxbs3e joins (~dftxbs3e@unaffiliated/dftxbs3e) |
| 12:09:32 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 256 seconds) |
| 12:09:33 | × | Katarushisu quits (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) (Ping timeout: 272 seconds) |
| 12:09:37 | → | Katarushisu3 joins (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) |
| 12:11:15 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 12:12:58 | → | borne joins (~fritjof@200116b8645b9f009ba1d43461655289.dip.versatel-1u1.de) |
| 12:13:15 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 12:14:24 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 260 seconds) |
| 12:15:04 | → | urek joins (~urek@2804:7f1:e10a:a8d:a85d:6d9e:3db:9450) |
| 12:15:05 | <merijn> | mastarija: Which VS Code extension? afaik *everything* in VS Code use language server |
| 12:15:18 | <merijn> | mastarija: Considering VS Code is the project that invented LSP |
| 12:15:28 | <xerox_> | linked up there called vscode-ghc-simple |
| 12:15:37 | <mastarija> | https://marketplace.visualstudio.com/items?itemName=dramforever.vscode-ghc-simple |
| 12:16:13 | <merijn> | xerox_: ghcide (not ghcid) works pretty will vim's LSP plugins like ALE |
| 12:16:24 | × | urek__ quits (~urek@2804:7f1:e10a:a8d:9d56:f4b3:72da:42fc) (Ping timeout: 240 seconds) |
| 12:16:46 | <xerox_> | I'm happy with ghcid really |
| 12:17:04 | <merijn> | ghcid is ok, but it's slow as hell |
| 12:17:10 | <merijn> | Since it just runs "cabal build" |
| 12:17:10 | <xerox_> | maybe would like it to restart if I change the cabal file, but that's it |
| 12:17:25 | <xerox_> | I don't work on very big programs anyway :) |
| 12:17:48 | <merijn> | That's fine if your full build is fast, but for my bigger code bases even rebuilding half can sometimes take a few minutes. ghcide is much more responsive there |
| 12:17:52 | <mastarija> | xerox_, me too. I usually setup a makefile which tells ghcid to restart on certain file changes. |
| 12:17:52 | × | acidjnk_new quits (~acidjnk@p200300d0c719ff04c483db69aedba2cb.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 12:18:05 | <xerox_> | mastarija: that's not a make feature tho is it? |
| 12:18:12 | <mastarija> | xerox_, nope |
| 12:18:30 | <mastarija> | xerox_, I just create a command which basically calls ghcid with some flags |
| 12:18:32 | <xerox_> | I guess there are a bunch of inotify/whatever tools one can use for that |
| 12:18:42 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 12:18:57 | <mastarija> | sure, but ghcid is capable of that anyway |
| 12:19:07 | <xerox_> | it is?! |
| 12:19:25 | <mastarija> | yes, it has basic file watching capabilities |
| 12:19:38 | <xerox_> | aah I thought I missed the addition of restart-when-cabal-changes |
| 12:19:54 | → | toorevitimirp joins (~tooreviti@117.182.181.85) |
| 12:20:00 | <mastarija> | we are talking about the cabal file, no? |
| 12:20:03 | <xerox_> | yes |
| 12:20:05 | → | dhil joins (~dhil@195.213.192.34) |
| 12:20:16 | × | alp quits (~alp@88.126.45.36) (Ping timeout: 265 seconds) |
| 12:20:22 | <mastarija> | yes, you can tell him to watch for changes in .cabal and then restart |
| 12:20:55 | <merijn> | xerox_: Eh, the filewatching stuff in ghcid has been around for a few years :p |
| 12:21:01 | → | cosimone joins (~cosimone@93-47-228-249.ip115.fastwebnet.it) |
| 12:21:15 | <xerox_> | I had no idea! --restart=foo.cabal |
| 12:21:21 | <xerox_> | I'm set for another decade then |
| 12:21:28 | <mastarija> | hehe |
| 12:21:38 | <xerox_> | thank you ^_^ |
| 12:21:47 | <mastarija> | you can add multiple files of course, I think it's comma separated |
| 12:21:53 | → | alp joins (~alp@2a01:e0a:58b:4920:3475:6e74:80f7:d0b3) |
| 12:25:48 | → | mimagic joins (~mimagic@201.82.37.29) |
| 12:28:29 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 12:28:54 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 12:29:44 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 12:29:46 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 12:29:53 | × | carlomagno1 quits (~cararell@148.87.23.6) (Remote host closed the connection) |
| 12:31:39 | → | blankhart joins (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) |
| 12:32:37 | × | blissful quits (~azuline@unaffiliated/azuline) (Quit: Ping timeout (120 seconds)) |
| 12:33:05 | → | blissful joins (~azuline@unaffiliated/azuline) |
| 12:33:21 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) |
| 12:33:28 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 12:33:46 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 12:34:07 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 12:34:54 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) |
| 12:35:31 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 12:35:47 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Remote host closed the connection) |
| 12:38:37 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 12:38:38 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Read error: Connection reset by peer) |
| 12:38:53 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 12:39:38 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) (Ping timeout: 264 seconds) |
| 12:41:01 | × | blankhart quits (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) (Ping timeout: 246 seconds) |
| 12:43:35 | × | joaoh82 quits (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) (Read error: Connection reset by peer) |
| 12:44:56 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 12:45:45 | → | joaoh82 joins (~joaoh82@ip-213-127-88-241.ip.prioritytelecom.net) |
| 12:46:08 | × | mastarija quits (~mastarija@93-136-140-159.adsl.net.t-com.hr) (Quit: Leaving) |
| 12:46:21 | × | cosimone quits (~cosimone@93-47-228-249.ip115.fastwebnet.it) (Quit: cosimone) |
| 12:47:30 | × | jedws quits (~jedws@121.209.181.215) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 12:48:32 | → | u0_a298 joins (~user@65.35.205.131) |
| 12:48:38 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 12:50:01 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds) |
| 12:50:49 | → | geekosaur joins (ac3a5454@172.58.84.84) |
| 12:52:19 | × | ronbrz quits (~ronbrz@207.229.174.134) (Quit: WeeChat 2.9) |
| 12:52:33 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 12:53:31 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 12:53:44 | × | lagothrix quits (~lagothrix@unaffiliated/lagothrix) (Ping timeout: 256 seconds) |
| 12:54:34 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 12:54:58 | → | christo joins (~chris@81.96.113.213) |
| 12:56:30 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 12:57:16 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: fuzzypixelz) |
| 12:57:44 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 12:59:26 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 13:02:01 | × | raichoo quits (~raichoo@dslb-188-100-006-110.188.100.pools.vodafone-ip.de) (Quit: Lost terminal) |
| 13:02:32 | × | olligobber quits (~olligobbe@unaffiliated/olligobber) (Remote host closed the connection) |
| 13:02:43 | × | mimagic quits (~mimagic@201.82.37.29) (Remote host closed the connection) |
| 13:02:45 | × | geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 272 seconds) |
| 13:02:47 | <cads> | hey all, having some problems with ghcup - anything I could do to get these gears unstuck? https://gist.github.com/maxsu/8870e338c6b8f48ec8740776acd3ee1f |
| 13:03:16 | cads | considers sticking their hand in there |
| 13:04:40 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 13:05:24 | → | fendor_ joins (~fendor@77.119.129.145.wireless.dyn.drei.com) |
| 13:06:40 | × | jiribenes quits (~jiribenes@rosa.jiribenes.com) (Remote host closed the connection) |
| 13:07:10 | → | hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net) |
| 13:07:45 | × | fendor quits (~fendor@178.115.130.110.wireless.dyn.drei.com) (Ping timeout: 240 seconds) |
| 13:07:54 | → | jiribenes joins (~jiribenes@rosa.jiribenes.com) |
| 13:09:43 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 272 seconds) |
| 13:09:43 | × | nowhere_man quits (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) (Ping timeout: 272 seconds) |
| 13:10:06 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:1401:c674:6b13:1188) |
| 13:12:31 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 13:12:55 | → | u0_a298 joins (~user@65.35.205.131) |
| 13:14:43 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) |
| 13:14:46 | × | argent0 quits (~argent0@168.227.96.26) (Ping timeout: 256 seconds) |
| 13:15:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:1401:c674:6b13:1188) (Ping timeout: 264 seconds) |
| 13:17:12 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 13:18:02 | × | jiribenes quits (~jiribenes@rosa.jiribenes.com) (Remote host closed the connection) |
| 13:18:18 | → | u0_a298 joins (~user@65.35.205.131) |
| 13:18:46 | → | wei2912 joins (~wei2912@unaffiliated/wei2912) |
| 13:19:15 | × | b3z quits (~b3z@vmd41962.contaboserver.net) (Quit: cya) |
| 13:19:32 | → | jiribenes joins (~jiribenes@rosa.jiribenes.com) |
| 13:20:21 | <cads> | I feel like ghcup should do these things: 1. install ghc and cabal to ~/.ghcup 2. put ~/.ghcup on the path 3. Configure cabal to install to the .ghcup directory. 4. Fade away into the background |
| 13:21:14 | <merijn> | I feel like it definitely shouldn't do 2 >.> |
| 13:21:20 | <merijn> | Not convinced about 3 either, tbh |
| 13:21:28 | <cads> | #3 & 4 beg the question of whether it should be the .ghcup folder, and how much of this does cabal already do |
| 13:23:11 | <cads> | merijn, I'm comparing with go and rust. Its curl-installers create .go and .cargo directories in the home directories, and puts the bin directories on the path |
| 13:23:37 | <merijn> | Tools should never change the user's environment without explicit instruction. If other tools do that, those tools are wrong |
| 13:24:01 | <merijn> | For one, there's literally no way for tools to robustly change your path |
| 13:25:33 | × | alp quits (~alp@2a01:e0a:58b:4920:3475:6e74:80f7:d0b3) (Ping timeout: 272 seconds) |
| 13:25:34 | <merijn> | I'm sure there's plenty of *bad* tools that do stuff like "edit the user's profile", which is 1) bad, 2) depends on you reliably identifying what the user's profile is, 3) still isn't sure to work and may in fact mess up the user's profile/environmeent |
| 13:25:58 | <cads> | I wouldn't imply it should do so without user approval - what I've seen is that some installers will offer to modify .bashrc (works in 99% of cases) |
| 13:27:30 | <merijn> | afaik ghcup already tells you what to do to setup your path |
| 13:27:43 | → | alp joins (~alp@2a01:e0a:58b:4920:9d91:6177:2c4d:3bca) |
| 13:30:55 | <cads> | hmm, I have been downloading manually and putting it where I wanted it to be |
| 13:32:13 | <cads> | hmm, for that matter, it looks like curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh is not working at the moment |
| 13:35:57 | <cads> | not really similar to my earlier error, but maybe the ghcup server is acting up |
| 13:36:39 | → | catchme joins (uid355354@gateway/web/irccloud.com/x-hxmidzshauhjcqia) |
| 13:37:30 | × | dxld quits (~dxld@rush.pub.dxld.at) (Quit: Bye) |
| 13:39:02 | <geekosaur> | you might pop over to #haskell-infrastructure and ask about it |
| 13:39:02 | hackage | phonetic-languages-plus 0.1.1.0 - Some common shared between different packages functions. https://hackage.haskell.org/package/phonetic-languages-plus-0.1.1.0 (OleksandrZhabenko) |
| 13:39:31 | <geekosaur> | sadly neither status.haskell.org nor webmon currently monitors the ghcup service |
| 13:40:40 | → | dxld joins (~dxld@rush.pub.dxld.at) |
| 13:43:11 | <merijn> | Doesn't it just grab stuff from gitlab? |
| 13:43:11 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 13:43:24 | × | fxg quits (~fxg@unaffiliated/fxg) (Ping timeout: 265 seconds) |
| 13:43:42 | <cads> | prolly |
| 13:43:57 | <geekosaur> | gitlab shows as up. but I think the metadata's separate from gitlab. the taralls come from gitab but nothing else I suspect |
| 13:44:18 | → | u0_a298 joins (~user@65.35.205.131) |
| 13:44:32 | <geekosaur> | and the metadtaa's what's failing. (well, that and reportedly the curl|sh ick) |
| 13:44:33 | → | cosimone joins (~cosimone@93-47-228-249.ip115.fastwebnet.it) |
| 13:44:41 | <dminuoso> | geekosaur: gitlab showing as up is arguably just a blatant lie. |
| 13:44:53 | <dminuoso> | gitlab can easily show as up on any given metric and be completely broken |
| 13:45:06 | <geekosaur> | there is that |
| 13:45:39 | <cads> | is there some other script that I can run in a generic unix environment with a hope and a prayer that I'll end up with working ghc and cabal on my path? |
| 13:46:12 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 13:46:14 | <dminuoso> | tar |
| 13:46:16 | <dminuoso> | :) |
| 13:46:46 | <dminuoso> | We have bindists you can just untar and install. |
| 13:47:06 | <cads> | for ghc, which one should I use? |
| 13:47:40 | <dminuoso> | Which system are you on? |
| 13:48:07 | <dminuoso> | At any rate |
| 13:48:09 | <dminuoso> | https://www.haskell.org/ghc/download_ghc_8_10_2.html#binaries |
| 13:48:11 | <cads> | at https://www.haskell.org/ghc/download_ghc_8_10_2.html#linux_x86_64 we have bin dists for 12 linux distributions (if we include windows) |
| 13:48:19 | <cads> | but no generic package |
| 13:49:01 | <dminuoso> | Well ghcup is that generic thing. |
| 13:49:21 | <dminuoso> | It genreally works, what error are you getting? |
| 13:50:40 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 13:51:31 | <merijn> | cads: What does "generic package" mean? |
| 13:51:50 | <merijn> | cads: GHC depends on several libraries, those distro names just indicate which library versions they use |
| 13:51:56 | <merijn> | (and thus are compatible with) |
| 13:52:21 | <merijn> | It's impossible to make a "generic" bindist, because there is no universally installed version of things like libffi and libgmp |
| 13:52:43 | <dminuoso> | Well, there sort of is if you just have a tarballed nix closure... |
| 13:52:53 | <dminuoso> | Just needs a linux kernel :> |
| 13:53:07 | <merijn> | dminuoso: Even then you depend on glibc, unless you're using musl in your nix closure |
| 13:53:25 | <dminuoso> | merijn: Not an external glibc. |
| 13:53:26 | → | jmchael joins (~Chi1thang@87.112.60.168) |
| 13:53:30 | <nshepperd2> | just include your own glibc :) |
| 13:53:32 | <dminuoso> | glibc would be included in the nix closure |
| 13:53:33 | <cads> | merijn, if someone was offering to pay you, and the goal was to cover 95% of business relevant use cases, I think the word impossible would leave the conversation |
| 13:53:45 | <cads> | but I'm not gonna offer to pay you |
| 13:53:52 | <merijn> | cads: Right, which is why it doesn't exist |
| 13:53:57 | <dminuoso> | merijn: its sort of the point for nix closures to have anything they need |
| 13:54:04 | <dminuoso> | aside from the linux kernel |
| 13:54:13 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
| 13:54:36 | <merijn> | cads: Actually, even then it is |
| 13:54:55 | <merijn> | cads: Because it depends on the exact requirements people have of a "generic" version |
| 13:55:24 | <srk> | can you statically link ghc? |
| 13:55:28 | <merijn> | Sure, you can do what dminuoso says and ship a Nix closure or something, but most people expect their compiler to work with *their* C compiler and to be able to use the C libraries *they* install |
| 13:55:50 | <merijn> | srk: Statically linking GHC isn't the problem |
| 13:56:04 | <merijn> | srk: The problem is that the RTS system depends on GMP and glibc (on linux, anyway) |
| 13:56:22 | <srk> | hmm, I see |
| 13:56:24 | <merijn> | srk: So if you're gonna ship your own glibc (as dminuoso mentioned) then the RTS will be linked against that |
| 13:57:00 | <merijn> | srk: So now you build your own libraries locally with your own C compiler and you gotta just cross your fingers the glibc *they* use is compatible with the glibc the RTS uses, else GHC will just generate broken executables |
| 13:57:00 | <srk> | looks like it is a thing .. https://github.com/redneb/ghc-alt-libc/releases |
| 13:57:14 | <srk> | makes sense |
| 13:57:39 | <merijn> | srk: Sure, but that means you gotta build all your *other* stuff also with musl. Which is not what the average user/developer expects/wants to deal with |
| 13:58:04 | <srk> | yup :) |
| 13:58:50 | <merijn> | and certainly not what people would expect of a "generic release" |
| 14:00:05 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 14:01:24 | × | LKoen quits (~LKoen@73.174.9.109.rev.sfr.net) (Read error: Connection reset by peer) |
| 14:02:00 | <dminuoso> | And if its supposed to produce static builds, that will cause other issues |
| 14:02:01 | → | Tario joins (~Tario@201.192.165.173) |
| 14:02:06 | <cads> | node js has an installer, and no longer recommends users to use their distribution packages |
| 14:02:26 | → | mouseghost joins (~draco@wikipedia/desperek) |
| 14:02:30 | <merijn> | JS packages also can't link against native code |
| 14:02:41 | <dminuoso> | merijn: thats not entirely true |
| 14:02:41 | × | toorevitimirp quits (~tooreviti@117.182.181.85) (Remote host closed the connection) |
| 14:02:43 | <cads> | not an excuse |
| 14:02:46 | <merijn> | Which basically eliminates all these problems by simply not letting you do that |
| 14:02:48 | <cads> | python.. just checked.. is so ubiquitous that it doesn't even have installation packages for linux |
| 14:02:55 | → | LKoen joins (~LKoen@73.174.9.109.rev.sfr.net) |
| 14:03:06 | <merijn> | Like, what exactly, is this discussion trying to accomplish? |
| 14:03:09 | → | toorevitimirp joins (~tooreviti@117.182.181.85) |
| 14:03:35 | × | jollygood2 quits (~bc8165ab@217.29.117.252) (Quit: http://www.okay.uz/) |
| 14:03:53 | <cads> | get you to admit that ghc install is needlessly hard and brainstorm ways to improve it? |
| 14:03:54 | → | jollygood2 joins (~bc8165ab@217.29.117.252) |
| 14:04:01 | <dminuoso> | Its not a GHC problem. |
| 14:04:17 | <merijn> | "Languages with several million, possibly billions, of dollars of manpower invested in them by multinational and thousands of volunteers have managed to solve some problems by throwing endless manpower at manually fixing all the corner cases" |
| 14:04:22 | <merijn> | ok, sure, that's true |
| 14:04:24 | <dminuoso> | Haskell produces native binaries, that's for *your* convenience |
| 14:04:26 | <merijn> | But that's not very helpful |
| 14:04:38 | <merijn> | cads: You can't install a generic GCC either |
| 14:04:38 | <dminuoso> | But because it produces native binaries, that means we need a compiler, a linker, and libraries |
| 14:05:44 | <dminuoso> | Well actually we dont even need a compiler if the -fasm backend is chosen, which is evne by default |
| 14:05:46 | <cads> | merijn, if we're admitting that the difference in outcomes is due to the huge difference in installed base and sheer economic dependency on the systems, I'll admit that makes me feel less frustrated and confused |
| 14:05:49 | <dminuoso> | but a linker we're not gonna build. |
| 14:05:52 | <merijn> | cads: Solving this packaging problem in GHC is easy. Just eliminate the dependency on libc and libgmp in the RTS |
| 14:06:41 | × | britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep) |
| 14:06:41 | <merijn> | cads: So "all" you need to do is implement all libc functionality in the RTS by implementing it directly using syscalls on all supported platforms |
| 14:07:03 | → | Neo-- joins (~neo@188-230-138-83.dynamic.t-2.net) |
| 14:07:14 | <merijn> | cads: Which, btw, is exactly how Go handles this. They use syscalls directly, which means they had to reimplement everything in the RTS for each OS |
| 14:07:25 | <geekosaur> | we only need a compiler for FFI stubs. -fllvm needs LLVM utils. -fvia-C vanished a decade ago |
| 14:07:27 | <merijn> | cads: Can that be done? Sure, just look at go. |
| 14:07:30 | <cads> | I was gonna ask how rust and go do it |
| 14:08:00 | <merijn> | cads: But we're talking hundreds, if not thousands, of man hours to do so and at the end the only benefit is "improved installation process by 0.5%" (if that much) |
| 14:08:04 | <cads> | merijn, you saying we could take what go/rust do and port it over to get a similar experience? because I've installed rust and go about 2 dozen times and each time it was smooth as butter |
| 14:08:22 | <dminuoso> | cads: Have you even figured out what your problem is? |
| 14:08:28 | <dminuoso> | In my experience ghcup works like butter too |
| 14:08:38 | <cads> | but I've /tried/ to install ghc perhaps a dozen times over the last decade and each time I bonk on something dumb |
| 14:08:42 | <merijn> | cads: Rust and Go were, from the beginning, designed with this in mind, which meant they could gradually invest the engineering |
| 14:08:49 | → | acidjnk_new joins (~acidjnk@p200300d0c719ff043467fd7c213734d3.dip0.t-ipconnect.de) |
| 14:08:51 | <dminuoso> | You know. Apart from "Corporate firewall hijacked the TLS traffic", "Apple is broken again, refusing to install xcode" |
| 14:09:23 | <merijn> | cads: The point is that the engineering effort required to improve from the status quo is enormous and is much better spend on other things. |
| 14:09:27 | <cads> | dminuoso, I'm gonna wait a day and hope ghcup works - it looks for all the world like the remote server is hung |
| 14:09:40 | <dminuoso> | cads: did you get any error message? |
| 14:09:53 | <merijn> | cads: Also, is there no GHC and cabal package for your distro (unless it's Arch, then definitely don't use those...) |
| 14:10:08 | <cads> | dminuoso, see here https://gist.github.com/maxsu/8870e338c6b8f48ec8740776acd3ee1f |
| 14:10:58 | <__monty__> | Hmm, can I prevent IO actions from outputting anything when using criterion's nfIO? |
| 14:11:09 | <sm[m]> | not to derail this interesting chat but as a practical tip cads: an easy generic way to get Haskell tools on a unix system is to download and run the stack installer (a bash script) |
| 14:11:10 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) |
| 14:11:12 | <cads> | dminuoso, when I tried to pull the yaml file from a browser I got nothing- I'll try it again. Before this ghcup has 'just worked' |
| 14:11:17 | <dminuoso> | __monty__: dup2 stdout? |
| 14:11:38 | <dminuoso> | __monty__: Im not sure whether that'd work right in Haskell tho |
| 14:12:25 | × | alp quits (~alp@2a01:e0a:58b:4920:9d91:6177:2c4d:3bca) (Ping timeout: 272 seconds) |
| 14:12:34 | <merijn> | dminuoso: It does |
| 14:12:36 | × | pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 14:12:40 | <merijn> | I actually have example code somewhere |
| 14:12:57 | × | noan quits (~noan@2604:a880:400:d0::12fc:5001) (Quit: ZNC 1.8.2 - https://znc.in) |
| 14:12:57 | × | DigitalKiwi quits (~kiwi@unaffiliated/digitalkiwi) (Quit: quite.) |
| 14:13:27 | → | noan joins (~noan@2604:a880:400:d0::12fc:5001) |
| 14:13:34 | <merijn> | ah, wait, did I get rid of it? |
| 14:13:47 | <cads> | merijn, there's a fun situation in alpine: i) there's an alpine package on the GHC page but it's for alpine 2.10 (2 minor versions old) ii) alpine's package repo has ghc 8.8.2 (also 2 minor versions old) |
| 14:14:34 | <merijn> | cads: 8.8 is one minor version old and also "so?" |
| 14:14:47 | <dminuoso> | cads: Mmm, shouldnt you have to install a ghc first? |
| 14:15:05 | <dminuoso> | The error is strnage tho |
| 14:15:05 | → | jess joins (jess@freenode/staff/jess) |
| 14:15:06 | <merijn> | Odds of needing the very latest GHC are roughly 0 unless you're trying to use some bleeding edge feature in the newest GHC |
| 14:15:23 | → | DigitalKiwi joins (~kiwi@unaffiliated/digitalkiwi) |
| 14:16:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) (Ping timeout: 260 seconds) |
| 14:17:23 | <cads> | merijn, wait, you think it's safe to run 2 minor versions behind (current is 8.10)? okay, I'll try it! In the past I was used to debian stable ghc being so far behind that most packages wouldn't compile |
| 14:17:27 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) (Ping timeout: 260 seconds) |
| 14:17:34 | <merijn> | cads: Odd minor versions are development only |
| 14:17:41 | <merijn> | 8.10 is the first release after 8.8 |
| 14:17:48 | <cads> | ah |
| 14:18:08 | <merijn> | Also, I frequently run 3-4 releases behind if I get too lazy about updating |
| 14:18:10 | <dminuoso> | 8.6.5 is still a fine compiler. |
| 14:18:30 | <merijn> | I only updated from 8.6 to 8.10 because I needed a new feature in 8.10 |
| 14:19:14 | <dminuoso> | Only reason I update GHC is because.. well I use the nixos "stable" GHC, so whenver that gets updated I get it too... |
| 14:19:20 | <merijn> | cads: It's a compiler, not a network facing service. Unless you're actively hitting some bug or needing a new feature there's no real reason too avoid older versions (well, at some point they become so old it's impractical because libraries don't support them) |
| 14:19:45 | <dminuoso> | From experience, things rarely go noticeably faster in newer releases. :> |
| 14:19:55 | <merijn> | But honestly anything >8.0 will probably be sufficiently supported |
| 14:20:34 | <dminuoso> | cads: But yeah, Ive looked at the code path and its a real wart that it doesn't report what exception is being thrown |
| 14:20:52 | <cads> | merijn, the issue I always found was that ordinary packages would use some ghc feature that would break debian stable's GHC, and I'd have to go off on a tangent buolding new ghc |
| 14:21:18 | <cads> | ghcup for me means an end in sight to this |
| 14:21:23 | <cads> | for instance, debian buster is running ghc 8.4.4, which I wouldn't trust |
| 14:21:49 | <dminuoso> | cads: Can you run `curl https://www.haskell.org/ghcup/data/ghcup-0.0.4.yaml`? |
| 14:21:58 | <cads> | dminuoso, no, that fails |
| 14:22:01 | <cads> | you? |
| 14:22:02 | <dminuoso> | cads: Whats the error? |
| 14:22:08 | <dminuoso> | cads: works for me |
| 14:22:08 | <cads> | it just hangs |
| 14:22:17 | <dminuoso> | cads: Do you have a vpn enabled? |
| 14:22:24 | <dminuoso> | Or sit behind a company firewall? |
| 14:22:38 | <dminuoso> | Can you run a traceroute towards the IP behind that domain? |
| 14:22:55 | <cads> | gimme a line, I'll run it |
| 14:23:13 | <srk> | apt-get -y install nix |
| 14:23:24 | srk | runs |
| 14:23:36 | <cads> | srk, lol |
| 14:23:39 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) |
| 14:24:04 | <dminuoso> | cads: Can you reach this website? https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/ghcup-0.0.4.yaml |
| 14:25:01 | → | clynamen_ joins (~clynamen@37.183.22.31) |
| 14:25:03 | × | clynamen quits (~clynamen@37.183.22.31) (Read error: Connection reset by peer) |
| 14:25:07 | <cads> | hmm, strange, I can curl https://downloads.haskell.org/~ghcup/x86_64-linux-ghcup |
| 14:25:12 | <cads> | dminuoso, yep |
| 14:25:41 | <dminuoso> | cads: Can you reach www.haskell.org at all? |
| 14:26:15 | <cads> | dminuoso, yes, as I just mentioned, I can download the ghcup binary. I can also navigate the main site. |
| 14:26:21 | <dminuoso> | that's really strange |
| 14:27:19 | <cads> | I'm thinking of resetting my network stack and rebooting to see if that unsticks it - I really want this to be a problem on my side and not ghcup's side |
| 14:27:25 | <dminuoso> | I dont think it will |
| 14:27:35 | <dminuoso> | so its possible this is behind a cdn |
| 14:27:44 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 272 seconds) |
| 14:27:49 | <dminuoso> | Im not familiar with the setup here |
| 14:27:57 | <dminuoso> | but its definitely a network bug |
| 14:28:09 | <cads> | almost certainly I'm hitting some kind of stale cdn, and you're probably hitting a live one |
| 14:28:14 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) (Ping timeout: 264 seconds) |
| 14:28:15 | <dminuoso> | yeah |
| 14:28:27 | × | mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew) |
| 14:28:35 | <dminuoso> | #haskell-infrastructure is the right place like geekosaur suggested earlier |
| 14:29:08 | <cads> | yeah, I'll mosey on by and raise the issue and see if I can pledge some kind of support to improve the infrastructure here |
| 14:29:53 | × | coot quits (~coot@37.30.53.191.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 14:32:03 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:33:01 | hackage | ukrainian-phonetics-basic 0.4.0.0 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.4.0.0 (OleksandrZhabenko) |
| 14:33:13 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:35:23 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 14:35:23 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:35:24 | × | mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
| 14:36:09 | <tomsmeding> | I've made this ( https://ircbrowse.tomsmeding.com/perfstats ) two days ago; it seems clear what the slow pages are :) |
| 14:36:18 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:38:30 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:39:04 | <sm[m]> | tomsmeding++ |
| 14:39:17 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:39:18 | <tomsmeding> | also first time working with blaze, seems a fine DSL |
| 14:40:41 | <cads> | dminuoso, and wouldn't you know it, the service started working just as soon as I started drafting my outage report! |
| 14:40:56 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: fuzzypixelz) |
| 14:41:08 | <tomsmeding> | cads: service optimises for maximum annoyance |
| 14:43:20 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:43:48 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) |
| 14:44:17 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:44:31 | → | texasmynsted joins (~texasmyns@212.102.45.112) |
| 14:44:48 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 14:47:18 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:47:36 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 14:47:53 | × | borne quits (~fritjof@200116b8645b9f009ba1d43461655289.dip.versatel-1u1.de) (Ping timeout: 272 seconds) |
| 14:48:14 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:48:22 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) (Ping timeout: 260 seconds) |
| 14:48:49 | <cads> | merijn, I lucked out with the fact that the alpine ghc package is very fresh - so I could have installed that rather than wait for ghcup to get working. What ghcup does is it detects alpine linux then downloads hasufell's ghc-8.8.4-x86_64-alpine-linux.tar.xz and haskell.org's cabal-install-3.2.0.0-x86_64-alpine-linux-musl.tar.xz |
| 14:50:17 | × | geekosaur quits (ac3a5454@172.58.84.84) (Remote host closed the connection) |
| 14:50:47 | × | jneira quits (02896aa1@gateway/web/cgi-irc/kiwiirc.com/ip.2.137.106.161) (Ping timeout: 260 seconds) |
| 14:51:32 | × | dhouthoo quits (~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.9) |
| 14:51:47 | × | cosimone quits (~cosimone@93-47-228-249.ip115.fastwebnet.it) (Quit: cosimone) |
| 14:52:47 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 14:53:24 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 14:53:31 | hackage | ukrainian-phonetics-basic 0.4.1.0 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.4.1.0 (OleksandrZhabenko) |
| 14:54:30 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 14:54:54 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 14:57:09 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 14:57:57 | → | u0_a298 joins (~user@65.35.205.131) |
| 14:58:04 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 256 seconds) |
| 14:58:51 | × | toorevitimirp quits (~tooreviti@117.182.181.85) (Remote host closed the connection) |
| 15:00:59 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 15:03:16 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 15:04:16 | → | u0_a298 joins (~user@65.35.205.131) |
| 15:05:14 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 15:06:20 | × | jollygood2 quits (~bc8165ab@217.29.117.252) (Disconnected by services) |
| 15:06:43 | → | jollygood2 joins (~bc8165ab@1582020-static.lxtnkya3.metronetinc.net) |
| 15:07:20 | → | blankhart joins (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) |
| 15:08:02 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) |
| 15:09:56 | → | Sheilong joins (uid293653@gateway/web/irccloud.com/x-xcscidhxhkxwhlyp) |
| 15:10:17 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) |
| 15:10:22 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 15:10:41 | → | Vulfe_ joins (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) |
| 15:10:46 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 15:10:59 | → | Entertainment joins (~entertain@104.246.132.210) |
| 15:11:44 | × | caef^ quits (caef@ip98-184-89-2.mc.at.cox.net) () |
| 15:11:44 | → | polyphem joins (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) |
| 15:11:45 | → | mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
| 15:12:03 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) (Client Quit) |
| 15:12:12 | → | Tops2 joins (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) |
| 15:12:38 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:40c9:5e0b:6e01:acee) (Ping timeout: 264 seconds) |
| 15:12:48 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 15:12:50 | → | tsrt^ joins (tsrt@ip98-184-89-2.mc.at.cox.net) |
| 15:14:20 | → | christian_ joins (~christian@2a02:810d:f40:2a9c:a4fe:2adc:248b:466f) |
| 15:14:31 | christian_ | is now known as halbGefressen |
| 15:15:14 | × | Vulfe_ quits (~vulfe@75-28-176-196.lightspeed.evtnil.sbcglobal.net) (Ping timeout: 260 seconds) |
| 15:15:22 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
| 15:16:45 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:c04c:1fe2:bb3d:6e7b) |
| 15:18:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 15:18:24 | → | lagothrix joins (~lagothrix@unaffiliated/lagothrix) |
| 15:19:56 | → | codeAlways joins (uid272474@gateway/web/irccloud.com/x-pwlwqqopuhyebeps) |
| 15:19:57 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 15:20:34 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:cb1:a2e:bc62:aff6) (Remote host closed the connection) |
| 15:21:03 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:cb1:a2e:bc62:aff6) |
| 15:21:38 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:c04c:1fe2:bb3d:6e7b) (Ping timeout: 264 seconds) |
| 15:23:58 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) |
| 15:24:21 | <cads> | is there a haskell editor that achieves any level of code folding? |
| 15:24:50 | <cads> | lol, it is hard to search for code folding in context of haskell because you get a million articles on foldr |
| 15:25:00 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 15:25:00 | <texasmynsted> | like the folding in vim? |
| 15:25:06 | <texasmynsted> | or something else? |
| 15:25:52 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 246 seconds) |
| 15:26:07 | <texasmynsted> | full disclosure: I do not use the code folding in vim or other editors. I find it annoying |
| 15:26:20 | <cads> | I've also seen it referred to as outlining or collapsing or nesting code |
| 15:27:02 | <texasmynsted> | I think both common editors have it, vim and emacs. |
| 15:27:04 | <cads> | where you hide the lines inside methods, leaving only declarations - I use it when reading new code |
| 15:27:35 | <cads> | it looks like the intelli-J plugin has it, and so does emacs haskell mode. but vs code haskell plugins seem to be missing it |
| 15:28:14 | <texasmynsted> | but vs code can use neovim as its "editor" |
| 15:28:26 | × | halbGefressen quits (~christian@2a02:810d:f40:2a9c:a4fe:2adc:248b:466f) (Quit: halbGefressen) |
| 15:28:35 | <texasmynsted> | Much of the power of neovim, inside vs code |
| 15:29:05 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 240 seconds) |
| 15:29:08 | <cads> | texasmynsted, I'm not sure we're talking about the same thing - in vs code, folding means that blocks of code get decorated with vs-code buttons that let you collapse them |
| 15:29:09 | <texasmynsted> | Also there is vscodium, if you want to use vs code but turn off the telemetery and other spying |
| 15:29:21 | <texasmynsted> | cads, yes |
| 15:29:24 | <texasmynsted> | same thing |
| 15:30:05 | <cads> | so the neovim plugin takes the code folding points that neovim computes for a given file, and sends them vscode? |
| 15:30:14 | <texasmynsted> | I have not tried it for haskell, but I _think_ you can fold away the body of a code block |
| 15:30:16 | → | danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 15:30:40 | <cads> | lemme try it. Do I have to do anything special to get haskell mode for neovim? |
| 15:31:03 | <texasmynsted> | cads: No. The neovim plugin makes vscode work like neovim. You can use many of the neovim features and plugins, directly |
| 15:31:04 | × | mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 272 seconds) |
| 15:31:22 | <texasmynsted> | I think that code folding is built-in if I recall correctly. |
| 15:31:42 | <texasmynsted> | cads, yes. |
| 15:31:56 | <jollygood2> | is there a function like this already available? https://pastebin.com/Jt2Wfj3N |
| 15:32:00 | <texasmynsted> | I have a bunch of haskell plugins in neovim |
| 15:33:01 | → | Lycurgus joins (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) |
| 15:34:13 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:a9cd:d01b:63a8:de53:5983) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 15:34:32 | <texasmynsted> | cads I would look at this --> https://github.com/twinside/vim-haskellfold |
| 15:34:57 | × | Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Quit: WeeChat 2.9) |
| 15:35:10 | <texasmynsted> | Here are screen-shots http://twinside.github.io/vim-haskellFold/ |
| 15:35:17 | → | Kaivo joins (~Kaivo@104-200-86-99.mc.derytele.com) |
| 15:36:34 | <texasmynsted> | maybe somebody that uses folding will help you better |
| 15:36:35 | <cads> | that's defintiely what I want visually, and I'm understanding that it should, for example, integrate with the vscode code folding shortcut |
| 15:37:08 | <texasmynsted> | I am actually sorry that I suggested the neovim plugin. |
| 15:37:33 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@mx-ll-171.5.29-209.dynamic.3bb.co.th) |
| 15:37:53 | <texasmynsted> | I suggested it because I use it when in vscode. You will likely be better served trying to solve this without that. |
| 15:38:13 | <texasmynsted> | likely one or more of the vscode haskell plugins has folding. I have no idea |
| 15:38:53 | <cads> | my current understanding is that I can drop vim-hasellfold in the .vim/plugin directory of the neovim plugin. Then vscode will display code folding widgets in hsakell files. Lol, I am also not that gullible, so I actually expect this will be fraught with peril and misery |
| 15:40:06 | <cads> | texasmynsted, I have installed 3 of the plugins and reviewed the feature lists of all the plugins, there were none to indicate the term folding. So apart from manually installing all of the plugins and checking to see if I get magic folding widgets... |
| 15:40:25 | <texasmynsted> | hmm. |
| 15:40:40 | <cads> | ... well, probably you're right and the best idea is to find someone who uses folding (or use the intellij lugin in pycharm) |
| 15:41:23 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 15:42:12 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 15:42:47 | → | tintinthong joins (3c35076a@60.53.7.106) |
| 15:44:53 | → | justinthong joins (~justintho@2001:e68:5442:b278:7500:bc76:587e:7a58) |
| 15:44:54 | × | u0_a298 quits (~user@65.35.205.131) (Read error: Connection reset by peer) |
| 15:44:58 | <justinthong> | hi there |
| 15:45:09 | × | tintinthong quits (3c35076a@60.53.7.106) (Remote host closed the connection) |
| 15:45:13 | → | u0_a298 joins (~user@65.35.205.131) |
| 15:45:15 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 15:45:15 | × | wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection) |
| 15:45:20 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 15:45:32 | × | justinthong quits (~justintho@2001:e68:5442:b278:7500:bc76:587e:7a58) (Remote host closed the connection) |
| 15:45:35 | <sm[m]> | cads: I see folding buttons in vs code + haskell extension.. are they not hooked up to standard keybindings ? |
| 15:46:08 | <sm[m]> | (only when I mouse over the gutter) |
| 15:46:16 | <cads> | https://plugins.jetbrains.com/plugin/8268-haskell-conceal ooo this nice. Haskell concealer. With a sheer, matte finish. |
| 15:46:44 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 15:46:54 | → | Vulfe_ joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 15:47:20 | <sm[m]> | also, is there any sign of haskell-language-server support in jetbrains IDEs yet ? |
| 15:47:31 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:49:32 | <cads> | I feel like there was a haskell contributor death event in 2016. Like half of of the haskell projects I encounter were last committed to in 2016 or there abouts. To wit: https://plugins.jetbrains.com/search?search=haskell |
| 15:50:22 | <cads> | that might be unfair, since one of those is just an announcement (also 4 aren't really about haskell) |
| 15:50:53 | <Rembane> | Too much oxygen in the Haskell sea killed off the Cambric explosion |
| 15:51:04 | × | dxld quits (~dxld@rush.pub.dxld.at) (Quit: Bye) |
| 15:51:25 | → | dxld joins (~dxld@rush.pub.dxld.at) |
| 15:51:45 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 15:54:23 | × | u0_a298 quits (~user@65.35.205.131) (Ping timeout: 265 seconds) |
| 15:55:53 | <cads> | sm[m], current intelli-J plugin doesn't appear to be https://github.com/rikvdkleij/intellij-haskell |
| 15:56:42 | → | softwarm joins (4408f588@ip68-8-245-136.sd.sd.cox.net) |
| 15:57:19 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 15:57:30 | <cads> | the next most popular haskell plugin has half as many downloads (50k). It builds a server abstraction, but it's not the language server protocol / it doesn't seem to pull in haskell language server |
| 15:58:07 | <cads> | sm[m], if a project were using haskell language server, what is a string that would have to show up? |
| 15:58:08 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 256 seconds) |
| 15:58:20 | <cads> | (somewhere in the project's code) |
| 16:00:15 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 16:00:28 | <cads> | sm[m], I have found the code folding feature in the vscode plugin! thanks for confirming it existed! |
| 16:00:55 | × | softwarm quits (4408f588@ip68-8-245-136.sd.sd.cox.net) (Ping timeout: 245 seconds) |
| 16:01:51 | <texasmynsted> | cads: so how does it work? Does it do what you want? |
| 16:02:04 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 16:02:12 | <texasmynsted> | Would be cool to see a couple of screen-shots |
| 16:02:19 | <cads> | it doesn't fold what I wanted it to fold, but it folds enough that it's helpful |
| 16:02:43 | <cads> | I was hoping it would fold long import lists, but it folds everything else I wanted it to |
| 16:03:31 | hackage | wai-extra 3.1.4 - Provides some basic WAI handlers and middleware. https://hackage.haskell.org/package/wai-extra-3.1.4 (MichaelSnoyman) |
| 16:03:41 | <sm[m]> | cads, np. haskell-language-server, hls would be some likely strings but it's too new/too much in flux to find that way. I asked rikvdkleij about his plan re hls but he didn't seem to have any |
| 16:04:58 | <texasmynsted> | cads maybe that plugin has some way to define manual fold points? So you can fold down your imports, etc. http://vimdoc.sourceforge.net/htmldoc/options.html#'foldmarker' |
| 16:05:12 | × | Vulfe_ quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 16:06:16 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 16:06:33 | <cads> | texasmynsted, regarding what I wanted to do, basically without naming names, many haskell projects seems to it's okay to have files with 40 to 60 lines of imports and compiler directives, followed by 500 lines of function after function |
| 16:07:29 | <texasmynsted> | Heh. Sounds like the code I am working on at the moment and completely my fault. |
| 16:07:40 | → | Tops21 joins (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) |
| 16:07:41 | <cads> | to work in this kind of file without losing my slippery grasp on sanity, I like to fold anything whose implementation I don't currently care about |
| 16:08:20 | <texasmynsted> | One of my files has more than 70 lines of imports |
| 16:09:01 | hackage | phonetic-languages-simplified-common 0.4.0.0 - A simplified version of the phonetic-languages-functionality https://hackage.haskell.org/package/phonetic-languages-simplified-common-0.4.0.0 (OleksandrZhabenko) |
| 16:09:24 | <texasmynsted> | Was looking yesterday for something to "fix" my imports. I think actually a better fix for now is splitting out to many more modules. |
| 16:09:33 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@mx-ll-171.5.29-209.dynamic.3bb.co.th) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 16:09:36 | cads | grabs texasmynsted's lapels and insists the madness must end |
| 16:09:54 | → | DavidEichmann joins (~david@62.110.198.146.dyn.plus.net) |
| 16:09:58 | <cads> | a memo must be drafted. A standard drawn. I am convinced that these kinds of imports make code that nobody wants to maintain |
| 16:09:59 | <texasmynsted> | lol |
| 16:10:02 | → | Tops22 joins (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) |
| 16:10:13 | × | xff0x_ quits (~fox@2001:1a81:53f4:6600:b61f:e73a:b494:e067) (Ping timeout: 272 seconds) |
| 16:10:28 | <texasmynsted> | I agree with you |
| 16:10:46 | <cads> | but in the meantime, I think I could extend the folding code for the haskell plugin |
| 16:11:04 | <texasmynsted> | I think normally you can manually fold |
| 16:11:14 | × | Tops2 quits (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) (Ping timeout: 260 seconds) |
| 16:11:17 | <texasmynsted> | Like make a selection and fold it away. |
| 16:11:19 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) |
| 16:11:29 | × | cawfee quits (chiya@2406:3003:2077:2341::babe) (Ping timeout: 272 seconds) |
| 16:12:25 | × | Lycurgus quits (~niemand@cpe-45-46-137-210.buffalo.res.rr.com) (Quit: Exeunt) |
| 16:13:16 | × | Tops21 quits (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) (Ping timeout: 240 seconds) |
| 16:14:01 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 16:15:29 | → | hekkaidekapus{ joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 16:15:57 | → | xff0x_ joins (~fox@2001:1a81:53f4:6600:c467:6c65:fe0d:7a) |
| 16:17:03 | × | hekkaidekapus_ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds) |
| 16:17:46 | tomsmeding | . o O ( 'zf' in vim ) |
| 16:19:58 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 16:20:03 | × | hekkaidekapus{ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds) |
| 16:23:59 | <cads> | texasmynsted, in sublime text, yes. In vs-code, users been mewling incessantly for this feature for over two and a half years. https://github.com/Microsoft/vscode/issues/18805 |
| 16:24:05 | <cads> | poor babies :( |
| 16:24:35 | → | cawfee joins (chiya@2406:3003:2077:2341::babe) |
| 16:24:39 | <cads> | I could be their messiah. |
| 16:25:00 | → | Deide joins (~Deide@217.155.19.23) |
| 16:27:21 | → | neiluj joins (~jco@91-167-203-101.subs.proxad.net) |
| 16:27:21 | × | neiluj quits (~jco@91-167-203-101.subs.proxad.net) (Changing host) |
| 16:27:21 | → | neiluj joins (~jco@unaffiliated/neiluj) |
| 16:28:25 | × | Entertainment quits (~entertain@104.246.132.210) (Ping timeout: 240 seconds) |
| 16:28:31 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Quit: leaving) |
| 16:29:47 | → | Tario joins (~Tario@201.192.165.173) |
| 16:30:55 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:32:47 | × | xff0x_ quits (~fox@2001:1a81:53f4:6600:c467:6c65:fe0d:7a) (Ping timeout: 260 seconds) |
| 16:33:19 | → | xff0x_ joins (~fox@port-92-193-238-203.dynamic.as20676.net) |
| 16:33:42 | × | acidjnk_new quits (~acidjnk@p200300d0c719ff043467fd7c213734d3.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 16:33:59 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 16:34:28 | × | blankhart quits (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) (Ping timeout: 246 seconds) |
| 16:34:31 | hackage | icepeak 0.7.4.0 - A fast JSON document store with push notification support. https://hackage.haskell.org/package/icepeak-0.7.4.0 (rkrzr) |
| 16:35:24 | → | borne joins (~fritjof@200116b8645b9f009ba1d43461655289.dip.versatel-1u1.de) |
| 16:36:42 | → | blankhart joins (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) |
| 16:37:07 | → | hekkaidekapus{ joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 16:37:11 | → | juuandyy joins (~juuandyy@90.166.144.65) |
| 16:37:29 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 16:37:40 | <sm[m]> | cads: I'd like to see UX improvements there too, but do you have a huge monitor or something ? In practice I am usually scrolled elsewhere, focussed on a small section of code and have to jump/search to even see imports |
| 16:39:02 | → | drincruz_ joins (~adriancru@ool-44c748be.dyn.optonline.net) |
| 16:40:57 | × | juuandyy quits (~juuandyy@90.166.144.65) (Client Quit) |
| 16:41:27 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 16:41:49 | × | z0k quits (~user@101.50.127.33) (Ping timeout: 246 seconds) |
| 16:42:09 | <cads> | no, I just expect my files to be about 60 lines, so when I open a file and I see 60 lines of imports, I gotta make that go away or I'll like kill someone |
| 16:42:35 | → | juuandyy joins (~juuandyy@90.166.144.65) |
| 16:43:28 | <cads> | like I'll grab the knife, and find the first unpaid intern, say "GUAHAHAHAAH" and then slit their throat from ear to ear. And that will be very unfortunate. Because in my oranization I am the unpaid intern (also psychopathic ceo) |
| 16:43:50 | → | z0k joins (~user@115.186.169.31) |
| 16:43:52 | <jollygood2> | is there a Data.Set and Data.Map equivalent that keeps track of inserting order? |
| 16:43:54 | <cads> | so I really need to make those imports go away |
| 16:45:01 | hackage | phonetic-languages-simplified-properties-lists-double 0.1.0.0 - A generalization of the uniqueness-periods-vector-properties package. https://hackage.haskell.org/package/phonetic-languages-simplified-properties-lists-double-0.1.0.0 (OleksandrZhabenko) |
| 16:47:15 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 16:47:35 | <sm[m]> | that's.. pretty violent |
| 16:47:40 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 16:47:44 | × | Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Quit: switching to wifi) |
| 16:48:09 | → | renzhi joins (~renzhi@2607:fa49:655f:e600::28da) |
| 16:48:46 | <cads> | in my organization, code readability is a life and death matter |
| 16:48:48 | → | Kaivo joins (~Kaivo@104-200-86-99.mc.derytele.com) |
| 16:48:56 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 240 seconds) |
| 16:49:12 | × | dxld quits (~dxld@rush.pub.dxld.at) (Quit: Bye) |
| 16:50:40 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:51:37 | → | dxld joins (~dxld@rush.pub.dxld.at) |
| 16:51:51 | <pja> | jollygood2: Data.Map.Ordered |
| 16:52:07 | <pja> | From ordered-containers |
| 16:54:39 | <jollygood2> | thanks. |
| 16:55:42 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 16:55:59 | <cads> | this is one example of the input bloat I mention: https://gist.github.com/maxsu/fc0ada60f478bc89e3b71b8e54cc389d |
| 16:56:28 | <cads> | this lives at the top of a 1500 line haskell file that does... a lot |
| 16:57:12 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: fuzzypixelz) |
| 16:58:00 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 16:58:22 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 16:58:50 | <cads> | I think the haskellish way to to deal with this is that every file has a similarly long imports list because factoring it away into a custom prelude for your project is not scalable as the project structure evolves |
| 16:59:01 | <cads> | but is that strictly true? |
| 16:59:08 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 17:00:21 | <srk> | lazily true ;) |
| 17:00:31 | <cads> | hehe |
| 17:00:37 | → | conal joins (~conal@64.71.133.70) |
| 17:01:09 | <srk> | you don't need to commit to full custom prelude, you can have parts of the program import modules that reexport common things |
| 17:01:43 | <cads> | any example of a project that does this to good effect in your opinion? |
| 17:02:12 | → | plakband joins (~plakband@softbank126074182017.bbtec.net) |
| 17:02:21 | <cads> | I feel reluctant to name examples of projects that I feel make this mistake (but oh boy, they're out there) |
| 17:02:51 | <srk> | not sure tbh |
| 17:03:56 | × | juuandyy quits (~juuandyy@90.166.144.65) (Ping timeout: 240 seconds) |
| 17:05:00 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 256 seconds) |
| 17:05:24 | × | conal quits (~conal@64.71.133.70) (Ping timeout: 256 seconds) |
| 17:06:10 | → | juuandyy joins (~juuandyy@90.166.144.65) |
| 17:07:14 | → | nowhere_man joins (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) |
| 17:07:40 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 17:07:58 | × | lightwave quits (~chris@bras-vprn-nwmkon8540w-lp130-10-142-112-210-136.dsl.bell.ca) (Ping timeout: 272 seconds) |
| 17:08:31 | hackage | phonetic-languages-simplified-lists-examples 0.5.0.0 - Simplified and somewhat optimized version of the phonetic-languages-examples. https://hackage.haskell.org/package/phonetic-languages-simplified-lists-examples-0.5.0.0 (OleksandrZhabenko) |
| 17:09:07 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 17:09:59 | → | solonarv joins (~solonarv@astrasbourg-552-1-28-212.w90-13.abo.wanadoo.fr) |
| 17:11:49 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 17:12:44 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 17:13:01 | → | coot joins (~coot@37.30.53.191.nat.umts.dynamic.t-mobile.pl) |
| 17:13:17 | → | bcasiello joins (~brian@071-088-110-201.res.spectrum.com) |
| 17:13:23 | × | andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds) |
| 17:13:57 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 17:16:38 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 17:17:03 | → | andreas303 joins (~andreas@gateway/tor-sasl/andreas303) |
| 17:17:57 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 17:18:20 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 17:18:52 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Ping timeout: 260 seconds) |
| 17:20:16 | → | lpy joins (~nyd@unaffiliated/elysian) |
| 17:21:26 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Ping timeout: 256 seconds) |
| 17:22:49 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 17:24:51 | → | geekosaur joins (82659a09@host154-009.vpn.uakron.edu) |
| 17:25:34 | × | Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 246 seconds) |
| 17:26:14 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:28:39 | → | u0_a203 joins (~u0_a203@37.98.47.224) |
| 17:28:57 | × | u0_a203 quits (~u0_a203@37.98.47.224) (Client Quit) |
| 17:31:54 | <tomsmeding> | cads: ircbrowse does this (e.g. https://github.com/tomsmeding/ircbrowse/blob/master/src/Ircbrowse/View.hs ), but I'm not sure whether I can call it "to good effect" |
| 17:33:01 | <tomsmeding> | but then, I prefer it when I can manually trace where stuff comes from most of the time (while I like my editor to tell me that, I'd like to not need it), so I'm personally biased against this batched import thing :p |
| 17:35:01 | <cads> | yeah, I dont like it either tbh, just thinking of how to shorten this list: https://gist.github.com/maxsu/c43447994735e61f5a5b52a49ecd1d56 |
| 17:35:39 | <tomsmeding> | that indentation is messed up though around the CPP macros |
| 17:36:00 | <tomsmeding> | but I guess my answer would be "don't", but that doesn't help you :p |
| 17:36:45 | <tomsmeding> | to me, having lots of imports just signifies that it might be helpful to split up the file into distinct bits of functionality, and nothing else; also, with emphasis on "might" |
| 17:36:52 | × | andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection) |
| 17:37:19 | <tomsmeding> | custom prelude / batched imports just allow you to act like the problem isn't there :p |
| 17:38:24 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 17:38:40 | × | rcdilorenzo quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Remote host closed the connection) |
| 17:38:55 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 17:39:54 | → | andreas303 joins (~andreas@gateway/tor-sasl/andreas303) |
| 17:40:47 | → | opweiqw joins (~opweiqw@2604:880:50:5f:63:0:f0:1) |
| 17:41:00 | <cads> | for lines 34-44 I think I would like to be able to import multiple submodules of a parent module, like from Data import Bifunctor, Char, Either, Functor, List (intercalate, sort) -- and so on. Multiple invocations would be fine, but we're reducing the number of import declarations by 4 or 5 while arguably maintaining or enhancing readability |
| 17:41:46 | <geekosaur> | there is no module named Data, though |
| 17:42:01 | <geekosaur> | it's just namespace. |
| 17:43:04 | <geekosaur> | (and I think ghc still has an oddity where it sometimes accepts filenames with dots in them in place of slashes? but only for modules within your program, not from external packages) |
| 17:45:25 | → | Entertainment joins (~entertain@104.246.132.210) |
| 17:45:48 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 17:46:47 | → | britva joins (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) |
| 17:48:24 | → | columbarius joins (~columbari@mue-88-130-54-019.dsl.tropolys.de) |
| 17:50:10 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 17:50:33 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 17:50:39 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 17:50:50 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 17:51:26 | → | grdvnl joins (~gdrvnl@cpe-76-94-36-134.socal.res.rr.com) |
| 17:51:48 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@66.115.189.235) |
| 17:52:14 | → | hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net) |
| 17:52:44 | × | blankhart quits (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) (Ping timeout: 260 seconds) |
| 17:53:23 | → | Aquazi joins (uid312403@gateway/web/irccloud.com/x-bkkscsldnugnnelg) |
| 17:58:33 | × | B-J quits (~BenziJuni@88-149-65-135.du.xdsl.is) (Quit: gone) |
| 18:00:24 | → | Benzi-Junior joins (~BenziJuni@dsl-149-65-135.hive.is) |
| 18:00:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 18:02:11 | → | rcdilorenzo_ joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 18:03:46 | × | rcdilorenzo quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Ping timeout: 256 seconds) |
| 18:04:14 | × | cawfee quits (chiya@2406:3003:2077:2341::babe) (Ping timeout: 264 seconds) |
| 18:05:57 | <monochrom> | In fact "submodule" is a wrong model. |
| 18:06:51 | × | tromp_ quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
| 18:06:52 | <monochrom> | The correct model is fancy naming convention that pretends to be hierarchical. |
| 18:07:23 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 18:07:55 | × | hekkaidekapus{ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Quit: hekkaidekapus{) |
| 18:09:07 | → | hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 18:11:26 | <ezzieyguywuf> | dang, so Data.Functior.Alt ((<|>)) is different from Control.Applicative?! |
| 18:11:47 | <ezzieyguywuf> | nvm, it's a ! I think |
| 18:11:48 | × | britva quits (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) (Quit: This computer has gone to sleep) |
| 18:11:54 | <ezzieyguywuf> | lol, I get it, "semi" |
| 18:12:24 | <monochrom> | Where does Data.Functor.Alt come from? |
| 18:13:28 | <ezzieyguywuf> | monochrom: semigroupoids package |
| 18:14:07 | <ezzieyguywuf> | I imagine it's something that's some sub-set of an Alternative or w/e, but this type of stuff is mostly over my head |
| 18:14:28 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) (Remote host closed the connection) |
| 18:14:59 | × | hexfive quits (~hexfive@50-47-142-195.evrt.wa.frontiernet.net) (Quit: i must go. my people need me.) |
| 18:15:01 | <monochrom> | me too |
| 18:15:29 | → | urek__ joins (~urek@2804:7f1:e10a:a8d:a85d:6d9e:3db:9450) |
| 18:16:23 | × | Entertainment quits (~entertain@104.246.132.210) () |
| 18:18:04 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 18:18:37 | <ezzieyguywuf> | i love that with haskell I've never had to worry about a linker error |
| 18:18:41 | × | Tops22 quits (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) (Quit: Leaving.) |
| 18:18:47 | × | urek quits (~urek@2804:7f1:e10a:a8d:a85d:6d9e:3db:9450) (Ping timeout: 272 seconds) |
| 18:19:15 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 18:19:39 | <tomsmeding> | ezzieyguywuf: wait until you use external libraries |
| 18:19:45 | <geekosaur> | you haven't, at least |
| 18:19:51 | ← | bcasiello parts (~brian@071-088-110-201.res.spectrum.com) ("Leaving") |
| 18:20:25 | × | tsrt^ quits (tsrt@ip98-184-89-2.mc.at.cox.net) () |
| 18:21:39 | <tomsmeding> | whois oleks |
| 18:21:45 | <tomsmeding> | ............. sorry |
| 18:22:31 | <sm[m]> | ezzieyguywuf: you must be new here :) |
| 18:22:51 | <ezzieyguywuf> | lol, and now I did something silly and it used up all my ram when I ran it |
| 18:23:03 | <tomsmeding> | welcome to haskell |
| 18:23:03 | <ezzieyguywuf> | tomsmeding: I've used some a tad, for like opengl i think |
| 18:23:09 | → | mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
| 18:23:10 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 18:23:17 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 18:23:54 | <sm[m]> | quite a lot of haskell apps & libs involve some C |
| 18:23:58 | → | nehsou^ joins (nehsou@ip98-184-89-2.mc.at.cox.net) |
| 18:24:19 | <sm[m]> | hackage should have a Pure Haskell badge |
| 18:24:46 | <ezzieyguywuf> | glad I caught it before I ran out of ram, lol |
| 18:25:01 | hackage | witch 0.0.0.4 - Convert values from one type into another. https://hackage.haskell.org/package/witch-0.0.0.4 (fozworth) |
| 18:25:16 | <zincy__> | Is the only way to get impurity in Haskell to use performUnsafeIO ? |
| 18:25:17 | <ezzieyguywuf> | at first I was like "ghcid, why aren't you saying anything?" then I was like "shrug, maybe a glitch" <ctrl-c> cabal run jali |
| 18:25:22 | <ezzieyguywuf> | then like 30 secs later I thought to check ram, lol |
| 18:26:34 | <geekosaur> | zincy__, that and its relatives |
| 18:26:54 | <zincy__> | Cheers |
| 18:26:55 | × | chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer) |
| 18:27:17 | <geekosaur> | (inlinePerformIO comes to mind: "sharing an address space with a malevolent agent of chaos") |
| 18:27:21 | → | chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) |
| 18:27:30 | <sm[m]> | ezzieyguywuf: on Mac, I keep activity monitor open and a memory usage meter in menubar :/ |
| 18:27:51 | <ezzieyguywuf> | lol, wise |
| 18:28:55 | → | cosimone joins (~user@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 18:29:14 | <sm[m]> | since with Firefox and Haskell you can easily freeze a 8G laptop |
| 18:29:38 | <tomjaguarpaw> | Oh man, tell me about it. I have a 4GB laptop ... |
| 18:29:48 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:29:52 | <sm[m]> | ouch |
| 18:30:27 | → | foobarblob joins (188838c2@ip24-136-56-194.ga.at.cox.net) |
| 18:30:28 | <tomjaguarpaw> | I quite like "ionice -c idle nice -n 20", and "MEM=$[1000 * 1000]; ulimit -d $MEM; ulimit -m $MEM; ulimit -v $MEM" when I want to be drastic. |
| 18:30:52 | ezzieyguywuf | hugs 16 gigs |
| 18:31:03 | × | cosimone quits (~user@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Client Quit) |
| 18:31:44 | sm[m] | takes notes |
| 18:32:05 | → | cosimone joins (~user@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 18:33:36 | tomjaguarpaw | hugs script for spinning up Linode when he wants to do anything serious |
| 18:33:38 | <ezzieyguywuf> | and ff doesn't really use that much memory anymore honestly... |
| 18:33:40 | <ezzieyguywuf> | at least not for me. |
| 18:33:48 | ezzieyguywuf | wonders what linode is |
| 18:33:51 | ezzieyguywuf | doesn't do anything serious. |
| 18:34:18 | <ezzieyguywuf> | lol, I had a runaway ghc from vim's coc that I missed |
| 18:34:21 | → | drincruz_ joins (~adriancru@ool-44c748be.dyn.optonline.net) |
| 18:34:29 | <ezzieyguywuf> | I got up to 1.9G swap! |
| 18:34:30 | <tomjaguarpaw> | Currently using 12% of main memory, but can easily be up to 25%, and I have different FF instances for different purposes, to minimise tracking, risk of malware ... |
| 18:34:36 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:34:40 | × | nf quits (~n@monade.li) (Quit: Fairfarren.) |
| 18:34:50 | <ezzieyguywuf> | but now mem usage is back at a very reasonable 692M |
| 18:35:01 | × | cosimone quits (~user@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection) |
| 18:35:02 | hackage | group-theory 0.1.0.0 - The theory of groups https://hackage.haskell.org/package/group-theory-0.1.0.0 (topos) |
| 18:35:08 | <ezzieyguywuf> | ah, I have two tabs open, both hackage. |
| 18:35:13 | <ezzieyguywuf> | though I can have as much as 10-20 |
| 18:35:14 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 18:35:57 | <ezzieyguywuf> | ah, ignore that mem number, ofc I hav the 1.9GB swapped right now I think that's mostly ff |
| 18:37:32 | → | zyklotomic joins (~ethan@unaffiliated/chocopuff) |
| 18:37:53 | × | foobarblob quits (188838c2@ip24-136-56-194.ga.at.cox.net) (Remote host closed the connection) |
| 18:38:50 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 18:39:10 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Remote host closed the connection) |
| 18:39:33 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 18:40:36 | <ezzieyguywuf> | does NonEmpty List have a way to specify at least 2 elements? |
| 18:40:49 | <ezzieyguywuf> | or would I have to wrap it in a datatype that had two non-empty's? |
| 18:40:58 | <ezzieyguywuf> | or I gues a singleton and a non-empty.. |
| 18:41:14 | <ezzieyguywuf> | nvm, guess I'll just do that |
| 18:41:59 | → | cawfee joins (chiya@2406:3003:2077:2341::babe) |
| 18:42:16 | oa | is now known as oats |
| 18:42:35 | <dminuoso> | ezzieyguywuf: You can use OverloadedLists, if you fancy that. |
| 18:42:38 | <zyklotomic> | dminuoso: this is what I ended up "translating" that python too https://github.com/Jyutt/jieba-hs/blob/32b808fe92860b1eee0451b8bec9fdb67f8f04e5/src/Jieba/Cut.hs#L20 |
| 18:42:53 | <ezzieyguywuf> | dminuoso: I'll take a look. |
| 18:42:59 | <zyklotomic> | *to, you were right, State was completely unecessary and that was satisfying |
| 18:43:04 | → | nf joins (~n@monade.li) |
| 18:43:05 | × | catchme quits (uid355354@gateway/web/irccloud.com/x-hxmidzshauhjcqia) (Quit: Connection closed for inactivity) |
| 18:44:45 | <jle`> | ezzieyguywuf: there's some package out there that lets you tack one item onto any container |
| 18:44:51 | <dminuoso> | zyklotomic: The amount of list concatenation looks a little worrying.. |
| 18:45:09 | <jle`> | it might be http://hackage.haskell.org/package/nonempty-lift-0.1/docs/NonEmpty.html maybe |
| 18:45:14 | <dminuoso> | zyklotomic: Also, cutAll is written strangely. You should just zip with [0..] instead |
| 18:45:16 | <jle`> | in which case you could use NonEmpty (NonEmpty [] a) |
| 18:45:39 | <zyklotomic> | dminuoso: thank you, i will look into the cutAll, the cutAll was written by 3 months ago me |
| 18:45:42 | <jle`> | or maybe it's http://hackage.haskell.org/package/nonempty-alternative-0.4.0/docs/Data-NonEmpty.html ... |
| 18:45:58 | <dminuoso> | zyklotomic: Furthermore, your clauses on matching length are non idiomatic. Just pattern match on the list :) |
| 18:46:19 | <dminuoso> | zyklotomic: Let me give you a hint |
| 18:46:19 | <zyklotomic> | huh, wdym by matching length on the list |
| 18:46:33 | × | sheaf quits (~sheaf@2a01:cb19:80cc:7e00:ade8:1e5b:84e9:86db) (Read error: Connection reset by peer) |
| 18:47:06 | <dminuoso> | zyklotomic: so your entire where clause could just be: |
| 18:47:38 | <dminuoso> | (b:bs) = span ((==1) . length) rem |
| 18:47:44 | <dminuoso> | And then you have b for the head, and bs for the tail |
| 18:47:46 | <dminuoso> | Done! |
| 18:47:49 | <zyklotomic> | woah |
| 18:47:58 | <zyklotomic> | i appreciate it, tysm for the pointer |
| 18:47:58 | <dminuoso> | oh wait |
| 18:48:06 | <zyklotomic> | ah |
| 18:48:15 | <dminuoso> | not quite, but you get the idea |
| 18:48:25 | <zyklotomic> | should I resort to vectors then? |
| 18:48:34 | <zyklotomic> | if i'm going to be pushing back like that? |
| 18:48:49 | × | geekosaur quits (82659a09@host154-009.vpn.uakron.edu) (Ping timeout: 245 seconds) |
| 18:49:20 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood) |
| 18:50:33 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 18:51:33 | → | p-core joins (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) |
| 18:51:40 | <dolio> | You mean appending? |
| 18:51:55 | <dolio> | Vectors will just guarantee the worst performance. |
| 18:52:09 | <zyklotomic> | yes, appending |
| 18:52:22 | <zyklotomic> | i've never used vectors, I thought they were going to be like C++ ones |
| 18:52:24 | <dminuoso> | zyklotomic: If you want to append a lot, look at DList |
| 18:52:38 | <zyklotomic> | but I think I guessed wrong |
| 18:52:42 | <dminuoso> | I gotta run, Ill be around next week if you want |
| 18:52:54 | <zyklotomic> | dminuoso: thank you, appreciate you a lot see you around then |
| 18:53:54 | <jle`> | C++ vectors would be pretty bad at appends too fwiw |
| 18:54:22 | → | falafel joins (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) |
| 18:54:33 | <zyklotomic> | i think my understandin is it depends on the backing array, if your backing array is large enough |
| 18:54:41 | <zyklotomic> | there would be no need to realloc |
| 18:55:19 | <jle`> | ah yeah, there's some work being done by the abstraction there :o |
| 18:55:24 | <jle`> | i guess it'd be closer to C arrays then |
| 18:57:00 | → | conal joins (~conal@64.71.133.70) |
| 18:58:53 | <zyklotomic> | ye, there are C++ arrays too i think, where size is fixed at compile time |
| 19:00:17 | <jle`> | ah :O then i guess haskell vectors they are somewhere in between? size can be determined at runtime, they are contiguous-memory, but every append requires a full copy |
| 19:00:44 | <jle`> | oh, i guess we run into the mutability vs immutability distinction then. |
| 19:00:52 | <monochrom> | C++ vectors enjoy using a mutable array at the back, so appending is amortized O(1). |
| 19:01:22 | <monochrom> | but it is still only amortized O(1), not real-time O(1). |
| 19:01:49 | <monochrom> | How to do that is in every standard 2nd year CS curriculum. |
| 19:01:58 | → | elliott_ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 19:01:59 | <koz_> | jle`: 'contiguous-memory' is a bit of a skunk statement vis-a-vis Haskell vectors, since boxed ones aren't _really_. |
| 19:02:08 | <koz_> | Storable or Unboxed ones, sure. |
| 19:02:33 | <koz_> | (Prim too I guess?) |
| 19:02:48 | × | ggole quits (~ggole@2001:8003:8119:7200:1d5:8df6:c4ab:d6ce) (Quit: Leaving) |
| 19:03:02 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 264 seconds) |
| 19:03:19 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 19:03:38 | <jle`> | i suppose, but it'd be similar in C++ if you had a vector of pointers |
| 19:03:50 | <monochrom> | Also the way it's done has consequences in heap fragmentation and reserving a lot of space that goes unused for a long time. |
| 19:04:19 | <koz_> | jle`: Yeah, that is also true. |
| 19:04:26 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 19:04:29 | <zyklotomic> | so haskell vectors don't work the way I think they do in short? |
| 19:04:40 | <koz_> | zyklotomic: How did you think they worked? |
| 19:04:56 | <zyklotomic> | the c++ way in the background |
| 19:05:04 | <koz_> | If you mean std::vector, then no. |
| 19:05:05 | <zyklotomic> | with a contiguous memory and a smart pointer |
| 19:05:07 | <dolio> | Immutable vectors aren't mutable vectors, no. |
| 19:05:15 | <koz_> | std::vector is a dynamic array which is mutable. |
| 19:05:16 | <jle`> | i thiiink your intuition is mostly correct, if you factor in that there is no backing array underneath what you can directly access |
| 19:05:17 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:05:21 | <jle`> | and yeah, they're immutable |
| 19:05:54 | <dolio> | Haskell has both, but you can't just drop mutable vectors into an algorithm using immutable lists. |
| 19:05:54 | <jle`> | but i think the consequences of immutability are mostly intuitive here, like how you can't edit an item in an immutable vector without a full copy |
| 19:05:58 | <koz_> | Vector is more like a C array, of pointers in the case of boxed ones, or directly otherwise, which is immutable (though mutables exist), and has a fusion framework to hide some of the copying. |
| 19:06:03 | → | b3z joins (~b3z@vmd41962.contaboserver.net) |
| 19:06:15 | <koz_> | s/hide/avoid/ |
| 19:06:28 | <koz_> | Key word here is 'some' - there are things where it can't help doing copies. |
| 19:06:32 | <zyklotomic> | yes, or in the same way the backing array part is abstracted away from you in c++ too |
| 19:06:49 | <zyklotomic> | that makes sense, my guess was originally that something like |
| 19:07:03 | <zyklotomic> | append ++ would during run time determine what to do, whether to realloc or just move the "pointer" |
| 19:07:17 | <zyklotomic> | so that sounds like mutable vector? |
| 19:07:30 | <koz_> | zyklotomic: Nope. A Haskell mutable vector is more like a mutable C array. |
| 19:07:41 | <koz_> | So if you want to do appends, you're likely copying and reallocating. |
| 19:07:44 | <koz_> | A lot, potentially. |
| 19:07:52 | <monochrom> | yeah fixed size. You write your own code to grow. |
| 19:07:53 | → | conal joins (~conal@64.71.133.70) |
| 19:07:55 | <koz_> | So if you have an append-heavy workload, I would suggest another data structure. |
| 19:08:03 | <koz_> | (DList or Seq) |
| 19:08:05 | → | geekosaur joins (82659a09@host154-009.vpn.uakron.edu) |
| 19:08:41 | × | Adeon quits (sid418992@gateway/web/irccloud.com/x-plwafdhgynwzbsxy) (Ping timeout: 265 seconds) |
| 19:09:07 | <zyklotomic> | that makes sense, thank you |
| 19:09:21 | <zyklotomic> | do people usually try to rethink how an algorithm should function to work with Lists if possible |
| 19:09:26 | <koz_> | zyklotomic: No. |
| 19:09:30 | <zyklotomic> | or is it normal to just reach for these diff data structures |
| 19:09:39 | <zyklotomic> | the latter? |
| 19:09:40 | <koz_> | Lists _can_ be useful, but they're absolutely _not_ the data structure I'd reach for in most instances. |
| 19:09:54 | <monochrom> | I don't always use list. But I always think. |
| 19:09:54 | <koz_> | Basically, think what operations you care about. |
| 19:10:06 | <koz_> | Then select the data structure that makes these operations as cheap as possible. |
| 19:10:27 | → | Adeon joins (sid418992@gateway/web/irccloud.com/x-xditysqsqosidsfr) |
| 19:10:29 | <jle`> | i think lists are not really the best 'container data structure' in most cases. their main strength in haskell is in streaming data or control flow |
| 19:10:47 | <jle`> | so lists in haskell kind of fill a similar role to for loops in imperative languages |
| 19:10:50 | <zyklotomic> | they all seem obscure and require an external dependcy which is why I usually feel more hesitant about reaching out to another DS |
| 19:10:56 | <monochrom> | And I always use my CS education. |
| 19:10:59 | <koz_> | zyklotomic: They aren't obscure at all. |
| 19:11:08 | <koz_> | containers isn't really an external dependency either. |
| 19:11:16 | <koz_> | (because it's a boot library I think?) |
| 19:11:19 | → | Entertainment joins (~entertain@104.246.132.210) |
| 19:11:26 | <jle`> | yeah, you should be safe if you stay in the 'boot libraries', or the libraries that GHC itself uses in its source code |
| 19:11:28 | <monochrom> | Dependency on Hackage is the norm around here. |
| 19:11:31 | <koz_> | And that gives you Seq, Set, Map, which already gets you surprisingly far. |
| 19:11:39 | <zyklotomic> | maybe I should get more comfortable with that then |
| 19:11:41 | <jle`> | at least for starting out |
| 19:11:50 | <koz_> | zyklotomic: Basically, learn about data structures. |
| 19:11:52 | <zyklotomic> | it's not like kitchensink languages i guess? |
| 19:11:58 | <koz_> | Haskell is _reasonably_ well-equipped with them. |
| 19:11:59 | <monochrom> | No. |
| 19:12:43 | <monochrom> | Especially if "kitchen sink" means to the millenials IoT, e.g., you expect the kitchen sink to have an http server. |
| 19:12:50 | <zyklotomic> | koz_: i guess more so haskell data structures? |
| 19:12:59 | <koz_> | zyklotomic: Data structures are data structures. |
| 19:13:06 | <koz_> | How you implement them is another story. |
| 19:13:11 | <koz_> | A HAMT is a HAMT is a HAMT. |
| 19:13:17 | <koz_> | (to give a favourite example) |
| 19:13:30 | <jle`> | this is the list i reference https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/libraries/version-history -- the boot libraries are all very tried true, optimized, wlel documented, mostly beginner friendly, etc., since they're an integral part of ghc building itself |
| 19:13:39 | <koz_> | You can implement a HAMT in Haskell, C++ or Brainfuck. It'll still be a HAMT. |
| 19:13:48 | <zyklotomic> | koz_: but you can't as easily implement them |
| 19:13:50 | <monochrom> | Well, immutable data structures are much less taught in standard CS curricula. |
| 19:13:53 | <zyklotomic> | so its' not as intuitive? |
| 19:13:53 | <jle`> | well, different data structures are more important in idiomatic (immutable, lazy) haskell than in other languages |
| 19:14:07 | <koz_> | zyklotomic: Unless you're planning to write data structures yourself? Understanding how they work is enough. |
| 19:14:16 | <jle`> | i'd say some of them are pretty intuitive, but it's a different sort of intuition than the one you learn in normal CS |
| 19:14:20 | <monochrom> | Still, "a CS education" does not just mean a ton of rote memorization. |
| 19:14:22 | <koz_> | Basically a core education in this area is 'what are data structures, what are they good at'. |
| 19:14:23 | <zyklotomic> | yeah that's what I'm trying to say |
| 19:14:48 | <zyklotomic> | there is some kind of imperative-ness tied to data structures courses in college |
| 19:14:54 | <koz_> | zyklotomic: Unfortunately yes. |
| 19:15:06 | <koz_> | But you can always ask here. |
| 19:15:17 | <koz_> | We're more than happy to explain the why. |
| 19:15:18 | <zyklotomic> | yup true :D |
| 19:15:20 | <jle`> | also most of the data structures you'll normally use here have good documentation with runtime complexities in them |
| 19:15:38 | <jle`> | so if you're uncertain about vector append, you can just look at the vector docs for (++) and see that it's O(n+m) :) |
| 19:15:41 | → | emergence joins (~emergence@vm0.max-p.me) |
| 19:15:59 | <jle`> | https://hackage.haskell.org/package/vector-0.12.1.2/docs/Data-Vector.html#v:-43--43- |
| 19:16:00 | <koz_> | AKA 'this isn't something you want to do often with vectors'. |
| 19:16:02 | <monochrom> | I have issues with "intuitive", too. Look, mutable binary search trees are just as unintuitive. |
| 19:16:18 | <koz_> | monochrom: As someone who actually had to present on red-black trees, this is a mood. |
| 19:16:35 | <koz_> | Deletions especially, oof. |
| 19:16:58 | <monochrom> | I know because on the exam I gave students "show the steps of BST insert for this small example tree", and the exam is open book, and the students can still blow it. |
| 19:17:23 | <koz_> | monochrom: Yeah, even on _non_-self-balancing (self-unbalancing?) BSTs, this stuff's full of tricky corners. |
| 19:17:41 | <koz_> | I taught this for several years, so definitely hear you on that. |
| 19:17:52 | <jle`> | not that the answers are always in a book, but reading Okazaki's pure data structures book was a good way for me to gain some intuition about common patterns and things to think about when implementing or using immutable data structures |
| 19:18:14 | <koz_> | Yeah, Chris Okasaki is like, a hero. |
| 19:18:34 | <pjb> | zyklotomic: it's true that a lot of data structures are designed for mutation. |
| 19:18:35 | <jle`> | enough that i can now reason through things like "oh yeah, of course splitAt n for lists is O(n)", without having to look it up |
| 19:18:52 | <pjb> | zyklotomic: hence their imperative yang. |
| 19:19:11 | <koz_> | Thing is, in Haskell, we _can_ have mutable data structures if we want. |
| 19:19:14 | <koz_> | (thanks, ST!) |
| 19:19:25 | <koz_> | We just rarely bother because surprisingly, it's not necessarily faster. |
| 19:19:41 | × | Entertainment quits (~entertain@104.246.132.210) () |
| 19:19:45 | <pjb> | zyklotomic: but you can also approach them in a more functionnal ie. immutable way, notably with the RAII pattenr. |
| 19:20:40 | → | shf joins (~sheaf@2a01:cb19:80cc:7e00:d5a1:7920:3b80:ee90) |
| 19:20:55 | <pjb> | zyklotomic: that said, purely functional (immutable) data structures are often less efficient. But that's because the universe is not functional, it's full of mutable state. By default, entropy, enthalpy, etc… |
| 19:21:18 | <pjb> | This is why I think a purely functional programming language is an error. |
| 19:21:23 | <jle`> | i mean, they can be more efficient for specific operations :) |
| 19:21:44 | <jle`> | a lot of times the immutable structure will be a more efficient choice than the mutable one |
| 19:21:58 | → | doct0rhu joins (~orctarorg@pool-72-88-158-154.nwrknj.fios.verizon.net) |
| 19:22:09 | <monochrom> | No, the pursuit of maximum run-time efficency is the error. |
| 19:22:16 | <jle`> | i guess you said 'often', so you aren't speaking in absolutes. but i think the picture is more even-split than suggested |
| 19:22:27 | <monochrom> | Programmer inefficiency is more expensive than run-time inefficiency. |
| 19:22:43 | <koz_> | Also, there is no good, there is only good enough, when it comes to run-time. |
| 19:22:57 | <koz_> | If your bounds aren't your structure, immutability offers many benefits. |
| 19:23:17 | <monochrom> | The world has so far recognized "run time" and "compile time". Few have reached the enlightenment of recognizing "programming time". |
| 19:23:34 | <koz_> | And the difference between immutable and mutable structures serving similar roles can be _really damned thin_. |
| 19:23:43 | <MarcelineVQ> | I'm on break time |
| 19:24:12 | × | sw1nn quits (~sw1nn@host81-131-191-165.range81-131.btcentralplus.com) (Quit: WeeChat 2.9) |
| 19:25:02 | <zyklotomic> | what exactly is immutability then? |
| 19:25:11 | <zyklotomic> | couldn't you have runtime immutability |
| 19:25:11 | <monochrom> | Mathematics. |
| 19:25:11 | <koz_> | zyklotomic: The ability to retain any past state. |
| 19:25:17 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 19:25:19 | → | sw1nn joins (~sw1nn@host81-131-191-165.range81-131.btcentralplus.com) |
| 19:25:31 | <zyklotomic> | what is "retain" |
| 19:25:32 | <koz_> | So like, an insert into an immutable structure gives you a new structure. |
| 19:25:38 | <monochrom> | If you say "define x to be 4" then x stays as 4. |
| 19:25:39 | <koz_> | Rather than changing an existing one. |
| 19:25:50 | → | blankhart joins (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) |
| 19:26:00 | <zyklotomic> | yes, but that is just a social construct |
| 19:26:08 | <monochrom> | If x satisfies "x+2 = 6 because x=4" then x+2=6 stays true. |
| 19:26:13 | <zyklotomic> | I could mutate it and say this is in fact a new data structure |
| 19:26:24 | <zyklotomic> | the old one is just gone into the void |
| 19:26:25 | <monochrom> | There is no "change 4 to 5, so now 5+2=6 is true". |
| 19:26:50 | <koz_> | zyklotomic: Except in the immutable world, I could still use 'structure' after that insert in its pre-insert form. |
| 19:26:57 | <monochrom> | See also: http://www.vex.net/~trebla/haskell/prerequisite.xhtml#leibniz |
| 19:27:00 | <koz_> | Good luck doing this with a mutable structure without copying it first. |
| 19:27:07 | <jle`> | one way you could think of immutable data structure is 'persistent', as opposed to 'ephemeral' (immutable). meaning all updates are non-destructuve, and you can always refer to all instance sof it you have ever had |
| 19:27:13 | <zyklotomic> | koz_: then don't? |
| 19:27:17 | <koz_> | Also what jle` said. |
| 19:27:25 | <koz_> | zyklotomic: Yes, you can pretend mutable structures are immutable. |
| 19:27:31 | <koz_> | However, then it's on _you_ to track this. |
| 19:27:34 | <zyklotomic> | yeah, that is my question |
| 19:27:36 | <koz_> | Whereas here, the language does it for you. |
| 19:27:40 | <zyklotomic> | couldn't you prove it yourself |
| 19:27:44 | <jle`> | zyklotomic: if i say x = 3, and then let y = x + 4, then x is still 3, right? how would x ever be anything other than 3? |
| 19:27:45 | <zyklotomic> | kind of like reference counting in Rust |
| 19:27:50 | <koz_> | zyklotomic: Sure you could. Don't you have better things to do though? |
| 19:27:57 | <koz_> | I'd rather _not_ do work my computer can do for me. |
| 19:28:09 | → | Entertainment joins (~entertain@104.246.132.210) |
| 19:28:17 | <monochrom> | See? Programming time is more expensive. |
| 19:28:20 | <zyklotomic> | in the name of performance i suppose |
| 19:28:20 | <jle`> | zyklotomic: yeah, if your point is 'immutability is in how you use the structure', than yeah, you could think of persistence as a property of an API |
| 19:28:30 | <koz_> | zyklotomic: Yeah, but if it doesn't matter? |
| 19:28:34 | <koz_> | (and it often doesn't) |
| 19:28:39 | <monochrom> | Programmer performance is more important. |
| 19:28:44 | <koz_> | There's a reason we don't write everything in x86 asm. |
| 19:28:52 | <jle`> | the API's property is: "all references will reliably always return the same result whenever accessed" |
| 19:28:53 | <koz_> | (well, several) |
| 19:29:20 | <jle`> | so if you reference x once, then reference x again, an 'immutable interface'/'persistent interface' is a contract that both references will always return the same value |
| 19:29:29 | <zyklotomic> | thats a tougher pill to swallow but i can see your argument |
| 19:29:31 | <monochrom> | Eventually I'll have to take the extremist stance "if you haven't learned how to prove programs correct, you don't have the license to talk about performance". |
| 19:29:32 | <cads> | Hmm, so "chunking" the imports lets me reduce the number of "import" words in this document from 46 to 18, trims the imports section by 18 lines (31%), and in my opinion makes the imports section much easier to reason about in mental chunks |
| 19:30:00 | <cads> | Before: https://gist.github.com/maxsu/9a622c735045ab95d938b2a3e20f3ad9 after: https://gist.github.com/maxsu/db9b0182b1d95225965a00b29684fce8 |
| 19:30:03 | <koz_> | monochrom: Arguably you're more than halfway there already. |
| 19:30:11 | → | idhugo joins (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) |
| 19:30:25 | <monochrom> | Because people talk about performance like really high-performance code is so really trivial to understand and even invent. |
| 19:31:03 | <zyklotomic> | so we shouldn't worry about complexity either? |
| 19:31:11 | <koz_> | zyklotomic: Complexity in what sense? |
| 19:31:18 | <zyklotomic> | like using a list ++ |
| 19:31:21 | <zyklotomic> | multiple times |
| 19:31:34 | <zyklotomic> | if like it makes things easier to write / programmer productivity |
| 19:31:41 | <zyklotomic> | sometimes these tradeoffs are worth? |
| 19:31:49 | <monochrom> | worry about complexity under the context of what other priorities? |
| 19:31:56 | <koz_> | zyklotomic: Yes, they are, sometimes. It depends on a _lot_ of other things. |
| 19:32:14 | <monochrom> | I certainly don't worry about complexity (or anything, even correctness) out of context. |
| 19:32:40 | <monochrom> | Tell me all of your priorities and their relative importance. Then we can talk. |
| 19:32:41 | <zyklotomic> | wdym by context |
| 19:33:01 | <koz_> | zyklotomic: What are you working on? What kind of requirements are placed on your performance? How soon do you need it? etc etc etc |
| 19:33:07 | <zyklotomic> | it is not so much a priority but the gut feeling like |
| 19:33:32 | <zyklotomic> | why write inefficient code when you know how to do it less, but again, that is what the CS curriculum you mention teaches you |
| 19:33:39 | <cads> | context is hard... it's basically the datatype for the whole world around you, and it is much, much more complicated than anything you can possibly understand |
| 19:33:44 | <zyklotomic> | s/less/more efficiently |
| 19:33:57 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 19:34:01 | <jle`> | zyklotomic: that's a good question to ask: ("why write ..."). and it's a valid question with different answers in different situations |
| 19:34:09 | <cads> | so you limit it to specific scopes, and ask what's important |
| 19:34:11 | <jle`> | sometimes there are good reasons depending on your ultimate goal |
| 19:34:14 | <monochrom> | I have a collection of tuples, (student name, student number). I have another collection of tuples, (student number, tutorial section). I want to do the inner join of them. |
| 19:35:15 | <monochrom> | I chose the stupid quadratic-time algorithm because it's a one-liner in Haskell and I merely have 200 students, what do you mean worry about complexity, I have better things to do such as thinking really hard how to explain type inference to undergrads. |
| 19:35:45 | <koz_> | monochrom: And I suspect the IO needed to load said data is gonna take longer than the quadratic inner join. |
| 19:35:51 | <monochrom> | If I ever get a class of 100000 students, maybe I'll consider spending time on an n lg n algorithm. |
| 19:35:55 | <koz_> | (by like, a lot) |
| 19:36:01 | <jle`> | complexity analysis is also very limited even if you're thinking about performance...it ignores constant factors important for actual decisions in specific situations |
| 19:36:01 | <monochrom> | yeah |
| 19:36:05 | <monochrom> | PRIORITIES |
| 19:36:11 | <zyklotomic> | yes, but something like that can be very easily done in imperative |
| 19:36:14 | <koz_> | What jle` says is absolutely true. |
| 19:36:18 | <zyklotomic> | but I get your point too |
| 19:36:19 | <monochrom> | What do you mean you don't know what priorities and contexts mean. |
| 19:36:24 | <koz_> | zyklotomic: What do you mean by 'easily' and 'done'? |
| 19:36:34 | <cads> | to get from a complexity analysis to an actionable business intelligence takes a very important thing: spreadsheets |
| 19:36:37 | <koz_> | I can speak from personal experience here - my own Master's thesis is a perfect example. |
| 19:36:47 | → | livvy joins (~livvy@gateway/tor-sasl/livvy) |
| 19:36:56 | <monochrom> | In imperative I would still use the same stupid quadratic-time algorithm. It's just two for-loops. |
| 19:37:11 | <cads> | if you are doing a complexity analysis and there's no graphs and spreadsheets of REAL experiments, you're not doing much |
| 19:37:15 | <monochrom> | And I am not alone. |
| 19:37:15 | <koz_> | I show that, in theory, my algorithm for dynamic partial sorting has better asymptotics than the naive approach. In practice, the constants are so gigantic that your input would have to exceed the number of atoms in the universe for it to matter any. |
| 19:37:28 | <zyklotomic> | i think I have the wrong mindset then |
| 19:37:45 | <zyklotomic> | in school and interviewing, all you ever tihnk about is complexity and not coming up with something stupid |
| 19:37:52 | <jle`> | zyklotomic: there are reasons to pick the 'lower asymptotic complexity' operation in imperative programming too |
| 19:37:55 | <koz_> | zyklotomic: You understand context fine. |
| 19:37:58 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 19:37:59 | <jle`> | often times it will be the best choice in your situation |
| 19:38:03 | <koz_> | As well as 'it depends'. :P |
| 19:38:05 | × | codeAlways quits (uid272474@gateway/web/irccloud.com/x-pwlwqqopuhyebeps) (Quit: Connection closed for inactivity) |
| 19:38:09 | <zyklotomic> | so you naturally have an aversion, (at least I, I'll speak for myself) to |
| 19:38:26 | <monochrom> | I have looked at the code library of world-class programming contest contestants. I am talking about bloody U of Waterloo which wins the world champion of ACM ICPC every once in a while. The code library they bring on paper to the contests. |
| 19:38:44 | <koz_> | Is that the one with the brute-force heap code? |
| 19:38:47 | <monochrom> | You heard that DIjkstra's algorithm uses a priority queue, in theory, right? |
| 19:39:01 | → | kupi joins (uid212005@gateway/web/irccloud.com/x-ilpqogltmhlqsyet) |
| 19:39:06 | <monochrom> | Well their code uses a flat array and linear search for every priority queue operations. |
| 19:39:15 | <cads> | koz_, you really invented one of those algorithms with great asymptotics but ludicrous constants? did you have to go out of your way to do it, or did it get revealed gradually in a hilarious and/or disappointing way? |
| 19:39:24 | <koz_> | cads: Yep! |
| 19:39:32 | <monochrom> | Apparently "fast enough" is very much enough. |
| 19:39:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 19:39:41 | <koz_> | The idea was basically hitting it with a divide-and-conquer hammer. |
| 19:39:48 | × | blankhart quits (~blankhart@c-71-232-98-152.hsd1.ma.comcast.net) (Quit: WeeChat 2.8) |
| 19:39:54 | <koz_> | But said divide and conquer hammering meant constant factors everywhere. |
| 19:39:58 | <zyklotomic> | "stupid" solutions |
| 19:40:17 | <koz_> | So while it manages the impressive feat of having a time complexity dependendent on log^*(n), it's totally useless. |
| 19:40:25 | <jle`> | solutions can be bad or good, but what makes them bad or good is more than just their asymptotic complexity... |
| 19:40:33 | <koz_> | jle`: Fredkin trie anyone? :P |
| 19:40:38 | <koz_> | (Fibonacci heap too I think) |
| 19:41:12 | <cads> | imo the dumber I can make a solution and it's still robust and meets the spec, the more favor I give to anyone (including myself) who will have to touch the code later |
| 19:41:24 | <koz_> | Yeah, readability is a big thing too. |
| 19:41:50 | <koz_> | I think it was Sussman who famously said 'Code is written primarily for people to read and only incidentally for a machine to execute'? |
| 19:41:56 | → | et09 joins (~et09@unaffiliated/endolphin) |
| 19:42:12 | <zyklotomic> | then i honestly think these points aren't really hammered into your usual DSA classes then |
| 19:42:22 | <koz_> | zyklotomic: You're telling me! |
| 19:42:25 | <geekosaur> | this is true |
| 19:42:28 | <et09> | i have xmonad which (iirc) is building via stack |
| 19:42:37 | <koz_> | I cannot _count_ the number of arguments I had with the folks I was TAing in those classes for. |
| 19:42:39 | <et09> | https://hackage.haskell.org/package/xmonad-contrib-0.16/docs/XMonad-Actions-GridSelect.html#t:GSConfig curiously this gs_bordercolor can't be found |
| 19:42:43 | <koz_> | On exactly this kind of issue. |
| 19:42:49 | <zyklotomic> | but i definitely am shifting towards agreeing with you all now |
| 19:42:53 | <jle`> | yeah all i hear about in my DSA classes is overthrowing the bourgeoisie |
| 19:42:56 | <et09> | i'm trying to find my local definition of GSConfig |
| 19:43:00 | <koz_> | jle`: ROFL |
| 19:43:10 | <monochrom> | You need to understand that most interview questions are not representative of work environments. |
| 19:43:20 | <koz_> | Very much this. |
| 19:43:30 | <zyklotomic> | yup, it's just kinda disjarring sometimes |
| 19:43:34 | <koz_> | Speaking as someone who had a very nice interview for my current Real Haskell Job For Real Money. |
| 19:43:43 | <koz_> | (I was prepared for the kind of horror shows I've seen and heard about) |
| 19:43:46 | <koz_> | (luckily did not get one) |
| 19:43:52 | → | Tario joins (~Tario@201.192.165.173) |
| 19:43:55 | <koz_> | (_still_ isn't in any way representative of what I am working on now) |
| 19:44:08 | <monochrom> | You also need to understand that a CS exam question only asks "assuming I force you to optimize for big-O, what is the best you can do". But it doesn't ask under what circumstance you should optimize for that. |
| 19:44:13 | <boxscape> | % type Void' :: TYPE (SumRep '[]); newtype Void' = Void' Void' -- is this the only way to have a genuinely uninhabited type? |
| 19:44:13 | <yahb> | boxscape: |
| 19:44:44 | <koz_> | boxscape: I think EmptyDataDeclarations (or something like it) lets you do it more directly? |
| 19:44:55 | <boxscape> | koz_ but then it's a lifted type, so it contains bottom |
| 19:44:56 | <jle`> | i think they're talking about even prohibiting bottom |
| 19:45:16 | <cads> | wait, there are comrades in software engineering classes and they want to overthrow the bourgeousie and also they lack practical software engineering knowledge?! |
| 19:45:26 | <cads> | my comrades! I MUST LEAD! |
| 19:45:36 | <koz_> | boxscape: I see you don't agree with Sir Mix-A-Lot. |
| 19:45:58 | <koz_> | (sorry) |
| 19:45:59 | <boxscape> | koz_ not today |
| 19:46:01 | <koz_> | :P |
| 19:46:07 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@mx-ll-171.5.29-209.dynamic.3bb.co.th) |
| 19:46:15 | <boxscape> | % type Void' :: TYPE (SumRep '[]); newtype Void' = Void' (forall a . a) -- actually it looks like this works, too |
| 19:46:15 | <yahb> | boxscape: |
| 19:46:43 | <zyklotomic> | monochrom: i know i tell myself all that, but you're right, i'm only telling myself, but not actually believing it |
| 19:47:00 | <monochrom> | You need to understand that most interview questions are screening questions to filter out the dumbest 99% of the candidates so the interview can save time. |
| 19:47:02 | × | texasmynsted quits (~texasmyns@212.102.45.112) () |
| 19:47:42 | <cads> | monochrom, also I want to see who has the guts to implement monadic fizzbuzz in a way that fully respects DRY |
| 19:47:48 | <monochrom> | So for example first they ask "write code for fizzbuzz". That immediate filters out the bottom 80%. But this does not mean you write fizzbuzz in production code. Duh. |
| 19:47:55 | × | plakband quits (~plakband@softbank126074182017.bbtec.net) (Quit: WeeChat 2.9) |
| 19:47:55 | <koz_> | It's also worth mentioning that most interviews are incredibly bad at what they claim to be doing. |
| 19:48:08 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 19:48:20 | <monochrom> | Then the 2nd question is "write code for BST insert" and that filters out another 19%. |
| 19:48:26 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 19:48:50 | <monochrom> | And if you're applying for Microsoft, I heard that the 3rd question would be "write an editor from scratch" and that will filter out the remaining 1%. |
| 19:49:01 | <zyklotomic> | lol |
| 19:49:07 | <monochrom> | Does this mean at Microsoft people write editors by hand all the time? |
| 19:49:07 | <hyiltiz> | LMFAO |
| 19:49:26 | <monochrom> | Does that mean they even care? |
| 19:49:38 | <monochrom> | No, it's just a test. |
| 19:49:47 | cads | would be filtered at phase II, because they think BST stands for "bull shit tree", as in "what is this bullshit tree insert you think I'm gonna write for you?" |
| 19:50:17 | → | argent0 joins (~argent0@168.227.97.34) |
| 19:51:02 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@mx-ll-171.5.29-209.dynamic.3bb.co.th) (Ping timeout: 256 seconds) |
| 19:51:06 | <zyklotomic> | true |
| 19:51:14 | <cads> | for writing the editor i would start by forking the vs-code source code, which would actually impress the microsofties |
| 19:51:35 | <zyklotomic> | the harder part to accept which I have slowly started to as a result of this convo though is that sometimes it's not worth the time to over-complify |
| 19:51:42 | <zyklotomic> | if I understood the message correctly |
| 19:51:57 | <zyklotomic> | *in pursuit of performance |
| 19:52:05 | × | britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Client Quit) |
| 19:52:32 | <zyklotomic> | I know "pre-mature optimization is the root of all evil" and all, but maybe this extends to optimization at the cost of clarity / programming efficiency |
| 19:53:25 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 19:53:25 | × | idhugo quits (~idhugo@80-62-117-97-mobile.dk.customer.tdc.net) (Quit: Leaving) |
| 19:53:44 | <monochrom> | OOOHHHH I now understand why Microsoft is happy with releasing vs-code source code for free. |
| 19:53:53 | <monochrom> | They simply stole it from interviewees. |
| 19:53:54 | <cads> | you could try to think in terms of how much you're gonna pay someone for a given line of code. If it's some very optimized code, you'll pay a lot - if that's you maintaining it you'll pay from your own limited time here on this earth. it better be worth it, and unless something is paying you to make the improvement, you're literally marching towards death for no reason, wasting time |
| 19:54:27 | <monochrom> | Well, maybe it's a fair exchange, they pay for interviewee airplane tickets and food and hotel room. |
| 19:54:43 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 19:54:43 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 19:54:46 | <zyklotomic> | well none of that this year lol |
| 19:54:49 | <monochrom> | But at least, not quite employee salary. |
| 19:55:07 | <zyklotomic> | but yeah cads thats kinda depressingly real but.... |
| 19:55:19 | <zyklotomic> | cads: i'll start thinking about that more often |
| 19:55:33 | <hyiltiz> | cads imma remember that quote for life... |
| 19:55:40 | <zyklotomic> | typing into an irc channel on haskell, perfect use of time though! |
| 19:57:07 | <cads> | lol, only listen to my words on their own merit, for I am a huge hypocrite. I spent 3 hours yesterday rewriting a mouse gesture filtering algorithm because "the math wasn't elegant enough" in the original implementation |
| 19:57:27 | → | nuru joins (6dced5cb@109.206.213.203) |
| 19:58:05 | <zyklotomic> | i guess unless you genuinely enjoyed the process |
| 19:58:08 | → | muskratt joins (~dawgbruh@pool-98-110-20-135.cmdnnj.fios.verizon.net) |
| 19:58:25 | <zyklotomic> | time wasnt wasted if you enjoyed it |
| 19:59:07 | <cads> | I mean, yes, I turned 40 lines of hell code into 12 lines that (in my opinion) read like poetry.. but did I /really/ enjoy the process... for example, my hand was going numb because I'm suffering from bad carpal tunnel rn. I could not feel my right hand. Should I /really/ have done that to myself? |
| 19:59:55 | <cads> | lol, who am I kidding, that is what makes my life worth living |
| 20:00:31 | → | conal joins (~conal@64.71.133.70) |
| 20:00:58 | → | alp joins (~alp@2a01:e0a:58b:4920:f8ca:e52d:bace:9aad) |
| 20:02:19 | × | muskratt quits (~dawgbruh@pool-98-110-20-135.cmdnnj.fios.verizon.net) (Client Quit) |
| 20:02:44 | <monochrom> | Awww. Yeah, hurting your hand might not be worth it. |
| 20:03:12 | <monochrom> | If not for that, the learning experience is very valuable. |
| 20:03:38 | × | juuandyy quits (~juuandyy@90.166.144.65) (Quit: Konversation terminated!) |
| 20:03:42 | <zyklotomic> | that sounds interesting though, how does it work |
| 20:03:46 | <boxscape> | % type Product :: forall r q (a :: TYPE r) (b :: TYPE q) . a -> b -> *; type Product a b = Product a b |
| 20:03:47 | <yahb> | boxscape: ; <interactive>:23:58: error:; * Expected a type, but `a' has kind `TYPE r'; * In a standalone kind signature for `Product': forall r q (a :: TYPE r) (b :: TYPE q). a -> b -> *; <interactive>:23:63: error:; * Expected a type, but `b' has kind `TYPE q'; * In a standalone kind signature for `Product': forall r q (a :: TYPE r) (b :: TYPE q). a -> b -> * |
| 20:03:49 | → | christo joins (~chris@81.96.113.213) |
| 20:03:58 | <boxscape> | why does that not work? It seems like (->) is levity polymorphic |
| 20:04:00 | <boxscape> | judging by :k |
| 20:04:06 | × | rcdilorenzo_ quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Quit: rcdilorenzo_) |
| 20:04:23 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 20:05:39 | × | doct0rhu quits (~orctarorg@pool-72-88-158-154.nwrknj.fios.verizon.net) (Quit: Leaving) |
| 20:06:03 | → | doct0rhu joins (~orctarorg@pool-72-88-158-154.nwrknj.fios.verizon.net) |
| 20:06:38 | × | nuru quits (6dced5cb@109.206.213.203) (Remote host closed the connection) |
| 20:07:19 | × | boxscape quits (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) (Quit: Connection closed) |
| 20:07:45 | → | boxscape joins (54a35b08@gateway/web/cgi-irc/kiwiirc.com/ip.84.163.91.8) |
| 20:08:37 | × | rcdilorenzo quits (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) (Client Quit) |
| 20:08:49 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 20:08:51 | → | rcdilorenzo joins (~rcdiloren@cpe-76-182-87-188.nc.res.rr.com) |
| 20:09:08 | → | xcmw joins (~textual@cpe-69-133-55-43.cinci.res.rr.com) |
| 20:09:49 | × | Neo-- quits (~neo@188-230-138-83.dynamic.t-2.net) (Ping timeout: 264 seconds) |
| 20:12:21 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 20:12:27 | <hyiltiz> | How would you fellas deal with teams? I often find myself find pointing out a problem, then leading a discussion about alternative solutions and who does what, then keep reminding people to do their part, and then explicitly stated the application algorithm in more detail or even in psidocode, and even that didn't get them to implement the damn thing just go do it myself... If I'd just had done it myself, i'd probably have done it five times over |
| 20:12:28 | <hyiltiz> | in that time frame... |
| 20:13:19 | <hyiltiz> | Find it very hard to motivate or appreciate a team member when they are passive like a dead meat |
| 20:13:22 | <koz_> | hyiltiz: It depends heavily on who you work with. Having to prod colleagues is a thing I've experienced as both 'extremely necessary' and 'extremely unnecessary' (and everything in-between) depending on the folks involved. |
| 20:13:36 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 20:13:39 | <koz_> | So I'd say 'repeated prodding' may be exactly the right idea. |
| 20:14:06 | <koz_> | For the passive case, definitely prod. |
| 20:14:15 | <koz_> | Since passive folks in my experience _like_ being directed. |
| 20:14:21 | <hyiltiz> | I think dear meat can only be motivated via punishment (I'm take away your salary or something) |
| 20:14:22 | <koz_> | (or at least that's what I've witnessed) |
| 20:14:56 | <koz_> | hyiltiz: I don't think I've ever worked with anyone who needed that kind of motivation. |
| 20:14:59 | <koz_> | Maybe I am lucky. |
| 20:14:59 | <Rembane> | Create a prod-bot! |
| 20:15:16 | <koz_> | Rembane: Basically write 90% of current phone apps. |
| 20:15:17 | <cads> | I don't understand having a subordinate without also having the power to discipline or, if I decide, fire the subordinate |
| 20:15:21 | <koz_> | They're basically prod-bots with UIs. |
| 20:15:22 | <hyiltiz> | But I'd much rather ring inspiration and genuine motivation in them so they actively contribute |
| 20:15:50 | → | conal_ joins (~conal@64.71.133.70) |
| 20:15:52 | <cads> | like I get it happens, and I get it happens a lot, and that it's frustrating when it happens. but WHY would anyone accept a subordinate they cannot fire is beyond me |
| 20:16:07 | <Rembane> | koz_: :D |
| 20:16:09 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Read error: Connection reset by peer) |
| 20:16:21 | <Rembane> | hyiltiz: You need a sword |
| 20:16:24 | <hyiltiz> | cads situation demands... |
| 20:16:35 | × | danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds) |
| 20:16:52 | × | gienah quits (~mwright@gentoo/developer/gienah) (Quit: leaving) |
| 20:17:35 | <hyiltiz> | Massive sword that programs on each swing? |
| 20:17:42 | <hyiltiz> | magic |
| 20:17:46 | → | Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
| 20:18:45 | <Rembane> | The best kind of hacker sword |
| 20:19:06 | <koz_> | Rembane: Swording-as-a-service? |
| 20:19:09 | <koz_> | Internet-of-blades? |
| 20:19:13 | <monochrom> | "hack away with your sword" literally |
| 20:19:19 | <koz_> | Smartblade? |
| 20:19:34 | <hyiltiz> | I'd totally sub to saas |
| 20:20:08 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:20:20 | koz_ | renames Game of Thrones to 'Hackers'. :P |
| 20:20:23 | × | nowhere_man quits (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) (Ping timeout: 272 seconds) |
| 20:21:23 | <hyiltiz> | So no good solution without a sharp sword? |
| 20:22:31 | <cads> | hyiltiz, if the situation demands, I like to make counter demands, and be willing to massively screw things up for the team that won't help me (ie, by walking to a competing team that will give me better resources). Usually just being ready and willing is enough to turn the negotiation and give me what I want. In this case you could leverage to get the meat fired. But probably you just want an understanding between you and the meat, and the |
| 20:22:31 | <cads> | boss can give you that by leaning on them. |
| 20:22:33 | <Rembane> | koz_: Yes! :D |
| 20:24:49 | → | whatisRT joins (~whatisRT@2002:5b41:6a33:0:5e3:170b:26c2:19e9) |
| 20:25:37 | → | revprez_stg joins (~revprez_s@pool-108-49-213-40.bstnma.fios.verizon.net) |
| 20:26:44 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 20:27:30 | <hyiltiz> | Gotcha thx |
| 20:28:58 | × | Entertainment quits (~entertain@104.246.132.210) () |
| 20:30:46 | × | xcmw quits (~textual@cpe-69-133-55-43.cinci.res.rr.com) (Quit: Textual IRC Client: www.textualapp.com) |
| 20:31:18 | × | nehsou^ quits (nehsou@ip98-184-89-2.mc.at.cox.net) () |
| 20:32:54 | → | cosimone joins (~cosimone@93-47-228-249.ip115.fastwebnet.it) |
| 20:32:55 | → | tsrt^ joins (tsrt@ip98-184-89-2.mc.at.cox.net) |
| 20:33:37 | → | LiceoProva joins (~imeil.o@151.42.193.199) |
| 20:33:47 | <LiceoProva> | ciao |
| 20:33:51 | <LiceoProva> | !list |
| 20:33:51 | <monochrom> | LiceoProva: http://okmij.org/ftp |
| 20:33:58 | ← | LiceoProva parts (~imeil.o@151.42.193.199) () |
| 20:34:03 | × | livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds) |
| 20:34:57 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 20:35:04 | → | loller_ joins (uid358106@gateway/web/irccloud.com/x-wqkamkonpztckcgq) |
| 20:35:47 | → | Zialus joins (~RMF@2001:818:de63:c300:211:32ff:fe8d:ad2a) |
| 20:36:45 | × | ComaGrayce[m] quits (commagrays@gateway/shell/matrix.org/x-wpvsucnvgmarcknv) (Ping timeout: 240 seconds) |
| 20:36:45 | × | doct0rhu[m] quits (doct0rhumo@gateway/shell/matrix.org/x-aytbanrbppvolhap) (Ping timeout: 240 seconds) |
| 20:36:45 | × | tersetears[m] quits (tersetears@gateway/shell/matrix.org/x-lglnsokcfrmfsblz) (Ping timeout: 240 seconds) |
| 20:36:45 | × | zerstroyer[m] quits (zerstroyer@gateway/shell/matrix.org/x-pvagwcsgvifvhwvf) (Ping timeout: 240 seconds) |
| 20:36:45 | × | domenkozar[m] quits (domenkozar@NixOS/user/domenkozar) (Ping timeout: 240 seconds) |
| 20:36:49 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Remote host closed the connection) |
| 20:36:53 | × | jtojnar quits (jtojnarmat@gateway/shell/matrix.org/x-sxmbcbyagmdgfbky) (Ping timeout: 244 seconds) |
| 20:36:54 | × | unclechu quits (unclechuma@gateway/shell/matrix.org/x-asdoddomxjfoouxw) (Ping timeout: 244 seconds) |
| 20:36:54 | × | hsiktas[m] quits (hsiktasmat@gateway/shell/matrix.org/x-wtpesvemtwcuuafs) (Ping timeout: 244 seconds) |
| 20:36:54 | × | siraben quits (sirabenmat@gateway/shell/matrix.org/x-tkxpiikugikainiv) (Ping timeout: 244 seconds) |
| 20:36:54 | × | sm[m] quits (simonmicma@gateway/shell/matrix.org/x-xomgnngasooluobu) (Ping timeout: 244 seconds) |
| 20:36:57 | × | itai33[m] quits (itai33matr@gateway/shell/matrix.org/x-frldueosxtaonyqo) (Ping timeout: 246 seconds) |
| 20:36:57 | × | srid quits (sridmatrix@gateway/shell/matrix.org/x-apaqawlqzgkodtqd) (Ping timeout: 246 seconds) |
| 20:36:57 | × | BenSima[m] quits (bensimatim@gateway/shell/matrix.org/x-uoybmhbnttuhdmnm) (Ping timeout: 246 seconds) |
| 20:36:57 | × | dyniec[m] quits (dyniecmatr@gateway/shell/matrix.org/x-wodmmdskrlskbezg) (Ping timeout: 246 seconds) |
| 20:36:57 | × | falling-edge[m] quits (falling-ed@gateway/shell/matrix.org/x-wprvacjwbjixwxio) (Ping timeout: 246 seconds) |
| 20:36:57 | × | wi[m] quits (w1gzmatrix@gateway/shell/matrix.org/x-ycgeajchfpkrzfcx) (Ping timeout: 246 seconds) |
| 20:36:58 | × | aloiscochard[m] quits (aloiscocha@gateway/shell/matrix.org/x-nmroubrbcectjnbg) (Ping timeout: 246 seconds) |
| 20:36:58 | × | PotatoHatsue quits (berbermanp@gateway/shell/matrix.org/x-znkywhldbhzbhgen) (Ping timeout: 246 seconds) |
| 20:36:58 | × | dominicusin[m] quits (dominicusi@gateway/shell/matrix.org/x-nryovwrdbgvjplzc) (Ping timeout: 246 seconds) |
| 20:36:58 | × | motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Ping timeout: 272 seconds) |
| 20:36:58 | × | Noughtmare[m] quits (naughtmare@gateway/shell/matrix.org/x-euxykteztfgdzjor) (Ping timeout: 244 seconds) |
| 20:37:02 | × | lambdaclan quits (lambdaclan@gateway/shell/matrix.org/x-esnqerudyklmnsrh) (Ping timeout: 260 seconds) |
| 20:37:13 | × | Hanma[m] quits (hanmamatri@gateway/shell/matrix.org/x-ihxxyuaewqpuhxbt) (Ping timeout: 260 seconds) |
| 20:37:13 | × | drozdziak1 quits (drozdziak1@gateway/shell/matrix.org/x-zhcszongpwzqffkh) (Ping timeout: 260 seconds) |
| 20:37:14 | × | CRTified[m] quits (schnecfkru@gateway/shell/matrix.org/x-ofgzvldlqelcywuc) (Ping timeout: 264 seconds) |
| 20:37:24 | × | pqwy[m] quits (pqwymatrix@gateway/shell/matrix.org/x-bcyejxklqcfnaxbi) (Ping timeout: 240 seconds) |
| 20:37:25 | × | andreabedini[m] quits (andreabedi@gateway/shell/matrix.org/x-sjrrvynkcmmwxcjs) (Ping timeout: 244 seconds) |
| 20:37:29 | × | themsay[m] quits (themsaymat@gateway/shell/matrix.org/x-ysvioopzcvcuuyvd) (Ping timeout: 272 seconds) |
| 20:37:29 | × | hyiltiz-M quits (hyiltizkde@gateway/shell/kde/matrix/x-zvgetfbstubrdqzf) (Ping timeout: 244 seconds) |
| 20:37:32 | × | jesser[m] quits (jessermatr@gateway/shell/matrix.org/x-nwocmlqbhptovmvw) (Ping timeout: 260 seconds) |
| 20:37:32 | × | berberman[T] quits (berberma4@gateway/shell/matrix.org/x-zmodyatzyvhzifry) (Ping timeout: 260 seconds) |
| 20:37:33 | × | rednaZ[m] quits (r3dnazmatr@gateway/shell/matrix.org/x-nvfucrymxqacpiao) (Ping timeout: 260 seconds) |
| 20:37:33 | × | theduke quits (thedukem1@gateway/shell/matrix.org/x-kbbklisittpzjvkk) (Ping timeout: 260 seconds) |
| 20:37:33 | × | johnnyboy[m] quits (gifumatrix@gateway/shell/matrix.org/x-jjlcducyrjlzkhlt) (Ping timeout: 260 seconds) |
| 20:37:35 | × | mang0[m] quits (dea223matr@gateway/shell/matrix.org/x-oxzuzzbshfcdgowx) (Ping timeout: 268 seconds) |
| 20:37:36 | × | alephu5[m] quits (alephu5mat@gateway/shell/matrix.org/x-gipdmcyuqaltnaqr) (Ping timeout: 268 seconds) |
| 20:37:36 | × | mikr[m] quits (mikrdavral@gateway/shell/matrix.org/x-xnldjrbcvidcizev) (Ping timeout: 268 seconds) |
| 20:37:36 | × | jkaye[m] quits (jkayematri@gateway/shell/matrix.org/x-ltlmepvlghffnhdw) (Ping timeout: 268 seconds) |
| 20:37:36 | × | patier[m] quits (patiermatr@gateway/shell/matrix.org/x-fvcsayzftiumvnvp) (Ping timeout: 268 seconds) |
| 20:37:36 | × | ThaEwat quits (thaewraptm@gateway/shell/matrix.org/x-rtowccvvmfqlygti) (Ping timeout: 268 seconds) |
| 20:37:44 | × | camlriot42 quits (camlriotma@gateway/shell/matrix.org/x-dszwkgezlvpwptvk) (Ping timeout: 240 seconds) |
| 20:37:48 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 20:37:50 | × | maralorn quits (maralornma@gateway/shell/matrix.org/x-texxocacqxllhpup) (Ping timeout: 264 seconds) |
| 20:37:50 | × | lnxw37d4 quits (lnxw37d4ma@gateway/shell/matrix.org/x-ukqcbfsgmccbpdxz) (Ping timeout: 264 seconds) |
| 20:37:55 | × | alexfmpe quits (alexfmpema@gateway/shell/matrix.org/x-vumyyhvaurdbeexr) (Ping timeout: 244 seconds) |
| 20:37:55 | × | michaelpj quits (michaelpjm@gateway/shell/matrix.org/x-isbbleoraguftwpl) (Ping timeout: 244 seconds) |
| 20:38:00 | × | TekShifter[m] quits (tekshifter@gateway/shell/matrix.org/x-jgtfubkitlckvzls) (Ping timeout: 246 seconds) |
| 20:38:00 | × | rab24ack[m] quits (rab24ackma@gateway/shell/matrix.org/x-wbflzldjessbqugl) (Ping timeout: 246 seconds) |
| 20:38:05 | × | psydruid quits (psydruidma@gateway/shell/matrix.org/x-gdvihwcfiajbrbzn) (Ping timeout: 240 seconds) |
| 20:38:07 | × | Ericson2314 quits (ericson231@gateway/shell/matrix.org/x-ckcitsrjoxxkqbcd) (Ping timeout: 260 seconds) |
| 20:38:07 | × | iinuwa quits (iinuwamatr@gateway/shell/matrix.org/x-xphebgqwlqcseskv) (Ping timeout: 260 seconds) |
| 20:38:12 | × | kadoban quits (kadobanmat@gateway/shell/matrix.org/x-ihijirqqlozywxkc) (Ping timeout: 268 seconds) |
| 20:38:12 | × | jeffcasavant[m] quits (jeffcasava@gateway/shell/matrix.org/x-rmfoljfsgzwwaqzw) (Ping timeout: 268 seconds) |
| 20:38:12 | × | boistordu quits (boistordum@gateway/shell/matrix.org/x-octelcfxsnkvakgd) (Ping timeout: 268 seconds) |
| 20:38:45 | × | SlackIntegration quits (slackbotma@gateway/shell/matrix.org/x-uxjtxhvnhsvwzafd) (Ping timeout: 272 seconds) |
| 20:38:53 | → | Entertainment joins (~entertain@104.246.132.210) |
| 20:39:17 | × | psamim quits (samimpmatr@gateway/shell/matrix.org/x-iwvzbluhzuztthuh) (Ping timeout: 260 seconds) |
| 20:39:20 | → | motherfsck joins (~motherfsc@unaffiliated/motherfsck) |
| 20:39:28 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 246 seconds) |
| 20:41:06 | × | fgaz quits (fgazmatrix@gateway/shell/matrix.org/x-ypwwwiayrbbyifnk) (Ping timeout: 244 seconds) |
| 20:42:27 | × | Vulfe quits (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) (Ping timeout: 260 seconds) |
| 20:43:36 | × | conal_ quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 20:45:41 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 20:45:46 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-bjtotidkjwptzxld) |
| 20:46:15 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 20:47:00 | → | conal joins (~conal@64.71.133.70) |
| 20:47:08 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 20:48:08 | → | thelounge7121 joins (c1207eea@gateway/web/thelounge/ip.193.32.126.234) |
| 20:49:38 | × | Entertainment quits (~entertain@104.246.132.210) () |
| 20:49:46 | ← | et09 parts (~et09@unaffiliated/endolphin) () |
| 20:54:35 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:57:15 | → | Tario joins (~Tario@201.192.165.173) |
| 20:57:34 | → | alexfmpe joins (alexfmpema@gateway/shell/matrix.org/x-dharghhrczrbdwpt) |
| 20:57:35 | → | zerstroyer[m] joins (zerstroyer@gateway/shell/matrix.org/x-uvziduqqpveqecsi) |
| 20:57:39 | → | doct0rhu[m] joins (doct0rhumo@gateway/shell/matrix.org/x-tjezwjmljqaegekd) |
| 20:57:40 | → | hsiktas[m] joins (hsiktasmat@gateway/shell/matrix.org/x-nbwomcltkxmmxmak) |
| 20:57:49 | → | TekShifter[m] joins (tekshifter@gateway/shell/matrix.org/x-pjjmyvioalvivqgb) |
| 20:57:49 | → | falling-edge[m] joins (falling-ed@gateway/shell/matrix.org/x-raeghvrbhfpgtupx) |
| 20:57:50 | → | dyniec[m] joins (dyniecmatr@gateway/shell/matrix.org/x-axzvldhyxjesbgkx) |
| 20:57:50 | → | dominicusin[m] joins (dominicusi@gateway/shell/matrix.org/x-vcoaftteusesgvai) |
| 20:57:51 | → | BenSima[m] joins (bensimatim@gateway/shell/matrix.org/x-umqofddrxzxxxopi) |
| 20:58:18 | → | camlriot42 joins (camlriotma@gateway/shell/matrix.org/x-qnrookqqtxtksytk) |
| 20:58:51 | → | srid joins (sridmatrix@gateway/shell/matrix.org/x-ihrygjdlnbozwtjk) |
| 20:58:59 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 20:59:22 | → | ComaGrayce[m] joins (commagrays@gateway/shell/matrix.org/x-rgzepedcrcqimjdb) |
| 20:59:23 | → | themsay[m] joins (themsaymat@gateway/shell/matrix.org/x-ntvrkrbtrqlxxjfp) |
| 20:59:25 | → | Vulfe joins (~vulfe@2600:1702:31b0:34e0:69cb:4c40:655a:5f75) |
| 20:59:36 | → | itai33[m] joins (itai33matr@gateway/shell/matrix.org/x-hbawltlorgahcecl) |
| 20:59:38 | → | wi[m] joins (w1gzmatrix@gateway/shell/matrix.org/x-hvilmvtprutlggan) |
| 20:59:38 | → | aloiscochard[m] joins (aloiscocha@gateway/shell/matrix.org/x-pkhjmcxyixjezljv) |
| 20:59:38 | → | tersetears[m] joins (tersetears@gateway/shell/matrix.org/x-gskureyyzbunuhmw) |
| 21:01:39 | → | psydruid joins (psydruidma@gateway/shell/matrix.org/x-xrerkddykdfqobox) |
| 21:01:41 | → | domenkozar[m] joins (domenkozar@NixOS/user/domenkozar) |
| 21:02:09 | → | unclechu joins (unclechuma@gateway/shell/matrix.org/x-pgxospnfpnngufam) |
| 21:03:10 | → | jtojnar joins (jtojnarmat@gateway/shell/matrix.org/x-odbepyltoezqkxgi) |
| 21:03:54 | → | CRTified[m] joins (schnecfkru@gateway/shell/matrix.org/x-pojsifoicrnfbiru) |
| 21:04:14 | → | hyiltiz-M joins (hyiltizkde@gateway/shell/kde/matrix/x-antijvnmdrsgjnly) |
| 21:04:22 | × | whatisRT quits (~whatisRT@2002:5b41:6a33:0:5e3:170b:26c2:19e9) (Ping timeout: 260 seconds) |
| 21:04:32 | → | kadoban joins (kadobanmat@gateway/shell/matrix.org/x-smliontovhsjofmu) |
| 21:04:33 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 21:04:37 | → | patier[m] joins (patiermatr@gateway/shell/matrix.org/x-vlhbzdwxhpzvyynq) |
| 21:04:42 | × | elliott_ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
| 21:05:00 | → | mang0[m] joins (dea223matr@gateway/shell/matrix.org/x-mptmksumjgntagzy) |
| 21:05:01 | → | jkaye[m] joins (jkayematri@gateway/shell/matrix.org/x-skotoydfoufsqldx) |
| 21:05:01 | → | mikr[m] joins (mikrdavral@gateway/shell/matrix.org/x-knmpvjrudfvaghww) |
| 21:05:02 | → | alephu5[m] joins (alephu5mat@gateway/shell/matrix.org/x-aercnrduxrfbvkwy) |
| 21:05:17 | → | siraben joins (sirabenmat@gateway/shell/matrix.org/x-zqeievqiualvamus) |
| 21:05:21 | → | elliott_ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) |
| 21:05:24 | → | boistordu joins (boistordum@gateway/shell/matrix.org/x-qisdfgjhwtgbhgjm) |
| 21:05:49 | → | ThaEwat joins (thaewraptm@gateway/shell/matrix.org/x-hwkysomttqzqctxo) |
| 21:05:56 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 21:05:58 | → | sm[m] joins (simonmicma@gateway/shell/matrix.org/x-pnthkezdxbpznobc) |
| 21:06:04 | → | PotatoHatsue joins (berbermanp@gateway/shell/matrix.org/x-pgpiepqlttziknti) |
| 21:06:46 | → | Hanma[m] joins (hanmamatri@gateway/shell/matrix.org/x-gsuncxeehyodgkwd) |
| 21:06:53 | → | drozdziak1 joins (drozdziak1@gateway/shell/matrix.org/x-yctuipwfnhbsurol) |
| 21:09:51 | → | lambdaclan joins (lambdaclan@gateway/shell/matrix.org/x-bcmaxmksxtqadatv) |
| 21:10:29 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 260 seconds) |
| 21:10:36 | × | zyklotomic quits (~ethan@unaffiliated/chocopuff) (Ping timeout: 240 seconds) |
| 21:11:21 | → | jesser[m] joins (jessermatr@gateway/shell/matrix.org/x-sjfbluokfqydziao) |
| 21:11:23 | → | iinuwa joins (iinuwamatr@gateway/shell/matrix.org/x-ipassifbnrgnzhtq) |
| 21:11:25 | → | psamim joins (samimpmatr@gateway/shell/matrix.org/x-krmmfkjnfdrrbytd) |
| 21:11:29 | → | rednaZ[m] joins (r3dnazmatr@gateway/shell/matrix.org/x-ucrtzpurrvrdgbsf) |
| 21:11:45 | → | johnnyboy[m] joins (gifumatrix@gateway/shell/matrix.org/x-vacyeklvxcuwrdpb) |
| 21:11:56 | → | jonatanb joins (jonatanb@gateway/vpn/protonvpn/jonatanb) |
| 21:12:00 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 21:12:28 | → | berberman[T] joins (berberma4@gateway/shell/matrix.org/x-frqpzbxlqadgittv) |
| 21:12:41 | → | zyklotomic joins (~ethan@210.13.104.210) |
| 21:14:03 | → | fgaz joins (fgazmatrix@gateway/shell/matrix.org/x-urmkblempjoidfpt) |
| 21:14:12 | → | maralorn joins (maralornma@gateway/shell/matrix.org/x-qiuviuxllrzzhqdo) |
| 21:14:13 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 21:14:43 | → | andreabedini[m] joins (andreabedi@gateway/shell/matrix.org/x-lbginztlvjpljpan) |
| 21:17:02 | → | lnxw37d4 joins (lnxw37d4ma@gateway/shell/matrix.org/x-dlqnhxhuabqsxfuc) |
| 21:17:10 | → | softwarm joins (4408f588@ip68-8-245-136.sd.sd.cox.net) |
| 21:17:29 | → | michaelpj joins (michaelpjm@gateway/shell/matrix.org/x-gxhxrzrfmkyfygya) |
| 21:17:59 | → | jeffcasavant[m] joins (jeffcasava@gateway/shell/matrix.org/x-ocdaojbqtvzkcwus) |
| 21:18:11 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 21:18:23 | → | theduke joins (thedukem1@gateway/shell/matrix.org/x-sexqsjdnjitytpbp) |
| 21:18:32 | → | rab24ack[m] joins (rab24ackma@gateway/shell/matrix.org/x-auwpzeruqhjinztt) |
| 21:18:33 | → | britva joins (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) |
| 21:18:34 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 21:18:49 | × | p-core quits (~Thunderbi@cst-prg-99-198.cust.vodafone.cz) (Ping timeout: 264 seconds) |
| 21:18:51 | → | Ericson2314 joins (ericson231@gateway/shell/matrix.org/x-tpaglddbbaarshkp) |
| 21:18:55 | → | pqwy[m] joins (pqwymatrix@gateway/shell/matrix.org/x-lqkhfpwghttgzcww) |
| 21:20:58 | → | BlackCapCoder joins (~blackcap@48.80-203-23.nextgentel.com) |
| 21:21:02 | × | mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Quit: mputz) |
| 21:21:17 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) |
| 21:23:09 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
| 21:23:59 | × | dxld quits (~dxld@rush.pub.dxld.at) (Quit: Bye) |
| 21:24:34 | → | Sayless joins (~seiless@45.132.225.91) |
| 21:24:37 | × | mananamenos quits (~mananamen@vpn236-24.vpns.upv.es) (Read error: Connection reset by peer) |
| 21:24:37 | → | dxld joins (~dxld@rush.pub.dxld.at) |
| 21:26:34 | × | hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 256 seconds) |
| 21:29:05 | × | urek__ quits (~urek@2804:7f1:e10a:a8d:a85d:6d9e:3db:9450) (Ping timeout: 246 seconds) |
| 21:30:47 | → | son0p joins (~son0p@181.136.122.143) |
| 21:32:13 | × | neiluj quits (~jco@unaffiliated/neiluj) (Quit: leaving) |
| 21:32:29 | → | texasmynsted joins (~texasmyns@212.102.45.112) |
| 21:32:35 | → | abhixec joins (~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) |
| 21:38:23 | → | conal joins (~conal@64.71.133.70) |
| 21:39:12 | × | geekosaur quits (82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection) |
| 21:40:20 | × | coot quits (~coot@37.30.53.191.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 21:42:34 | × | softwarm quits (4408f588@ip68-8-245-136.sd.sd.cox.net) (Ping timeout: 245 seconds) |
| 21:45:38 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 21:48:46 | × | grdvnl quits (~gdrvnl@cpe-76-94-36-134.socal.res.rr.com) (Quit: Leaving) |
| 21:48:54 | × | britva quits (~britva@2a02:aa13:7240:2980:c416:eb6b:963d:a119) (Quit: This computer has gone to sleep) |
| 21:49:04 | → | grdvnl joins (~gdrvnl@cpe-76-94-36-134.socal.res.rr.com) |
| 21:49:10 | × | jonatanb quits (jonatanb@gateway/vpn/protonvpn/jonatanb) (Remote host closed the connection) |
| 21:54:03 | → | joaj joins (~joaj@2001:818:e326:8200:5273:55b7:3a86:e6ca) |
| 21:54:18 | ← | zyklotomic parts (~ethan@210.13.104.210) ("WeeChat 2.9") |
| 21:54:35 | × | johnw quits (~johnw@haskell/developer/johnw) (Quit: ZNC - http://znc.in) |
| 21:55:16 | × | Jeanne-Kamikaze quits (~Jeanne-Ka@66.115.189.235) (Ping timeout: 240 seconds) |
| 21:57:13 | × | motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Ping timeout: 264 seconds) |
| 21:58:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 22:00:04 | → | motherfsck joins (~motherfsc@68.235.43.102) |
| 22:00:30 | → | Rudd0 joins (~Rudd0@185.189.115.98) |
| 22:00:40 | → | mouseghost joins (~draco@87-206-9-185.dynamic.chello.pl) |
| 22:00:40 | × | mouseghost quits (~draco@87-206-9-185.dynamic.chello.pl) (Changing host) |
| 22:00:40 | → | mouseghost joins (~draco@wikipedia/desperek) |
| 22:05:31 | → | urek__ joins (~urek@2804:7f1:e10a:a8d:a85d:6d9e:3db:9450) |
| 22:06:50 | → | drincruz_ joins (~adriancru@ool-44c748be.dyn.optonline.net) |
| 22:09:58 | × | motherfsck quits (~motherfsc@68.235.43.102) (Remote host closed the connection) |
| 22:13:52 | × | falafel quits (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) (Ping timeout: 272 seconds) |
| 22:14:06 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 22:15:12 | <cads> | https://gist.github.com/maxsu/db9b0182b1d95225965a00b29684fce8 |
| 22:15:37 | <cads> | I have turned my import syntax into a proposal draft! |
| 22:15:59 | → | conal joins (~conal@64.71.133.70) |
| 22:16:31 | <cads> | the section on prior work needs /special/ attention, since I'm almost surely reinventing a wheel here |
| 22:17:05 | <tomsmeding> | cads: "import list (intercalate, sort)" -- typo, List not list |
| 22:17:14 | <cads> | thanks! |
| 22:17:16 | <tomsmeding> | well, Data.List |
| 22:17:45 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:18:40 | <tomsmeding> | in general you may want make explicit that you're using lowercase module names as placeholders |
| 22:18:42 | <dminuoso> | cads: My two cents on the draft: I. does not really help much, you save a few mentions of `imports` at the cost of not clearly seeing what module you import identifiers from. |
| 22:20:00 | <dminuoso> | Say you have `import A.B.C, E.F.G, H.I.J, K.L.K (foo, bar), (quux), (baz doodle) ...` it becomes very hard to know where to modify import lists. Which import refers to what module? I dont know. |
| 22:20:16 | <dminuoso> | If the point is to save `import` that suggests its only valuable if you actually use it multiple itmes. |
| 22:20:20 | → | knupfer joins (~Thunderbi@200116b82c2c6000b00585fffef340d5.dip.versatel-1u1.de) |
| 22:20:23 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 22:20:24 | <dminuoso> | But that greatly decreases readability |
| 22:20:52 | <cads> | yeah, there's a cart before the horse problem there - the real innovation as I see it is part II, and the concept of import lists is something I introduced to support the concept of an import list that is prefixed by some module or namespace |
| 22:21:58 | → | sh9 joins (~sh9@softbank060116136158.bbtec.net) |
| 22:22:16 | <dminuoso> | As for part II, I can see the potential merit. I'd *much* prefer you dont put the `from Data` at the end, but at the beginning instead. |
| 22:22:35 | <dminuoso> | So you might write `from Data import ...` |
| 22:22:44 | × | knupfer quits (~Thunderbi@200116b82c2c6000b00585fffef340d5.dip.versatel-1u1.de) (Remote host closed the connection) |
| 22:22:52 | → | knupfer joins (~Thunderbi@200116b82c2c6000b8f3e6f0b0d04c82.dip.versatel-1u1.de) |
| 22:23:23 | → | nowhere_man joins (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) |
| 22:23:23 | <cads> | nice |
| 22:23:25 | <dminuoso> | That seems far more reasonable, since it visually still respects the hierarchy (the referenced module comes first, and then the relative imports), and it makes it painstakingly immediately obvious what the following bulk is for |
| 22:23:28 | × | julm quits (~julm@revolt129.abo.ilico.org) (Ping timeout: 256 seconds) |
| 22:23:39 | <boxscape> | hm how about import Data.(List, Functor, Bifunctor) |
| 22:23:46 | × | nowhere_man quits (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) (Client Quit) |
| 22:24:15 | <boxscape> | ...I guess that might make import Lists hard to look at |
| 22:24:54 | <dminuoso> | cads: One important thing here: If you make this an actual proposal, the syntax must be acceptable or it'll be shot down for poor ergonomics. I think its even an official rule that syntax is not for debate in a proposal. |
| 22:25:09 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 260 seconds) |
| 22:25:12 | <dminuoso> | (Because it'd just lead to bike shedding) |
| 22:25:36 | <boxscape> | if that is a rule it's broken quite a bit |
| 22:26:11 | <tomsmeding> | re:"from" at the beginning: see python import syntax |
| 22:26:22 | <tomsmeding> | about prior art: both python and rust have similar things |
| 22:26:25 | <cads> | lol, I don't understand what you mean - as in I'd have to write a grammar for my extensions? that seems pretty fair and obvious - I wouldn't write a proposal unless I had a EBNF and a working implementation |
| 22:26:44 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:26:44 | <cads> | do you mean something more stringent/ |
| 22:27:18 | <dolio> | It means it actually has to be a good grammar, I think. |
| 22:27:37 | <cads> | as in the grammar also has to flow with haskell ergonomics? I think i can hit that target too, for all that I generally think haskell doesn't /have/ ergonomics (and I'm trying to introduce them) |
| 22:28:27 | <dolio> | And for instance, putting 'from' at the start of the line is going to complicate the parser even more. |
| 22:28:56 | <dminuoso> | cads: Roughly the haskell committee has a rule that the syntax of a proposal is _automatically accepted_ and not up for debate. |
| 22:29:38 | <boxscape> | dminuoso I don't think that's right |
| 22:30:09 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) (Remote host closed the connection) |
| 22:30:10 | × | chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer) |
| 22:30:25 | → | chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) |
| 22:30:30 | <boxscape> | syntax gets debated a lot in the proposal discussion as well as in the steering comittee mailing list, and I haven't been able to find such a rule |
| 22:30:41 | <dminuoso> | Mmm, that's what I heard actually |
| 22:30:46 | <cads> | automatically based on what criterion? also I don't understand who this committee is or why I would care - the proposal is for a standalone extension that someone can run if they wanna. It's not like I'd want the committee to maintain it or include it with ghc |
| 22:30:49 | dminuoso | thinks monochrom might have said this? |
| 22:31:18 | <dminuoso> | Anyway |
| 22:31:37 | <cads> | if it's useful to me I'll go ahead and write my internal code against it regardless of what the committee thinks, I mean, doesn't that make sense? |
| 22:31:48 | <dminuoso> | cads: The part II has merit, but the current syntax does not seem to make things any better. I'd say they make it much worse. |
| 22:31:49 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 22:33:51 | <boxscape> | cads if what you're looking to do doesn't involve adding it to the official ghc implementation, you don't have to worry about the proposal process or the committee. Typically, when people say they're writing a proposal, they mean they write a pull request in https://github.com/ghc-proposals/ghc-proposals/pulls outlining the changes they wish to |
| 22:33:52 | <boxscape> | see/implement in the official ghc repo |
| 22:35:37 | <monochrom> | Note that Haskell committee discussion ≠ GHC proposal discussion |
| 22:35:56 | <cads> | I see this becoming a proposal if I end up using it in production and I love it, so in the meantime maybe I shouldn't call it a proposal |
| 22:36:03 | <boxscape> | (I probably should've linked to https://github.com/ghc-proposals/ghc-proposals actually) |
| 22:36:04 | <dminuoso> | Ah |
| 22:36:39 | → | nowhere_man joins (~pierre@2a01:e0a:3c7:60d0:e88f:4e24:f6a7:f155) |
| 22:36:43 | → | julm joins (~julm@revolt129.abo.ilico.org) |
| 22:37:10 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) |
| 22:37:11 | → | motherfsck joins (~motherfsc@unaffiliated/motherfsck) |
| 22:38:36 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 22:40:09 | → | conal joins (~conal@64.71.133.70) |
| 22:40:30 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 22:40:48 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer) |
| 22:40:53 | → | conal joins (~conal@64.71.133.70) |
| 22:41:18 | × | conal quits (~conal@64.71.133.70) (Client Quit) |
| 22:41:27 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 22:41:43 | → | conal joins (~conal@64.71.133.70) |
| 22:46:29 | → | Tops2 joins (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) |
| 22:47:44 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) (Remote host closed the connection) |
| 22:51:56 | <cads> | dminuoso, Check out section V https://gist.github.com/maxsu/db9b0182b1d95225965a00b29684fce8 |
| 22:52:06 | × | jollygood2 quits (~bc8165ab@1582020-static.lxtnkya3.metronetinc.net) (Quit: CGI:IRC (Session timeout)) |
| 22:52:40 | <cads> | now it's so readable I dare say it's /too readable/ ;) Of course I kid (there's no such think as TOO readable) |
| 22:53:59 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 22:54:47 | → | mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) |
| 22:55:03 | <cads> | dminuoso, what I like about your form is that it forced me to add whitespace before and after, and I think the result looks great |
| 22:55:05 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 22:55:29 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 22:58:10 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection) |
| 22:58:24 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:00:10 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
| 23:00:46 | → | kipras joins (~Kipras@78-56-235-39.static.zebra.lt) |
| 23:01:15 | → | jedws joins (~jedws@121.209.181.215) |
| 23:01:24 | <dminuoso> | cads: The major issue either way is introducing a new keyword, something that will be met with much opposition. |
| 23:02:08 | → | softwarm joins (4408f588@ip68-8-245-136.sd.sd.cox.net) |
| 23:03:56 | <cads> | do you know whether template haskell can let us build something like this, without rewriting the core syntax? |
| 23:04:59 | × | son0p quits (~son0p@181.136.122.143) (Remote host closed the connection) |
| 23:06:31 | <arahael> | dminuoso: syntax in a proposal is automatically accepted? What if the syntax is utterly wacky? :D |
| 23:07:18 | × | LKoen quits (~LKoen@73.174.9.109.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 23:07:49 | <cads> | I think dminuoso meant that the committe will automatically apply its totally subjective and techical debt derived preferences to it, is what will automatically happen |
| 23:09:52 | <cads> | but I'm not really bothered by that, since I would be amazed if I'm even still touching haskell in 3 months, let alone if I have authored a standards compliant language proposal. |
| 23:10:47 | <cads> | What you're seeing now is me desperately trying to make haskell into a language I can look at on a daily basis without wanting physically to leave this planet |
| 23:16:22 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:17:20 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 23:18:07 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection) |
| 23:18:55 | × | dustypacer quits (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4) (Remote host closed the connection) |
| 23:19:25 | → | dustypacer joins (~pi@2600:6c50:80:2f4a:e9d0:6569:1cea:d1d4) |
| 23:19:41 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 23:20:11 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: fuzzypixelz) |
| 23:20:45 | <dminuoso> | cads: No, TH does not. |
| 23:21:01 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection) |
| 23:21:05 | <dminuoso> | It lets you add top level declaration, you cant modify the module declaration itself. |
| 23:21:43 | <dminuoso> | In my eyes, the relatively verbose import lists are a nuissance at best. |
| 23:23:18 | → | conal joins (~conal@64.71.133.70) |
| 23:23:28 | <dolio> | The * thing seems like it's going to be confusing, too. |
| 23:23:37 | <cads> | yeah I hate the * thing |
| 23:24:23 | <cads> | alternative is to force a separate line for the module itself, which I'm honestly fine with being that it's an intermediary step that I'd have to implement anyways |
| 23:25:07 | <cads> | I really just want to relieve my poor eyes from that god awful import import import Data. Data. Data. |
| 23:25:24 | → | falafel joins (~falafel@pool-71-182-130-97.pitbpa.fios.verizon.net) |
| 23:25:24 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 23:25:36 | <cads> | some folks skim past that kind of line noise, but for me it causes me to become blind to the content of that code |
| 23:25:47 | × | knupfer quits (~Thunderbi@200116b82c2c6000b8f3e6f0b0d04c82.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 23:26:04 | <dminuoso> | Luckily the import statements are at the top. |
| 23:26:14 | <dminuoso> | So they are separate from the actual code that we tend to care about. |
| 23:27:37 | <cads> | still doesn't help. If I'm auditing 10 files, that's 10 mangled imports I have to parse with my poor dyslexic brain and I've just reached a point where I'd rather just change the compiler |
| 23:28:06 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:28:27 | <texasmynsted> | cads are you still fighting the imports? |
| 23:28:28 | <sm[m]> | cads: in a little while this feeling will weaken :) |
| 23:28:40 | <sm[m]> | just hang in there |
| 23:29:04 | <cads> | sm[m], nah, it won't go away, I'll just make a patch and run it in my org, because I am the boss. |
| 23:29:26 | <texasmynsted> | just put all the imports at the top and set a marker at the end of them. Then rather than start at the top, start at the marker. |
| 23:29:31 | <cads> | and if you wanna help you can, but I invite you to stop discouraging me ;) |
| 23:30:01 | <texasmynsted> | cads, I would appreciate it if you would write an import consolidator. |
| 23:30:15 | <texasmynsted> | or something that would automatically split code out into modules |
| 23:30:37 | <texasmynsted> | That would be really helpful. I would use it straight away. |
| 23:30:48 | → | gienah joins (~mwright@gentoo/developer/gienah) |
| 23:31:00 | <sm[m]> | I'm encouraging you. By all means continue, I support your making things better. cads++ |
| 23:31:08 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 23:32:09 | texasmynsted | reading scrollback |
| 23:32:31 | → | Tops21 joins (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) |
| 23:32:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 23:32:57 | <dminuoso> | cads: I dont care either way, really. Assuming you proposed it, it got accepted, and somebody implemented it, I likely wouldn't turn it on anyway. |
| 23:33:02 | <dminuoso> | Nothing forces me to. :) |
| 23:33:20 | <boxscape> | cads are you envisioning writing a preprocessor, ghc plugin, or to work ghc? |
| 23:33:23 | <boxscape> | s/work/fork |
| 23:33:44 | <texasmynsted> | please update fourmolu to parse it also |
| 23:34:10 | → | conal joins (~conal@64.71.133.70) |
| 23:34:16 | <texasmynsted> | because if fourmolu will not parse it, I will not use it. |
| 23:35:04 | <texasmynsted> | need to go but cads I am curious what languages you normally use. |
| 23:35:08 | <cads> | the cheapest, hackiest implementation I can learn about - preprocessor is probably able to let me do it with 2 regexes buuuuut. That's too cheap I think. I think I need to work with the lexer and parser, so maybe a plugin is the cheapest (lowest cost of ownership) option |
| 23:35:31 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 246 seconds) |
| 23:35:31 | × | Tops2 quits (~Tobias@dyndsl-091-249-083-001.ewe-ip-backbone.de) (Ping timeout: 246 seconds) |
| 23:35:39 | × | matryoshka quits (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) (Quit: ZNC 1.8.2 - https://znc.in) |
| 23:36:04 | <boxscape> | cads looking at https://hackage.haskell.org/package/ghc-8.10.1/docs/Plugins.html#g:7 it looks like the earliest point that plugins can change something is *after* the parser is run, but I haven't tried writing one so that might be wrong |
| 23:36:13 | <dminuoso> | I found that grouping by inserting newlines between groups and having emacs execute a specially configured stylish-haskell to only sort import groups makes most of import list stuff quite bearable. |
| 23:36:14 | <cads> | texasmynsted, I normally model stuff in pure category theory and then tell folks what to implement, but in the last year I've been building a cad geometry processing system in python, and running my company on it |
| 23:36:31 | <texasmynsted> | nice |
| 23:36:36 | → | matryoshka joins (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) |
| 23:37:00 | <texasmynsted> | I hope you are here later so I can find more about this. Talk with you later. |
| 23:37:30 | <cads> | boxscape, thanks, that kind of intelligence is hard for me to gather since there's so much to learn |
| 23:38:06 | × | wwwww quits (~wwwww@unaffiliated/wwwww) (Ping timeout: 272 seconds) |
| 23:38:14 | <cads> | you know, for code that I can personally babysit, a preprocessor regex is not THAT hard |
| 23:39:49 | × | hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 264 seconds) |
| 23:39:57 | → | wwwww joins (~wwwww@unaffiliated/wwwww) |
| 23:40:03 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 23:41:06 | × | drincruz_ quits (~adriancru@ool-44c748be.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 23:41:25 | <cads> | basically I want a lexer that rejects anything but my special import statement language. That queues up some importdecl tokens, and I re-emit those as well formed standard import statements. |
| 23:41:43 | <dminuoso> | cads: You can define a custom preprocessor in GHC |
| 23:41:50 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 23:41:53 | <cads> | lol |
| 23:42:10 | <cads> | these kinds of tips save me literally hours, I thank you |
| 23:42:16 | <dminuoso> | See -F and -optF in the GHC manual respectively |
| 23:42:43 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 23:43:22 | <cads> | I don't think I even have to write it as a lexer -> parser -> transformer. I could /probably/ write it all as a single sed command if I was being sadistic |
| 23:44:26 | <cads> | I will look at some sample preprocessors instead, because I'm gonna regret it down the line (such as when I share the code for collaborator assistance) if I use regex |
| 23:45:22 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 23:45:56 | <cads> | https://github.com/ghc-proposals/ghc-proposals/blob/3dfec03b11e8829d7febbb7290c3183f752466d7/proposals/0190-module-qualified-syntax.rst |
| 23:46:12 | <cads> | This looks like a great reference proposal |
| 23:46:12 | × | chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer) |
| 23:46:25 | → | chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) |
| 23:46:56 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer) |
| 23:47:21 | <cads> | discusses the kind of considerations that the community considers, is very clear and short, and it was accepted |
| 23:48:09 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) |
| 23:48:10 | × | haasn quits (~nand@mpv/developer/haasn) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 23:48:35 | → | haasn joins (~nand@mpv/developer/haasn) |
| 23:49:47 | <cads> | I am thinking that I will follow this report format for my internal process, even if the goal is to create a private artefact that only my org will use |
| 23:50:23 | → | hexfive joins (~hexfive@50-47-142-195.evrt.wa.frontiernet.net) |
| 23:52:27 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:52:42 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b8f3:ef0:2eb2:2607) (Ping timeout: 244 seconds) |
| 23:53:42 | → | conal joins (~conal@64.71.133.70) |
| 23:54:32 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: fuzzypixelz) |
| 23:54:49 | × | softwarm quits (4408f588@ip68-8-245-136.sd.sd.cox.net) (Remote host closed the connection) |
| 23:55:09 | → | softwarm joins (4408f588@ip68-8-245-136.sd.sd.cox.net) |
| 23:55:32 | <cads> | dolio, in context of qualified imports, and foreign and unsafe imports (which I don't even want to know the grammar for)... suddenly I sense why you might feel reluctant to load that syntax even more heavily |
| 23:55:59 | <monochrom> | Nice, cabal-install can hint me when I have a typo in a package name. |
| 23:56:22 | <monochrom> | I entered "cabal install --lib quickcheck" and it reminds me "do you mean QuickCheck" |
| 23:56:42 | <monochrom> | Perhaps next version if I enter "cabal install emacs" it will also ask me "do you mean vi" |
| 23:57:06 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 23:57:22 | <monochrom> | You know what, I should put that as a wished feature for the next April 1st version of cabal-install :) |
| 23:57:39 | → | philopsos joins (~caecilius@gateway/tor-sasl/caecilius) |
| 23:58:55 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
All times are in UTC on 2020-12-05.