Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2020-11-04 03:38:29 conal joins (~conal@64.71.133.70)
2020-11-04 03:38:48 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-04 03:41:30 hackage massiv 0.5.5.0 - Massiv (Массив) is an Array Library. https://hackage.haskell.org/package/massiv-0.5.5.0 (lehins)
2020-11-04 03:43:58 × christo quits (~chris@81.96.113.213) (Remote host closed the connection)
2020-11-04 03:44:24 christo joins (~chris@81.96.113.213)
2020-11-04 03:44:31 × Katarushisu quits (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) (Ping timeout: 258 seconds)
2020-11-04 03:46:02 × DTZUZU_ quits (~DTZUZU@S0106bcd165662a4d.vs.shawcable.net) (Ping timeout: 256 seconds)
2020-11-04 03:47:07 × lucasb quits (uid333435@gateway/web/irccloud.com/x-uaaedzwtlfjjcpgy) (Quit: Connection closed for inactivity)
2020-11-04 03:48:52 DTZUZU_ joins (~DTZUZU@207.81.171.87)
2020-11-04 03:51:35 Lycurgus joins (~niemand@98.4.97.110)
2020-11-04 03:56:12 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
2020-11-04 03:56:14 × elliott_ quits (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
2020-11-04 03:58:15 ddellacosta joins (~dd@86.106.121.168)
2020-11-04 04:00:26 Rudd0 joins (~Rudd0@185.189.115.108)
2020-11-04 04:03:13 Katarushisu joins (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net)
2020-11-04 04:03:37 thir joins (~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-04 04:03:45 × jespada quits (~jespada@90.254.245.49) (Ping timeout: 240 seconds)
2020-11-04 04:04:36 mozzarella joins (~sam@unaffiliated/sam113101)
2020-11-04 04:04:44 × texasmynsted quits (~texasmyns@64.44.55.36) ()
2020-11-04 04:06:20 jespada joins (~jespada@90.254.245.49)
2020-11-04 04:06:40 Saukk joins (~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4)
2020-11-04 04:08:17 × thir quits (~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-11-04 04:10:53 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:fc37:ff3f:9c12:2922) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-04 04:11:41 elliott_ joins (~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-04 04:14:55 × miklcct quits (quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2020-11-04 04:15:28 miklcct joins (quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7)
2020-11-04 04:15:48 × ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 260 seconds)
2020-11-04 04:15:49 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-04 04:15:49 × miklcct quits (quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7) (Client Quit)
2020-11-04 04:16:15 DTZUZU_ is now known as DTZUZU
2020-11-04 04:17:19 miklcct joins (quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7)
2020-11-04 04:19:21 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-04 04:20:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-11-04 04:26:26 × xff0x quits (~fox@2001:1a81:53f2:500:906a:a806:825e:ad98) (Ping timeout: 264 seconds)
2020-11-04 04:27:19 xff0x joins (~fox@2001:1a81:53f2:500:c561:3916:a8eb:5c4a)
2020-11-04 04:29:15 hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-11-04 04:30:47 tsdgeos joins (~tsdgeos@195.140.213.38)
2020-11-04 04:32:23 × hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-11-04 04:33:53 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-04 04:38:14 × jamm__ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection)
2020-11-04 04:39:11 jamm_ joins (~jamm@unaffiliated/jamm)
2020-11-04 04:39:32 × macrover quits (~macrover@ip70-189-231-35.lv.lv.cox.net) (Ping timeout: 260 seconds)
2020-11-04 04:40:08 mdunnio joins (~mdunnio@208.59.170.5)
2020-11-04 04:42:47 × solonarv quits (~solonarv@adijon-656-1-31-12.w90-13.abo.wanadoo.fr) (Read error: Connection reset by peer)
2020-11-04 04:43:08 mdunnio_ joins (~mdunnio@208.59.170.5)
2020-11-04 04:43:17 solonarv joins (~solonarv@adijon-656-1-31-12.w90-13.abo.wanadoo.fr)
2020-11-04 04:44:27 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 260 seconds)
2020-11-04 04:45:12 × mdunnio quits (~mdunnio@208.59.170.5) (Ping timeout: 272 seconds)
2020-11-04 04:45:39 × brodie_ quits (~brodie@207.53.253.137) (Read error: Connection reset by peer)
2020-11-04 04:48:22 × mdunnio_ quits (~mdunnio@208.59.170.5) (Ping timeout: 272 seconds)
2020-11-04 04:48:55 × solonarv quits (~solonarv@adijon-656-1-31-12.w90-13.abo.wanadoo.fr) (Ping timeout: 258 seconds)
2020-11-04 04:49:00 jamm_ joins (~jamm@unaffiliated/jamm)
2020-11-04 04:49:31 coot joins (~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-04 04:54:05 <bqv> so I have some class MyClass a b | a -> b
2020-11-04 04:54:49 <bqv> does that mean i can elsewhere use the type (MyClass a b) => b
2020-11-04 04:55:07 <bqv> in lieu of b directly, with a being concrete
2020-11-04 04:55:15 <bqv> and if so, what extension do i have to enable to make that happen
2020-11-04 04:56:16 motherfsck joins (~motherfsc@unaffiliated/motherfsck)
2020-11-04 04:56:45 <ski> it means you're allowed to mention just `a' without `b' in a type, constrained by `MyClass a b'
2020-11-04 04:57:56 <bqv> hmm
2020-11-04 04:57:58 Tario joins (~Tario@201.192.165.173)
2020-11-04 04:58:02 <bqv> ok so that's not my problem
2020-11-04 04:58:07 <ski> because `a' (functionally) determines `b', so the presence of `a' means that `b' will be unique, fixed by `a'
2020-11-04 04:58:16 <ski> the relevant extensions are `MultiParamTypeClasses' and `FunctionalDependencies'
2020-11-04 04:58:18 <bqv> yeah
2020-11-04 04:59:06 <bqv> it seems my problem is that i'm trying to do this in a foreign import :D
2020-11-04 04:59:40 <ski> the Functional dependency `a -> b' here, on `MyClass a b c' (say. add an extra `c', just to make it more general) means logically that `forall a. unique b. exists c. MyClass a b c' : for every `a', there can be at most one `b' such that there's some `c' with `MyClass a b c'
2020-11-04 04:59:49 Katarushisu3 joins (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net)
2020-11-04 05:00:45 <bqv> what I'm basically trying to achieve is a typelevel function
2020-11-04 05:01:00 <ski> this is also logically equivalent to `forall a b0 b1 c0 c1. (MyClass a b0 c0,MyClass a b1 c1) => b0 = b1' : if you have two possible instances, with the same `a', then the `b's also must agree, be the same, never mind the `c's
2020-11-04 05:01:01 <bqv> which that would do, but i can't use constraints in foreign
2020-11-04 05:01:02 × Katarushisu quits (~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) (Ping timeout: 272 seconds)
2020-11-04 05:01:02 Katarushisu3 is now known as Katarushisu
2020-11-04 05:01:14 <bqv> or perhaps i can alias it...
2020-11-04 05:01:22 <bqv> no, because a constraint is part of the type
2020-11-04 05:01:38 brodie_ joins (~brodie@207.53.253.137)
2020-11-04 05:01:44 <ski> hm. i don't think you can have type-clas-constrained foreign imports
2020-11-04 05:02:00 brodie_ is now known as brodie
2020-11-04 05:02:42 <bqv> ok, turn it around then, can i instance a class with an implicitly typed second parameter?
2020-11-04 05:02:57 <gobbleguy> IF you have a specific thing you're trying to do it might be worth just asking about that
2020-11-04 05:02:59 <ski> i don't know what you mean by that
2020-11-04 05:03:34 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 272 seconds)
2020-11-04 05:03:58 <ski> "what I'm basically trying to achieve is a typelevel function" -- do you mean like a `type' / `data' family (possibly an associated type) ?
2020-11-04 05:04:50 <bqv> yeah
2020-11-04 05:04:53 <bqv> but that doesn't work
2020-11-04 05:05:00 <bqv> because of the foreign issue
2020-11-04 05:05:50 <bqv> so now perhaps i'd like to omit the second type parameter of an instance (and have it inferred from the definition)
2020-11-04 05:06:44 × jrqc quits (~rofl@96.78.87.197) (Ping timeout: 272 seconds)
2020-11-04 05:06:53 jrqc joins (~rofl@96.78.87.197)
2020-11-04 05:07:09 <ski> i guess you could possibly make an overloaded operation that takes operations from the dictionary and passes them explicitly to a foreignly imported operation
2020-11-04 05:07:30 <ski> omit it, where ? in a type signature ?
2020-11-04 05:08:54 <bqv> yes, say `instance MyClass MyA b where member = myForeignImport`
2020-11-04 05:09:16 <ski> where `member' has what type ?
2020-11-04 05:09:32 <bqv> b
2020-11-04 05:09:40 <bqv> oh
2020-11-04 05:09:51 <ski> also, `MyClass MyA b' doesn't seem to satisfy the FD `a -> b' on `MyClass a b'
2020-11-04 05:10:20 <bqv> can't b be inferred?
2020-11-04 05:10:20 <ski> (unless maybe if the kind of `b' only admits one possibility, being a singleton kind)
2020-11-04 05:11:04 <ski> if you say `instance MyClass MyA b where ...' you're claiming that, for all `b's, `MyClass MyA b' is an instance
2020-11-04 05:11:18 <bqv> right, implicit forall

All times are in UTC.