Logs: freenode/#haskell
| 2021-03-28 16:16:38 | <mniip> | % :set -fprint-equality-relations |
| 2021-03-28 16:16:39 | <yahb> | mniip: |
| 2021-03-28 16:16:42 | <mniip> | % :i (~~) |
| 2021-03-28 16:16:43 | <yahb> | mniip: type (~~) :: forall k0 k1. k0 -> k1 -> Constraint; class (a GHC.Prim.~# b) => (~~) a b; -- Defined in `GHC.Types'; infix 4 ~~ |
| 2021-03-28 16:16:53 | <Uniaika> | Ah! there it is! |
| 2021-03-28 16:17:01 | <Uniaika> | that's the tricky bit ;) |
| 2021-03-28 16:17:24 | × | raichoo quits (~raichoo@dslb-092-073-192-171.092.073.pools.vodafone-ip.de) (Quit: Lost terminal) |
| 2021-03-28 16:17:43 | <wz1000> | even `(~#)` is not a keywork |
| 2021-03-28 16:17:45 | <wz1000> | keyword |
| 2021-03-28 16:18:08 | <wz1000> | you can supply your own definition using TypeOperators and MagicHash |
| 2021-03-28 16:18:24 | → | plutoniix joins (~q@node-ugt.pool-125-24.dynamic.totinternet.net) |
| 2021-03-28 16:18:25 | × | malumore quits (~malumore@151.62.119.109) (Remote host closed the connection) |
| 2021-03-28 16:18:28 | <wz1000> | its more like primops, like unsafeCoerce# |
| 2021-03-28 16:18:35 | <wz1000> | which is also magic, but not a keywork |
| 2021-03-28 16:18:42 | <wz1000> | keyword, aargh |
| 2021-03-28 16:18:47 | <Uniaika> | yeah don't worry |
| 2021-03-28 16:18:49 | → | Lycurgus joins (~niemand@98.4.120.166) |
| 2021-03-28 16:19:02 | → | malumore joins (~malumore@151.62.119.109) |
| 2021-03-28 16:19:05 | <mniip> | % :i Coercible |
| 2021-03-28 16:19:05 | <yahb> | mniip: {-; Coercible is a special constraint with custom solving rules.; It is not a class.; Please see section `The Coercible constraint`; of the user's guide for details.; -}; type role Coercible representational representational; type Coercible :: forall k. k -> k -> Constraint; class (a ~R# b) => Coercible a b; -- Defined in `GHC.Types' |
| 2021-03-28 16:19:09 | × | malumore quits (~malumore@151.62.119.109) (Remote host closed the connection) |
| 2021-03-28 16:19:13 | <Uniaika> | wz1000: I guess by "keyword" I also want to express that there was some fairly special treatement given by the compiler. :) |
| 2021-03-28 16:19:18 | <mniip> | now ~R# is outright not haskell syntax |
| 2021-03-28 16:19:19 | <mniip> | :P |
| 2021-03-28 16:19:35 | <Uniaika> | ($) can be thought of as a keyword due to its special treatment, for instance |
| 2021-03-28 16:19:48 | <Uniaika> | looks like a regular-ass operator but no! more magic under the hood |
| 2021-03-28 16:19:48 | → | malumore joins (~malumore@151.62.119.109) |
| 2021-03-28 16:19:51 | <wz1000> | not anymore with ImpredicativeTypes I think |
| 2021-03-28 16:19:55 | × | malumore quits (~malumore@151.62.119.109) (Remote host closed the connection) |
| 2021-03-28 16:19:59 | <mniip> | still is |
| 2021-03-28 16:20:02 | <mniip> | but uh |
| 2021-03-28 16:20:08 | <mniip> | that's called a "wired in id" |
| 2021-03-28 16:20:20 | <mniip> | which is very different from "syntax" |
| 2021-03-28 16:20:21 | <Uniaika> | yes, thanks for the better terminology mniip |
| 2021-03-28 16:20:33 | → | malumore joins (~malumore@151.62.119.109) |
| 2021-03-28 16:20:38 | <Uniaika> | indeed they don't appear at the same level in the compiler implementation |
| 2021-03-28 16:20:56 | <mniip> | there's things the compiler needs to be able to refer to, and things the compiler needs to be able to uniquely identify |
| 2021-03-28 16:21:21 | <mniip> | wired-in types, bindings, etc |
| 2021-03-28 16:21:46 | × | romesrf quits (~romesrf@44.190.189.46.rev.vodafone.pt) (Quit: WeeChat 3.1) |
| 2021-03-28 16:22:56 | → | raichoo joins (~raichoo@dslb-092-073-192-171.092.073.pools.vodafone-ip.de) |
| 2021-03-28 16:23:35 | → | elliott_ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 2021-03-28 16:24:02 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 268 seconds) |
| 2021-03-28 16:24:34 | → | ADG1089 joins (~aditya@27.58.165.185) |
| 2021-03-28 16:24:53 | <wz1000> | mniip: way less special treatment anyway: https://gitlab.haskell.org/ghc/ghc/-/blob/master/compiler/GHC/Tc/Gen/App.hs#L271 |
| 2021-03-28 16:26:17 | <wz1000> | and no special treatment at all if you have -XImpredicativeTypes |
| 2021-03-28 16:27:41 | <Uniaika> | aaand this is far outside of my domain of competence :P |
| 2021-03-28 16:28:31 | × | toorevitimirp quits (~tooreviti@117.182.181.200) (Quit: Konversation terminated!) |
| 2021-03-28 16:28:52 | <mniip> | it's mailing richard hours |
| 2021-03-28 16:30:55 | × | son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal) |
| 2021-03-28 16:31:36 | <Uniaika> | it's also fucking sunday so I think we've earned some rest until monday >_> |
| 2021-03-28 16:33:35 | → | Sheilong joins (uid293653@gateway/web/irccloud.com/x-qyihkevgdfchqfky) |
| 2021-03-28 16:33:41 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:f0bc:f236:90c7:a6f5) |
| 2021-03-28 16:33:42 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 2021-03-28 16:36:53 | → | stree joins (~stree@68.36.8.116) |
| 2021-03-28 16:37:45 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2021-03-28 16:37:54 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:f0bc:f236:90c7:a6f5) (Ping timeout: 245 seconds) |
| 2021-03-28 16:37:57 | → | toorevitimirp joins (~tooreviti@117.182.181.200) |
| 2021-03-28 16:38:32 | → | minoru_shiraeesh joins (~shiraeesh@46.34.207.10) |
| 2021-03-28 16:39:59 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 2021-03-28 16:40:03 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 2021-03-28 16:41:55 | × | toorevitimirp quits (~tooreviti@117.182.181.200) (Client Quit) |
| 2021-03-28 16:42:00 | <edwardk> | mniip: i want to be able to pass around ~#'s myself damnit. =( |
| 2021-03-28 16:42:11 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 2021-03-28 16:42:24 | <edwardk> | we need CONSTRAINT :: RuntimeRep -> Type |
| 2021-03-28 16:42:45 | <edwardk> | less magic pls |
| 2021-03-28 16:43:41 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 2021-03-28 16:43:43 | × | Criggie1 quits (~Criggie@185.204.1.185) (Remote host closed the connection) |
| 2021-03-28 16:43:44 | <edwardk> | oh neat, i didn't realize they turned on quicklook for sections all the time |
| 2021-03-28 16:43:53 | <edwardk> | that could save me some code and make me actually use sections |
| 2021-03-28 16:44:13 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 2021-03-28 16:44:56 | × | ADG1089 quits (~aditya@27.58.165.185) (Quit: Konversation terminated!) |
| 2021-03-28 16:45:26 | <mniip> | edwardk, such as (\case `id`) ? |
| 2021-03-28 16:45:35 | <ski> | mniip : so what's `~#', how does it differ from `~~' ? |
| 2021-03-28 16:46:04 | <ski> | "sections" ? |
| 2021-03-28 16:46:08 | <mniip> | ~# is the Core-only unboxed equality constructor |
| 2021-03-28 16:46:14 | <ski> | hm |
| 2021-03-28 16:46:29 | <ski> | heterogenous too, i assume |
| 2021-03-28 16:46:29 | → | supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) |
| 2021-03-28 16:46:40 | <mniip> | (a :: k1) ~# (b :: k2) :: TYPE (TupleRep []) |
| 2021-03-28 16:46:41 | <mniip> | yes |
| 2021-03-28 16:46:54 | <ski> | ok |
| 2021-03-28 16:46:54 | × | zaquest quits (~notzaques@5.128.210.178) (Read error: Connection reset by peer) |
| 2021-03-28 16:47:36 | → | zaquest joins (~notzaques@5.128.210.178) |
| 2021-03-28 16:47:51 | <ski> | (hm, so it's an unboxed tuple type, not a constraint ?) |
| 2021-03-28 16:50:15 | <mniip> | type ~ constraint |
| 2021-03-28 16:50:30 | → | leonardys joins (~leonard@118.136.35.158) |
| 2021-03-28 16:52:31 | <ski> | % :k (~) |
| 2021-03-28 16:52:31 | <yahb> | ski: k -> k -> Constraint |
| 2021-03-28 16:52:41 | × | Vadrigar_ quits (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
| 2021-03-28 16:54:22 | × | jamm__ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 2021-03-28 16:54:58 | <ski> | % :k (~~) |
| 2021-03-28 16:54:58 | <yahb> | ski: k0 -> k1 -> Constraint |
| 2021-03-28 16:55:01 | <ski> | % :k (~#) |
| 2021-03-28 16:55:01 | <yahb> | ski: ; <interactive>:1:1: error:; Not in scope: type constructor or class `~#'; Perhaps you meant `~~' (imported from GHC.Exts) |
| 2021-03-28 16:59:56 | → | robwerks1 joins (~robwerks@195.140.213.38) |
| 2021-03-28 17:00:02 | → | Erutuon_ joins (~Erutuon@97-116-16-233.mpls.qwest.net) |
| 2021-03-28 17:00:57 | × | AkechiShiro quits (~AkechiShi@2a01:e0a:5f9:9681:4cfc:952:318a:ea87) (Quit: WeeChat 2.9) |
| 2021-03-28 17:01:06 | × | dpl_ quits (~dpl@77.121.78.163) (Ping timeout: 240 seconds) |
| 2021-03-28 17:02:00 | → | elusive joins (~Jeanne-Ka@static-198-54-134-137.cust.tzulo.com) |
| 2021-03-28 17:02:09 | → | abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
All times are in UTC.