Logs on 2022-08-02 (liberachat/#haskell)
| 00:10:57 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 00:21:47 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 255 seconds) |
| 00:23:17 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
| 00:36:19 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds) |
| 00:38:01 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 00:40:41 | × | xff0x quits (~xff0x@2405:6580:b080:900:66f:76f7:bef0:7fa2) (Ping timeout: 255 seconds) |
| 00:49:07 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 00:49:58 | → | off^ joins (~off@c-73-237-117-119.hsd1.ga.comcast.net) |
| 01:08:16 | Square2 | is now known as Square |
| 01:12:28 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 01:17:38 | × | John_Ivan quits (~John_Ivan@user/john-ivan/x-1515935) (Read error: Connection reset by peer) |
| 01:17:56 | → | John_Ivan joins (~John_Ivan@user/john-ivan/x-1515935) |
| 01:17:56 | → | jero98772 joins (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) |
| 01:18:36 | <jero98772> | hellooo, i get this error https://imgur.com/a/YzMAM6t, when i try to use quickcheck in this code https://pastebin.com/LdKC5075 |
| 01:18:40 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 244 seconds) |
| 01:18:56 | → | xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
| 01:19:58 | <jackdk> | It doesn't know what arbitrary instance to select, probably because your factorial definitions have no type signature |
| 01:20:38 | → | sd joins (~sd@181.58.38.71) |
| 01:20:56 | → | dgxfsd joins (~dgxfsd@181.58.38.71) |
| 01:21:02 | sd | is now known as Guest4249 |
| 01:22:47 | × | dgxfsd quits (~dgxfsd@181.58.38.71) (Client Quit) |
| 01:25:27 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 01:31:25 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 272 seconds) |
| 01:33:31 | × | Guest4249 quits (~sd@181.58.38.71) (Quit: Connection closed) |
| 01:34:10 | × | pgib quits (~textual@173.38.117.88) (Ping timeout: 260 seconds) |
| 01:41:51 | → | anonymous joins (~anonymous@cable200-116-173-90.epm.net.co) |
| 01:42:02 | <anonymous> | h |
| 01:42:20 | × | anonymous quits (~anonymous@cable200-116-173-90.epm.net.co) (Client Quit) |
| 01:43:15 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 01:44:02 | <nomagno> | Does GHC have any kind of plans for stability? |
| 01:44:06 | <ski> | jero98772 : i think you're supposed to call `quickCheck' not on arbitrary functions, but on QuickCheck properties, which express some expected general law involving some operation(s), as a function taking parameters to a truth-value (a `Bool'ean, or possibly a richer QuickCheck-provided type, that gives some more stuff) |
| 01:45:51 | <ski> | @check \xs ys -> reverse (xs ++ ys) == reverse ys ++ reverse (xs :: [Int]) |
| 01:45:52 | <lambdabot> | +++ OK, passed 100 tests. |
| 01:46:10 | <ski> | in a source file, you'd write that as |
| 01:46:27 | <ski> | propReverseAppend xs ys = reverse (xs ++ ys) == reverse ys ++ reverse (xs :: [Int]) |
| 01:46:39 | <ski> | and then call `quickCheck propReverseAppend' |
| 01:48:12 | → | dgxfsd joins (~dgxfsd@181.58.38.71) |
| 01:48:13 | × | dgxfsd quits (~dgxfsd@181.58.38.71) (Client Quit) |
| 01:48:38 | × | jespada quits (~jespada@177.67.80.187) (Ping timeout: 240 seconds) |
| 01:48:52 | → | dgxfsd joins (~dgxfsd@181.58.38.71) |
| 01:48:54 | × | dgxfsd quits (~dgxfsd@181.58.38.71) (Client Quit) |
| 01:50:19 | <ski> | (or putting a type signature on `propReverseAppend', like `propReverseAppend :: [Int] -> [Int] -> Bool', or `propReverseAppend :: [Int] -> [Int] -> Property', in place of the ascription `xs :: [Int]' there in the body, which was used to pin down the element type to use, to avoid the kind of ambiguity error you got that jackdk referred to) |
| 01:51:00 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 268 seconds) |
| 01:51:10 | × | jero98772 quits (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection) |
| 01:51:50 | → | JuanJr joins (~JuanJr@190.66.24.114) |
| 01:52:12 | × | JuanJr quits (~JuanJr@190.66.24.114) (Client Quit) |
| 01:52:36 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 01:52:48 | → | jespada joins (~jespada@45.162.228.190) |
| 01:54:50 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 01:56:05 | → | zaquest joins (~notzaques@5.130.79.72) |
| 01:57:43 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 01:58:52 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 268 seconds) |
| 02:01:45 | × | John_Ivan quits (~John_Ivan@user/john-ivan/x-1515935) (Read error: Connection reset by peer) |
| 02:07:04 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@142.147.89.233) |
| 02:07:59 | → | jero98772 joins (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) |
| 02:15:26 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 02:17:24 | → | mikoto-chan joins (~mikoto-ch@85-76-45-224-nat.elisa-mobile.fi) |
| 02:20:27 | × | dolio quits (~dolio@130.44.130.54) (Ping timeout: 245 seconds) |
| 02:22:27 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
| 02:23:13 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 02:24:38 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds) |
| 02:29:59 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection) |
| 02:31:14 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 02:31:55 | → | yauhsien joins (~yauhsien@118-167-41-184.dynamic-ip.hinet.net) |
| 02:32:38 | × | gdd1 quits (~gdd@2001:470:1f13:187:de72:d5cb:b676:c00) (Ping timeout: 240 seconds) |
| 02:32:57 | → | instantaphex joins (~jb@c-73-171-252-84.hsd1.fl.comcast.net) |
| 02:34:43 | → | gdd1 joins (~gdd@129.199.146.230) |
| 02:35:26 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 240 seconds) |
| 02:39:06 | × | mikoto-chan quits (~mikoto-ch@85-76-45-224-nat.elisa-mobile.fi) (Ping timeout: 268 seconds) |
| 02:40:32 | × | [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 02:41:17 | × | td_ quits (~td@muedsl-82-207-238-015.citykom.de) (Ping timeout: 245 seconds) |
| 02:41:57 | × | yauhsien quits (~yauhsien@118-167-41-184.dynamic-ip.hinet.net) (Quit: Leaving...) |
| 02:43:03 | → | td_ joins (~td@muedsl-82-207-238-045.citykom.de) |
| 02:43:47 | danso_o | is now known as danso |
| 02:46:00 | → | nate4 joins (~nate@98.45.169.16) |
| 02:49:37 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 02:50:35 | × | sts-q quits (~sts-q@2a01:41e1:239e:8600:5ca9:a95b:5e06:aaf8) (Ping timeout: 272 seconds) |
| 02:51:26 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 268 seconds) |
| 02:58:23 | × | jero98772 quits (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection) |
| 03:01:41 | <instantaphex> | /quit |
| 03:01:59 | × | instantaphex quits (~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Quit: leaving) |
| 03:03:46 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 268 seconds) |
| 03:04:28 | × | hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Read error: Connection reset by peer) |
| 03:11:28 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 03:17:20 | × | ski quits (~ski@ext-1-213.eduroam.chalmers.se) (Ping timeout: 268 seconds) |
| 03:25:03 | × | Vajb quits (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 03:26:05 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) |
| 03:29:55 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Read error: Connection reset by peer) |
| 03:29:55 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Read error: Connection reset by peer) |
| 03:30:31 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:31:00 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 03:37:28 | → | dolio joins (~dolio@130.44.130.54) |
| 03:43:56 | <Axman6> | nomagno: that's a very broad question, what do you mean? Generally features which are to be deprecated will be retained for three major releases, and additional features are usually implemented as language extensions, so they are forwards compatible. The ABI is likely never to be stable though, and it doesn't really need to be |
| 03:44:33 | <hippoid> | I'm trying to run the code in this blog post https://blog.ploeh.dk/2017/10/16/money-monoid/, and it has "MoneyPort.Sum" that is not defined elsewhere in the code, and hoogle comes up empty. I'm wondering if it's part of some deprecated package? |
| 03:45:22 | ← | kvakil parts (6f76c3db2e@2604:bf00:561:2000::40a) () |
| 03:45:31 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 03:45:48 | <Axman6> | MoneyPort looks like an import that has been imported qualified to me |
| 03:45:48 | × | vglfr quits (~vglfr@194.9.14.33) (Read error: Connection reset by peer) |
| 03:46:32 | → | vglfr joins (~vglfr@194.9.14.33) |
| 03:46:41 | <Axman6> | Sum is one of the constructors of Expression, so MoneyPort will be whatever module Expression is defined in |
| 03:47:32 | <monochrom> | So bloggers aren't doing any better than research paper authors. Code snippets that are totally incomplete and irreproducible. |
| 03:47:53 | <Axman6> | tthat post looks like a much more unsafe way to implement what safe-money does - you should definitely take a look at that package if you need to deal with maths involving currency and exchange rates |
| 03:48:20 | <Axman6> | monochrom: well, I thinkg it's reasonable that when you';re showing a GHCi session, the module you're talking about is imported |
| 03:49:23 | <monochrom> | Except that no module was talked about in the first place. |
| 03:49:29 | <Axman6> | hippoid: https://ren.zone/articles/safe-money this is well worth reading, it outlines the reasons for the design of safe-money |
| 03:49:35 | <jackdk> | hippoid: I suspect the author has been working in `MoneyPort.hs` and imported it qualified at the repl |
| 03:51:13 | <hippoid> | Axman6: the thing about a qualified import makes sense. It must be the Sum constructor for Expression |
| 03:52:42 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 03:53:20 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 03:53:23 | <hippoid> | the post is from 2017, so I'd think a github link would not be too much to ask for. also makes me wonder if anyone has ever tried to run the code other than the author |
| 03:53:25 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 03:53:31 | → | ski joins (~ski@ext-1-213.eduroam.chalmers.se) |
| 03:53:47 | <monochrom> | I don't even read blogs. |
| 03:54:58 | <monochrom> | And if you s/blog/research paper/ then it's well known that few readers try to run code from research papers. |
| 03:55:37 | <monochrom> | In fact we even wonder whether the authors themselves had run their published code in the first place. |
| 03:57:06 | <hippoid> | in defense of the author, I am finding his prose to be illuminating |
| 04:00:19 | → | yin joins (~yin@user/zero) |
| 04:01:42 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 04:02:05 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 04:02:24 | → | Vajb joins (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) |
| 04:03:05 | × | jargon quits (~jargon@184.101.188.251) (Remote host closed the connection) |
| 04:05:39 | <jackdk> | monochrom: all code in research papers should be buildable from nix expressions |
| 04:05:48 | <monochrom> | haha |
| 04:05:54 | <jackdk> | A man can dream |
| 04:08:07 | ski | semi-recently typed in the (SML) code from Andrzej Filinski's "Representing Monads" and "Representing Layered Monads" |
| 04:08:36 | × | off^ quits (~off@c-73-237-117-119.hsd1.ga.comcast.net) (Remote host closed the connection) |
| 04:11:32 | × | phma quits (phma@2001:5b0:212a:9df8:d7c:fd9f:422b:bc91) (Read error: Connection reset by peer) |
| 04:12:16 | × | Inst quits (~Inst@2601:6c4:4080:3f80:e980:509e:df5:6868) (Ping timeout: 244 seconds) |
| 04:14:04 | → | qrpnxz joins (~qrpnxz@fsf/member/qrpnxz) |
| 04:14:09 | <qrpnxz> | hello |
| 04:14:11 | <qrpnxz> | :) |
| 04:14:24 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 04:14:45 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 04:19:26 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds) |
| 04:25:11 | → | phma joins (~phma@host-67-44-208-15.hnremote.net) |
| 04:27:01 | <ski> | ehlo |
| 04:27:36 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) () |
| 04:31:54 | → | dsrt^ joins (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) |
| 04:33:00 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 04:33:57 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:35:46 | → | kazaf joins (~kazaf@94.180.63.53) |
| 04:36:55 | × | Jeanne-Kamikaze quits (~Jeanne-Ka@142.147.89.233) (Remote host closed the connection) |
| 04:38:44 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 268 seconds) |
| 04:39:37 | → | Guest3 joins (~textual@2607:fb91:bd98:639c:7416:8bbe:b217:f425) |
| 04:43:11 | × | Guest3 quits (~textual@2607:fb91:bd98:639c:7416:8bbe:b217:f425) (Client Quit) |
| 04:44:51 | × | kazaf quits (~kazaf@94.180.63.53) (Remote host closed the connection) |
| 04:46:33 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 04:46:45 | → | sts-q joins (~sts-q@2a01:41e1:23db:f000:40da:6064:132b:999) |
| 04:47:01 | ← | sts-q parts (~sts-q@2a01:41e1:23db:f000:40da:6064:132b:999) (Reform running sic irc client says bye for now.) |
| 04:55:47 | <Axman6> | monochrom: I have a credit in one of Martin Kleppmann's papers from finding a bug in his code implementing x25519 because I translated the code to Haskell |
| 05:01:21 | <Axman6> | Hmm, not the one on his website, but this version of it: https://www.cl.cam.ac.uk/teaching/2122/Crypto/curve25519.pdf |
| 05:01:45 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Quit: _) |
| 05:01:56 | × | califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in) |
| 05:02:07 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 05:02:10 | → | califax joins (~califax@user/califx) |
| 05:13:07 | → | notzmv joins (~zmv@user/notzmv) |
| 05:16:43 | × | dsrt^ quits (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) (Ping timeout: 264 seconds) |
| 05:20:13 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 05:20:45 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 05:23:57 | → | dsrt^ joins (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) |
| 05:30:47 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 05:30:57 | → | absentia joins (~absentia@user/absentia) |
| 05:36:59 | → | gmg joins (~user@user/gehmehgeh) |
| 05:41:16 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 05:42:44 | → | mbuf joins (~Shakthi@122.165.55.71) |
| 05:46:31 | × | raym quits (~raym@user/raym) (Ping timeout: 252 seconds) |
| 05:47:31 | → | kadoban joins (~kadoban@user/kadoban) |
| 05:50:44 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 05:51:30 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 05:52:06 | → | raym joins (~raym@user/raym) |
| 05:54:37 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 06:02:50 | × | tomku quits (~tomku@user/tomku) (Ping timeout: 244 seconds) |
| 06:06:14 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 06:08:05 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 06:08:26 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 06:21:06 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
| 06:21:26 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 06:25:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 06:27:44 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 06:27:54 | → | acidjnk joins (~acidjnk@p200300d6e70586745cd2a57a196d5e2d.dip0.t-ipconnect.de) |
| 06:33:02 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 06:38:49 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 06:45:13 | × | michalz quits (~michalz@185.246.204.75) (Remote host closed the connection) |
| 06:47:07 | → | michalz joins (~michalz@185.246.204.87) |
| 06:47:48 | → | nate4 joins (~nate@98.45.169.16) |
| 06:50:45 | → | MajorBiscuit joins (~MajorBisc@86-88-79-148.fixed.kpn.net) |
| 06:51:36 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 06:52:23 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:1c6f:4a58:170a:5a9) |
| 06:52:31 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
| 06:57:17 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:57:52 | → | hsw joins (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) |
| 06:59:32 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 07:03:54 | → | mrmonday joins (~robert@what.i.hope.is.not.a.tabernaevagant.es) |
| 07:06:05 | × | MajorBiscuit quits (~MajorBisc@86-88-79-148.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 07:08:51 | → | zeenk joins (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) |
| 07:11:03 | × | yin quits (~yin@user/zero) (Ping timeout: 268 seconds) |
| 07:14:06 | × | noteness quits (~noteness@user/noteness) (Remote host closed the connection) |
| 07:14:50 | → | noteness joins (~noteness@user/noteness) |
| 07:18:27 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 07:27:12 | × | Batzy quits (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 07:27:48 | → | yin joins (~yin@user/zero) |
| 07:29:11 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.a357.priv.bahnhof.se) (Ping timeout: 252 seconds) |
| 07:29:33 | → | Batzy joins (~quassel@user/batzy) |
| 07:40:12 | → | Hxdev joins (~Hxdev@188.132.209.192) |
| 07:40:22 | × | Hxdev quits (~Hxdev@188.132.209.192) (Client Quit) |
| 07:42:02 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 07:46:14 | × | acidjnk quits (~acidjnk@p200300d6e70586745cd2a57a196d5e2d.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 07:46:54 | → | ccntrq joins (~Thunderbi@2a01:c22:8960:f400:e422:10e8:fa71:ce3d) |
| 07:48:06 | → | acidjnk joins (~acidjnk@p200300d6e7058674447358c26e802d51.dip0.t-ipconnect.de) |
| 07:48:26 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 07:48:40 | × | arahael quits (~arahael@203.220.205.108) (Ping timeout: 268 seconds) |
| 07:49:56 | × | noteness quits (~noteness@user/noteness) (Remote host closed the connection) |
| 07:50:29 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 07:51:07 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 07:51:17 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 07:51:52 | → | benin0 joins (~benin@183.82.30.242) |
| 07:52:11 | → | arahael joins (~arahael@60-240-64-125.tpgi.com.au) |
| 07:52:53 | → | noteness joins (~noteness@user/noteness) |
| 07:52:54 | → | ubert joins (~Thunderbi@91.141.63.245.wireless.dyn.drei.com) |
| 07:53:05 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 07:53:18 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 07:53:54 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:54:50 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 07:55:02 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 07:56:01 | → | MajorBiscuit joins (~MajorBisc@c-001-020-005.client.tudelft.eduvpn.nl) |
| 07:56:55 | → | misterfish joins (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) |
| 07:56:56 | × | vglfr quits (~vglfr@194.9.14.33) (Read error: Connection reset by peer) |
| 07:58:01 | → | vglfr joins (~vglfr@194.9.14.33) |
| 08:04:38 | × | ubert quits (~Thunderbi@91.141.63.245.wireless.dyn.drei.com) (Ping timeout: 240 seconds) |
| 08:09:47 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 08:11:32 | → | serus joins (~serus@65.red-83-53-31.dynamicip.rima-tde.net) |
| 08:14:17 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 08:16:25 | → | chele joins (~chele@user/chele) |
| 08:16:56 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 08:17:14 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 08:18:25 | × | Psybur quits (~Psybur@c-76-123-45-25.hsd1.va.comcast.net) (Remote host closed the connection) |
| 08:18:37 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 08:18:44 | → | Psybur joins (~Psybur@c-76-123-45-25.hsd1.va.comcast.net) |
| 08:20:40 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 08:31:14 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 08:35:40 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 08:43:21 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 08:46:32 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 08:48:00 | <qrpnxz> | neat! |
| 08:56:09 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 09:02:06 | → | Pickchea joins (~private@user/pickchea) |
| 09:03:12 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection) |
| 09:04:25 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 09:08:13 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds) |
| 09:09:27 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 268 seconds) |
| 09:13:16 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:13:38 | × | johnw quits (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Read error: Connection reset by peer) |
| 09:24:41 | → | gurkenglas joins (~gurkengla@p57b8a60f.dip0.t-ipconnect.de) |
| 09:28:39 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 09:29:27 | × | yin quits (~yin@user/zero) (Ping timeout: 252 seconds) |
| 09:30:40 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 09:30:52 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 09:31:00 | × | vglfr quits (~vglfr@194.9.14.33) (Read error: Connection reset by peer) |
| 09:31:02 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 09:31:41 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 09:33:10 | → | vglfr joins (~vglfr@194.9.14.33) |
| 09:35:44 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 09:40:05 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 252 seconds) |
| 09:40:56 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 09:41:11 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 09:55:54 | → | __monty__ joins (~toonn@user/toonn) |
| 10:01:05 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 10:01:24 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 10:04:13 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed) |
| 10:05:29 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 10:07:40 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 10:08:38 | × | xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds) |
| 10:09:18 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:11:55 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 10:18:14 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 240 seconds) |
| 10:20:21 | → | cosimone joins (~user@93-44-186-171.ip98.fastwebnet.it) |
| 10:23:14 | → | CiaoSen joins (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 10:25:50 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds) |
| 10:25:50 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 240 seconds) |
| 10:26:33 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 10:27:13 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 10:27:57 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 10:29:39 | × | causal quits (~user@50.35.83.177) (Quit: WeeChat 3.6) |
| 10:35:49 | → | VictorHugenay joins (~jh@user/VictorHugenay) |
| 10:36:13 | × | VictorHugenay quits (~jh@user/VictorHugenay) (Client Quit) |
| 10:40:43 | × | MajorBiscuit quits (~MajorBisc@c-001-020-005.client.tudelft.eduvpn.nl) (Ping timeout: 268 seconds) |
| 10:42:03 | × | vglfr quits (~vglfr@194.9.14.33) (Ping timeout: 252 seconds) |
| 10:42:21 | → | MajorBiscuit joins (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) |
| 10:43:14 | → | vglfr joins (~vglfr@194.9.14.33) |
| 10:48:13 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 10:49:18 | → | nate4 joins (~nate@98.45.169.16) |
| 10:52:54 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 10:53:58 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 10:54:12 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 245 seconds) |
| 10:58:38 | × | MajorBiscuit quits (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) (Ping timeout: 240 seconds) |
| 10:59:02 | × | mncheckm quits (~mncheck@193.224.205.254) (Ping timeout: 240 seconds) |
| 11:01:00 | → | MajorBiscuit joins (~MajorBisc@c-001-020-005.client.tudelft.eduvpn.nl) |
| 11:04:25 | → | xff0x joins (~xff0x@2405:6580:b080:900:abfc:fa80:23d8:6403) |
| 11:06:42 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 11:07:41 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 11:10:27 | <sm> | postfix |
| 11:11:48 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 11:12:17 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 11:12:18 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 11:13:40 | <ski> | mixfix |
| 11:16:27 | × | Alex_test quits (~al_test@178.34.150.131) (Quit: ;-) |
| 11:16:56 | × | AlexZenon quits (~alzenon@178.34.150.131) (Quit: ;-) |
| 11:18:07 | × | AlexNoo quits (~AlexNoo@178.34.150.131) (Quit: Leaving) |
| 11:21:00 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 11:21:03 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 11:22:16 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 11:22:33 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 11:23:24 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 11:24:10 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 11:25:23 | × | califax quits (~califax@user/califx) (Write error: Broken pipe) |
| 11:25:23 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 11:25:44 | → | califax joins (~califax@user/califx) |
| 11:25:55 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 11:26:47 | × | shailangsa quits (~shailangs@host86-185-98-81.range86-185.btcentralplus.com) () |
| 11:26:55 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 11:28:38 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 11:28:59 | → | califax joins (~califax@user/califx) |
| 11:30:40 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 268 seconds) |
| 11:31:42 | × | inversed quits (~inversed@90.209.137.56) (Ping timeout: 245 seconds) |
| 11:37:57 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Quit: zxx7529) |
| 11:40:27 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 11:43:10 | → | mncheck joins (~mncheck@193.224.205.254) |
| 11:43:26 | × | mbuf quits (~Shakthi@122.165.55.71) (Ping timeout: 240 seconds) |
| 11:45:09 | → | mbuf joins (~Shakthi@122.165.55.71) |
| 11:49:55 | × | mbuf quits (~Shakthi@122.165.55.71) (Remote host closed the connection) |
| 11:50:21 | → | mbuf joins (~Shakthi@122.165.55.71) |
| 11:57:34 | → | inversed joins (~inversed@90.209.137.56) |
| 12:09:42 | × | Putonlalla quits (~sapekiis@it-cyan.it.jyu.fi) (Quit: Leaving.) |
| 12:11:50 | × | mncheck quits (~mncheck@193.224.205.254) (Ping timeout: 268 seconds) |
| 12:12:25 | → | shailangsa joins (~shailangs@host86-185-98-81.range86-185.btcentralplus.com) |
| 12:15:38 | → | coot joins (~coot@213.134.190.95) |
| 12:17:59 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 12:18:50 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 12:22:26 | → | Guest3 joins (~textual@2607:fb91:bd0f:f08f:a832:3a1d:5b25:bf78) |
| 12:28:38 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds) |
| 12:28:49 | × | Guest55 quits (~Guest55@c-71-198-235-211.hsd1.ca.comcast.net) (Quit: Client closed) |
| 12:29:53 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 12:30:14 | × | CiaoSen quits (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 12:30:25 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 12:30:32 | → | yin joins (~yin@user/zero) |
| 12:30:41 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 12:34:35 | × | ncf quits (~n@monade.li) (Quit: Fairfarren.) |
| 12:34:57 | → | ncf joins (~n@monade.li) |
| 12:35:02 | × | yin quits (~yin@user/zero) (Ping timeout: 240 seconds) |
| 12:35:32 | → | yin joins (~yin@user/zero) |
| 12:37:07 | × | Guest3 quits (~textual@2607:fb91:bd0f:f08f:a832:3a1d:5b25:bf78) (Quit: Textual IRC Client: www.textualapp.com) |
| 12:38:46 | → | Guest3 joins (~textual@2607:fb91:bd0f:f08f:a832:3a1d:5b25:bf78) |
| 12:42:32 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 12:44:46 | × | Guest3 quits (~textual@2607:fb91:bd0f:f08f:a832:3a1d:5b25:bf78) (Quit: Textual IRC Client: www.textualapp.com) |
| 12:48:55 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 12:49:41 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 12:50:13 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 12:56:07 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:01:24 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 13:01:31 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:04:24 | → | AlexZenon joins (~alzenon@178.34.150.131) |
| 13:04:31 | → | AlexNoo joins (~AlexNoo@178.34.150.131) |
| 13:06:29 | → | Alex_test joins (~al_test@178.34.150.131) |
| 13:06:57 | <hippoid> | for the monoid endomorphism, the elements of the set are of type a->a, and the binary op is compose? |
| 13:08:13 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 13:08:59 | → | Putonlalla joins (~sapekiis@it-cyan.it.jyu.fi) |
| 13:12:47 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 13:15:46 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:16:19 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 13:16:26 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:28:17 | kawen_ | is now known as kawen |
| 13:32:09 | × | jespada quits (~jespada@45.162.228.190) (Ping timeout: 268 seconds) |
| 13:37:26 | × | yin quits (~yin@user/zero) (Ping timeout: 240 seconds) |
| 13:39:10 | → | ccntrq1 joins (~Thunderbi@2a01:c23:8dda:df00:69cf:57d6:e6b1:a73f) |
| 13:39:11 | <geekosaur> | @tell int-e https://github.com/geekosaur/lambdabot/tree/command-doc/doc see commands.md |
| 13:39:11 | <lambdabot> | Consider it noted. |
| 13:39:23 | → | John_Ivan joins (~John_Ivan@user/john-ivan/x-1515935) |
| 13:39:48 | <geekosaur> | hippoid, that is the newtype `Endo`, yes |
| 13:40:47 | × | ccntrq quits (~Thunderbi@2a01:c22:8960:f400:e422:10e8:fa71:ce3d) (Ping timeout: 268 seconds) |
| 13:40:47 | ccntrq1 | is now known as ccntrq |
| 13:42:01 | × | dsrt^ quits (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) (Ping timeout: 268 seconds) |
| 13:42:31 | <ski> | hippoid : i'd not say "monoid endomorphism", but perhaps "endomorphism monoid", though |
| 13:43:25 | <ski> | ("monoid endomorphism" sounds like you're talking about a morphism (which happends to be an endomorphism) of monoids .. which is presumably not the case) |
| 13:43:52 | <ski> | ("monoid of endomorphisms" would work, though) |
| 13:44:04 | <hippoid> | that factoid makes the whole monad="monoid in the category of endofuctors" thing make sense to me! |
| 13:44:28 | → | tomku joins (~tomku@user/tomku) |
| 13:46:37 | <ski> | fwiw, there's also a notion of "monad morphism". if `M' and `N' are monads, then `f :: forall a. M a -> N a' is a monad morphism iff `f . return = return' and `f . join = join . (f . fmap f) = join . (fmap f . f)' (the latter two must be equal, because `f' is a natural transformation, because it's polymorphic (with no class constraints), and Haskell enjoys the parametricity property) |
| 13:46:40 | <merijn> | hippoid: Fun fact: factoid is not "a small fact" it is "a false/unprovable thing that sounds like a fact" |
| 13:47:15 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 13:47:16 | <ski> | e.g. `reverse :: [a] -> [a]', `listToMaybe :: [a] -> Maybe a' are monad morphisms |
| 13:47:20 | → | dsrt^ joins (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) |
| 13:47:53 | <ski> | is "a factoid is a small fact" a factoid, then ? :b |
| 13:49:58 | × | dsrt^ quits (~dsrt@c-73-237-117-119.hsd1.ga.comcast.net) (Remote host closed the connection) |
| 13:49:58 | <ski> | hippoid : compare with a monoid morphism `f :: M -> N', which must satisfy `f mempty = mempty' and `f (x <> y) = f x <> f y' |
| 13:50:12 | <hippoid> | merijn: until understanding the endormorphism monoid, i considered it a factoid :) |
| 13:51:30 | [_] | is now known as [itchyjunk] |
| 13:54:20 | × | ccntrq quits (~Thunderbi@2a01:c23:8dda:df00:69cf:57d6:e6b1:a73f) (Remote host closed the connection) |
| 13:54:38 | → | ccntrq joins (~Thunderbi@2a01:c23:8dda:df00:69cf:57d6:e6b1:a73f) |
| 13:55:03 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 13:55:54 | → | Milan joins (~Milan@46.245.117.154) |
| 13:56:08 | × | Milan quits (~Milan@46.245.117.154) (Client Quit) |
| 13:56:48 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:57:33 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 13:58:10 | <hippoid> | ski: I'll have to ponder that for a while. and I don't know what is the "parametricity property" |
| 13:59:34 | <merijn> | hippoid: You wanna google "Theorems for Free!" |
| 14:01:17 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 14:02:16 | → | kuribas joins (~user@silversquare.silversquare.eu) |
| 14:03:04 | <hippoid> | "from the type of a paremetric function, we can define a theorem that it satisfies". That's a good opening sentence to a paper |
| 14:03:18 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 14:03:37 | <merijn> | hippoid: It basically boils down to: "id :: a -> a" can have only two implementations |
| 14:03:45 | <merijn> | (namely id and bottom) |
| 14:04:06 | <merijn> | Why? Because the parametric polymorphism won't let you write anything else |
| 14:04:11 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 14:10:01 | <hippoid> | ok, that rings a bell. Now I remember reading this at some point https://www.well-typed.com/blog/2015/05/parametricity/ |
| 14:11:20 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 14:12:55 | <hippoid> | ski: you wrote "monoid morphism f :: M -> N", should it be f :: M -> M? |
| 14:13:33 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 14:14:57 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 14:17:53 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 14:20:05 | <ski> | no, `M' and `N' doesn't need to be the same monoid |
| 14:20:58 | <ski> | e.g. `M' could be `Sum Integer', and `N' could be `Product Integer', and `f' could be `(2 ^)' (modulo `newtype' un/wrapping) |
| 14:21:33 | <ski> | (that's why i said "morphism", rather than "endomorphism". "endo-" simply means that the domain and the codomain, the argument type and the result type, are the same) |
| 14:21:59 | <ski> | @free reverse :: [a] -> [a] |
| 14:21:59 | <lambdabot> | $map f . reverse = reverse . $map f |
| 14:22:08 | <ski> | @free concat :: [[a]] -> [a] |
| 14:22:09 | <lambdabot> | $map f . concat = concat . $map ($map f) |
| 14:22:11 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
| 14:22:25 | <ski> | @free zip |
| 14:22:26 | <lambdabot> | $map ($map_Pair f g) . zip xs = zip ($map f xs) . $map g |
| 14:23:21 | <ski> | these are examples of "free theorems", derived solely from the (universal, iow `forall'-ed) type of the (therefore polymorphic) operations, not taking the particular operation into account (not knowing how it's implemented, or what it means/does) |
| 14:24:42 | <ski> | such theorems are true, because a polymorphic operation is not allowed to inspect values (like parts of arguments) which have a type which is a type variable, being universally quantified over the type signature. like `a' for `reverse' and `concat' above, and `a',`b' for `zip :: forall a b. [a] -> [b] -> [(a,b)]' |
| 14:26:07 | <ski> | because the operation is not allowed to inspect those values, we know that the only way it could interact with them is via callbacks provided by the caller, e.g. the callback for `filter',`map',`zipWith'. this can greatly help with refactoring and reasoning about code, e.g. using (polymorphic) library operations |
| 14:28:06 | <ski> | (`@free' writes `$map' to indicate a given map function for lists, and `$map_T' for any other (covariant) type constructor `T'. e.g. `$map_Pair :: (a0 -> a1) -> (b0 -> b1) -> ((a0,b0) -> (a1,b1))' above) |
| 14:28:12 | <ski> | @free map |
| 14:28:14 | <lambdabot> | g . h = k . f => $map g . map h = map k . $map f |
| 14:29:04 | <ski> | (so it needs to distinguish between the map function `$map', and the (to it) arbitrary operation identifier `map' that i happened to give it (that it looked up the type signature of)) |
| 14:30:24 | <ski> | @type Product . (2 ^) . getSum :: Sum Integer -> Product Integer -- the monoid (homo)morphism i mentioned |
| 14:30:25 | <lambdabot> | Sum Integer -> Product Integer |
| 14:32:01 | × | joo-_ quits (~joo-_@fsf/member/joo--) (Quit: leaving) |
| 14:33:36 | <hippoid> | what does a $ before a term mean in the lambdabot output? |
| 14:33:38 | <ski> | anyway, languages which have generics / parametric polymorphism, but which allows you to inspect arbitrary values/objects, or discover the type at runtime (like `instanceof', or a `typecase' thing) (like e.g. Java,C#,..,Mercury), doesn't enjoy the parametricity property |
| 14:33:48 | <ski> | hippoid : i explained that above |
| 14:33:57 | <hippoid> | yeah, I didn't follow that :> |
| 14:34:20 | <ski> | it just means "built-in map function, that actually maps like you expect, rather than doing anything else" |
| 14:34:34 | <ski> | it's particular to the `free' command |
| 14:34:50 | <ski> | @help free |
| 14:34:50 | <lambdabot> | free <ident>. Generate theorems for free |
| 14:35:16 | <hippoid> | ok. thanks for the explanation. I'll have to slowly parse it and learn some things! |
| 14:35:20 | <ski> | @free foo :: [Maybe a] -> [a] |
| 14:35:20 | <lambdabot> | $map f . foo = foo . $map ($map_Maybe f) |
| 14:35:34 | <ski> | (that's e.g. `catMaybes') |
| 14:37:16 | <ski> | changing the `a's (to `b's, say, using some function `f :: a -> b', for particular types `a' and `b') inside the `Maybe's in the list before doing `catMaybes', is the same as first doing `catMaybes', and then changing the `a's to `b's |
| 14:37:46 | <ski> | or, reversing and then mapping, is the same as mapping and then reversing |
| 14:39:15 | → | jero98772 joins (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) |
| 14:41:13 | × | ccntrq quits (~Thunderbi@2a01:c23:8dda:df00:69cf:57d6:e6b1:a73f) (Ping timeout: 268 seconds) |
| 14:41:30 | → | ccntrq joins (~Thunderbi@2a01:c22:8db2:e200:9023:5ebe:d852:4330) |
| 14:43:45 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in) |
| 14:44:12 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 14:44:13 | → | ccntrq1 joins (~Thunderbi@2a01:c22:9019:f500:fe63:6096:2ce0:f687) |
| 14:45:29 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 14:46:04 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 14:46:09 | × | ccntrq quits (~Thunderbi@2a01:c22:8db2:e200:9023:5ebe:d852:4330) (Ping timeout: 268 seconds) |
| 14:46:09 | ccntrq1 | is now known as ccntrq |
| 14:46:41 | <ski> | "Reverse Engineering Machines with the Yoneda Lemma" in 2006-11-12 <http://blog.sigfpe.com/2006/11/yoneda-lemma.html> and "A Yonedic Addendum" in 2006-12-02 at <http://blog.sigfpe.com/2006/12/yonedic-addendum.html>, both by dpiponi, is also related to this (and to Continuation-Passing Style, and then to `Codensity' monad) |
| 14:48:20 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 14:49:49 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 14:50:48 | → | nate4 joins (~nate@98.45.169.16) |
| 14:51:05 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 14:52:32 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 14:53:28 | × | jinsun quits (~jinsun@user/jinsun) (Ping timeout: 244 seconds) |
| 14:54:20 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 14:56:01 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 268 seconds) |
| 14:56:33 | → | Inoperable joins (~PLAYER_1@fancydata.science) |
| 14:59:10 | × | Inoperable quits (~PLAYER_1@fancydata.science) (Quit: All your buffer are belong to us!) |
| 15:00:45 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 15:01:49 | → | jinsun joins (~jinsun@user/jinsun) |
| 15:01:51 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:1c6f:4a58:170a:5a9) (Quit: WeeChat 2.8) |
| 15:02:19 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 15:03:25 | <albet70> | ski , what that free come from? |
| 15:04:29 | <albet70> | that free map is interesting |
| 15:05:35 | → | Inoperable joins (~PLAYER_1@fancydata.science) |
| 15:10:00 | <ski> | albet70 : "Theorems for free!" by Philip Wadler in 1990-06 at <https://homepages.inf.ed.ac.uk/wadler/topics/parametricity.html#free>. goes back to the Abstraction theorem of Reynolds |
| 15:10:58 | <ski> | yea, `g . h = k . f => $map g . map h = map k . $map f' is actually pretty obvious, if you think about it, using that `map f . map g = map (f . g)' for all `f',`g' |
| 15:11:34 | <ski> | (the higher-orderness of `map' corresponds to the presence of the implication in the free theorem for it) |
| 15:11:45 | <albet70> | that's the lambda-man? |
| 15:11:54 | <ski> | hm ? |
| 15:12:27 | <ski> | it's not one author(s ?) of the "Lambda the Ultimate: ..." series of papers, if that's what you mean |
| 15:12:29 | <albet70> | who introduced Monad into programming languages |
| 15:12:37 | <ski> | well, yes. sortof |
| 15:13:10 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 15:13:17 | <ski> | Eugenio Moggi introduced monads as ways to describe side-effects of imperative programming languages, in denotational semantics. so monads to reason *about* programming (languages) |
| 15:13:20 | <albet70> | is this 'free' in current modules? |
| 15:14:16 | <ski> | then Wadler turned that on its head, and (more or less) read the denotational semantics equations as a function program, explaining how to simulate/express effects, without actual side-effects in the language, in a functional language. so, using monads as a programming device/idiom/concept |
| 15:15:03 | <ski> | the `free' package on Hackage is not really the same sort of thing, no |
| 15:15:06 | <ski> | @hackage free |
| 15:15:06 | <lambdabot> | https://hackage.haskell.org/package/free |
| 15:16:49 | <albet70> | ski , why? |
| 15:17:26 | <ski> | (that one is about "free monads", which are a special case of a more general idea of "free constructions", coming from category theory. you could have free monoids (of a type), free monoids (of a semigroup), free groups (over a type/set, or over a monoid), free abelian group (over a type, over a monoid, over a group, ..), free monads (of a type constructor), free comonads, ...) |
| 15:17:31 | × | ccntrq quits (~Thunderbi@2a01:c22:9019:f500:fe63:6096:2ce0:f687) (Remote host closed the connection) |
| 15:17:34 | <ski> | why what ? |
| 15:17:51 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 15:18:38 | × | raoul quits (~raoul@95.179.203.88) (Quit: Ping timeout (120 seconds)) |
| 15:19:00 | → | raoul joins (~raoul@95.179.203.88) |
| 15:19:06 | → | Pickchea joins (~private@user/pickchea) |
| 15:19:19 | <albet70> | why that free is not on hackage? |
| 15:20:46 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 15:22:43 | <albet70> | map f . map g = map (f . g) is interesting, if g is a binary function |
| 15:22:43 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:23:05 | <albet70> | it could do something like for ... for in other langeuages |
| 15:23:30 | × | John_Ivan quits (~John_Ivan@user/john-ivan/x-1515935) (Remote host closed the connection) |
| 15:23:42 | × | bliminse quits (~bliminse@user/bliminse) (Quit: leaving) |
| 15:24:40 | <albet70> | there're two list, alist ["a","b","c"] and blist ["awe", "bword", "ces", "de"],print that blist's element which contain alist's element |
| 15:24:58 | <albet70> | [ e | i <- lista, e <- listb, elem i e ] |
| 15:25:47 | <albet70> | getSeq x y = if x isSubsequenceOf y then Just y else Nothing |
| 15:26:18 | <albet70> | main = print $ foldl1 (<>) $ fmap (filter (/= Nothing)) $ fmap (\a -> fmap (\b -> getSeq a b) blist) alist |
| 15:26:19 | <ski> | hm, looks like Pseudonym's page is not on the Web Archive |
| 15:26:34 | <ski> | maybe it is on Hackage somewhere, though ? |
| 15:27:07 | <albet70> | so this fmap (\a -> fmap (\b -> getSeq a b) blist) alist could turn to fmap ( f . g)? |
| 15:27:11 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 15:27:15 | <ski> | i at least find |
| 15:27:21 | <ski> | @hackage free-theorems |
| 15:27:21 | <lambdabot> | https://hackage.haskell.org/package/free-theorems |
| 15:27:23 | <ski> | @hackage free-theorems-seq |
| 15:27:23 | <lambdabot> | https://hackage.haskell.org/package/free-theorems-seq |
| 15:27:27 | <ski> | @hackage free-theorems-counterexamples |
| 15:27:27 | <lambdabot> | https://hackage.haskell.org/package/free-theorems-counterexamples |
| 15:27:39 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:27:56 | × | vglfr quits (~vglfr@194.9.14.33) (Ping timeout: 268 seconds) |
| 15:28:35 | <ski> | albet70 : hm, if `g :: A -> B -> C', then we must have something like `f :: (B -> C) -> D', for that law to make sense |
| 15:30:00 | → | bliminse joins (~bliminse@user/bliminse) |
| 15:31:13 | <albet70> | fmap (\a -> fmap (\b -> getSeq a b) blist) alist; this is fmap inside fmap, not fmap . fmap, right? ski |
| 15:31:47 | <albet70> | so it do not obey fmap f . fmap g = fmap (f . g) |
| 15:32:44 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 15:33:53 | aweinsto1k | is now known as aweinstock |
| 15:34:25 | <c_wraith> | "doesn't obey" is a weird wording. I'd just describe it as "doesn't apply" |
| 15:35:04 | <ski> | albet70 : rather than `(/= Nothing)', prefer `isJust' (which has no equality constraint on the element type). and `filter isJust' is `map Just . catMaybes', and it looks like you're not actually needing those `Just's (your `(<>)' is just list concatenation of the outer list level) |
| 15:35:39 | → | Henson joins (~kvirc@207.136.101.195) |
| 15:35:43 | <ski> | fmap (\a -> fmap (\b -> getSeq a b) blist) alist |
| 15:35:57 | <ski> | = fmap (\a -> fmap (getSeq a) blist) alist |
| 15:36:18 | <ski> | = fmap (\a -> getSeq a `fmap` blist) alist |
| 15:36:35 | <c_wraith> | also, that code just looks wrong. Unless blist is actually a function |
| 15:36:35 | <ski> | = fmap ((`fmap` blist) . getSeq) alist |
| 15:37:55 | <albet70> | c_wraith , blist is a list |
| 15:38:08 | <ski> | i'd usually phrase `fmap (fmap (...))' as "`fmap' inside `fmap'". that is equal to `(fmap . fmap) (...)' |
| 15:38:44 | <ski> | (you're write that what you wrote isn't a case of this) |
| 15:38:49 | <ski> | (er, s/write/right/) |
| 15:38:50 | <c_wraith> | albet70: then you've got a type error |
| 15:39:32 | <ski> | looks like `blist' is a list, to me |
| 15:39:36 | <c_wraith> | oh, nevermind. the whole thing is inside a lambda |
| 15:39:45 | <c_wraith> | I'm so unused to seeing that. |
| 15:39:56 | <ski> | yea, it's not the usual `fmap'-inside-`fmap' |
| 15:40:26 | <ski> | occasionally i define `pamf = flip map', so i can write e.g. |
| 15:40:46 | <ski> | foos `pamf` \foo -> bars `pamf` \bar -> ..foo..bar.. |
| 15:41:59 | <albet70> | for a in alist: for b in blist: if a in b: print(b) it's usually in python |
| 15:42:27 | <albet70> | but they use iterally, not recursive |
| 15:42:55 | <ski> | it lookeded reasonable to me, as a list comprehension |
| 15:43:40 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 15:43:44 | × | Henson quits (~kvirc@207.136.101.195) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
| 15:43:48 | <albet70> | yeah, list comprehension is more natural here, but I wonder the fmap . fmap way |
| 15:43:57 | × | zeenk quits (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) (Quit: Konversation terminated!) |
| 15:44:19 | <ski> | i'd rather use `(>>=)' or `(=<<)' (or `concatMap'), i think |
| 15:44:37 | <ski> | @. do undo [ e | i <- lista, e <- listb, elem i e ] |
| 15:44:37 | <lambdabot> | concatMap (\ i -> concatMap (\ e -> if elem i e then [e] else []) listb) lista |
| 15:45:27 | <ski> | lista >>= \i -> listb >>= \e -> [e | i `elem` e] |
| 15:45:28 | → | yin joins (~yin@user/zero) |
| 15:46:35 | <albet70> | lambdabot , but this is same to fmap |
| 15:46:57 | <ski> | concatenates your lists, as you go, rather than doing it at the end |
| 15:49:34 | <albet70> | fmap ((`fmap` blist) . getSeq) alist is same to fmap (\a -> fmap (\b -> getSeq a b) blist) alist , just change it to point-free, right? |
| 15:50:34 | × | benin0 quits (~benin@183.82.30.242) (Quit: The Lounge - https://thelounge.chat) |
| 15:50:38 | <ski> | let (| l0 | i |) = lista; (| l1 | e |) = listb; (| l2 | e' |) = [e | i `elem` e] in (| concat (| concat (| l0,l1 |),l2 |) | e' |) |
| 15:50:45 | × | cjay quits (cjay@nerdbox.nerd2nerd.org) (Ping timeout: 268 seconds) |
| 15:51:25 | <albet70> | I wonder it's possible turn that into one fmap? |
| 15:51:38 | <ski> | (hm, nested `concat' looks ugly .. i wonder if there's a nice way to pass a list of list levels to such a transformation ?) |
| 15:52:10 | <ski> | "... is same to ... , just change it to point-free, right?" -- yes |
| 15:52:33 | <ski> | no, you need to traverse both lists |
| 15:52:34 | <albet70> | fmap (\a -> fmap (\b -> getSeq a b) blist) alist = fmap f alist blist? |
| 15:52:49 | <albet70> | fmap f alist $ blist? |
| 15:53:26 | → | John_Ivan joins (~John_Ivan@user/john-ivan/x-1515935) |
| 15:53:33 | <ski> | there is such a thing as `liftA2 f alist blist', but that does an extra `join'/`concat' at the end |
| 15:53:37 | <albet70> | apply f on one of alist, and all of blist, it's like applicative? |
| 15:53:44 | <ski> | (`liftA1' is called `fmap') |
| 15:54:11 | <ski> | > liftA2 (+) [0,1,2] [300,400] |
| 15:54:13 | <lambdabot> | [300,400,301,401,302,402] |
| 15:54:16 | <albet70> | ski, but liftA2 would take one of alist and all of blist? |
| 15:54:30 | <ski> | > getZipList (liftA2 (+) (ZipList [0,1,2]) (ZipList [300,400])) |
| 15:54:31 | <lambdabot> | [300,401] |
| 15:54:48 | <ski> | > zipWith (+) [0,1,2] [300,400] |
| 15:54:49 | <lambdabot> | [300,401] |
| 15:54:57 | <albet70> | yes, it seems liftA2 is a better than fmap inside fmap |
| 15:55:52 | <albet70> | ski, so that fmap (\a -> fmap (\b -> getSeq a b) blist) alist == liftA2 getSeq alist blist? |
| 15:55:55 | <ski> | on lists, it does cartesian product (all combinations). on `ZipList's, it does elementwise / "parallel" / "lockstep" combinations |
| 15:56:00 | <ski> | no |
| 15:56:12 | <albet70> | why? |
| 15:56:19 | <Boarders__> | If I have an executable called 'my-app' what is the best way to pass a command line argument to it (via the `getArgs` function)? |
| 15:56:25 | <ski> | liftA2 getSeq alist blist = join (fmap (\a -> fmap (\b -> getSeq a b) blist) alist) |
| 15:56:42 | <ski> | you need the wrapping `join'/`concat', for the two `fmap's |
| 15:58:21 | <albet70> | what about liftM2? is liftM2 == liftA2? |
| 15:58:32 | → | vglfr joins (~vglfr@91.192.47.10) |
| 15:58:32 | <sm> | Boarders__: there's withArgs |
| 15:58:39 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 15:58:41 | <albet70> | > liftM2 (+) [1..9] [2..12] |
| 15:58:43 | <lambdabot> | [3,4,5,6,7,8,9,10,11,12,13,4,5,6,7,8,9,10,11,12,13,14,5,6,7,8,9,10,11,12,13,... |
| 15:59:21 | <sm> | but the question is a slightly unclear |
| 15:59:51 | <albet70> | > liftA2 (+) [1..3] [2..6] |
| 15:59:53 | <lambdabot> | [3,4,5,6,7,4,5,6,7,8,5,6,7,8,9] |
| 15:59:55 | <Boarders__> | could you just answer with your best interpretation? |
| 16:00:01 | <Boarders__> | if you know the answer I can just try it out |
| 16:00:06 | <ski> | Boarders__ : maybe `System.Process.callProcess' ? |
| 16:00:21 | <Boarders__> | I mean on the command line how do I pass this argument to an executable with stack |
| 16:00:27 | <Boarders__> | nothing about haskell |
| 16:00:37 | <Boarders__> | I just don't use stack |
| 16:02:18 | <ski> | albet70 : `liftM2' "ought to" be equal to `liftA2', when both are defined. however, there may be some differences with bottoms in some cases, iirc. also, there's examples of ones which can use parallel, or distributed, computation for `liftA2', but not for `liftM2' (since that one is defined in terms of `(>>=)', which has a data dependency of the second action on the result of the first one) |
| 16:02:25 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 16:02:49 | ski | dunno about Stack |
| 16:04:57 | <albet70> | liftA2 f g h = \x -> f (g x) (h x) this is an interesting function too |
| 16:06:47 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 16:07:08 | <geekosaur> | stack run -- executable parameter … ? |
| 16:07:28 | <geekosaur> | (the `--` stops stack from eating options intended for your executable) |
| 16:07:49 | <ski> | S (K f) g h |
| 16:08:07 | <ski> | er, rather |
| 16:08:15 | <ski> | S (S (K f) g) h |
| 16:08:18 | <ski> | which is |
| 16:08:23 | <ski> | S (B f g) h |
| 16:09:10 | <albet70> | I don't understand you expression |
| 16:09:37 | <albet70> | liftA2 @((->)_) :: (a -> b -> c) -> (_ -> a) -> (_ -> b) -> _ -> c |
| 16:10:20 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:13:59 | <ski> | S f g x = (f x) (g x) |
| 16:14:06 | <ski> | K c x = c |
| 16:14:09 | <ski> | I x = x |
| 16:14:16 | <ski> | B f g x = f (g x) |
| 16:14:35 | <ski> | C f x y = f y x |
| 16:14:48 | <ski> | W f x = f x x |
| 16:15:53 | <albet70> | ski, is ther a way I can get a function's lambda definition? |
| 16:16:16 | <albet70> | like I'd like to get liftA2 when f is []'s lambda definition |
| 16:16:49 | <ski> | this is standard <https://en.wikipedia.org/wiki/SKI_combinator>s. also see "To Dissect a Mockingbird: A Graphical Notation for the Lambda Calculus with Animated Reduction" by David C. Keenan in 1996-08-27 - 2014-04-01 at <https://dkeenan.com/Lambda/index.htm> |
| 16:17:29 | <ski> | `W' is `join', btw |
| 16:19:15 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 16:19:51 | <ski> | (and `(=<<)' is `B S C') |
| 16:20:19 | <ski> | not sure what you mean by "when f is []'s lambda definition" |
| 16:20:35 | <ski> | you can't get at the source which produced a value, at run-time |
| 16:20:56 | <ski> | @src (->) (>>=) |
| 16:20:56 | <lambdabot> | f >>= k = \ r -> k (f r) r |
| 16:21:11 | × | canta quits (~canta@user/canta) (Quit: WeeChat 2.8) |
| 16:21:17 | <ski> | `src' is a small, curated, database of simple `Prelude'-like definitions |
| 16:21:24 | → | canta joins (~canta@user/canta) |
| 16:21:30 | <ski> | @src (->) return |
| 16:21:30 | <lambdabot> | return = const |
| 16:21:37 | <ski> | which is `K' |
| 16:22:52 | <albet70> | you're right, I can't ask a function definition who match the function type signature |
| 16:23:05 | <albet70> | it may be many |
| 16:24:31 | <ski> | @djinn (a -> Maybe b) -> Maybe a -> Maybe b |
| 16:24:31 | <lambdabot> | f a b = |
| 16:24:31 | <lambdabot> | case b of |
| 16:24:31 | <lambdabot> | Nothing -> Nothing |
| 16:24:31 | <lambdabot> | Just c -> a c |
| 16:24:53 | <ski> | @hoogle (a -> Maybe b) -> Maybe a -> Maybe b |
| 16:24:54 | <lambdabot> | Prelude (=<<) :: Monad m => (a -> m b) -> m a -> m b |
| 16:24:54 | <lambdabot> | Control.Monad (=<<) :: Monad m => (a -> m b) -> m a -> m b |
| 16:24:54 | <lambdabot> | GHC.Base (=<<) :: Monad m => (a -> m b) -> m a -> m b |
| 16:24:59 | <ski> | @hoogle [Maybe a] -> [a] |
| 16:25:00 | <lambdabot> | Data.Maybe catMaybes :: [Maybe a] -> [a] |
| 16:25:00 | <lambdabot> | System.Directory.Internal.Prelude catMaybes :: () => [Maybe a] -> [a] |
| 16:25:00 | <lambdabot> | Distribution.Compat.Prelude.Internal catMaybes :: [Maybe a] -> [a] |
| 16:25:20 | <ski> | @hoogle+ |
| 16:25:20 | <lambdabot> | Network.AWS.Prelude catMaybes :: () => [Maybe a] -> [a] |
| 16:25:20 | <lambdabot> | Data.List.HT takeWhileJust :: [Maybe a] -> [a] |
| 16:25:20 | <lambdabot> | Data.Strict.Maybe catMaybes :: [Maybe a] -> [a] |
| 16:26:21 | <ski> | @where hoogle |
| 16:26:21 | <lambdabot> | https://hoogle.haskell.org |
| 16:26:22 | <ski> | @where hayoo |
| 16:26:22 | <lambdabot> | http://hayoo.fh-wedel.de/ -- See also Hoogle: http://haskell.org/hoogle http://fpcomplete.com/hoogle |
| 16:29:08 | → | yvan-sraka joins (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) |
| 16:29:23 | <hippoid> | I'm trying to define 'instance Monoid a => Applicative ((,) a) ...' for learning purposes, and I get a "duplicate instance error... Defined in GHC.Base". Is there a way to not import an instance, similar to "import Foo hiding (Bar)"? |
| 16:29:45 | × | misterfish quits (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) (Ping timeout: 268 seconds) |
| 16:29:47 | <albet70> | @djinn (a -> b -> c) -> [a] -> [b] -> [c] |
| 16:29:47 | <lambdabot> | Error: Undefined type [] |
| 16:30:20 | <ski> | use `newtype Pair a b = PairOf (a,b)' or `data Pair a b = MkPair a b' |
| 16:30:25 | → | misterfish joins (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) |
| 16:30:46 | <ski> | Djinn doesn't understand recursion (including recursive types, like `[]') |
| 16:30:48 | <albet70> | why [] is undefined... |
| 16:30:55 | <ski> | @help djinn |
| 16:30:55 | <lambdabot> | djinn <type>. |
| 16:30:55 | <lambdabot> | Generates Haskell code from a type. |
| 16:30:55 | <lambdabot> | https://github.com/augustss/djinn |
| 16:31:24 | <absentia> | @djinn a -> a |
| 16:31:24 | <lambdabot> | f a = a |
| 16:31:34 | <absentia> | @djinn [a] -> [a] |
| 16:31:34 | <lambdabot> | Error: Undefined type [] |
| 16:31:35 | <ski> | (it also doesn't understand classes with polymorphic methods, like `Functor',`Monad'. `Eq' and the like is fine) |
| 16:31:49 | <absentia> | @djin (Functor f) => f a -> f a |
| 16:31:49 | <lambdabot> | Maybe you meant: djinn djinn-add djinn-clr djinn-del djinn-env djinn-names djinn-ver |
| 16:31:57 | <absentia> | @djinn (Functor f) => f a -> f a |
| 16:31:57 | <lambdabot> | Error: Class not found: Functor |
| 16:32:02 | <ski> | @djinn Not (Either a b) -> (Not a,Not b) |
| 16:32:02 | <lambdabot> | f a = (\ b -> a (Left b), \ c -> a (Right c)) |
| 16:32:12 | → | coco joins (~coco@212-51-146-199.fiber7.init7.net) |
| 16:32:29 | <ski> | @djinn-add class Functor f where fmap :: (a -> b) -> (f a -> f b) |
| 16:32:56 | <absentia> | @djinn (Functor f) => f a -> f a |
| 16:32:56 | <lambdabot> | f a = a |
| 16:33:04 | <geekosaur> | https://github.com/lspitzner/exference can handle more types but is not guaranteed to terminate |
| 16:33:08 | <ski> | @djinn Functor f => Maybe (a -> b) -> (Maybe (f a) -> Maybe (f b)) |
| 16:33:10 | <lambdabot> | f a b = |
| 16:33:12 | <lambdabot> | case a of |
| 16:33:14 | <lambdabot> | Nothing -> Nothing |
| 16:33:16 | <lambdabot> | Just c -> case b of |
| 16:33:18 | <lambdabot> | Nothing -> Nothing |
| 16:33:20 | <lambdabot> | Just d -> Just (fmap c d) |
| 16:33:25 | <ski> | @djinn Functor f => Maybe (b -> a) -> (Maybe (f b) -> Maybe (f a)) |
| 16:33:25 | <lambdabot> | f _ _ = Nothing |
| 16:33:56 | <ski> | @djinn Functor f => (b -> a) -> (f b -> (f a) |
| 16:33:56 | <lambdabot> | Cannot parse command |
| 16:34:01 | <ski> | @djinn Functor f => (b -> a) -> (f b -> f a) |
| 16:34:01 | <lambdabot> | -- f cannot be realized. |
| 16:34:09 | <albet70> | I wonder if that gpt-3 could help generate haskell code one day, I never saw AI things about haskell yet |
| 16:34:11 | <ski> | @djinn Functor f => (a -> b) -> (f a -> f b) |
| 16:34:11 | <lambdabot> | f = fmap |
| 16:34:12 | <absentia> | ?? |
| 16:34:38 | <ski> | it doesn't understand to instantiate the `a' and `b' in `fmap' to anything .. |
| 16:34:39 | <absentia> | albet70: work has already been done to synthesize i think a lisp dialect using minikanren |
| 16:34:51 | <absentia> | given a set of test cases / example input & outputs |
| 16:34:59 | <absentia> | it will spit out code that satisfies that suite |
| 16:35:21 | <absentia> | it's arguable whether this constitutes "AI" |
| 16:35:30 | <absentia> | there is of course copilot |
| 16:35:35 | <absentia> | aka gpl laundering as a service |
| 16:35:44 | <ski> | absentia : sounds related to ILP .. i think i saw some talk about that (which you mentioned) |
| 16:36:04 | <kuribas> | or idris: https://www.youtube.com/watch?v=brjFqXkUQv0 |
| 16:36:42 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 16:36:51 | <absentia> | ski: maybe, i saw this at an in person talk |
| 16:36:52 | <ski> | (Inductive Logic Programming, a form of machine learning where it's learning defining clauses of predicate(s), given positive and negative example facts, and background predicates it can use to build stuff with) |
| 16:36:55 | <absentia> | i forget the actual details |
| 16:37:04 | <absentia> | i just remember the demo |
| 16:37:10 | <ski> | well, this was somw talk on YT (i think ?) i was thinking about |
| 16:38:13 | → | Midjak joins (~Midjak@82.66.147.146) |
| 16:40:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 16:45:18 | × | kuribas quits (~user@silversquare.silversquare.eu) (Remote host closed the connection) |
| 16:48:12 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 16:48:47 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds) |
| 16:50:29 | → | econo joins (uid147250@user/econo) |
| 16:51:02 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 16:54:39 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 16:55:06 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 16:58:22 | × | yin quits (~yin@user/zero) (Ping timeout: 245 seconds) |
| 17:00:36 | → | zer0bitz joins (~zer0bitz@2001:2003:f748:2000:f402:7db0:5697:8cad) |
| 17:05:09 | × | mbuf quits (~Shakthi@122.165.55.71) (Quit: Leaving) |
| 17:05:21 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 17:06:08 | × | td_ quits (~td@muedsl-82-207-238-045.citykom.de) (Ping timeout: 268 seconds) |
| 17:07:35 | → | gmg joins (~user@user/gehmehgeh) |
| 17:07:58 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 17:08:57 | → | fef joins (~thedawn@user/thedawn) |
| 17:11:49 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 17:16:32 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 17:17:07 | × | fef quits (~thedawn@user/thedawn) (Remote host closed the connection) |
| 17:17:40 | → | fef joins (~thedawn@user/thedawn) |
| 17:17:40 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 17:17:55 | × | yvan-sraka quits (~yvan-srak@209.red-2-139-126.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 17:19:42 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Ping timeout: 268 seconds) |
| 17:22:38 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 240 seconds) |
| 17:24:55 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 17:29:52 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 17:31:03 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 17:34:09 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 17:35:56 | → | pgib joins (~textual@173.38.117.82) |
| 17:38:03 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 268 seconds) |
| 17:40:02 | → | zebrag joins (~chris@user/zebrag) |
| 17:44:45 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 17:45:30 | → | machinedgod joins (~machinedg@184.68.124.102) |
| 17:45:38 | → | vglfr joins (~vglfr@91.192.47.10) |
| 17:52:31 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 17:52:38 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds) |
| 17:53:07 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 17:59:16 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 18:02:48 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:04:31 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 18:04:59 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
| 18:05:47 | Lord_of_Life_ | is now known as Lord_of_Life |
| 18:07:23 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 18:11:35 | × | dcoutts__ quits (~duncan@host86-151-44-186.range86-151.btcentralplus.com) (Ping timeout: 252 seconds) |
| 18:11:42 | × | dcoutts quits (~duncan@host86-151-44-186.range86-151.btcentralplus.com) (Ping timeout: 245 seconds) |
| 18:12:19 | × | MajorBiscuit quits (~MajorBisc@c-001-020-005.client.tudelft.eduvpn.nl) (Ping timeout: 252 seconds) |
| 18:12:38 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 240 seconds) |
| 18:15:00 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 18:18:52 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 18:19:01 | → | SamBellamy joins (~SamBellam@cpc142034-slou6-2-0-cust488.17-4.cable.virginm.net) |
| 18:21:08 | → | coot joins (~coot@213.134.190.95) |
| 18:22:06 | × | coot quits (~coot@213.134.190.95) (Client Quit) |
| 18:22:46 | → | coot joins (~coot@213.134.190.95) |
| 18:31:02 | × | Vajb quits (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 18:31:50 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) |
| 18:33:13 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 18:36:06 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:36:43 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:40:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 18:43:50 | × | michalz quits (~michalz@185.246.204.87) (Ping timeout: 240 seconds) |
| 18:46:37 | × | SamBellamy quits (~SamBellam@cpc142034-slou6-2-0-cust488.17-4.cable.virginm.net) (Remote host closed the connection) |
| 18:49:14 | → | yin joins (~yin@user/zero) |
| 18:49:48 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection) |
| 18:51:35 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds) |
| 18:51:41 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 18:53:02 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 18:54:05 | → | nate4 joins (~nate@98.45.169.16) |
| 18:56:21 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:58:38 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 18:59:15 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds) |
| 18:59:28 | × | mrvdb quits (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5) (Quit: ZNC 1.8.2 - https://znc.in) |
| 18:59:51 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 19:00:57 | → | mrvdb joins (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5) |
| 19:03:18 | × | machinedgod quits (~machinedg@184.68.124.102) (Ping timeout: 268 seconds) |
| 19:03:38 | → | michalz joins (~michalz@185.246.204.75) |
| 19:04:12 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds) |
| 19:05:46 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 268 seconds) |
| 19:10:41 | → | Pickchea joins (~private@user/pickchea) |
| 19:11:59 | → | kenran joins (~kenran@200116b82b1acd00796d07544f3a884b.dip.versatel-1u1.de) |
| 19:13:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 19:15:35 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:15:58 | → | juh joins (~jtreed@all.your.domain.are.belong.to.jtreed.org) |
| 19:16:17 | <mrianbloom> | Was the Data.Constraints library made mostly obsolete by QuantifiedConstraints are are there situations where you would use one or the other? |
| 19:16:37 | <mrianbloom> | *or |
| 19:17:12 | ← | juh parts (~jtreed@all.your.domain.are.belong.to.jtreed.org) (departed) |
| 19:19:20 | × | kenran quits (~kenran@200116b82b1acd00796d07544f3a884b.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 19:19:27 | × | coco quits (~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5) |
| 19:19:34 | → | kenran joins (~kenran@200116b82b1acd00796d07544f3a884b.dip.versatel-1u1.de) |
| 19:26:26 | → | merijn joins (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) |
| 19:26:35 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 19:27:52 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 19:29:07 | → | coco joins (~coco@212-51-146-199.fiber7.init7.net) |
| 19:30:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 19:31:02 | → | mikoto-chan joins (~mikoto-ch@85-76-19-170-nat.elisa-mobile.fi) |
| 19:31:43 | → | notzmv joins (~zmv@user/notzmv) |
| 19:34:37 | × | kenran quits (~kenran@200116b82b1acd00796d07544f3a884b.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 19:37:46 | × | fef quits (~thedawn@user/thedawn) (Ping timeout: 268 seconds) |
| 19:37:49 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 19:38:29 | × | Ram-Z quits (~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 252 seconds) |
| 19:41:23 | → | Ram-Z joins (~Ram-Z@li1814-254.members.linode.com) |
| 19:41:29 | → | comerijn joins (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) |
| 19:42:05 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds) |
| 19:42:33 | → | vglfr joins (~vglfr@91.192.47.10) |
| 19:44:21 | × | mikoto-chan quits (~mikoto-ch@85-76-19-170-nat.elisa-mobile.fi) (Ping timeout: 252 seconds) |
| 19:44:21 | × | merijn quits (~merijn@c-001-001-014.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
| 19:44:53 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 19:47:02 | × | Ram-Z quits (~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 240 seconds) |
| 19:47:57 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds) |
| 19:50:10 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 19:50:30 | × | jludwig quits (~justin@li657-110.members.linode.com) (Quit: ZNC - https://znc.in) |
| 19:51:29 | → | jludwig joins (~justin@li657-110.members.linode.com) |
| 19:56:09 | → | Tuplanolla joins (~Tuplanoll@91-159-68-204.elisa-laajakaista.fi) |
| 19:57:26 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 19:57:47 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 19:58:19 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:59:30 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 20:02:45 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 20:03:11 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::d5f2) |
| 20:05:46 | × | jludwig quits (~justin@li657-110.members.linode.com) (Quit: ZNC - https://znc.in) |
| 20:06:34 | → | MajorBiscuit joins (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) |
| 20:07:31 | → | joo-_ joins (~joo-_@87-49-45-115-mobile.dk.customer.tdc.net) |
| 20:07:31 | × | joo-_ quits (~joo-_@87-49-45-115-mobile.dk.customer.tdc.net) (Changing host) |
| 20:07:31 | → | joo-_ joins (~joo-_@fsf/member/joo--) |
| 20:08:15 | → | mikoto-chan joins (~mikoto-ch@85-76-119-223-nat.elisa-mobile.fi) |
| 20:22:14 | × | MajorBiscuit quits (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) (Ping timeout: 268 seconds) |
| 20:23:24 | × | coco quits (~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5) |
| 20:24:37 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 20:24:42 | → | jludwig joins (~justin@li657-110.members.linode.com) |
| 20:25:03 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 20:27:27 | × | John_Ivan quits (~John_Ivan@user/john-ivan/x-1515935) (Quit: Leaving) |
| 20:29:14 | → | pavonia joins (~user@user/siracusa) |
| 20:29:25 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 20:30:50 | × | jludwig quits (~justin@li657-110.members.linode.com) (Quit: ZNC - https://znc.in) |
| 20:31:50 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds) |
| 20:31:54 | → | jludwig joins (~justin@li657-110.members.linode.com) |
| 20:32:09 | × | Batzy quits (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 20:32:33 | → | Batzy joins (~quassel@user/batzy) |
| 20:35:02 | × | yin quits (~yin@user/zero) (Ping timeout: 268 seconds) |
| 20:36:41 | → | yin joins (~yin@user/zero) |
| 20:37:27 | × | Midjak quits (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
| 20:37:28 | → | renzhi joins (~xp@2607:fa49:6500:b100::47a5) |
| 20:39:43 | × | mikoto-chan quits (~mikoto-ch@85-76-119-223-nat.elisa-mobile.fi) (Ping timeout: 252 seconds) |
| 20:41:33 | → | mikoto-chan joins (~mikoto-ch@85-76-2-182-nat.elisa-mobile.fi) |
| 20:49:59 | × | renzhi quits (~xp@2607:fa49:6500:b100::47a5) (Ping timeout: 268 seconds) |
| 20:52:55 | × | comerijn quits (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds) |
| 20:53:18 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 20:59:16 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 21:01:35 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 21:01:54 | → | td_ joins (~td@muedsl-82-207-238-045.citykom.de) |
| 21:04:28 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 21:06:38 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 21:07:57 | → | cjay joins (cjay@nerdbox.nerd2nerd.org) |
| 21:09:02 | × | acidjnk quits (~acidjnk@p200300d6e7058674447358c26e802d51.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 21:09:48 | → | MajorBiscuit joins (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) |
| 21:10:29 | × | drlkf quits (~drlkf@drlkf.net) (Quit: q=) |
| 21:11:21 | → | drlkf joins (~drlkf@drlkf.net) |
| 21:12:11 | × | yin quits (~yin@user/zero) (Ping timeout: 268 seconds) |
| 21:12:32 | → | yin joins (~yin@user/zero) |
| 21:12:37 | × | heartbur1 quits (~gass@2a00:d880:3:1::b1e4:b241) (Quit: Reconnecting) |
| 21:13:05 | → | heartburn joins (~gass@2a00:d880:3:1::b1e4:b241) |
| 21:18:47 | → | merijn joins (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) |
| 21:23:21 | × | yin quits (~yin@user/zero) (Ping timeout: 252 seconds) |
| 21:28:35 | → | jonathanx__ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 21:29:02 | × | MajorBiscuit quits (~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) (Ping timeout: 240 seconds) |
| 21:29:53 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 21:30:14 | × | Rembane quits (~Rembane@li346-36.members.linode.com) (Ping timeout: 240 seconds) |
| 21:30:14 | × | Jon quits (jon@dow.land) (Ping timeout: 240 seconds) |
| 21:31:18 | × | Hobbyboy quits (Hobbyboy@hobbyboy.co.uk) (Ping timeout: 268 seconds) |
| 21:31:26 | × | statusfailed quits (~statusfai@statusfailed.com) (Ping timeout: 240 seconds) |
| 21:31:34 | × | drlkf quits (~drlkf@drlkf.net) (Quit: drlkf) |
| 21:31:49 | × | jocke-l quits (jocke-l@a.x0.is) (Ping timeout: 244 seconds) |
| 21:31:49 | × | dexter1 quits (dexter@2a01:7e00::f03c:91ff:fe86:59ec) (Ping timeout: 244 seconds) |
| 21:31:50 | × | micro quits (~micro@user/micro) (Ping timeout: 240 seconds) |
| 21:32:02 | → | drlkf joins (~drlkf@drlkf.net) |
| 21:32:25 | → | qrpnxz1 joins (~qrpnxz@fsf/member/qrpnxz) |
| 21:32:32 | × | mrmonday quits (~robert@what.i.hope.is.not.a.tabernaevagant.es) (Ping timeout: 268 seconds) |
| 21:32:32 | × | robertm quits (robertm@lattice.rojoma.com) (Ping timeout: 268 seconds) |
| 21:34:27 | → | dcoutts joins (~duncan@host109-149-1-142.range109-149.btcentralplus.com) |
| 21:36:14 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds) |
| 21:37:28 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (*.net *.split) |
| 21:37:28 | × | arahael quits (~arahael@60-240-64-125.tpgi.com.au) (*.net *.split) |
| 21:37:28 | × | qrpnxz quits (~qrpnxz@fsf/member/qrpnxz) (*.net *.split) |
| 21:37:50 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 21:38:45 | × | tubogram44 quits (~tubogram@user/tubogram) (*.net *.split) |
| 21:38:45 | × | Axman6 quits (~Axman6@user/axman6) (*.net *.split) |
| 21:39:35 | → | tubogram44 joins (~tubogram@user/tubogram) |
| 21:39:35 | → | Axman6 joins (~Axman6@user/axman6) |
| 21:39:56 | × | mikoto-chan quits (~mikoto-ch@85-76-2-182-nat.elisa-mobile.fi) (Ping timeout: 268 seconds) |
| 21:45:11 | → | arahael joins (~arahael@60-240-64-125.tpgi.com.au) |
| 21:45:25 | → | nate4 joins (~nate@98.45.169.16) |
| 21:47:13 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 21:48:04 | → | xal joins (~quassel@S01063c7c3f334fd0.vw.shawcable.net) |
| 21:53:02 | × | merijn quits (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 21:54:40 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 21:55:14 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 22:06:21 | → | John_Ivan joins (~John_Ivan@user/john-ivan/x-1515935) |
| 22:07:30 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 22:07:41 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 22:07:50 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 240 seconds) |
| 22:08:31 | × | shinjipf quits (~shinjipf@2a02:c207:2082:6685::1) (Quit: Ping timeout (120 seconds)) |
| 22:08:47 | → | shinjipf joins (~shinjipf@2a02:c207:2082:6685::1) |
| 22:10:40 | <hippoid> | will the kind of a typeclass always end in -> Constraint? |
| 22:10:53 | <hpc_> | yes |
| 22:10:55 | hpc_ | is now known as hpc |
| 22:11:39 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:17:40 | <ski> | % class Dee; class Dum; instance Dee |
| 22:17:40 | <yahb2> | <interactive>:90:1: error: ; • No parameters for class ‘Dee’ ; (Enable MultiParamTypeClasses to allow no-parameter classes) ; • In the class declaration for ‘Dee’ ; ; <interactive>:9... |
| 22:17:55 | <ski> | % :set -XMultiParamTypeClasses |
| 22:17:56 | <yahb2> | <no output> |
| 22:17:57 | <ski> | % class Dee; class Dum; instance Dee |
| 22:17:57 | <yahb2> | <no output> |
| 22:18:05 | <ski> | % :k Dee |
| 22:18:06 | <yahb2> | Dee :: Constraint |
| 22:18:47 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 22:18:49 | × | Tuplanolla quits (~Tuplanoll@91-159-68-204.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:21:28 | [_] | is now known as [itchyjunk] |
| 22:21:46 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 22:24:06 | × | PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 22:25:50 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 240 seconds) |
| 22:27:10 | → | Jon joins (jon@dow.land) |
| 22:27:47 | → | Rembane joins (~Rembane@li346-36.members.linode.com) |
| 22:28:18 | → | statusfailed joins (~statusfai@statusfailed.com) |
| 22:28:58 | → | micro joins (~micro@user/micro) |
| 22:30:13 | → | Hobbyboy joins (Hobbyboy@hobbyboy.co.uk) |
| 22:31:43 | → | jocke-l joins (jocke-l@a.x0.is) |
| 22:32:35 | → | robertm joins (robertm@lattice.rojoma.com) |
| 22:32:35 | → | phma_ joins (phma@2001:5b0:211b:ae28:2ee:ca83:26d:80f2) |
| 22:32:40 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 22:36:17 | × | phma quits (~phma@host-67-44-208-15.hnremote.net) (Ping timeout: 245 seconds) |
| 22:38:20 | → | dexter1 joins (~dexter@li655-253.members.linode.com) |
| 22:38:37 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 22:40:23 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 22:42:57 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 22:45:09 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 22:45:41 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 22:48:29 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 22:48:47 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
| 22:58:17 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 23:03:11 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 23:07:32 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds) |
| 23:08:44 | × | gurkenglas quits (~gurkengla@p57b8a60f.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
| 23:10:45 | × | serus quits (~serus@65.red-83-53-31.dynamicip.rima-tde.net) (Quit: Leaving) |
| 23:13:26 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 240 seconds) |
| 23:17:04 | → | merijn joins (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) |
| 23:31:42 | → | mikoto-chan joins (~mikoto-ch@85-76-14-192-nat.elisa-mobile.fi) |
| 23:38:38 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 23:39:26 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 23:46:11 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 23:51:45 | × | merijn quits (~merijn@c-001-001-007.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds) |
| 23:58:50 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
All times are in UTC on 2022-08-02.