Logs: freenode/#haskell
| 2020-11-03 22:27:23 | → | alp joins (~alp@2a01:e0a:58b:4920:99ca:9a50:cea9:e213) |
| 2020-11-03 22:27:41 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-03 22:28:09 | × | Jesin quits (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Quit: Leaving) |
| 2020-11-03 22:28:29 | × | sQVe quits (~sQVe@unaffiliated/sqve) (Quit: Bye!) |
| 2020-11-03 22:29:58 | × | Ariakenom quits (~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Quit: Leaving) |
| 2020-11-03 22:30:00 | <hekkaidekapus> | bqv: Yes, the String case is a poster-showcase of what Backpack can do. |
| 2020-11-03 22:30:17 | <bqv> | well, text, in that case, but yeah |
| 2020-11-03 22:30:30 | hackage | pandoc 2.11.1 - Conversion between markup formats https://hackage.haskell.org/package/pandoc-2.11.1 (JohnMacFarlane) |
| 2020-11-03 22:31:01 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Quit: Lost terminal) |
| 2020-11-03 22:32:37 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 265 seconds) |
| 2020-11-03 22:33:02 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 264 seconds) |
| 2020-11-03 22:35:52 | × | tolt quits (~weechat-h@li219-154.members.linode.com) (Quit: WeeChat 2.9) |
| 2020-11-03 22:36:23 | × | elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2020-11-03 22:36:32 | → | gtk joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 2020-11-03 22:37:09 | → | Jesin joins (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) |
| 2020-11-03 22:37:50 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2020-11-03 22:39:23 | × | knupfer quits (~Thunderbi@i59F7FFF1.versanet.de) (Ping timeout: 265 seconds) |
| 2020-11-03 22:39:49 | → | tolt joins (~weechat-h@li219-154.members.linode.com) |
| 2020-11-03 22:40:03 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-03 22:42:07 | → | hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 2020-11-03 22:44:03 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds) |
| 2020-11-03 22:45:08 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds) |
| 2020-11-03 22:45:28 | → | elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) |
| 2020-11-03 22:46:00 | × | tolt quits (~weechat-h@li219-154.members.linode.com) (Quit: WeeChat 2.9) |
| 2020-11-03 22:47:26 | → | tolt joins (~weechat-h@li219-154.members.linode.com) |
| 2020-11-03 22:48:12 | × | Katarushisu quits (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) (Ping timeout: 260 seconds) |
| 2020-11-03 22:48:33 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 2020-11-03 22:49:45 | → | Katarushisu joins (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) |
| 2020-11-03 22:50:58 | <bqv> | geekosaur: do you also dislike classy-prelude? |
| 2020-11-03 22:52:25 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-03 22:52:41 | → | KhoN_1 joins (~KhoN@cm-84.208.147.132.getinternet.no) |
| 2020-11-03 22:52:47 | × | kori quits (~kori@arrowheads/kori) (Quit: WeeChat 2.8) |
| 2020-11-03 22:54:11 | → | brodie_ joins (~brodie@207.53.253.137) |
| 2020-11-03 22:54:41 | × | KhoN quits (~KhoN@cm-84.208.147.132.getinternet.no) (Ping timeout: 268 seconds) |
| 2020-11-03 22:55:13 | ← | aarvar parts (~foewfoiew@50.35.43.33) () |
| 2020-11-03 22:55:32 | <dminuoso> | hls-haskell/emacs question: I have a multi-component cabal project, it seems that setting up the cradle fails because it does not know which sub-component to use for my source code (it seems to always use the same component) |
| 2020-11-03 22:56:02 | <dminuoso> | Is there a way to tell hls to pin to a particular target? |
| 2020-11-03 22:56:20 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 2020-11-03 22:57:24 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds) |
| 2020-11-03 22:57:30 | × | mdunnio quits (~mdunnio@208.59.170.5) (Remote host closed the connection) |
| 2020-11-03 23:00:07 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 2020-11-03 23:01:05 | hekkaidekapus_ | is now known as hekkaidekapus |
| 2020-11-03 23:02:03 | <hekkaidekapus> | dminuoso: Are you aware of #haskell-ide? I hear it is the place where prompt answers are provided for questions like yours. |
| 2020-11-03 23:02:42 | <Uniaika> | -> #Haskell-ide-engine, hekkaidekapus |
| 2020-11-03 23:03:03 | <hekkaidekapus> | Uniaika: oopsie, thank you for the correction. |
| 2020-11-03 23:03:04 | × | mrchampion quits (~mrchampio@216-211-57-41.dynamic.tbaytel.net) (Ping timeout: 265 seconds) |
| 2020-11-03 23:04:21 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2020-11-03 23:04:28 | → | da39a3ee5e6b4b0d joins (~textual@n11211935170.netvigator.com) |
| 2020-11-03 23:05:03 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2020-11-03 23:06:35 | <dminuoso> | hekkaidekapus: Ahh, cheers. I was not :) |
| 2020-11-03 23:07:55 | → | mbomba joins (~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) |
| 2020-11-03 23:08:39 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 2020-11-03 23:08:54 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 2020-11-03 23:11:23 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 2020-11-03 23:14:19 | → | conal joins (~conal@2600:380:8512:89f8:e48b:604e:1b9f:cf32) |
| 2020-11-03 23:18:25 | × | carlomagno quits (~cararell@148.87.23.4) (Remote host closed the connection) |
| 2020-11-03 23:19:15 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:fc37:ff3f:9c12:2922) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-03 23:19:32 | × | borne quits (~fritjof@200116b86457d500641bd1d418d012e1.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 2020-11-03 23:20:12 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2020-11-03 23:20:49 | → | carlomagno joins (~cararell@148.87.23.4) |
| 2020-11-03 23:23:24 | → | jedws joins (~jedws@101.184.150.81) |
| 2020-11-03 23:24:25 | × | gtk quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 2020-11-03 23:24:50 | × | carlomagno quits (~cararell@148.87.23.4) (Remote host closed the connection) |
| 2020-11-03 23:25:10 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 2020-11-03 23:25:10 | → | irc_user joins (uid423822@gateway/web/irccloud.com/x-mlbnqpkqljzoxqfd) |
| 2020-11-03 23:25:51 | → | conal_ joins (~conal@64.71.133.70) |
| 2020-11-03 23:26:02 | → | howdoi joins (uid224@gateway/web/irccloud.com/x-wivnzygvcxbkqyle) |
| 2020-11-03 23:26:38 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-03 23:27:01 | → | texasmyn_ joins (~texasmyns@64.44.55.36) |
| 2020-11-03 23:27:05 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-03 23:27:38 | × | conal quits (~conal@2600:380:8512:89f8:e48b:604e:1b9f:cf32) (Ping timeout: 264 seconds) |
| 2020-11-03 23:27:44 | <irc_user> | I was looking at some elm vs purescript discussions and I see a lot of people talking about how you have to write a lot of boilerplate in elm because of lack of type classes. What exactly is the boilerplate that one would have to write in the absence of type classes? |
| 2020-11-03 23:27:49 | → | mrchampion joins (~mrchampio@216-211-57-41.dynamic.tbaytel.net) |
| 2020-11-03 23:28:46 | → | dcoutts_ joins (~duncan@33.14.75.194.dyn.plus.net) |
| 2020-11-03 23:28:46 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-03 23:29:10 | × | da39a3ee5e6b4b0d quits (~textual@n11211935170.netvigator.com) (Ping timeout: 272 seconds) |
| 2020-11-03 23:29:33 | <dminuoso> | irc_user: So imagine you wanted to compare two lists for equality. What function would you use? |
| 2020-11-03 23:29:48 | × | DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 272 seconds) |
| 2020-11-03 23:30:23 | <irc_user> | Hmm sorry I'm not totally into functional yet, but I would probably iterate over them? dminuoso |
| 2020-11-03 23:30:27 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-03 23:30:40 | × | revprez_anzio quits (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2020-11-03 23:30:41 | <dminuoso> | I mean fundamentally, the statement is incorrect since anything you can do with typeclasses, you can do with explicit dictionary passing |
| 2020-11-03 23:30:48 | <dminuoso> | But what typeclasses buy you is coherence |
| 2020-11-03 23:31:13 | <dolio> | Well, also, adding dictionary arguments for everything you're 'overloading' by is boilerplate. |
| 2020-11-03 23:31:16 | → | revprez_anzio joins (~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) |
| 2020-11-03 23:31:27 | × | Resurge quits (~Thunderbi@213.219.168.185.adsl.dyn.edpnet.net) (Quit: Resurge) |
| 2020-11-03 23:31:36 | → | carlomagno joins (~cararell@148.87.23.4) |
| 2020-11-03 23:31:44 | <irc_user> | "dictionary"? |
| 2020-11-03 23:32:04 | <dminuoso> | Say I hand you a `Set Thing`, and you give some `Set Thing` back. If you're just a library author, you can know about my Thing, so withot some funky tricks you cant operate on that Set with a different Ord |
| 2020-11-03 23:33:40 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-03 23:33:50 | <dminuoso> | irc_user: GHC implements typeclass instances as dictionaries/records. So when you write `f :: Num a => ...` then under the hood this becomes a function taking a `Num a` record, that contains all the method implementations. |
| 2020-11-03 23:34:01 | <dminuoso> | (In the absence of optimizations) |
| 2020-11-03 23:34:03 | <bqv> | > showsPrec 0 "test" |
| 2020-11-03 23:34:06 | <lambdabot> | <[Char] -> [Char]> |
| 2020-11-03 23:34:12 | × | carlomagno quits (~cararell@148.87.23.4) (Remote host closed the connection) |
| 2020-11-03 23:34:43 | <dolio> | Also, having to manually specify how to build dictionaries for `List a` out of dictionaries for `a` every place you want the former is boilerplate. |
| 2020-11-03 23:36:00 | <dminuoso> | Consider the initial example: You will need a comparing function, so some `eqList :: (a -> a -> Bool) -> [a] -> [a] -> Bool`. You have to write this explicitly, and provide it with an appropriate equality function on the elements |
| 2020-11-03 23:36:15 | <dminuoso> | You cant reuse any of that if you want equality on maps too |
| 2020-11-03 23:36:27 | <dminuoso> | And this promotes great error because there's no assurance we will all agree on the equality functions |
| 2020-11-03 23:36:40 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
All times are in UTC.