Logs on 2021-07-04 (liberachat/#haskell)
| 00:00:19 | × | o quits (~niko@libera/staff/niko) (Ping timeout: 622 seconds) |
| 00:00:19 | <monochrom> | So you just need (SchemeNumber -> SchemeNumber -> SchemeNumber) not (forall whatever) |
| 00:00:38 | <sciencentistguy> | that would work i guess |
| 00:00:40 | → | azeem joins (~azeem@176.200.221.91) |
| 00:00:48 | <sciencentistguy> | but that means i can't use `(+)` |
| 00:00:56 | <sciencentistguy> | and that |
| 00:00:59 | <sciencentistguy> | whoops |
| 00:01:46 | <sciencentistguy> | the thing i'm trying to achieve here is "i want a function that takes a binary operator and applies it to the contents of two SchemeNumbers and returns a new SchemeNumber" |
| 00:02:02 | <monochrom> | You cannot use (+) as soon as you try "(1 :: Integer) + (2 :: Rational)" already. Your cause is lost even before you began. |
| 00:02:32 | <monochrom> | You already have to code up 8 cases of plus for SchemeNumber. May as well actually give it a name. |
| 00:03:21 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:03:37 | <sciencentistguy> | i'd quite like to avoid having to duplicate that massive caseof for each operator though |
| 00:03:41 | <sciencentistguy> | but i think that might be unavoidable |
| 00:04:03 | <monochrom> | This is why Haskell doesn't go with Scheme's number hierarchy. |
| 00:04:25 | <sciencentistguy> | yeah from what i've seen scheme's number hierarchy is a *mess* |
| 00:04:56 | <monochrom> | (+) :: Num a => a->a->a because the alternative (Num a, Num b, Num c) => a -> b -> c would be madness, as Scheme has proved. |
| 00:05:28 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 00:06:33 | → | Pickchea joins (~private@user/pickchea) |
| 00:08:38 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 00:11:30 | <monochrom> | "The best way to win is not to play" applies. |
| 00:14:06 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 00:14:52 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 00:15:20 | → | stevenxl joins (~stevenlei@68.235.43.93) |
| 00:16:12 | × | azeem quits (~azeem@176.200.221.91) (Ping timeout: 256 seconds) |
| 00:16:25 | → | azeem joins (~azeem@176.200.221.91) |
| 00:18:15 | → | cheater1__ joins (~Username@user/cheater) |
| 00:18:34 | × | azeem quits (~azeem@176.200.221.91) (Read error: Connection reset by peer) |
| 00:18:42 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 00:18:47 | cheater1__ | is now known as cheater |
| 00:19:44 | → | azeem joins (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) |
| 00:19:52 | × | stevenxl quits (~stevenlei@68.235.43.93) (Ping timeout: 258 seconds) |
| 00:24:26 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 00:24:40 | → | cheater joins (~Username@user/cheater) |
| 00:25:06 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 00:26:08 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:31:29 | → | Guest1 joins (~Guest1@2001:e68:543d:32f5:36dd:5585:5f23:735a) |
| 00:32:08 | <Guest1> | can someone explain the zero for the error monad? I don't understand what is represented by "empty error". don't this depends on the kind of error itself? |
| 00:33:56 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 00:34:09 | × | wrunt quits (~ajc@vmx14030.hosting24.com.au) (Quit: WeeChat 1.9.1) |
| 00:34:10 | → | cheater joins (~Username@user/cheater) |
| 00:34:51 | <Axman6> | Guest1: can you link to what you're referring to? |
| 00:35:37 | <Guest1> | scroll down to the The Error Monad here https://wiki.haskell.org/All_About_Monads |
| 00:37:03 | <Guest1> | also, is zvon.org the man equivalent for haskell? google shows it more often than haskell.wiki, but this isn't always a good thing (e.g. cplusplus is preferred over cppreference when the latter is far superior) |
| 00:37:33 | <Axman6> | I've never heard of zvon.org |
| 00:37:53 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 00:38:10 | <sciencentistguy> | Guest1: off topic, but i've never heard anyone say that cplusplus.com is better than cppreference |
| 00:38:30 | <Guest1> | no, i meant to say google prefers it more, but cppreference is superior |
| 00:39:45 | <Axman6> | I've never used the MonadError class, and I wouldn't be surprised if it's no longer a recommended way to deal with errors. Generally I used ExceptT, that seems to cover all my error needs and is well supported by the ecosystem |
| 00:40:05 | <geekosaur> | ExceptT superseded ErrorT some time back, yes |
| 00:42:51 | → | LukeHoersten joins (~LukeHoers@user/lukehoersten) |
| 00:42:59 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 00:43:20 | × | LukeHoersten quits (~LukeHoers@user/lukehoersten) (Client Quit) |
| 00:43:27 | → | thornAvery joins (~thorn@121.220.33.124) |
| 00:44:01 | × | sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 258 seconds) |
| 00:47:06 | × | pera quits (~pera@user/pera) (Ping timeout: 252 seconds) |
| 00:48:47 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 00:49:20 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Remote host closed the connection) |
| 00:49:28 | → | wrunt joins (~ajc@vmx14030.hosting24.com.au) |
| 00:49:59 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 00:51:30 | × | stefan-_ quits (~cri@42dots.de) (Ping timeout: 252 seconds) |
| 00:52:27 | × | cheater quits (~Username@user/cheater) (Ping timeout: 258 seconds) |
| 00:52:49 | → | cheater joins (~Username@user/cheater) |
| 00:53:30 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 00:54:44 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 256 seconds) |
| 00:54:58 | → | favonia joins (~favonia@user/favonia) |
| 00:55:19 | → | stefan-_ joins (~cri@42dots.de) |
| 00:56:10 | → | lavaman joins (~lavaman@98.38.249.169) |
| 00:56:30 | → | willbush joins (~user@47.183.200.14) |
| 00:58:54 | → | stianhj joins (~stianhj@128.199.58.13) |
| 01:03:14 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 01:03:33 | → | favonia joins (~favonia@user/favonia) |
| 01:04:08 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:04:11 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 01:04:39 | × | oxide quits (~lambda@user/oxide) (Ping timeout: 265 seconds) |
| 01:05:07 | → | oxide joins (~lambda@user/oxide) |
| 01:06:14 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 01:06:52 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
| 01:09:24 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 01:10:00 | × | hiruji quits (~hiruji@user/hiruji) (Read error: Connection reset by peer) |
| 01:11:01 | → | hiruji joins (~hiruji@user/hiruji) |
| 01:14:10 | × | hiruji quits (~hiruji@user/hiruji) (Client Quit) |
| 01:14:28 | → | hiruji joins (~hiruji@user/hiruji) |
| 01:14:39 | → | stevenxl joins (~stevenlei@68.235.43.93) |
| 01:27:30 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 01:27:54 | → | favonia joins (~favonia@user/favonia) |
| 01:28:06 | × | beka quits (~beka@104-244-27-23.static.monkeybrains.net) (Ping timeout: 258 seconds) |
| 01:31:04 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 01:34:14 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 01:34:32 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 01:35:11 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 01:36:46 | → | lavaman joins (~lavaman@98.38.249.169) |
| 01:37:09 | → | mceldeen joins (~igloo@71-211-226-211.hlrn.qwest.net) |
| 01:37:55 | → | norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 01:38:13 | → | beka joins (~beka@104-244-27-23.static.monkeybrains.net) |
| 01:38:42 | × | xff0x quits (~xff0x@2001:1a81:52ae:a300:7e2e:fefc:f290:c960) (Ping timeout: 240 seconds) |
| 01:39:53 | × | mceldeen quits (~igloo@71-211-226-211.hlrn.qwest.net) (Remote host closed the connection) |
| 01:40:58 | → | xff0x joins (~xff0x@2001:1a81:52ea:d100:38d4:8967:cbb0:e45b) |
| 01:41:42 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 272 seconds) |
| 01:42:20 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 01:45:44 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 01:46:29 | × | khumba quits (~khumba@user/khumba) () |
| 01:47:43 | × | beka quits (~beka@104-244-27-23.static.monkeybrains.net) (Read error: Connection reset by peer) |
| 01:48:44 | → | neurocyte409 joins (~neurocyte@46.243.82.20) |
| 01:48:45 | × | neurocyte409 quits (~neurocyte@46.243.82.20) (Changing host) |
| 01:48:45 | → | neurocyte409 joins (~neurocyte@user/neurocyte) |
| 01:48:54 | → | favonia joins (~favonia@user/favonia) |
| 01:49:07 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 01:49:21 | → | cheater joins (~Username@user/cheater) |
| 01:50:20 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 258 seconds) |
| 01:51:04 | × | neurocyte40 quits (~neurocyte@user/neurocyte) (Ping timeout: 268 seconds) |
| 01:51:04 | neurocyte409 | is now known as neurocyte40 |
| 01:52:28 | × | stevenxl quits (~stevenlei@68.235.43.93) (Ping timeout: 272 seconds) |
| 01:54:56 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
| 01:55:13 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 01:56:43 | → | berberman_ joins (~berberman@user/berberman) |
| 01:57:04 | → | lavaman joins (~lavaman@98.38.249.169) |
| 01:57:30 | × | berberman quits (~berberman@user/berberman) (Ping timeout: 240 seconds) |
| 01:59:57 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 02:01:32 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
| 02:04:30 | <boxscape> | ErrorT is deprecated, but not MonadError, of which there exists an instance for ExceptT |
| 02:04:38 | <boxscape> | whether it's recommended, I can't say |
| 02:05:36 | × | alx741 quits (~alx741@186.178.109.174) (Quit: alx741) |
| 02:05:38 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 02:07:12 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 02:13:34 | → | stevenxl joins (~stevenlei@68.235.43.93) |
| 02:17:53 | → | Guest13 joins (~Guest13@75.172.171.153) |
| 02:18:29 | × | Guest13 quits (~Guest13@75.172.171.153) (Client Quit) |
| 02:18:34 | → | alphabeta joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 02:19:06 | → | lavaman joins (~lavaman@98.38.249.169) |
| 02:21:36 | × | stevenxl quits (~stevenlei@68.235.43.93) (Ping timeout: 272 seconds) |
| 02:21:36 | × | kilolympus quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 272 seconds) |
| 02:22:09 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 02:25:09 | <boxscape> | ...though even if you use ExceptT in your type signatures I'd imagine you use the MoandError methods to avoid having to use `lift` |
| 02:26:40 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:26:40 | FinnElija | is now known as Guest8250 |
| 02:26:40 | × | Guest8250 quits (~finn_elij@user/finn-elija/x-0085643) (Killed (strontium.libera.chat (Nickname regained by services))) |
| 02:26:40 | finn_elija | is now known as FinnElija |
| 02:26:43 | × | _________ quits (~nobody@user//x-7881368) (Changing host) |
| 02:26:43 | → | _________ joins (~nobody@user/noodly) |
| 02:26:49 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
| 02:27:34 | × | td_ quits (~td@muedsl-82-207-238-014.citykom.de) (Ping timeout: 252 seconds) |
| 02:29:22 | → | td_ joins (~td@muedsl-82-207-238-042.citykom.de) |
| 02:34:16 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 272 seconds) |
| 02:42:46 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 02:44:06 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 02:44:40 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 02:45:27 | → | favonia joins (~favonia@user/favonia) |
| 02:46:25 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 02:48:34 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 02:48:50 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 02:48:56 | → | cheater joins (~Username@user/cheater) |
| 02:49:07 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 02:50:08 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 02:51:06 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Remote host closed the connection) |
| 03:02:08 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
| 03:05:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:05:30 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 03:07:43 | → | favonia joins (~favonia@user/favonia) |
| 03:10:15 | → | Nyeogmi joins (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) |
| 03:11:12 | × | Nyeogmi quits (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) (Changing host) |
| 03:11:12 | → | Nyeogmi joins (~Nyeogmi@user/nyeogmi) |
| 03:18:35 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 03:19:14 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 272 seconds) |
| 03:19:51 | × | HarveyPwca quits (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) (Quit: Leaving) |
| 03:31:02 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 03:35:06 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 03:35:25 | → | favonia joins (~favonia@user/favonia) |
| 03:36:25 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 03:40:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 03:40:53 | → | dunkeln_ joins (~dunkeln@188.70.44.28) |
| 03:43:06 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 03:45:43 | → | favonia joins (~favonia@user/favonia) |
| 03:48:16 | → | nate1 joins (~nate@108.233.125.227) |
| 03:48:47 | × | thornAvery quits (~thorn@121.220.33.124) (Ping timeout: 258 seconds) |
| 03:49:20 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 03:52:16 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 03:53:22 | × | oxide quits (~lambda@user/oxide) (Ping timeout: 252 seconds) |
| 03:53:23 | × | nate1 quits (~nate@108.233.125.227) (Ping timeout: 258 seconds) |
| 03:54:21 | → | oxide joins (~lambda@user/oxide) |
| 03:57:49 | → | wei2912 joins (~wei2912@112.199.250.21) |
| 04:04:27 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 04:04:48 | → | cheater joins (~Username@user/cheater) |
| 04:10:14 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 04:10:32 | → | favonia joins (~favonia@user/favonia) |
| 04:13:38 | × | dunkeln_ quits (~dunkeln@188.70.44.28) (Ping timeout: 265 seconds) |
| 04:19:06 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 04:25:49 | → | favonia joins (~favonia@user/favonia) |
| 04:29:25 | × | cheater quits (~Username@user/cheater) (Ping timeout: 258 seconds) |
| 04:29:38 | → | cheater joins (~Username@user/cheater) |
| 04:31:06 | × | hammock quits (~Hammock@2600:1700:19a1:3330::625) (Ping timeout: 240 seconds) |
| 04:41:25 | → | steshaw joins (~steshaw@122-151-164-35.sta.wbroadband.net.au) |
| 04:47:00 | → | dunkeln joins (~dunkeln@188.70.44.28) |
| 04:48:08 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 04:48:40 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 04:49:10 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 04:49:20 | → | cheater joins (~Username@user/cheater) |
| 04:51:14 | → | slack1256 joins (~slack1256@181.203.33.8) |
| 04:52:47 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 265 seconds) |
| 04:53:34 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 04:54:19 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 04:57:24 | × | cheater quits (~Username@user/cheater) (Ping timeout: 258 seconds) |
| 04:57:46 | → | cheater joins (~Username@user/cheater) |
| 04:58:30 | × | zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection) |
| 04:59:28 | × | oxide quits (~lambda@user/oxide) (Read error: Connection reset by peer) |
| 04:59:59 | → | zaquest joins (~notzaques@5.128.210.178) |
| 05:03:34 | × | willbush quits (~user@47.183.200.14) (Quit: ERC (IRC client for Emacs 28.0.50)) |
| 05:04:07 | → | cjb joins (~cjb@user/cjb) |
| 05:05:08 | × | cjb quits (~cjb@user/cjb) (Client Quit) |
| 05:06:20 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 05:06:38 | → | favonia joins (~favonia@user/favonia) |
| 05:11:47 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 05:12:44 | × | MorrowM quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 258 seconds) |
| 05:14:38 | × | favonia quits (~favonia@user/favonia) (Remote host closed the connection) |
| 05:21:53 | <qrpnxz> | so i get that when i type something a -> a the forall a is implicit, how do i make it explicit that i don't mean forall a? |
| 05:22:59 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 05:23:38 | <c_wraith> | what do you mean instead? |
| 05:23:41 | → | chris_ joins (~chris@81.96.113.213) |
| 05:24:14 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 05:25:04 | <qrpnxz> | there is a specific a that i don't want to say because i want it to be dependant on the code |
| 05:25:34 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
| 05:25:40 | <qrpnxz> | i could also not write out the type at all, but i rather have some of it written idk |
| 05:25:40 | <c_wraith> | I think you *probably* want ScopedTypeVariables |
| 05:25:51 | <qrpnxz> | will look into that |
| 05:28:26 | × | chris_ quits (~chris@81.96.113.213) (Ping timeout: 272 seconds) |
| 05:29:21 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 05:32:31 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 05:32:34 | <qrpnxz> | PartialTypeSignatures seems to be the ticket |
| 05:33:04 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
| 05:33:04 | <davean> | qrpnxz: uh |
| 05:33:17 | <c_wraith> | Oh, yeah, sometimes that works. |
| 05:33:27 | <davean> | I mean thats a way of not writing the type signature |
| 05:33:56 | <davean> | Not of writing some specific type signature |
| 05:33:57 | <qrpnxz> | of not writing part of it yeah |
| 05:34:15 | <qrpnxz> | exactly what i wanted |
| 05:34:29 | <c_wraith> | Sometimes that's what you need, especially when you have MonoLocalBinds enabled |
| 05:35:20 | <c_wraith> | When working with GADTs, I often will use a local type like forall x. _ x -> _ x |
| 05:35:26 | <davean> | I don't know of any type signature you can get with PartialTypeSignatures you couldn't have writen out directly with ScopedTypeVariables |
| 05:35:35 | <qrpnxz> | thought because it's a hole rather than a variable, i can't put a constraint on the hole |
| 05:35:36 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:35:38 | <qrpnxz> | so not perfect |
| 05:35:39 | <qrpnxz> | but alright |
| 05:35:49 | <c_wraith> | You can add a _ constraint, too |
| 05:36:01 | <qrpnxz> | that let's constraints for anything appear |
| 05:36:04 | <qrpnxz> | which i don't want |
| 05:36:18 | <qrpnxz> | i only wanted a specific constraint, for a specific whole |
| 05:36:21 | <qrpnxz> | *hole |
| 05:36:21 | <davean> | qrpnxz: why are you not giving it a variable and linking it to what you want it linked to directly? |
| 05:36:31 | <qrpnxz> | cause the variable would be a forall |
| 05:36:34 | <qrpnxz> | which would be wrong |
| 05:36:45 | <davean> | Why would it be a forall? I said link it directly |
| 05:36:54 | <qrpnxz> | idk what you mean by that |
| 05:37:02 | <davean> | Ok, so what determines what it should be? |
| 05:37:03 | <qrpnxz> | my original question was how to declare that it wasn't a forall |
| 05:37:09 | <qrpnxz> | the code determines it |
| 05:37:12 | × | shanemikel quits (~shanemike@desk.roadwar.net) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 05:37:16 | <davean> | What *part* of the code |
| 05:37:29 | <davean> | I mean types determine types |
| 05:37:30 | × | dunkeln quits (~dunkeln@188.70.44.28) (Ping timeout: 240 seconds) |
| 05:37:33 | <davean> | we aren't dependently typed in Haskel |
| 05:37:38 | <qrpnxz> | the entirety, for my particular case the output of the function |
| 05:37:45 | → | shanemikel joins (~shanemike@desk.roadwar.net) |
| 05:38:23 | <davean> | It has to output a type - we're not dependently typed so it can't vary |
| 05:38:26 | <qrpnxz> | like i want to say that it returns a foldable of something, but i don't want to say what specific instance of foldable |
| 05:38:33 | <davean> | Sure, right |
| 05:38:41 | <qrpnxz> | with partial types i don't have to put what it is, but i also can't say it has to be foldable |
| 05:38:57 | <qrpnxz> | and if i do a normal variable it turns into a forall and doesn't compile |
| 05:39:24 | <davean> | So *who* decides what foldable? |
| 05:39:44 | <davean> | which code where |
| 05:39:54 | <qrpnxz> | the implementation, if i happen to return a list, then it's list, if i return a vector, then it's vector |
| 05:40:29 | <davean> | are you trying to write a type class? |
| 05:40:33 | <qrpnxz> | no |
| 05:40:37 | <qrpnxz> | this is just a normal function |
| 05:40:41 | <davean> | then theres only one implimentation |
| 05:40:47 | <qrpnxz> | yes |
| 05:40:48 | <davean> | so its fully determined |
| 05:40:50 | <qrpnxz> | yes |
| 05:41:03 | → | ablutor joins (~quassel@wasscher.com) |
| 05:41:31 | <davean> | Are you under the illusion PartialTypeSignatures will hide exactly which type it returns from other code? |
| 05:42:18 | <qrpnxz> | no, but let me think about that |
| 05:42:31 | <qrpnxz> | yeah i don't have a problem with that |
| 05:43:01 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 258 seconds) |
| 05:43:03 | <davean> | So if you know the type with PartialTypeSignatures will end up as exatly the infered type, why are you not writing it out directly? |
| 05:43:51 | <qrpnxz> | because then i'd have to change the type i write out if i changed the implementation, and that type would be part of public api, so then i couldn't change it without breaking users |
| 05:44:10 | <davean> | So I tihnk you didn't read what I said above then |
| 05:44:18 | <davean> | PartialTypeSignatures *does* make it part of the public API |
| 05:44:24 | <davean> | it fills in what you would have writen for you |
| 05:44:29 | <davean> | it does *not* hide it |
| 05:45:00 | <qrpnxz> | on the documentation you would just see a hole, once it compiles the code would know which type exactly, but as a user you could only rely on, say, that it was a foldable |
| 05:45:01 | <davean> | This is exactly why I went through this discussion |
| 05:45:28 | <davean> | Uh? |
| 05:45:30 | <davean> | What? |
| 05:46:03 | <davean> | I tihnk we just found even more to sort out here |
| 05:46:25 | <qrpnxz> | like when i accept a foldable, at some point that's going to be a specific foldable too, but I'm telling you I accept any foldable, even thought when it compiles it may use like list specific functions |
| 05:46:57 | <c_wraith> | do you actually want a higher-rank type? |
| 05:47:01 | <c_wraith> | Is that what's going on? |
| 05:47:01 | <qrpnxz> | so likewise i want to be able to say i'm gonna give you a foldable, but i'm not gonna tell you (via documentation, via type signature) what exactly it's gonna be. |
| 05:47:09 | <davean> | qrpnxz: You're very confused |
| 05:47:16 | <c_wraith> | Oh. that's just not how Haskell works |
| 05:47:17 | <qrpnxz> | idk about higher-rank types much idk c_wraith |
| 05:47:21 | <davean> | c_wraith: I assumed he did but knew he was WAY too confused to get there quickly |
| 05:47:36 | <davean> | c_wraith: Hence trying to sort out where his confusion is first |
| 05:47:39 | <qrpnxz> | i'm not confused at all, i just don't know if this is possible. If it isn't then okay |
| 05:47:48 | <davean> | qrpnxz: no, you're clearly confused |
| 05:48:01 | <qrpnxz> | i'm not confused about what i want to do |
| 05:48:19 | <davean> | To some degree you are. And you're massively confused about the tools |
| 05:48:44 | <qrpnxz> | i don't wanna do the tools? what are you saying lol |
| 05:48:50 | <sm[m]> | There is free floating non local confusion here. I can feel it from thousands of miles away.... |
| 05:48:54 | <qrpnxz> | what you are saying is confusing haha |
| 05:48:55 | → | slac32279 joins (~slack1256@191.125.227.213) |
| 05:48:57 | <davean> | Well like what you think the documentation will be |
| 05:48:58 | <qrpnxz> | that's for sure |
| 05:49:03 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 05:49:22 | <davean> | PartialTypeSignatures *only makes the compiler fill it in* it changes nothing else |
| 05:49:32 | <davean> | you'll get the exact same breakage, etc |
| 05:49:48 | <davean> | so for something to be any foldable that means you have data *and* a dictionary |
| 05:49:49 | <qrpnxz> | your code should accept any foldable, so how will it break |
| 05:50:18 | × | AgentM quits (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Quit: Leaving.) |
| 05:50:23 | <davean> | qrpnxz: It'll break *exactly* the same as if you'd specified one foldable and changed it to a different foldable *because thats exactly what happens* |
| 05:50:25 | <c_wraith> | Partial type signatures don't appear in docs |
| 05:50:27 | <davean> | there is NO illusion |
| 05:50:36 | <c_wraith> | what they expand to does |
| 05:50:47 | <davean> | They are *exactly* what it says, a partial type signature |
| 05:50:54 | <qrpnxz> | c_wraith, maybe you are talking about a particular tool idk, for me i'm just talking about the actual code as documentation |
| 05:51:04 | × | slack1256 quits (~slack1256@181.203.33.8) (Ping timeout: 252 seconds) |
| 05:51:05 | <davean> | ok so, if you wanted to return a dictionary and data, you'd need something higher ranked |
| 05:51:19 | <davean> | like data Foldable a = forall f . Foldable (f a) |
| 05:51:26 | <davean> | function :: a -> Foldable a |
| 05:51:27 | <c_wraith> | qrpnxz: you'd better be prepared for your users to use :browse and :type |
| 05:51:50 | <qrpnxz> | a dynamic type? I'm not talking about binary compatibility, you'd need to recompile your code ofc if i changed my foldable |
| 05:52:00 | <qrpnxz> | but the recompile would go without a hitch |
| 05:52:28 | <qrpnxz> | c_wraith, indeed, good point |
| 05:52:38 | <qrpnxz> | if they did that then they would see the true type |
| 05:52:42 | <davean> | I mean even if they don't, the code doesn't say it can change |
| 05:52:45 | <davean> | it just says you didn't type it out |
| 05:52:49 | <davean> | thats not documenting it may change |
| 05:53:33 | <qrpnxz> | if you think that's how haskellers would interpret it then i believe you |
| 05:53:43 | <qrpnxz> | i guess you just have to write a comment then |
| 05:53:59 | <c_wraith> | Or you could use the type system |
| 05:54:00 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
| 05:54:01 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 05:54:11 | <qrpnxz> | i don't wanna do a dynamic type that's not gonna fure |
| 05:54:13 | <qrpnxz> | *fuse |
| 05:54:15 | <c_wraith> | there are two completely independent ways to say what you mean in the type |
| 05:54:25 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 05:54:49 | <c_wraith> | Well, then, the higher-rank CPS approach works |
| 05:55:01 | <qrpnxz> | gonna have to look that up |
| 05:55:16 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 05:55:34 | <davean> | (forall r. Foldable f => f a -> r) -> r |
| 05:55:40 | <davean> | er |
| 05:55:44 | <davean> | (forall f. Foldable f => f a -> r) -> r |
| 05:55:53 | nshepperd | . o O (foo = ...; proofFooReturnsSomethingFoldable = (id :: Foldable a => a -> a) foo) |
| 05:56:13 | <qrpnxz> | lol |
| 05:56:40 | <nshepperd> | Foldable f => f a -> f a, you know what i mean |
| 05:57:19 | → | warnz joins (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) |
| 05:57:55 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 05:58:55 | <davean> | qrpnxz: do you see how (forall f. Foldable f => f a -> r) -> r forms a proof the caller handles any foldable? |
| 05:59:26 | <qrpnxz> | yeah i can do input any foldable just fine, can't say i could output any foldable though |
| 05:59:50 | <davean> | No, that says it outputs any foldable |
| 05:59:59 | <c_wraith> | it's a CPS-transform |
| 06:00:06 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 06:00:11 | <qrpnxz> | which, the one you just quoted? where is the foldable constraint on r? |
| 06:00:20 | → | cheater joins (~Username@user/cheater) |
| 06:00:25 | <davean> | qrpnxz: theres no foldable constraint on r, waht r is is up to the caller |
| 06:00:40 | <qrpnxz> | wot |
| 06:00:59 | <davean> | I didn't pin r at all |
| 06:01:07 | <davean> | r is completely open in that statement |
| 06:01:10 | <c_wraith> | qrpnxz: what's the difference between a value of type String and a value of type forall r. (String -> r) -> r ? |
| 06:01:13 | <qrpnxz> | ok but i want to say that an output is any foldable, so how does this help me do that |
| 06:01:24 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:01:30 | × | warnz quits (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) (Ping timeout: 240 seconds) |
| 06:01:34 | <davean> | qrpnxz: the output is "f a" |
| 06:01:48 | <qrpnxz> | c_wraith, a string is a string, and that thing is a function that takes a function that takes a string and returns and r and then returns an r |
| 06:02:07 | <qrpnxz> | davean, looks like the output is r |
| 06:02:10 | <c_wraith> | qrpnxz: that's just mechanics. What's the difference? |
| 06:02:26 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 06:02:26 | <c_wraith> | qrpnxz: what can you do with one representation that you can't do with the other? |
| 06:02:46 | <qrpnxz> | you can do list stuff with a string and you can call a function |
| 06:03:05 | <c_wraith> | there is no difference |
| 06:03:11 | <qrpnxz> | :| |
| 06:03:23 | <qrpnxz> | they are totally different types i don't get it |
| 06:03:35 | <nshepperd> | qrpnxz: they are inter convertible |
| 06:03:38 | <davean> | They're different types, sure, but they are semanticly equivilent |
| 06:03:47 | <qrpnxz> | i don't see how |
| 06:03:56 | <nshepperd> | you turn the function into the string by applying it to id |
| 06:04:03 | → | Morrow joins (~MorrowM_@147.161.9.15) |
| 06:04:09 | <monochrom> | "any" is informationless. The question is always: Does the user choose? Does the implementer choose? |
| 06:04:14 | <qrpnxz> | if i apply it to id i just get the function back |
| 06:04:31 | <davean> | qrpnxz: no, you get String back |
| 06:04:32 | <nshepperd> | no that's if you apply id to the function |
| 06:04:47 | <davean> | f :: (String -> r) -> r |
| 06:04:55 | <davean> | f id :: String |
| 06:05:19 | <c_wraith> | :t secret |
| 06:05:19 | <nshepperd> | you convert the string to the function by making (\f -> f my_string) |
| 06:05:20 | <qrpnxz> | oh apply it to id one sec |
| 06:05:21 | <lambdabot> | ([Char] -> b) -> b |
| 06:05:31 | <c_wraith> | > secret length |
| 06:05:32 | <lambdabot> | error: |
| 06:05:33 | <lambdabot> | Ambiguous occurrence ‘length’ |
| 06:05:33 | <lambdabot> | It could refer to |
| 06:06:05 | <c_wraith> | > secret Data.List.length |
| 06:06:06 | <lambdabot> | 19 |
| 06:06:36 | <qrpnxz> | alright, cool type i guess, but how does it help me type that i could return any foldable |
| 06:06:57 | → | chris_ joins (~chris@81.96.113.213) |
| 06:07:02 | <davean> | qrpnxz: Look at it? Its litterly a proof the caller ca handle any foldable |
| 06:07:05 | <c_wraith> | Well, you see how returning a value of type (String -> r) -> r is the same as returning a String? |
| 06:07:15 | <davean> | because it litterly had to provide the fact it can handle any foldable |
| 06:07:34 | → | slack1256 joins (~slack1256@181.203.33.8) |
| 06:08:00 | <davean> | I tihnk I've been noobed out for the night, c_wraith you take it away |
| 06:08:07 | <davean> | I'll try to just shup up at this point |
| 06:08:12 | <qrpnxz> | ohhhhh, interesting, but won't that be a total pain to use?, well i guess passing id isn't too bad? Does this get optimized? |
| 06:08:28 | <qrpnxz> | that's pretty galaxy brain tbh guys |
| 06:08:32 | <c_wraith> | Well, if the return type is (forall f. f a -> r) -> r, you can't pass in id |
| 06:08:42 | <c_wraith> | the forall constraint on the f prevents it |
| 06:08:56 | <qrpnxz> | will id not take an f a |
| 06:09:46 | × | slac32279 quits (~slack1256@191.125.227.213) (Ping timeout: 252 seconds) |
| 06:09:52 | <nshepperd> | it has to return some r that doesn't depend on f, but id will return f a |
| 06:10:03 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 06:10:07 | <c_wraith> | it's that id won't unify |
| 06:10:07 | <c_wraith> | f a and r can't be the same types |
| 06:10:07 | <c_wraith> | because f is higher-rank |
| 06:10:15 | <nshepperd> | i think this CPS thing is probably overkill for your case tbh |
| 06:10:31 | <c_wraith> | It's the only solution to the constraints that are claimed |
| 06:10:49 | <c_wraith> | not that I think those constraints are a good choice :) |
| 06:11:01 | → | dunkeln_ joins (~dunkeln@188.70.44.28) |
| 06:11:22 | <qrpnxz> | i mean, it's not like i'm writing world changing code here, but i believe in backwards compatibility, and how can you have that and not get locked into representation without being able to return a constrained type? |
| 06:11:37 | <c_wraith> | I think it's far better to just return the type you produce and let consumers use that type |
| 06:11:41 | <qrpnxz> | (other than some kind of dynamic type) |
| 06:11:58 | <c_wraith> | if you have an important reason to change the type, it must be important for the callers to know too |
| 06:13:05 | <qrpnxz> | it only has to be important if it's difficult to change, if it didn't break anything you could change it even if it wasn't that important, but did make measurable improvement |
| 06:13:18 | <monochrom> | If you are into not locking into a representation, use a newtype wrapper and a well-designed and complete API. Not pile up a ton of obscuring foralls. Especially when you have proved that you don't understand foralls. |
| 06:13:51 | <davean> | Yah, a newtype seems right here |
| 06:13:56 | <davean> | if you really want that |
| 06:14:12 | <davean> | Though oppinionwise I think its missguided |
| 06:14:36 | <davean> | for example, if you change it for performance reasons, it will neccissarily impact the performance of the calling code. |
| 06:14:57 | <davean> | Good code already is as general as it can be without being wrong |
| 06:14:57 | → | jmorris joins (uid433911@id-433911.stonehaven.irccloud.com) |
| 06:15:07 | <davean> | if they pinned the Foldable its because it mattered |
| 06:15:55 | <nshepperd> | just tell your users if their code stops compiling because you changed the type it's their own problem |
| 06:16:30 | <qrpnxz> | hmmm, yeah a newtype sounds good, but for now i will listen and not do that. nshepperd, yeah i was saying earlier you could just put it in a comment worse case haha |
| 06:18:47 | <nshepperd> | misguided addition of restrictions is probably the second most common reason for me to patch a library locally |
| 06:18:47 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 06:19:23 | <nshepperd> | (after 'bugs') |
| 06:19:24 | <davean> | Its the thing that most quickly calls out noob coding |
| 06:19:45 | <davean> | Its not a mistake that ever persists |
| 06:20:02 | <davean> | I guess we can be thankful for that |
| 06:22:31 | → | turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 06:22:31 | × | turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host) |
| 06:22:31 | → | turlando joins (~turlando@user/turlando) |
| 06:23:38 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 06:28:15 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 258 seconds) |
| 06:29:21 | × | turlando quits (~turlando@user/turlando) (Remote host closed the connection) |
| 06:29:38 | → | turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 06:29:38 | × | turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host) |
| 06:29:38 | → | turlando joins (~turlando@user/turlando) |
| 06:29:56 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 06:30:56 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 258 seconds) |
| 06:33:45 | × | turlando quits (~turlando@user/turlando) (Remote host closed the connection) |
| 06:34:07 | → | turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 06:34:07 | × | turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host) |
| 06:34:07 | → | turlando joins (~turlando@user/turlando) |
| 06:37:52 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 06:40:38 | × | turlando quits (~turlando@user/turlando) (Ping timeout: 272 seconds) |
| 06:40:52 | → | oxide joins (~lambda@user/oxide) |
| 06:43:48 | × | dunkeln_ quits (~dunkeln@188.70.44.28) (Ping timeout: 272 seconds) |
| 06:45:47 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 06:53:18 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 06:57:00 | × | Morrow quits (~MorrowM_@147.161.9.15) (Ping timeout: 258 seconds) |
| 06:57:52 | × | Guest1 quits (~Guest1@2001:e68:543d:32f5:36dd:5585:5f23:735a) (Quit: Client closed) |
| 06:58:22 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds) |
| 07:06:20 | → | Pickchea joins (~private@user/pickchea) |
| 07:14:47 | → | dunkeln_ joins (~dunkeln@188.70.44.28) |
| 07:17:16 | × | wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal) |
| 07:26:12 | → | thornAvery joins (~thorn@121.220.33.124) |
| 07:28:00 | × | cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds) |
| 07:28:27 | → | cheater joins (~Username@user/cheater) |
| 07:31:23 | → | amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
| 07:32:20 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 07:33:25 | × | cheater quits (~Username@user/cheater) (Ping timeout: 258 seconds) |
| 07:33:48 | → | cheater joins (~Username@user/cheater) |
| 07:35:56 | → | laguneucl joins (~Pitsikoko@2a02:587:dc0b:0:d8f7:cdfe:4658:bec4) |
| 07:38:18 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 07:39:14 | → | o joins (~niko@libera/staff/niko) |
| 07:39:32 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds) |
| 07:40:15 | → | zeenk joins (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) |
| 07:42:10 | × | derelict quits (~derelict@user/derelict) (Ping timeout: 256 seconds) |
| 07:42:30 | → | acidjnk_new joins (~acidjnk@p200300d0c72b953339f341015709cf67.dip0.t-ipconnect.de) |
| 07:43:24 | × | dunkeln_ quits (~dunkeln@188.70.44.28) (Ping timeout: 265 seconds) |
| 07:45:18 | × | slack1256 quits (~slack1256@181.203.33.8) (Remote host closed the connection) |
| 07:48:45 | × | thornAvery quits (~thorn@121.220.33.124) (Ping timeout: 258 seconds) |
| 07:49:29 | × | fabfianda quits (~fabfianda@37.183.255.57) (Remote host closed the connection) |
| 07:53:31 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 07:55:22 | × | xwx quits (~george@user/george) (Ping timeout: 252 seconds) |
| 07:55:58 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 07:56:34 | → | xwx joins (~george@user/george) |
| 07:58:00 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 07:58:43 | × | rawles quits (~o@user/rawles) (Quit: leaving) |
| 07:58:59 | → | rawles joins (~o@user/rawles) |
| 08:06:15 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:12:59 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 08:14:20 | → | qbt joins (~edun@user/edun) |
| 08:16:02 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Remote host closed the connection) |
| 08:17:27 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 08:17:52 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 08:18:52 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 08:21:20 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 272 seconds) |
| 08:21:20 | Lord_of_Life_ | is now known as Lord_of_Life |
| 08:23:57 | → | dunkeln_ joins (~dunkeln@188.70.44.28) |
| 08:23:59 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 08:24:23 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:26:41 | × | phma quits (phma@2001:5b0:212a:faf8:be49:b217:da87:a28c) (Read error: Connection reset by peer) |
| 08:34:09 | × | dunkeln_ quits (~dunkeln@188.70.44.28) (Ping timeout: 265 seconds) |
| 08:34:19 | → | cheater1__ joins (~Username@user/cheater) |
| 08:34:38 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 08:34:42 | cheater1__ | is now known as cheater |
| 08:42:06 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
| 08:43:02 | → | phma joins (phma@2001:5b0:211f:db18:f7ba:96c6:928a:2ba9) |
| 08:43:09 | × | jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 08:48:21 | → | anandprabhu joins (~anandprab@94.202.243.198) |
| 08:51:28 | → | dunkeln joins (~dunkeln@188.71.194.238) |
| 08:54:06 | → | NoName__ joins (~Username@8.26.176.4) |
| 08:58:38 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 09:00:01 | → | img joins (~img@user/img) |
| 09:00:22 | × | Nyeogmi quits (~Nyeogmi@user/nyeogmi) (Ping timeout: 256 seconds) |
| 09:02:42 | → | thornAvery joins (~thorn@121.220.33.124) |
| 09:05:21 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 09:06:44 | → | img joins (~img@user/img) |
| 09:07:43 | × | norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 258 seconds) |
| 09:08:41 | → | turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 09:08:41 | × | turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host) |
| 09:08:41 | → | turlando joins (~turlando@user/turlando) |
| 09:09:54 | × | img quits (~img@user/img) (Client Quit) |
| 09:11:16 | → | img joins (~img@user/img) |
| 09:11:18 | → | ubert joins (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
| 09:13:54 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 09:14:26 | → | cheater joins (~Username@user/cheater) |
| 09:16:15 | × | NoName__ quits (~Username@8.26.176.4) (Quit: https://www.endfgm.eu/what-can-you-do/donate/) |
| 09:16:27 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 09:20:19 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 09:20:33 | × | thornAvery quits (~thorn@121.220.33.124) (Ping timeout: 265 seconds) |
| 09:20:46 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 256 seconds) |
| 09:23:13 | × | hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 09:25:33 | × | steshaw quits (~steshaw@122-151-164-35.sta.wbroadband.net.au) (Ping timeout: 268 seconds) |
| 09:28:11 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 09:28:18 | → | neceve joins (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f) |
| 09:32:54 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds) |
| 09:33:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 09:44:31 | × | dunkeln quits (~dunkeln@188.71.194.238) (Ping timeout: 258 seconds) |
| 09:45:16 | → | hegstal joins (~hegstal@2a02:c7f:7604:8a00:5760:9bdb:910c:2812) |
| 09:48:37 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 09:51:07 | → | Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 09:56:35 | → | dunkeln_ joins (~dunkeln@188.71.194.238) |
| 10:01:27 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 10:02:01 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 10:05:10 | → | thornAvery joins (~thorn@121.220.33.124) |
| 10:06:38 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 10:07:29 | × | azeem quits (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) (Ping timeout: 268 seconds) |
| 10:08:02 | → | azeem joins (~azeem@176.200.221.91) |
| 10:08:42 | × | xsperry quits (~as@user/xsperry) (Remote host closed the connection) |
| 10:09:16 | → | xsperry joins (~as@user/xsperry) |
| 10:12:48 | × | thornAvery quits (~thorn@121.220.33.124) (Ping timeout: 272 seconds) |
| 10:15:06 | × | azeem quits (~azeem@176.200.221.91) (Read error: Connection reset by peer) |
| 10:17:15 | → | azeem joins (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) |
| 10:17:49 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 10:21:40 | × | dunkeln_ quits (~dunkeln@188.71.194.238) (Ping timeout: 272 seconds) |
| 10:21:54 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 240 seconds) |
| 10:22:32 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 256 seconds) |
| 10:23:16 | → | Digit joins (~user@user/digit) |
| 10:24:50 | <Digit> | omigosh, just seen termonad's a thing. giddy excited. [musta seen this already some late night sleepy last thing, left a video about it ready to launch]. happy days, another piece of my os/interface in Haskell. :) |
| 10:27:22 | × | azeem quits (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) (Read error: Connection reset by peer) |
| 10:28:10 | → | lavaman joins (~lavaman@98.38.249.169) |
| 10:31:26 | × | FragByte quits (~christian@user/fragbyte) (Quit: Quit) |
| 10:32:25 | × | qbt quits (~edun@user/edun) (Quit: WeeChat 3.2) |
| 10:32:32 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 10:32:44 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 10:33:39 | → | sagax joins (~sagax@213.138.71.146) |
| 10:36:57 | → | FragByte joins (~christian@user/fragbyte) |
| 10:37:05 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
| 10:40:47 | → | dunkeln joins (~dunkeln@188.71.194.238) |
| 10:40:51 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 10:47:54 | × | acidjnk_new quits (~acidjnk@p200300d0c72b953339f341015709cf67.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 10:47:55 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 10:50:42 | → | azeem joins (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) |
| 10:51:26 | × | xff0x quits (~xff0x@2001:1a81:52ea:d100:38d4:8967:cbb0:e45b) (Ping timeout: 256 seconds) |
| 10:53:08 | → | xff0x joins (~xff0x@185.65.135.181) |
| 10:58:51 | → | yoctocell joins (~user@h87-96-130-155.cust.a3fiber.se) |
| 11:00:00 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 11:01:45 | → | neo1 joins (~neo3@cpe-292712.ip.primehome.com) |
| 11:05:46 | → | Pickchea joins (~private@user/pickchea) |
| 11:06:44 | → | AlexNoo_ joins (~AlexNoo@178.34.162.171) |
| 11:09:00 | × | dunkeln quits (~dunkeln@188.71.194.238) (Ping timeout: 256 seconds) |
| 11:09:14 | × | Alex_test quits (~al_test@94.233.241.144) (Ping timeout: 258 seconds) |
| 11:09:14 | × | AlexZenon quits (~alzenon@94.233.241.144) (Ping timeout: 258 seconds) |
| 11:10:26 | × | AlexNoo quits (~AlexNoo@94.233.241.144) (Ping timeout: 272 seconds) |
| 11:10:48 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 252 seconds) |
| 11:11:00 | → | dunkeln joins (~dunkeln@188.71.194.238) |
| 11:13:21 | × | Putonlalla quits (~sapekiis@it-cyan.it.jyu.fi) (Quit: Leaving.) |
| 11:14:18 | × | xff0x quits (~xff0x@185.65.135.181) (Ping timeout: 240 seconds) |
| 11:15:00 | → | Alex_test joins (~al_test@178.34.162.171) |
| 11:15:30 | → | AlexZenon joins (~alzenon@178.34.162.171) |
| 11:16:21 | → | xff0x joins (~xff0x@2001:1a81:52ea:d100:38d4:8967:cbb0:e45b) |
| 11:18:08 | × | dunkeln quits (~dunkeln@188.71.194.238) (Ping timeout: 252 seconds) |
| 11:19:45 | × | alphabeta quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Quit: Quitting IRC :() |
| 11:20:04 | → | kilolympus joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 11:28:27 | → | mpt joins (~tom@2a02:908:1862:49e0::8) |
| 11:28:32 | → | magnuscake joins (~magnuscak@87-121-92-61.dyn.launtel.net.au) |
| 11:29:15 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:36:10 | → | dunkeln_ joins (~dunkeln@188.71.194.238) |
| 11:57:38 | × | fendor quits (~fendor@178.115.131.211.wireless.dyn.drei.com) (Remote host closed the connection) |
| 11:58:56 | × | FragByte quits (~christian@user/fragbyte) (Quit: Quit) |
| 11:59:14 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 11:59:57 | → | fendor joins (~fendor@178.115.131.211.wireless.dyn.drei.com) |
| 12:00:40 | → | FragByte joins (~christian@user/fragbyte) |
| 12:01:40 | × | Codaraxis__ quits (~Codaraxis@193.32.126.157) (Remote host closed the connection) |
| 12:02:09 | → | Codaraxis__ joins (~Codaraxis@193.32.126.157) |
| 12:03:40 | × | dunkeln_ quits (~dunkeln@188.71.194.238) (Ping timeout: 258 seconds) |
| 12:03:40 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 12:06:18 | × | neceve quits (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f) (Ping timeout: 240 seconds) |
| 12:08:28 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 12:09:21 | <edward1> | Hey all :) I'm working on my first GHC issue but my build failed (it's a simple error message change so not sure why!). How can I run the test suite? |
| 12:10:34 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 258 seconds) |
| 12:10:41 | <edward1> | Here is the diff - https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6120/diffs |
| 12:11:13 | <edward1> | (Out of interest, what are the .stderr files in the testsuite? I didn't look at them closely but assumed they should be changed too!) |
| 12:11:57 | → | favonia joins (~favonia@user/favonia) |
| 12:12:42 | × | mpt quits (~tom@2a02:908:1862:49e0::8) (Ping timeout: 240 seconds) |
| 12:14:18 | → | __monty__ joins (~toonn@user/toonn) |
| 12:18:33 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 12:18:49 | → | dunkeln_ joins (~dunkeln@188.71.194.238) |
| 12:18:50 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 12:19:14 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 12:19:16 | → | chris_ joins (~chris@81.96.113.213) |
| 12:19:34 | <adamse> | edward1: if you navigate to the failed build (https://gitlab.haskell.org/CSEdd/ghc/-/jobs/724156) there should be a retry button, it doesn't look like it failed for any reasonable reason |
| 12:21:28 | <adamse> | edward1: stderr files capture the expected outputs of the test-case, then the test-suite compares the current output with the expected |
| 12:23:29 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 12:23:36 | × | chris_ quits (~chris@81.96.113.213) (Ping timeout: 258 seconds) |
| 12:23:47 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 256 seconds) |
| 12:24:15 | → | derelict joins (~derelict@user/derelict) |
| 12:25:06 | <edward1> | Thanks adamse - how would I run the test-suite anyway for future issues? |
| 12:26:17 | <adamse> | edward1: if you build with hadrian use the test subcommand, something like ./hadrian/build test |
| 12:26:33 | <edward1> | Thanks :) |
| 12:27:35 | → | chddr joins (~Thunderbi@91.226.35.178) |
| 12:27:49 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 258 seconds) |
| 12:31:33 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 12:31:35 | → | chris_ joins (~chris@81.96.113.213) |
| 12:32:04 | → | yauhsien joins (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) |
| 12:32:57 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 12:36:36 | × | yauhsien quits (~yauhsien@61-231-45-160.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 12:40:32 | × | astra quits (sid289983@user/amish) (Killed (NickServ (GHOST command used by doge!~doge@user/astra))) |
| 12:45:27 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 258 seconds) |
| 12:45:53 | → | zebrag joins (~chris@user/zebrag) |
| 12:47:24 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 12:49:31 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 12:55:40 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:55:44 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 12:56:57 | × | lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 258 seconds) |
| 12:57:24 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Quit: WeeChat 2.3) |
| 12:59:27 | → | jippiedoe joins (~david@2a02-a44c-e14e-1-e576-4d18-cd48-2d4d.fixed6.kpn.net) |
| 13:00:09 | × | dunkeln_ quits (~dunkeln@188.71.194.238) (Ping timeout: 268 seconds) |
| 13:00:46 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
| 13:01:10 | → | alx741 joins (~alx741@186.178.109.174) |
| 13:01:20 | → | Pickchea joins (~private@user/pickchea) |
| 13:02:39 | → | arjun joins (~user@user/arjun) |
| 13:04:12 | <arjun> | about to get into some category theory, yay or nay? |
| 13:04:13 | → | Deide joins (~Deide@wire.desu.ga) |
| 13:04:13 | × | Deide quits (~Deide@wire.desu.ga) (Changing host) |
| 13:04:13 | → | Deide joins (~Deide@user/deide) |
| 13:08:52 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 13:08:53 | → | cheater1__ joins (~Username@user/cheater) |
| 13:08:55 | cheater1__ | is now known as cheater |
| 13:09:06 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 240 seconds) |
| 13:10:25 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 13:10:29 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 13:14:20 | × | magnuscake quits (~magnuscak@87-121-92-61.dyn.launtel.net.au) (Ping timeout: 268 seconds) |
| 13:17:44 | AlexNoo_ | is now known as AlexNoo |
| 13:18:21 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 13:18:23 | → | cheater1__ joins (~Username@user/cheater) |
| 13:18:25 | cheater1__ | is now known as cheater |
| 13:23:01 | × | arjun quits (~user@user/arjun) (Ping timeout: 258 seconds) |
| 13:23:18 | × | Hafydd quits (~Hafydd@user/hafydd) (Quit: WeeChat 3.2) |
| 13:23:27 | → | Hafydd joins (jc@user/hafydd) |
| 13:27:33 | × | Hafydd quits (jc@user/hafydd) (Client Quit) |
| 13:27:41 | → | Hafydd joins (jc@user/hafydd) |
| 13:29:48 | × | Hafydd quits (jc@user/hafydd) (Client Quit) |
| 13:29:55 | → | Hafydd joins (jc@user/hafydd) |
| 13:30:52 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 13:31:06 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 13:34:42 | × | jippiedoe quits (~david@2a02-a44c-e14e-1-e576-4d18-cd48-2d4d.fixed6.kpn.net) (Ping timeout: 240 seconds) |
| 13:34:57 | → | arjun joins (~user@user/arjun) |
| 13:36:43 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 265 seconds) |
| 13:36:56 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 244 seconds) |
| 13:37:21 | × | Hafydd quits (jc@user/hafydd) (Quit: WeeChat 3.2) |
| 13:37:29 | → | Hafydd joins (~Hafydd@user/hafydd) |
| 13:40:01 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 13:44:48 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 13:45:16 | → | cheater joins (~Username@user/cheater) |
| 13:46:32 | × | arjun quits (~user@user/arjun) (Ping timeout: 256 seconds) |
| 13:47:12 | → | stevenxl joins (~stevenlei@68.235.43.101) |
| 13:57:16 | → | tomek-grzesiak joins (~tomek@109.206.213.203) |
| 13:59:50 | × | ubert quits (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 13:59:53 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 14:01:50 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 14:03:32 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 14:03:57 | → | cheater1__ joins (~Username@user/cheater) |
| 14:03:58 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 14:04:00 | cheater1__ | is now known as cheater |
| 14:11:34 | × | chddr quits (~Thunderbi@91.226.35.178) (Ping timeout: 272 seconds) |
| 14:11:59 | → | fendor_ joins (~fendor@91.141.35.106.wireless.dyn.drei.com) |
| 14:14:18 | → | stevenxl_ joins (~stevenlei@c-73-45-168-220.hsd1.il.comcast.net) |
| 14:15:09 | × | fendor quits (~fendor@178.115.131.211.wireless.dyn.drei.com) (Ping timeout: 258 seconds) |
| 14:17:04 | × | stevenxl quits (~stevenlei@68.235.43.101) (Ping timeout: 252 seconds) |
| 14:17:30 | → | Pickchea joins (~private@user/pickchea) |
| 14:20:04 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 14:20:29 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 14:22:22 | → | stevenxl joins (~stevenlei@68.235.43.165) |
| 14:24:01 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 14:24:38 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 14:24:42 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 240 seconds) |
| 14:25:03 | × | stevenxl_ quits (~stevenlei@c-73-45-168-220.hsd1.il.comcast.net) (Ping timeout: 265 seconds) |
| 14:26:25 | → | chddr joins (~Thunderbi@91.226.35.178) |
| 14:27:14 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 14:29:01 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 14:33:44 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 14:33:53 | → | cheater joins (~Username@user/cheater) |
| 14:34:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 14:35:50 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 244 seconds) |
| 14:35:55 | → | dunkeln_ joins (~dunkeln@188.71.194.238) |
| 14:36:43 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 14:40:52 | → | pavonia joins (~user@user/siracusa) |
| 14:44:39 | → | Morrow joins (~MorrowM_@147.161.9.15) |
| 14:52:32 | → | AgentM joins (~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) |
| 14:55:22 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 14:56:07 | → | chris_ joins (~chris@81.96.113.213) |
| 14:56:23 | → | norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 14:57:41 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 14:57:53 | → | chris_ joins (~chris@81.96.113.213) |
| 14:58:11 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 14:59:03 | → | neceve joins (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f) |
| 15:02:52 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 268 seconds) |
| 15:07:34 | × | cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds) |
| 15:07:53 | → | cheater joins (~Username@user/cheater) |
| 15:10:53 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 15:12:50 | × | zeenk quits (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) (Quit: Konversation terminated!) |
| 15:13:38 | × | norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 272 seconds) |
| 15:15:31 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 15:17:58 | → | MorrowM joins (~MorrowM_@147.161.13.82) |
| 15:19:49 | × | fendor_ quits (~fendor@91.141.35.106.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 15:20:09 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 15:20:42 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 15:21:36 | × | Morrow quits (~MorrowM_@147.161.9.15) (Ping timeout: 265 seconds) |
| 15:21:53 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 15:24:49 | <tam> | i hope im not breaking any rule by asking this here but i was hoping to join the slack fp chat but the invite site has been saying g "application error" for a while and i don't know if this is a temporary bug or if the chat even exists any more |
| 15:26:04 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 15:26:16 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 256 seconds) |
| 15:28:29 | × | awth13 quits (~user@user/awth13) (Read error: Connection reset by peer) |
| 15:29:47 | → | hunji joins (~hunji@ip-86.net-89-3-14.rev.numericable.fr) |
| 15:29:48 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 15:30:24 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds) |
| 15:30:46 | → | fendor joins (~fendor@91.141.35.106.wireless.dyn.drei.com) |
| 15:32:28 | × | chddr quits (~Thunderbi@91.226.35.178) (Ping timeout: 268 seconds) |
| 15:32:43 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 15:33:20 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 15:33:42 | → | cheater joins (~Username@user/cheater) |
| 15:34:30 | × | MorrowM quits (~MorrowM_@147.161.13.82) (Ping timeout: 258 seconds) |
| 15:34:51 | × | tomek-grzesiak quits (~tomek@109.206.213.203) (Quit: WeeChat 3.0.1) |
| 15:37:38 | → | notzmv joins (~zmv@user/notzmv) |
| 15:42:11 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 15:42:22 | → | samhh joins (~samhh@90.252.112.94) |
| 15:43:21 | → | lavaman joins (~lavaman@98.38.249.169) |
| 15:48:11 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
| 15:48:11 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 15:48:15 | → | cheater1__ joins (~Username@user/cheater) |
| 15:48:18 | cheater1__ | is now known as cheater |
| 15:48:57 | → | LukeHoersten joins (~LukeHoers@user/lukehoersten) |
| 15:49:18 | × | anandprabhu quits (~anandprab@94.202.243.198) (Quit: Leaving) |
| 15:53:24 | → | MorrowM joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) |
| 15:53:27 | → | LukeHoersten_ joins (~LukeHoers@user/lukehoersten) |
| 15:55:20 | × | stevenxl quits (~stevenlei@68.235.43.165) (Ping timeout: 252 seconds) |
| 15:57:22 | × | LukeHoersten quits (~LukeHoers@user/lukehoersten) (Ping timeout: 265 seconds) |
| 15:57:33 | → | stevenxl joins (~stevenlei@c-73-45-168-220.hsd1.il.comcast.net) |
| 15:58:43 | → | LukeHoersten joins (~LukeHoers@user/lukehoersten) |
| 15:59:02 | × | MorrowM quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 258 seconds) |
| 15:59:08 | × | LukeHoersten_ quits (~LukeHoers@user/lukehoersten) (Ping timeout: 256 seconds) |
| 15:59:19 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 16:00:10 | → | MorrowM joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) |
| 16:00:11 | → | hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com) |
| 16:00:26 | → | Pickchea joins (~private@user/pickchea) |
| 16:01:48 | → | LukeHoersten_ joins (~LukeHoers@user/lukehoersten) |
| 16:02:42 | → | tomek-grzesiak joins (~tomek@109.206.213.203) |
| 16:03:06 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 16:03:10 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 265 seconds) |
| 16:03:51 | → | cheater joins (~Username@user/cheater) |
| 16:03:58 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 16:05:14 | × | LukeHoersten quits (~LukeHoers@user/lukehoersten) (Ping timeout: 252 seconds) |
| 16:05:33 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
| 16:05:51 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 16:09:25 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:10:38 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 16:10:42 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 16:10:55 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 16:10:59 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 16:12:44 | × | LukeHoersten_ quits (~LukeHoers@user/lukehoersten) (Ping timeout: 256 seconds) |
| 16:15:24 | × | hgolden quits (~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Quit: Konversation terminated!) |
| 16:15:44 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds) |
| 16:16:02 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 16:16:20 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 16:16:41 | → | warnz joins (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) |
| 16:23:51 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:24:30 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 16:25:12 | → | chris_ joins (~chris@81.96.113.213) |
| 16:25:23 | → | awth13 joins (~user@user/awth13) |
| 16:28:42 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 16:30:16 | × | chris_ quits (~chris@81.96.113.213) (Ping timeout: 272 seconds) |
| 16:30:29 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:30:58 | → | ubert joins (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
| 16:31:03 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 16:33:07 | → | MQ-17J joins (~MQ-17J@2607:fb90:893b:6cdc:ec:9cb6:c388:2ee2) |
| 16:33:28 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 16:33:39 | × | MQ-17J quits (~MQ-17J@2607:fb90:893b:6cdc:ec:9cb6:c388:2ee2) (Read error: Connection reset by peer) |
| 16:33:49 | → | cheater joins (~Username@user/cheater) |
| 16:33:56 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 16:34:00 | → | stevenxl_ joins (~stevenlei@68.235.43.141) |
| 16:36:58 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 16:37:00 | × | stevenxl quits (~stevenlei@c-73-45-168-220.hsd1.il.comcast.net) (Ping timeout: 265 seconds) |
| 16:37:11 | → | jneira[m] joins (~jneira@160.red-176-83-73.dynamicip.rima-tde.net) |
| 16:39:42 | → | Nyeogmi joins (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) |
| 16:41:14 | → | LukeHoersten joins (~LukeHoers@user/lukehoersten) |
| 16:41:34 | → | vicfred joins (~vicfred@user/vicfred) |
| 16:41:50 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Ping timeout: 265 seconds) |
| 16:42:11 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 16:43:37 | → | timCF joins (~timCF@m91-129-104-218.cust.tele2.ee) |
| 16:44:04 | × | Nyeogmi quits (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) (Remote host closed the connection) |
| 16:44:10 | <turlando> | Suppose I want to match a N-way tree for a specific structure starting from the root node. What do you think is an idiomatic way to do so? The tree has an already well defined structure (as sum type) I'm not willing to change |
| 16:44:26 | → | Nyeogmi joins (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) |
| 16:44:32 | <turlando> | (basically I want to do pattern matching without doing pattern matching) |
| 16:46:25 | <dsal> | Can you type up something you wish worked? |
| 16:46:44 | <turlando> | The issue is that basically I want a function I can pass the structure I'm looking for and returns me the elements I'd like to get. Suppose the tree is data T = A T | B T Int | C Text T. I want to pass this function something like "if the root is A, check if its element is a B, if so return the Int" |
| 16:46:54 | <dsal> | TBH, I think lens does what you want pretty easily. |
| 16:48:01 | <turlando> | I was hoping not to import lens since it's very heavy to compile (and learn from my point of view). I hoped I could write something simple I could also learn from |
| 16:49:39 | × | jneira[m] quits (~jneira@160.red-176-83-73.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 16:49:59 | <dsal> | Well, what lens would do at compile time is create prisms so you could preview down into that int with something like `r ^? _A . _B` (which would be `:: Maybe Int`). Those prism functions do the thing you're trying to avoid manually doing, but you can write them yourself. |
| 16:50:06 | <dsal> | They're only a little overkill because they are bidirectional. |
| 16:50:47 | × | neo1 quits (~neo3@cpe-292712.ip.primehome.com) (Ping timeout: 258 seconds) |
| 16:51:04 | <turlando> | In lisp I would be do something like have a match function that I would pass something like '(A (B ?subtree ?int)) and then recursively match A and B against the tree and return ?int that I would save in an accumulator in the meanwhile |
| 16:51:16 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 16:51:33 | → | qbt joins (~edun@user/edun) |
| 16:51:36 | × | qbt quits (~edun@user/edun) (Client Quit) |
| 16:52:09 | <turlando> | It's a relatively simple thing to do to disturb prism imho :) But I'm not sure how to get the thing done in an idiomatic way |
| 16:52:30 | <turlando> | (Also how to pass the desired tree structure with the placeholders) |
| 16:52:42 | × | mnrmnaugh quits (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Quit: Leaving) |
| 16:52:43 | <turlando> | s/prims/lens/ |
| 16:52:54 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 16:53:47 | <dsal> | Well, the whole area of optics came into existence to answer those two questions. |
| 16:55:10 | × | derelict quits (~derelict@user/derelict) (Quit: WeeChat 3.2) |
| 16:55:17 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 16:55:43 | <dsal> | λ> t ==> A (B (C "x") 3) |
| 16:55:43 | <dsal> | λ> t ^? _A . _B . _2 ==> Just 3 |
| 16:55:46 | × | Nyeogmi quits (~Nyeogmi@2601:645:8700:bea0:bcb8:b9ef:af27:7b7c) (Changing host) |
| 16:55:46 | → | Nyeogmi joins (~Nyeogmi@user/nyeogmi) |
| 16:56:18 | <sm[m]> | microlens is a bit lighter |
| 16:56:20 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 265 seconds) |
| 16:58:20 | <turlando> | Right, I think I will look into lens/microlens, thanks everybody :) |
| 16:58:36 | → | cheater1__ joins (~Username@user/cheater) |
| 16:58:48 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 16:58:49 | cheater1__ | is now known as cheater |
| 16:58:58 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 17:00:02 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 17:00:19 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 17:00:50 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1) |
| 17:03:50 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 17:04:01 | → | cheater joins (~Username@user/cheater) |
| 17:04:14 | → | Topsi joins (~Tobias@dyndsl-095-033-017-135.ewe-ip-backbone.de) |
| 17:04:38 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 17:07:57 | × | hunji quits (~hunji@ip-86.net-89-3-14.rev.numericable.fr) (Quit: Client closed) |
| 17:08:54 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 17:10:08 | × | MorrowM quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 252 seconds) |
| 17:14:48 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 17:15:51 | → | timCF_ joins (~timCF@m91-129-104-218.cust.tele2.ee) |
| 17:16:29 | × | timCF quits (~timCF@m91-129-104-218.cust.tele2.ee) (Quit: Client closed) |
| 17:16:39 | × | timCF_ quits (~timCF@m91-129-104-218.cust.tele2.ee) (Client Quit) |
| 17:17:02 | → | norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 17:18:18 | × | alx741 quits (~alx741@186.178.109.174) (Ping timeout: 240 seconds) |
| 17:19:06 | × | warnz quits (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) (Ping timeout: 240 seconds) |
| 17:19:08 | → | timCF joins (~timCF@m91-129-104-218.cust.tele2.ee) |
| 17:19:40 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
| 17:20:11 | × | timCF quits (~timCF@m91-129-104-218.cust.tele2.ee) (Client Quit) |
| 17:21:08 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 17:21:56 | × | LukeHoersten quits (~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 17:22:50 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 17:23:17 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 17:24:44 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 17:24:52 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 17:25:49 | × | dunkeln_ quits (~dunkeln@188.71.194.238) (Ping timeout: 265 seconds) |
| 17:27:30 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Ping timeout: 240 seconds) |
| 17:29:24 | <dsal> | I've never really looked into microlens. I guess I should do that. |
| 17:30:56 | <dsal> | Oh, it doesn't seem to provide prisms, which is rather important. |
| 17:32:49 | → | alx741 joins (~alx741@186.178.108.123) |
| 17:37:13 | <turlando> | Half an hour later, it still feels like a lot of overhead for waling a tree and something that can be done with 10 lines of lisp. There really isn't another way? |
| 17:37:26 | <turlando> | s/waling/walking/ |
| 17:38:32 | → | dunkeln_ joins (~dunkeln@188.71.194.238) |
| 17:39:30 | <dsal> | Well, you can do this: |
| 17:39:34 | <dsal> | secondB :: T -> Maybe Int |
| 17:39:34 | <dsal> | secondB (A (B _ x)) = Just x |
| 17:39:34 | <dsal> | secondB _ = Nothing |
| 17:39:36 | <dsal> | For that one use case. |
| 17:40:34 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 17:40:37 | <dsal> | But passing in the structure is a bit more difficult since you need a way to describe the condition. |
| 17:40:37 | <turlando> | It works for small paths, but for longer it becomes an unreasonable mess :\ |
| 17:41:13 | <turlando> | Yep, and at the end I would just be re-inventing lens, just buggier |
| 17:41:25 | <dsal> | You can do a similar thing like this: |
| 17:41:27 | <dsal> | λ> listToMaybe [ x | (A (B _ x)) <- [t] ] |
| 17:41:27 | <dsal> | Just 3 |
| 17:41:48 | <dsal> | But yeah, expressing it as a prism is most natural to me. |
| 17:41:58 | <hendursaga> | tam: I also have that issue - I still haven't gotten a reply :( |
| 17:42:16 | <energizer> | is there a place on the internet that collects type signatures for various important computing things? i'm thinking of "what is the type signature of a linker" etc |
| 17:44:24 | × | ukari quits (~ukari@user/ukari) (Remote host closed the connection) |
| 17:45:02 | → | MorrowM joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) |
| 17:45:38 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 17:45:49 | → | ukari joins (~ukari@user/ukari) |
| 17:45:55 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 17:58:33 | × | ukari quits (~ukari@user/ukari) (Remote host closed the connection) |
| 17:59:44 | → | ukari joins (~ukari@user/ukari) |
| 18:00:01 | → | derelict joins (~derelict@user/derelict) |
| 18:01:15 | → | chris_ joins (~chris@81.96.113.213) |
| 18:02:52 | → | lavaman joins (~lavaman@98.38.249.169) |
| 18:03:29 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 18:06:41 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 18:07:10 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 18:13:40 | × | samhh quits (~samhh@90.252.112.94) (Ping timeout: 265 seconds) |
| 18:13:48 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 18:14:02 | → | fakehacker[m] joins (~fakehacke@2001:470:69fc:105::b5f0) |
| 18:14:02 | <fakehacker[m]> | Hi! I can't figure this out. https://paste.tomsmeding.com/MeVtwSw6 < I have written dateRangeParser in do-notation and I would like to write the equivalent function without do-notation but I can't figure out how to do it |
| 18:14:02 | <fakehacker[m]> | https://paste.tomsmeding.com/piObTlbu < There's an updated paste with the type included. Forgot that in the first paste |
| 18:15:20 | → | Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 18:16:58 | → | haritz joins (~hrtz@user/haritz) |
| 18:17:39 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 18:18:53 | → | dunj3 joins (~dunj3@2001:16b8:3050:bb00:92ff:fb46:3b31:9dc1) |
| 18:18:57 | → | cheater1__ joins (~Username@user/cheater) |
| 18:19:12 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 18:19:20 | cheater1__ | is now known as cheater |
| 18:19:36 | <geekosaur> | you're missing some types from that paste |
| 18:19:55 | <geekosaur> | you're also missing the Range constructor in your rewrite, which is probably why it's wrong |
| 18:20:40 | <geekosaur> | I defined Day as a type alias for Int but that leaves ReadM and Parser |
| 18:21:14 | <fakehacker[m]> | Day is from Data.Time.Calendar |
| 18:21:37 | <fakehacker[m]> | ReadM and Parser is from optparse-applicative |
| 18:21:57 | <fakehacker[m]> | And yes, the issue is that I can't figure out how to add the Range constructor |
| 18:22:58 | <fakehacker[m]> | I can get a 'Parser (Day, Day)' no problem |
| 18:33:31 | → | cheater1__ joins (~Username@user/cheater) |
| 18:33:44 | <geekosaur> | it's not real pretty, which often follows frome these point-free kind of things... https://paste.tomsmeding.com/Jg1nKYth |
| 18:33:46 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 18:33:49 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 18:33:53 | cheater1__ | is now known as cheater |
| 18:34:42 | <fakehacker[m]> | Oh, makes sense I didn't figure that one out |
| 18:35:24 | <fakehacker[m]> | I thought it wouldn't be too awkward considering it wasn't particularly complicated in the do-notation |
| 18:36:09 | <geekosaur> | this is part of why ApplicativeDo exists |
| 18:36:19 | → | TranquilEcho joins (~grom@user/tranquilecho) |
| 18:36:19 | <fakehacker[m]> | Hehe, alright |
| 18:37:23 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 18:37:47 | <fakehacker[m]> | So apparently it's possible to remove one pair of brackets |
| 18:37:51 | <fakehacker[m]> | Makes it marginally less awkward |
| 18:38:18 | <geekosaur> | probably, I didn't bother checking fixities but just treated it as pointfree |
| 18:38:24 | <monochrom> | (\x y -> Range (x,y)) is just fine. I don't believe that the use of <$> must be correlated to the use of pointfree. |
| 18:39:00 | <geekosaur> | there is that, I guess |
| 18:39:25 | <fakehacker[m]> | Yeah |
| 18:39:33 | <monochrom> | Indeed if you did not know that (,) existed, you would be able to think up (\x y -> Range (x,y)) yourself. My students do. |
| 18:39:44 | → | Schrostfutz joins (~Schrostfu@p5de88aa6.dip0.t-ipconnect.de) |
| 18:41:32 | <monochrom> | Some of my students don't know that "fmap Just xs" is a thing, they write like "fmap (\x -> Just x) xs". |
| 18:42:22 | <fakehacker[m]> | Right |
| 18:42:24 | <monochrom> | This is liberating. When what you really need is "(\x y -> Range (x+1, y-2))" my students won't be afraid to write exactly that and get shit done. |
| 18:43:26 | <fakehacker[m]> | Well, this was mainly a learning exercise because I just couldn't figure out how to do it without the do-notation and I couldn't just drop it without figuring it out! |
| 18:43:39 | <monochrom> | Whereas a pointfree fan who doesn't actually have the pointfree ability to go with it suffers writer's block. |
| 18:48:11 | → | lavaman joins (~lavaman@98.38.249.169) |
| 18:48:50 | <dsal> | :t fmap curry |
| 18:48:51 | <lambdabot> | Functor f => f ((a, b) -> c) -> f (a -> b -> c) |
| 18:48:55 | → | econo joins (uid147250@user/econo) |
| 18:52:46 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 272 seconds) |
| 18:52:47 | → | favonia joins (~favonia@user/favonia) |
| 18:56:31 | → | Pickchea joins (~private@user/pickchea) |
| 18:59:47 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 19:00:18 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 19:00:36 | → | favonia joins (~favonia@user/favonia) |
| 19:01:05 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 19:01:21 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 19:04:55 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:09:44 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
| 19:14:05 | → | safinaskar joins (~safinaska@109-252-90-89.nat.spd-mgts.ru) |
| 19:14:18 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 19:14:43 | → | favonia joins (~favonia@user/favonia) |
| 19:15:57 | <hendursaga> | energizer: none that I know of but that's an interesting idea.. |
| 19:17:56 | ← | safinaskar parts (~safinaska@109-252-90-89.nat.spd-mgts.ru) () |
| 19:18:40 | → | edward1 joins (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) |
| 19:21:50 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:26:31 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 19:27:37 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 19:30:30 | × | peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 256 seconds) |
| 19:32:40 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds) |
| 19:33:52 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 19:34:10 | → | cheater joins (~Username@user/cheater) |
| 19:35:50 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 19:41:36 | × | xwx quits (~george@user/george) (Ping timeout: 268 seconds) |
| 19:43:05 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:43:26 | × | cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds) |
| 19:43:32 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 19:43:38 | → | cheater joins (~Username@user/cheater) |
| 19:43:55 | → | myShoggoth joins (~myShoggot@75.164.51.64) |
| 19:44:53 | → | cuz joins (~user@2601:182:cc02:8b0:70f8:b993:ed53:22fb) |
| 19:45:12 | → | favonia joins (~favonia@user/favonia) |
| 19:49:00 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 19:49:02 | → | cheater1__ joins (~Username@user/cheater) |
| 19:49:04 | cheater1__ | is now known as cheater |
| 19:51:55 | → | hgolden joins (~hgolden2@cpe-172-114-84-61.socal.res.rr.com) |
| 19:55:26 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 256 seconds) |
| 19:57:01 | × | Schrostfutz quits (~Schrostfu@p5de88aa6.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
| 19:58:00 | → | betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be) |
| 19:58:54 | × | gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
| 19:59:07 | → | peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
| 19:59:10 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 19:59:11 | → | gentauro joins (~gentauro@user/gentauro) |
| 19:59:31 | → | cheater joins (~Username@user/cheater) |
| 20:04:31 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 20:05:24 | × | juhp quits (~juhp@128.106.188.66) (Ping timeout: 252 seconds) |
| 20:06:52 | × | fendor quits (~fendor@91.141.35.106.wireless.dyn.drei.com) (Remote host closed the connection) |
| 20:07:59 | → | juhp joins (~juhp@128.106.188.66) |
| 20:08:30 | → | fendor joins (~fendor@91.141.35.106.wireless.dyn.drei.com) |
| 20:08:31 | → | xwx joins (~george@user/george) |
| 20:15:50 | × | cuz quits (~user@2601:182:cc02:8b0:70f8:b993:ed53:22fb) (Ping timeout: 256 seconds) |
| 20:18:51 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 20:19:15 | → | cheater joins (~Username@user/cheater) |
| 20:22:32 | × | PPK quits (~mark@2a00:23c6:d280:3700:572a:c2f0:ddc5:b769) (Quit: WeeChat 3.2) |
| 20:22:36 | × | shanemikel quits (~shanemike@desk.roadwar.net) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 20:24:03 | → | acidjnk_new joins (~acidjnk@p200300d0c72b9560cc287b29f6323197.dip0.t-ipconnect.de) |
| 20:25:12 | × | dunkeln_ quits (~dunkeln@188.71.194.238) (Ping timeout: 252 seconds) |
| 20:25:36 | → | shanemikel joins (~shanemike@desk.roadwar.net) |
| 20:26:21 | → | magthe joins (~magthe@c83-252-48-230.bredband.tele2.se) |
| 20:27:30 | × | euandreh quits (~euandreh@2804:14c:33:9fe5:af42:e045:e98b:4388) (Ping timeout: 240 seconds) |
| 20:28:43 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:5705:7057:8694:6ccc) |
| 20:32:23 | × | magthe quits (~magthe@c83-252-48-230.bredband.tele2.se) (Quit: WeeChat 3.2) |
| 20:32:37 | → | jared1 joins (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) |
| 20:35:53 | × | fendor quits (~fendor@91.141.35.106.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 20:35:59 | × | euandreh quits (~euandreh@2804:14c:33:9fe5:5705:7057:8694:6ccc) (Quit: WeeChat 3.2) |
| 20:36:06 | ← | jared1 parts (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) () |
| 20:36:24 | → | fendor joins (~fendor@91.141.35.106.wireless.dyn.drei.com) |
| 20:37:34 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:5705:7057:8694:6ccc) |
| 20:40:47 | × | cheater quits (~Username@user/cheater) (Ping timeout: 258 seconds) |
| 20:42:02 | × | myShoggoth quits (~myShoggot@75.164.51.64) (Ping timeout: 268 seconds) |
| 20:43:30 | → | jared2 joins (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) |
| 20:43:36 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 20:43:54 | → | favonia joins (~favonia@user/favonia) |
| 20:45:22 | × | whiteline quits (~whiteline@c-cda8d954.54725-0-757473696b74.bbcust.telenor.se) (Ping timeout: 252 seconds) |
| 20:46:12 | × | ablutor quits (~quassel@wasscher.com) (Quit: going for vitamine d) |
| 20:46:31 | → | ablutor joins (~quassel@wasscher.com) |
| 20:46:35 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 20:47:01 | → | cheater joins (~Username@user/cheater) |
| 20:47:50 | ← | jared2 parts (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) (WeeChat 3.2) |
| 20:49:00 | → | cuz joins (~user@2601:182:cc02:8b0:b9cd:400f:8605:1044) |
| 20:49:19 | → | Guest56 joins (~Guest56@188.27.129.10) |
| 20:49:53 | → | jared2 joins (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) |
| 20:52:33 | × | Guest56 quits (~Guest56@188.27.129.10) (Client Quit) |
| 20:54:32 | ← | jared2 parts (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) (WeeChat 3.2) |
| 20:54:54 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 20:56:44 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 20:57:34 | → | jared1 joins (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) |
| 20:57:50 | → | whiteline joins (~whiteline@c-cda8d954.54725-0-757473696b74.bbcust.telenor.se) |
| 20:59:18 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 20:59:54 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 20:59:55 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 21:00:19 | → | favonia joins (~favonia@user/favonia) |
| 21:04:15 | ← | jared1 parts (~jared@node-1w7jr9yeneb62gnlkycjvhdv6.ipv6.telus.net) (WeeChat 3.2) |
| 21:04:53 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 21:08:32 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 21:09:30 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 21:10:42 | → | favonia joins (~favonia@user/favonia) |
| 21:10:47 | → | astra_ joins (sid289983@id-289983.stonehaven.irccloud.com) |
| 21:14:19 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 21:16:29 | → | warnz joins (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) |
| 21:16:41 | × | bcmiller_ quits (~bm3719@66.42.95.185) (Quit: leaving) |
| 21:17:14 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 21:17:20 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 21:19:11 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 21:19:19 | × | cheater quits (~Username@user/cheater) (Remote host closed the connection) |
| 21:20:56 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 21:21:00 | × | warnz quits (~warnz@2600:1700:77c0:5610:20b2:48fc:c4b7:f8df) (Ping timeout: 256 seconds) |
| 21:23:50 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 21:25:25 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:27:18 | → | o1lo01ol1o joins (~o1lo01ol1@85.240.89.228) |
| 21:28:44 | → | sheepduck joins (~sheepduck@user/sheepduck) |
| 21:30:04 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 21:30:30 | → | cheater joins (~Username@user/cheater) |
| 21:31:44 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:32:54 | × | cuz quits (~user@2601:182:cc02:8b0:b9cd:400f:8605:1044) (Ping timeout: 256 seconds) |
| 21:33:02 | × | sheepduck quits (~sheepduck@user/sheepduck) (Remote host closed the connection) |
| 21:33:54 | × | jjhoo quits (jahakala@dsl-trebng21-58c18f-56.dhcp.inet.fi) (Remote host closed the connection) |
| 21:35:20 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 21:36:49 | → | jjhoo joins (~jahakala@dsl-trebng21-58c18f-56.dhcp.inet.fi) |
| 21:41:53 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 21:42:53 | × | o1lo01ol1o quits (~o1lo01ol1@85.240.89.228) (Remote host closed the connection) |
| 21:43:26 | → | o1lo01ol1o joins (~o1lo01ol1@bl7-89-228.dsl.telepac.pt) |
| 21:44:02 | × | jrm quits (~jrm@156.34.187.65) (Ping timeout: 252 seconds) |
| 21:47:06 | → | Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 21:47:42 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 252 seconds) |
| 21:49:28 | × | o1lo01ol1o quits (~o1lo01ol1@bl7-89-228.dsl.telepac.pt) (Ping timeout: 272 seconds) |
| 21:50:44 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 21:50:45 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 21:51:03 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 21:53:12 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 21:54:37 | × | finsternis quits (~X@23.226.237.192) (Remote host closed the connection) |
| 21:57:18 | <zzz> | is there a canonical way to avoid writing [minBound..maxBound] ? |
| 21:58:13 | <zzz> | (aside from [minBound..]) |
| 21:59:28 | × | fendor quits (~fendor@91.141.35.106.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 21:59:29 | <geekosaur> | not that I'm aware of… and one might have problems. (With Double, for one.) |
| 22:00:12 | <geekosaur> | Enum and Bounded are less thna ideally defined |
| 22:00:51 | → | jrm joins (~jrm@156.34.187.65) |
| 22:01:21 | → | fendor joins (~fendor@91.141.35.106.wireless.dyn.drei.com) |
| 22:04:37 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 22:05:03 | → | favonia joins (~favonia@user/favonia) |
| 22:06:02 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 22:06:10 | astra_ | is now known as astra` |
| 22:07:27 | astra` | is now known as amish |
| 22:07:30 | × | amish quits (sid289983@id-289983.stonehaven.irccloud.com) (Changing host) |
| 22:07:30 | → | amish joins (sid289983@user/amish) |
| 22:07:57 | amish | is now known as astra` |
| 22:08:28 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 22:08:35 | astra` | is now known as astra- |
| 22:08:45 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 22:09:21 | astra- | is now known as astra^ |
| 22:09:49 | astra^ | is now known as astra_ |
| 22:10:07 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 22:10:13 | astra_ | is now known as astra` |
| 22:13:38 | <zebrag> | For any given lambda-term (say, strongly normalizing), I want an equivalent term, but with only one redex. |
| 22:14:58 | <zebrag> | So far I must have been asking google the wrong questions. |
| 22:15:24 | × | glguy quits (x@libera/staff/glguy) (Quit: Quit) |
| 22:15:49 | → | glguy joins (x@libera/staff/glguy) |
| 22:18:39 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 22:21:03 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:21:16 | × | Topsi quits (~Tobias@dyndsl-095-033-017-135.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 22:22:50 | <zebrag> | Or there might be a theorem saying that there is no such transformation. |
| 22:23:10 | × | MorrowM quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 268 seconds) |
| 22:28:07 | × | yoctocell quits (~user@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 258 seconds) |
| 22:28:50 | <koz> | What constructor in Pat corresponds to (x : xs)-style matches? |
| 22:29:13 | <koz> | Do I seriously gotta go 'ConP ''(:) [..., ....]' or something? |
| 22:29:49 | <koz> | (well, specifically 'ConP ''(:) [VarP xName, VarP xsName]') |
| 22:30:08 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 22:30:35 | → | cjb joins (~cjb@user/cjb) |
| 22:31:09 | → | lavaman joins (~lavaman@98.38.249.169) |
| 22:31:26 | <koz> | Or would that be InfixP? |
| 22:33:27 | <glguy> | koz, it would work with either ConP or InfixP |
| 22:33:38 | <koz> | I guess InfixP is a bit clearer? |
| 22:33:53 | <glguy> | it'll be nicer when someone looks with -ddump-splices |
| 22:34:02 | <koz> | Which will likely be me in an hour or so. |
| 22:34:07 | <koz> | Thanks! |
| 22:35:30 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 22:37:54 | × | acidjnk_new quits (~acidjnk@p200300d0c72b9560cc287b29f6323197.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 22:38:14 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 272 seconds) |
| 22:38:21 | → | favonia joins (~favonia@user/favonia) |
| 22:38:42 | × | laguneucl quits (~Pitsikoko@2a02:587:dc0b:0:d8f7:cdfe:4658:bec4) (Ping timeout: 240 seconds) |
| 22:40:20 | × | edward1 quits (~edward@cpc69060-oxfd26-2-0-cust374.4-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 22:41:23 | → | fengctor joins (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) |
| 22:45:05 | → | timCF joins (~timCF@m91-129-99-175.cust.tele2.ee) |
| 22:47:14 | × | timCF quits (~timCF@m91-129-99-175.cust.tele2.ee) (Client Quit) |
| 22:48:13 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 22:48:23 | × | jumper149 quits (~jumper149@80.240.31.34) (Quit: WeeChat 3.1) |
| 22:49:26 | × | eight quits (~eight@user/eight) (Remote host closed the connection) |
| 22:50:04 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 22:51:21 | × | betelgeuse quits (~john2gb@94-225-47-8.access.telenet.be) (Quit: The Lounge - https://thelounge.chat) |
| 22:52:39 | → | econo joins (uid147250@user/econo) |
| 22:55:24 | × | fengctor quits (~fengctor@bras-base-ngflon0508w-grc-11-76-68-2-143.dsl.bell.ca) (Read error: Connection reset by peer) |
| 22:56:37 | <dexterfoo> | what's the difference between: (Show a => Ord a => a) vs. ((Show a, Ord a) => a) ? |
| 22:57:47 | <geekosaur> | none, unless it's a pattern synonym |
| 22:58:30 | <geekosaur> | for the latter, the one before the first => is the required constraint and the other is the provided constraint |
| 22:58:34 | <dexterfoo> | in all the tutorials and all the code i've seen, i always see the second. i didn't even know the first syntax was possible |
| 22:58:56 | <geekosaur> | it's not supposed to be possible, it's a side effect of how ghc parses constraints |
| 23:02:24 | × | dunj3 quits (~dunj3@2001:16b8:3050:bb00:92ff:fb46:3b31:9dc1) (Remote host closed the connection) |
| 23:02:42 | <geekosaur> | I think there might even be an issue about it |
| 23:07:29 | → | aerona joins (~aerona@2600:6c54:4600:f300:50a2:c330:37d8:4b40) |
| 23:08:51 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) (Remote host closed the connection) |
| 23:11:23 | <dexterfoo> | thank you |
| 23:15:39 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:19:36 | → | infinisil[m] joins (~infinisil@2001:470:69fc:105::ff8) |
| 23:23:21 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 244 seconds) |
| 23:29:22 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 23:31:22 | → | dajoer joins (~david@user/gvx) |
| 23:31:44 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 23:33:36 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds) |
| 23:34:01 | → | favonia joins (~favonia@user/favonia) |
| 23:34:03 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 258 seconds) |
| 23:36:53 | → | eight joins (~eight@user/eight) |
| 23:40:32 | → | Codaraxis_ joins (~Codaraxis@ip68-5-90-227.oc.oc.cox.net) |
| 23:44:16 | × | Codaraxis__ quits (~Codaraxis@193.32.126.157) (Ping timeout: 265 seconds) |
| 23:44:31 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:5061:15ea:118b:e58d) |
| 23:46:41 | → | cuz joins (~user@2601:182:cc02:8b0:65c8:4bfc:4b31:711c) |
| 23:47:08 | → | thornAvery joins (~thorn@121.220.33.124) |
| 23:47:30 | × | neceve quits (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f) (Ping timeout: 240 seconds) |
| 23:49:10 | → | lavaman joins (~lavaman@98.38.249.169) |
| 23:49:34 | <qrpnxz> | i'm trying to bind the result of an if expr in a do statement, but it keeps parsing as if all subsequent statements in the do where part of the else clause, don't know how to fix |
| 23:50:19 | <geekosaur> | @where paste |
| 23:50:19 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
| 23:50:51 | <geekosaur> | sounds as if NondecreasingIndentation might be getting you, but if is an expression and not a statement so this seems weird |
| 23:51:44 | × | cuz quits (~user@2601:182:cc02:8b0:65c8:4bfc:4b31:711c) (Ping timeout: 256 seconds) |
| 23:51:46 | <qrpnxz> | yeah idk, i'll post the paste in a sec |
| 23:52:48 | <qrpnxz> | ah wtf, as soon as i paste in the terminal for the paste it was obvious, my editor was doing some whitespace fuckery. I fixed it |
| 23:53:34 | <geekosaur> | this is why you configure your editor to expand tabs; they do odd things |
| 23:55:12 | <qrpnxz> | i'm used to using just tabs but haskell is different (which i'm ok with) |
| 23:55:36 | <geekosaur> | it'll also bite you with python if you ever need to work in that |
| 23:55:59 | <qrpnxz> | python i'm not okay with, but at least they don't care spaces vs tabs iirc |
| 23:56:39 | <geekosaur> | you can still get caught out this way if tabs expand differently in a terminal than in the editor |
| 23:56:49 | <qrpnxz> | having fun right now making a filthy stateful slice library hahahaha. ik haskell is about the purity, but i just miss these man |
| 23:57:26 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
| 23:57:43 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 23:58:13 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
All times are in UTC on 2021-07-04.