Logs: freenode/#haskell
| 2021-04-08 12:43:31 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
| 2021-04-08 12:45:56 | <geekosaur> | this also won't happen in ghci because it can't see beyond the line you just threw at it, so it would monomorphize way too often; as such we turn off the monomorphism restriction in ghci by default |
| 2021-04-08 12:46:12 | → | mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan) |
| 2021-04-08 12:46:26 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 2021-04-08 12:46:58 | × | v01d4lph4 quits (~v01d4lph4@223.177.183.27) (Remote host closed the connection) |
| 2021-04-08 12:47:43 | <kenanmarasli> | Makes sense. In our lecture we use a compiler environment but I didn't know about monomorphism restriction before. I'll read more about it |
| 2021-04-08 12:47:52 | × | frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 265 seconds) |
| 2021-04-08 12:50:32 | <BosonCollider> | lortabac: Ah, that just gets rid of newtypes afaik. I'm thinking more of something like: if I have a typeclass OkasakiHeap h that denotes a generic persistent heap, then there is a natural monofoldable definition for any instance of it |
| 2021-04-08 12:50:54 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 2021-04-08 12:50:54 | × | royal_screwup215 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 2021-04-08 12:51:01 | <BosonCollider> | which is basically equivalent to folding over a heapsorted list |
| 2021-04-08 12:51:19 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 2021-04-08 12:51:40 | <lortabac> | you can do that in plain Haskell |
| 2021-04-08 12:51:42 | <BosonCollider> | but I can't define a generic implementation of MonoFoldable h for all OkasakiHeap h |
| 2021-04-08 12:51:54 | × | kenanmarasli quits (1fdf0dda@31.223.13.218) (Quit: Connection closed) |
| 2021-04-08 12:52:00 | <BosonCollider> | I have to define Monofoldable for all individual instances of OkasakiHeap |
| 2021-04-08 12:52:06 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 2021-04-08 12:52:19 | <lortabac> | why? |
| 2021-04-08 12:52:26 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) |
| 2021-04-08 12:52:30 | <olligobber> | yay https://gitlab.haskell.org/ghc/ghc/-/merge_requests/5495 |
| 2021-04-08 12:52:40 | <BosonCollider> | because typeclass bounds aren't subtyping |
| 2021-04-08 12:52:47 | <olligobber> | mpickering, nice work |
| 2021-04-08 12:53:32 | <lortabac> | BosonCollider: I think I don't understand, I'll let someone else answer |
| 2021-04-08 12:53:48 | <BosonCollider> | like, what do you do if a user implements your typeclass |
| 2021-04-08 12:53:58 | <BosonCollider> | on a foreign type that already implements monofoldable |
| 2021-04-08 12:54:28 | <geekosaur> | this sounds like instance Foo a => Bar a which overlaps everything |
| 2021-04-08 12:55:18 | × | cads2 quits (~cads@ip-64-72-99-232.lasvegas.net) (Ping timeout: 268 seconds) |
| 2021-04-08 12:55:22 | <olligobber> | you could write some template haskell to automatically drive MonoFoldable from OkasakiHeap so it can be easily added and removed depending whether other instances exist |
| 2021-04-08 12:55:32 | → | fendor_ joins (~fendor@178.115.129.223.wireless.dyn.drei.com) |
| 2021-04-08 12:55:58 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds) |
| 2021-04-08 12:56:07 | <BosonCollider> | right, to do it normally you inevitable end up with macros of some kind, which is usually an indication that you have a missing feature |
| 2021-04-08 12:56:47 | → | stree joins (~stree@68.36.8.116) |
| 2021-04-08 12:57:01 | × | fendor quits (~fendor@046125249018.public.t-mobile.at) (Quit: Leaving) |
| 2021-04-08 12:57:28 | <olligobber> | yeah, I guess it would be nice to have a way to insert classes into the heirachy without either breaking stuff or manually considering each type... |
| 2021-04-08 12:57:59 | <BosonCollider> | so basically what I'm suggesting is something like NAMEDINSTANCE a : Foo a => Bar a |
| 2021-04-08 12:58:32 | <BosonCollider> | where the user can write NAMEDINSTANCE ConcreteType in their source file |
| 2021-04-08 12:58:38 | → | xlei joins (znc@unaffiliated/xlei) |
| 2021-04-08 12:58:49 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 2021-04-08 12:58:55 | <olligobber> | right, a macro can do that |
| 2021-04-08 12:59:16 | <BosonCollider> | right, it's usually done with macros now, which is untyped |
| 2021-04-08 12:59:50 | <olligobber> | it will get type checked at some point though |
| 2021-04-08 13:00:00 | <BosonCollider> | I was thinking of how this would work as a first class feature |
| 2021-04-08 13:00:11 | <BosonCollider> | and then it sort of looks like a module functor |
| 2021-04-08 13:00:22 | <BosonCollider> | but where you view typeclasses as module signatures |
| 2021-04-08 13:00:54 | → | hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net) |
| 2021-04-08 13:01:03 | <olligobber> | hmm, now you're tempting me to try and write a better class system... |
| 2021-04-08 13:01:29 | → | HannaM joins (~quassel@p54849510.dip0.t-ipconnect.de) |
| 2021-04-08 13:01:30 | × | Chai-T-Rex quits (~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection) |
| 2021-04-08 13:02:02 | → | Chai-T-Rex joins (~ChaiTRex@gateway/tor-sasl/chaitrex) |
| 2021-04-08 13:02:26 | <hyperisco> | olligobber, like socialism? |
| 2021-04-08 13:02:56 | <olligobber> | I'm also tempted to do that, but I'm better at maths and programming than economics and politics |
| 2021-04-08 13:03:19 | → | raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-04-08 13:03:39 | × | gproto23 quits (~gproto23@unaffiliated/gproto23) (Remote host closed the connection) |
| 2021-04-08 13:04:41 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 2021-04-08 13:05:53 | <BosonCollider> | lol |
| 2021-04-08 13:06:21 | <BosonCollider> | anyway, I also noticed that in Rust which comes with syntax-rules macros out of the box, this like one of the top three most common uses |
| 2021-04-08 13:07:06 | → | v01d4lph4 joins (~v01d4lph4@223.177.183.27) |
| 2021-04-08 13:07:48 | → | carlomagno joins (~cararell@148.87.23.5) |
| 2021-04-08 13:08:21 | <BosonCollider> | though its syntax for generics is more boilerplate heavy than Haskells |
| 2021-04-08 13:09:09 | × | puffnfresh quits (~puffnfres@45.76.124.5) (Quit: ZNC 1.8.0 - https://znc.in) |
| 2021-04-08 13:10:39 | → | neiluj joins (~jco@91-167-203-101.subs.proxad.net) |
| 2021-04-08 13:10:39 | × | neiluj quits (~jco@91-167-203-101.subs.proxad.net) (Changing host) |
| 2021-04-08 13:10:39 | → | neiluj joins (~jco@unaffiliated/neiluj) |
| 2021-04-08 13:11:36 | × | BIG_JIMM1_D quits (~jim@108.61.185.76) (Ping timeout: 245 seconds) |
| 2021-04-08 13:11:47 | → | deviantfero joins (~deviantfe@190.150.27.58) |
| 2021-04-08 13:13:29 | → | puffnfresh joins (~puffnfres@45.76.124.5) |
| 2021-04-08 13:14:27 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Ping timeout: 265 seconds) |
| 2021-04-08 13:15:34 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection) |
| 2021-04-08 13:15:41 | → | ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 2021-04-08 13:16:16 | → | gproto23 joins (~gproto23@unaffiliated/gproto23) |
| 2021-04-08 13:16:41 | → | rmk236 joins (~lcampos@2a02:908:3616:b100:ab3a:e456:9b29:6dd4) |
| 2021-04-08 13:16:48 | × | rmk236 quits (~lcampos@2a02:908:3616:b100:ab3a:e456:9b29:6dd4) (Client Quit) |
| 2021-04-08 13:17:17 | → | BIG_JIMMY_D joins (~jim@108.61.185.76) |
| 2021-04-08 13:18:03 | × | mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Remote host closed the connection) |
| 2021-04-08 13:18:25 | → | mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan) |
| 2021-04-08 13:20:11 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 2021-04-08 13:25:17 | → | royal_screwup217 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 2021-04-08 13:28:45 | × | Mrbuck quits (~Mrbuck@gateway/tor-sasl/mrbuck) (Ping timeout: 240 seconds) |
| 2021-04-08 13:36:50 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2021-04-08 13:37:39 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds) |
| 2021-04-08 13:38:07 | × | bollu quits (~bollu@139.59.46.74) (Quit: Ping timeout (120 seconds)) |
| 2021-04-08 13:38:24 | → | bollu joins (~bollu@139.59.46.74) |
| 2021-04-08 13:39:05 | × | solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed) |
| 2021-04-08 13:41:50 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 2021-04-08 13:42:02 | × | geekosaur quits (82650c7a@130.101.12.122) (Ping timeout: 240 seconds) |
| 2021-04-08 13:42:29 | × | Pickchea quits (~private@unaffiliated/pickchea) (Ping timeout: 265 seconds) |
| 2021-04-08 13:43:03 | → | Mrbuck joins (~Mrbuck@gateway/tor-sasl/mrbuck) |
| 2021-04-08 13:46:12 | → | Tario joins (~Tario@201.192.165.173) |
| 2021-04-08 13:46:15 | → | average joins (uid473595@gateway/web/irccloud.com/x-dbzmpdwpubsciykg) |
| 2021-04-08 13:48:24 | × | hazard-pointer_ quits (sid331723@gateway/web/irccloud.com/x-djvxjvpwtslqokxt) (Quit: Connection closed for inactivity) |
| 2021-04-08 13:50:36 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-04-08 13:52:06 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 2021-04-08 13:52:26 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-2-51.w83-200.abo.wanadoo.fr) |
| 2021-04-08 13:52:41 | × | MindlessDrone quits (~MindlessD@unaffiliated/mindlessdrone) (Ping timeout: 252 seconds) |
| 2021-04-08 13:56:36 | _flow_ | is now known as flow |
| 2021-04-08 13:58:19 | → | MindlessDrone joins (~MindlessD@unaffiliated/mindlessdrone) |
| 2021-04-08 13:59:38 | × | nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds) |
| 2021-04-08 14:01:23 | × | kritzefitz quits (~kritzefit@2003:5b:203b:200::10:49) (Remote host closed the connection) |
| 2021-04-08 14:02:25 | × | acidjnk_new quits (~acidjnk@p200300d0c72b9506d42010f0580cba17.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
| 2021-04-08 14:02:26 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
All times are in UTC.