2021-12-02 00:00:00 +0100 | <int-e> | monochrom: oh but a triple fault gets you out of protected mode and back into real mode on 80286 :P |
2021-12-02 00:00:25 +0100 | <monochrom> | That's very Inception-like... |
2021-12-02 00:00:41 +0100 | <hpc> | i choose to believe the opposite of real mode is integer mode |
2021-12-02 00:00:47 +0100 | <monochrom> | haha |
2021-12-02 00:02:34 +0100 | <davean> | monochrom: a triple fault is how you reboot, right? |
2021-12-02 00:03:14 +0100 | <int-e> | monochrom: To be clear, it is a CPU reset. But PC BIOSes allowed you to hook into the initialization procedure and take over, so you could recover from that without destroying data or resetting the rest of the hardware. |
2021-12-02 00:03:17 +0100 | <hpc> | just fault one more time while the computer is off? |
2021-12-02 00:04:13 +0100 | Lycurgus | (~juan@98.4.112.204) (Quit: Exeunt) |
2021-12-02 00:04:18 +0100 | <monochrom> | The Fault In Wordstar |
2021-12-02 00:05:04 +0100 | <hpc> | sometimes when i finally get all my tests to pass i think "finally everything words perfectly" |
2021-12-02 00:05:18 +0100 | <monochrom> | hahaha |
2021-12-02 00:05:35 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 00:05:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 00:10:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 00:14:44 +0100 | mikail | (~mikail@2a02:c7f:bc1f:4a00:fc9:3da5:3e1e:8303) (Ping timeout: 252 seconds) |
2021-12-02 00:14:52 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 00:17:53 +0100 | kupi | (uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-12-02 00:18:27 +0100 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-12-02 00:19:16 +0100 | nvmd | (~nvmd@user/nvmd) (Quit: Later, nerds.) |
2021-12-02 00:22:54 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 265 seconds) |
2021-12-02 00:24:30 +0100 | Codaraxis_ | (~Codaraxis@user/codaraxis) |
2021-12-02 00:25:35 +0100 | Flonk | (~Flonk@vps-zap441517-1.zap-srv.com) (Quit: Ping timeout (120 seconds)) |
2021-12-02 00:25:40 +0100 | renzhi | (~xp@2607:fa49:6500:b100::5cef) |
2021-12-02 00:25:40 +0100 | kjak | (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) |
2021-12-02 00:25:56 +0100 | Flonk | (~Flonk@vps-zap441517-1.zap-srv.com) |
2021-12-02 00:27:11 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:1d11:e285:317e:6a2a) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 00:27:56 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-12-02 00:28:25 +0100 | _bo | (~bo@217.18.216.247) (Quit: Leaving) |
2021-12-02 00:28:27 +0100 | Codaraxis__ | (~Codaraxis@user/codaraxis) (Ping timeout: 256 seconds) |
2021-12-02 00:29:32 +0100 | kritzefitz_ | (~kritzefit@debian/kritzefitz) |
2021-12-02 00:31:47 +0100 | jstolarek | (~jstolarek@137.220.120.162) (Ping timeout: 256 seconds) |
2021-12-02 00:32:30 +0100 | ph88 | (~ph88@2a02:8109:9e00:71d0:54ac:14f0:5fcb:286d) (Quit: Leaving) |
2021-12-02 00:34:29 +0100 | <hololeap> | f [1,2,3,4] [1,2,6,7,8] === ([1,2], ([3,4],[6,7,8])) |
2021-12-02 00:34:38 +0100 | <hololeap> | is there a name for this, or something similar? |
2021-12-02 00:34:56 +0100 | <Axman6> | that looks very not total |
2021-12-02 00:34:59 +0100 | <Axman6> | f [] [] = ? |
2021-12-02 00:35:19 +0100 | kritzefitz_ | kritzefitz |
2021-12-02 00:35:21 +0100 | <hololeap> | f [] [] == ([], ([], [])) ? |
2021-12-02 00:35:30 +0100 | <Axman6> | hmm, yes |
2021-12-02 00:35:37 +0100 | <geekosaur> | and do you expect it to nest more tuples in some cases? |
2021-12-02 00:35:56 +0100 | <geekosaur> | oh, I see |
2021-12-02 00:36:13 +0100 | mestre | (~mestre@191.177.175.57) (Quit: Lost terminal) |
2021-12-02 00:36:30 +0100 | <hololeap> | no, I just want to find a common prefix and return it plus the different suffixes of the two lists |
2021-12-02 00:37:17 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:1d11:e285:317e:6a2a) |
2021-12-02 00:37:23 +0100 | <boxscape> | I suppose you're making a trie |
2021-12-02 00:37:26 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) |
2021-12-02 00:37:48 +0100 | <hololeap> | no, not a trie |
2021-12-02 00:38:02 +0100 | <Axman6> | it's literally just collecting the headfs and tails right? |
2021-12-02 00:38:22 +0100 | <hololeap> | let me see if I can hammer it out real quick |
2021-12-02 00:38:33 +0100 | <hololeap> | I'm trying to recreate this: https://hackage.haskell.org/package/system-filepath-0.4.14/docs/Filesystem-Path.html#v:stripPrefix |
2021-12-02 00:39:20 +0100 | <monochrom> | Data.List.stripPrefix |
2021-12-02 00:39:34 +0100 | <monochrom> | Err I guess not exactly. |
2021-12-02 00:39:44 +0100 | <jackdk> | what about https://hackage.haskell.org/package/monoid-subclasses-1.1.2/docs/Data-Monoid-GCD.html#v:stripCommo… ? |
2021-12-02 00:40:07 +0100 | <Axman6> | oh, it's the common prefix, right, I understand now |
2021-12-02 00:40:15 +0100 | <jackdk> | and then some swizzling to turn the 3-tuple into the shape you actually want |
2021-12-02 00:40:16 +0100 | <Axman6> | that does look useful (particularly for tries) |
2021-12-02 00:40:45 +0100 | <jackdk> | yeah hololeap pretty sure you want stripCommonPrefix from monoid-subclasses |
2021-12-02 00:42:41 +0100 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-12-02 00:42:48 +0100 | <monochrom> | Go through System.FilePath.splitPath then Data.List.stripPrefix then System.FilePath.joinPath |
2021-12-02 00:42:58 +0100 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-12-02 00:45:17 +0100 | <hololeap> | monochrom: wait, why not just use Data.List.stripPrefix? |
2021-12-02 00:46:02 +0100 | <monochrom> | > stripPrefix "/myd" "/mydir/m.mov" |
2021-12-02 00:46:03 +0100 | <lambdabot> | Just "ir/m.mov" |
2021-12-02 00:46:11 +0100 | <hololeap> | oh, good point |
2021-12-02 00:46:18 +0100 | <awpr> | > stripPrefix "/tmp/" "/tmp//file.txt" |
2021-12-02 00:46:19 +0100 | <lambdabot> | Just "/file.txt" |
2021-12-02 00:46:31 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 256 seconds) |
2021-12-02 00:46:39 +0100 | <Axman6> | > stripPrefix "1234" "1256" |
2021-12-02 00:46:40 +0100 | <lambdabot> | Nothing |
2021-12-02 00:46:49 +0100 | <Axman6> | I would guess that's why |
2021-12-02 00:47:05 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 00:47:14 +0100 | vysn | (~vysn@user/vysn) |
2021-12-02 00:48:47 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (Ping timeout: 256 seconds) |
2021-12-02 00:49:30 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 00:51:10 +0100 | jeffz | (~user@lambda.xen.prgmr.com) (Remote host closed the connection) |
2021-12-02 00:51:17 +0100 | jeffz | (~user@lambda.xen.prgmr.com) |
2021-12-02 00:56:19 +0100 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbfb-173.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-12-02 00:57:12 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2021-12-02 00:58:01 +0100 | <jackdk> | % import Data.Monoid.GCD |
2021-12-02 00:58:02 +0100 | <yahb> | jackdk: ; <no location info>: error:; Could not find module `Data.Monoid.GCD'; Perhaps you meant Data.Monoid (from base-4.15.0.0) |
2021-12-02 00:58:07 +0100 | <jackdk> | ah well |
2021-12-02 00:59:29 +0100 | <jackdk> | Prelude Data.Monoid.GCD> stripCommonPrefix [1, 2, 3, 4] [1, 2, 6, 7, 8] -- => ([1,2],[3,4],[6,7,8]) |
2021-12-02 00:59:52 +0100 | max22- | (~maxime@2a01cb08833598008751b1889105ced7.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2021-12-02 01:00:07 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2021-12-02 01:01:39 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-12-02 01:03:23 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) |
2021-12-02 01:05:02 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 01:09:33 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds) |
2021-12-02 01:21:07 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-12-02 01:25:00 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 01:30:13 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 01:33:16 +0100 | acidjnk_new | (~acidjnk@p200300d0c7271e31dccc5136b6b31647.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2021-12-02 01:36:41 +0100 | rekahsoft | (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 252 seconds) |
2021-12-02 01:39:53 +0100 | Cajun | (~Cajun@user/cajun) |
2021-12-02 01:43:50 +0100 | vysn | (~vysn@user/vysn) (Ping timeout: 252 seconds) |
2021-12-02 01:45:28 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-12-02 01:46:24 +0100 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-12-02 01:47:52 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (Quit: leaving) |
2021-12-02 01:47:59 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-12-02 01:47:59 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-12-02 01:47:59 +0100 | wroathe | (~wroathe@user/wroathe) |
2021-12-02 01:48:47 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds) |
2021-12-02 01:50:36 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-12-02 02:10:48 +0100 | slack1256 | (~slack1256@191.126.227.74) |
2021-12-02 02:10:52 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 02:13:17 +0100 | mmhat | (~mmh@55d4c042.access.ecotel.net) (Ping timeout: 256 seconds) |
2021-12-02 02:16:59 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 02:19:51 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 02:19:58 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:1d11:e285:317e:6a2a) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 02:21:13 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 02:21:48 +0100 | yushyin | yushying |
2021-12-02 02:22:07 +0100 | yushying | yushyin |
2021-12-02 02:23:03 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:1d11:e285:317e:6a2a) |
2021-12-02 02:23:30 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-12-02 02:25:31 +0100 | mmhat | (~mmh@55d4726e.access.ecotel.net) |
2021-12-02 02:29:14 +0100 | mmhat | (~mmh@55d4726e.access.ecotel.net) (Client Quit) |
2021-12-02 02:44:02 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 02:44:23 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
2021-12-02 02:44:25 +0100 | slack1256 | (~slack1256@191.126.227.74) (Remote host closed the connection) |
2021-12-02 02:49:29 +0100 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 256 seconds) |
2021-12-02 02:54:14 +0100 | <boxscape> | % Prelude... |
2021-12-02 02:54:14 +0100 | <yahb> | boxscape: ; <interactive>:66:1: error: parse error on input `Prelude...' |
2021-12-02 02:54:19 +0100 | <boxscape> | hmm |
2021-12-02 02:54:23 +0100 | <boxscape> | didn't get a parse error in ghci |
2021-12-02 02:54:36 +0100 | <boxscape> | ah |
2021-12-02 02:54:40 +0100 | <boxscape> | % (Prelude...) |
2021-12-02 02:54:41 +0100 | <yahb> | boxscape: ; <interactive>:67:1: error:; Not in scope: `Prelude...'; Perhaps you meant one of these: `Prelude..' (imported from Prelude), `Prelude.+' (imported from Prelude), `Prelude.*' (imported from Prelude) |
2021-12-02 02:54:57 +0100 | <boxscape> | I'm somewhat surprised that this isn't a parse error, considering .. is reserved |
2021-12-02 02:55:36 +0100 | <boxscape> | (So (ModuleName...) is an identifier you can refer to but never define) |
2021-12-02 02:55:48 +0100 | <boxscape> | except possibly with template haskell... |
2021-12-02 02:56:59 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 252 seconds) |
2021-12-02 03:03:33 +0100 | <shapr> | Is there any way to save debug/crash info if GHC segfaults? |
2021-12-02 03:03:35 +0100 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
2021-12-02 03:03:40 +0100 | Typedfern | (~Typedfern@75.red-88-22-25.staticip.rima-tde.net) |
2021-12-02 03:07:46 +0100 | <Axman6> | oh no |
2021-12-02 03:12:41 +0100 | <dmj`> | "Print Screen" |
2021-12-02 03:13:01 +0100 | <EvanR> | quick get a screenshot |
2021-12-02 03:13:57 +0100 | <boxscape> | (nope, can't do it with TH) |
2021-12-02 03:14:02 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-12-02 03:14:16 +0100 | <c_wraith> | configure your OS to allow core files? |
2021-12-02 03:18:27 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 03:24:15 +0100 | <shapr> | c_wraith: do you know if Windows does that? |
2021-12-02 03:24:27 +0100 | <c_wraith> | oh. windows? unlikely. |
2021-12-02 03:28:13 +0100 | <hololeap> | does (..) live in Prelude? I thought it was syntactic sugar |
2021-12-02 03:29:00 +0100 | <EvanR> | anyone heard of `basement' and `foundation'... seems like it would be a totally different language using these xD |
2021-12-02 03:29:12 +0100 | <hololeap> | the only place I've seen it is ['a'..'z'] |
2021-12-02 03:29:29 +0100 | <EvanR> | import A (A(..)) |
2021-12-02 03:30:43 +0100 | xff0x | (~xff0x@2001:1a81:5339:b000:22b1:7654:f125:7b04) (Ping timeout: 252 seconds) |
2021-12-02 03:30:46 +0100 | <hololeap> | EvanR: what are you supposed to import when you use basement? |
2021-12-02 03:31:25 +0100 | <iqubic> | How does one use basement and foundation? Are those like, replacement preludes. |
2021-12-02 03:31:46 +0100 | <EvanR> | disable prelude, import Foundation |
2021-12-02 03:31:48 +0100 | <boxscape> | hololeap: you're right, I thought it was that you can refer to Prelude... *because* it's not defined in the Prelude |
2021-12-02 03:32:01 +0100 | <boxscape> | s/it was/ it was odd |
2021-12-02 03:32:45 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:ec14:1667:941b:a8bf) |
2021-12-02 03:33:15 +0100 | <boxscape> | I would have expected to see something like "illegal variable name" |
2021-12-02 03:33:56 +0100 | <EvanR> | ok basement is behind the scenes of foundation. I wonder if it's "yet another alternative prelude" |
2021-12-02 03:34:21 +0100 | <EvanR> | but e.g. the Num class is gone, String is a newtype over packed UTF8 bytes |
2021-12-02 03:34:45 +0100 | <EvanR> | arrays are just there |
2021-12-02 03:35:23 +0100 | <hololeap> | it seems very opinionated, which isn't to say it isn't good or you shouldn't use it |
2021-12-02 03:35:46 +0100 | <boxscape> | I guess the one thing that might be annoying is interfacing with other libraries |
2021-12-02 03:35:47 +0100 | <EvanR> | yeah I looked through the basement and didn't see anything too questionable |
2021-12-02 03:36:07 +0100 | <hololeap> | it seems to have a special use case, probably for making network backends |
2021-12-02 03:36:09 +0100 | <EvanR> | Subtractive class uses an associated type synonym for the return type xD |
2021-12-02 03:36:41 +0100 | <EvanR> | so you can do Int -> Int -> Int, but Natural -> Natural -> Maybe Natural, or Date -> Date -> Integer |
2021-12-02 03:37:24 +0100 | <EvanR> | oh yeah I wonder how you use other libraries at the same time |
2021-12-02 03:37:40 +0100 | <EvanR> | well why did I even look at it, it's a transitive dependence for wreq xD |
2021-12-02 03:37:56 +0100 | <jackdk> | My personal rule is to never use an altprelude in library code |
2021-12-02 03:38:27 +0100 | <hololeap> | is there one that just removes partial functions? I would use that |
2021-12-02 03:39:12 +0100 | <EvanR> | the conversion class is split between always works and Maybe works |
2021-12-02 03:39:19 +0100 | <EvanR> | From, TryFrom |
2021-12-02 03:39:24 +0100 | <EvanR> | Into, TryInto |
2021-12-02 03:39:26 +0100 | <jackdk> | I've been pretty happy building on Relude at work, but I just don't think that the risk of the maintainer going AWOL and jamming the update of some library you care about isn't worth it for libs |
2021-12-02 03:39:53 +0100 | <dsal> | jackdk: the obvious solution is to make your own prelude. |
2021-12-02 03:40:08 +0100 | <hololeap> | jackdk: that's fair, although in a way this is a common problem |
2021-12-02 03:41:02 +0100 | <jackdk> | for a larger lib an internal prelude could help with organisation, sure |
2021-12-02 03:41:37 +0100 | <jackdk> | and yeah the problem is that Prelude tries to do too many things at once, so it simultaneously feels too big and too small |
2021-12-02 03:42:01 +0100 | <EvanR> | if the library only exports new types and doesn't mention any altered base types... seems like the client code would not notice? |
2021-12-02 03:42:31 +0100 | <EvanR> | i.e. only use altprelude in secret |
2021-12-02 03:42:45 +0100 | <EvanR> | don't ask don't tell |
2021-12-02 03:42:53 +0100 | <hololeap> | jackdk: I agree, actually. you can import from libraries that have a specific use. Prelude is basically a meta-import at that point |
2021-12-02 03:43:19 +0100 | <hololeap> | which I guess it is already XD |
2021-12-02 03:43:37 +0100 | <jackdk> | EvanR: until your altprelude turns out to be maintained by someone who falls behind on maintenance, and then everyone who depends on you is sad |
2021-12-02 03:43:54 +0100 | <EvanR> | isn't that an issue with any library you use ever? |
2021-12-02 03:43:57 +0100 | <hololeap> | but you get a ton of dependencies and someone has to go through and bump them constantly |
2021-12-02 03:45:33 +0100 | <boxscape> | EvanR: I suppose with alt-preludes in particular, it's only a nice-to-have rather than a library you really need to depend on |
2021-12-02 03:45:49 +0100 | <boxscape> | so the risk/benefit ratio is different |
2021-12-02 03:46:03 +0100 | <EvanR> | the brochure for foundation mentions the changing landscape of GHC base, hence basement that doesn't change. But then this raises the exact issue of who continues to make basement compatible with GHC base as it (supposedly) changes |
2021-12-02 03:46:15 +0100 | <jackdk> | EvanR: yes. But altpreludes seem to involve a) a lot of catherding because they often collate stuff from a bunch of libraries, b) by definition provide almost no additional features |
2021-12-02 03:46:33 +0100 | unyu | (~pyon@user/pyon) (Quit: WeeChat 3.3) |
2021-12-02 03:46:57 +0100 | <EvanR> | this one doesn't have any dependencies and has a lot of features |
2021-12-02 03:47:03 +0100 | <jackdk> | Re: "(supposedly) changes" - I keep bumping into libs that claim `build-depends: base >=4.x && <5` but break on GHC9 |
2021-12-02 03:47:45 +0100 | <EvanR> | so <5 is BS |
2021-12-02 03:48:04 +0100 | <hololeap> | I saw <666 once |
2021-12-02 03:48:13 +0100 | <jackdk> | at least you know that's evil |
2021-12-02 03:48:20 +0100 | <hololeap> | haha |
2021-12-02 03:48:40 +0100 | <jackdk> | EvanR: and yet, https://github.com/haskell-foundation/foundation/pull/555#issuecomment-983107899 |
2021-12-02 03:48:45 +0100 | <EvanR> | "If we all put <5 they can't possibly break all of us" |
2021-12-02 03:49:00 +0100 | <jackdk> | (going back to the basement discussion rather than the bounds discussion) |
2021-12-02 03:49:22 +0100 | <jackdk> | the low-dependencies altprelude that's actually holding up a bunch of stuff and doesn't work on ghcjs |
2021-12-02 03:49:44 +0100 | <EvanR> | that github issue explains a lot |
2021-12-02 03:50:11 +0100 | <EvanR> | in particular, the answer to my question "has anyone heard of this" xD |
2021-12-02 03:50:28 +0100 | <EvanR> | apparently everyones on board with it, with consequences |
2021-12-02 03:50:37 +0100 | Cajun | (~Cajun@user/cajun) (Quit: Client closed) |
2021-12-02 03:50:57 +0100 | curiousgay | (~curiousga@77-120-141-90.kha.volia.net) (Quit: Leaving) |
2021-12-02 03:52:07 +0100 | <EvanR> | so base in 9.2 has changed significantly? |
2021-12-02 03:52:18 +0100 | <EvanR> | or this is like, a change the version bounds game |
2021-12-02 03:52:34 +0100 | tito | (tito@tilde.team) (Ping timeout: 260 seconds) |
2021-12-02 03:53:11 +0100 | <hololeap> | is MonadThrow a good choice if you need to be able to throw Exceptions but not any of the regular IO stuff? I haven't see it used a lot |
2021-12-02 03:54:07 +0100 | tito | (tito@tilde.team) |
2021-12-02 03:54:56 +0100 | ubert1 | (~Thunderbi@p200300ecdf0ba290e6b318fffe838f33.dip0.t-ipconnect.de) |
2021-12-02 03:55:06 +0100 | ub | (~Thunderbi@p200300ecdf0ba2be089e3f14725e8432.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2021-12-02 03:55:06 +0100 | ubert | (~Thunderbi@p200300ecdf0ba2bee6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2021-12-02 03:55:07 +0100 | ubert1 | ubert |
2021-12-02 03:55:12 +0100 | <jackdk> | The diff in the PR is at least a partial answer to that question, but I think the further you are off the ground the less the GHC changes will affect you, as the libraries you depend on will maintain APIs |
2021-12-02 03:55:24 +0100 | ub | (~Thunderbi@p200300ecdf0ba2909868c7bbf0c5b488.dip0.t-ipconnect.de) |
2021-12-02 03:55:57 +0100 | <jackdk> | hololeap: I think so? I see a lot of stuff goes straight to MonadCatch so I think throw-but-not-catch is relatively rare but you're in a compatible ecosystem |
2021-12-02 03:57:23 +0100 | <EvanR> | word8ToWordCompat# |
2021-12-02 03:57:28 +0100 | <EvanR> | :S |
2021-12-02 03:58:39 +0100 | <EvanR> | ok, to be clear, actually using any of this in production is another universe away from my original comment that it was like "very different looking", i.e. String isn't even compatible anymore |
2021-12-02 03:59:08 +0100 | <EvanR> | so I'm not even sure it's usable for not-production xD |
2021-12-02 03:59:17 +0100 | <EvanR> | unless you're in total isolation |
2021-12-02 04:00:00 +0100 | <hololeap> | should there be a IsString instance for SomeException? you could pack some string exception in there |
2021-12-02 04:02:00 +0100 | <hololeap> | jackdk: the idea is to have throwM but nothing else so you limit the scope of the function. it also lets me use Either or IO |
2021-12-02 04:02:54 +0100 | <jackdk> | hololeap: yeah I think I understand what you're doing, and I think that class gets used a lot |
2021-12-02 04:04:31 +0100 | <hololeap> | ok |
2021-12-02 04:05:10 +0100 | <EvanR> | is there a difference between throw and throwIO for m=IO |
2021-12-02 04:05:42 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:2978:bff0:cda7:8559) |
2021-12-02 04:05:54 +0100 | <EvanR> | oh throwM |
2021-12-02 04:06:23 +0100 | <jackdk> | https://hackage.haskell.org/package/exceptions-0.10.4/docs/src/Control.Monad.Catch.html#line-330 |
2021-12-02 04:06:46 +0100 | <jackdk> | (I found this by going to the "Source" link of the MonadThrow instance for IO) |
2021-12-02 04:07:41 +0100 | <EvanR> | yeah nvm |
2021-12-02 04:09:02 +0100 | <EvanR> | I like how MonadThrow has a law xD |
2021-12-02 04:09:21 +0100 | <dsal> | I feel like it should have throw'M |
2021-12-02 04:09:41 +0100 | <boxscape> | somewhat confusing that the haskell-foundation github account doesn't belong to the haskell foundation |
2021-12-02 04:10:24 +0100 | <hololeap> | boxscape: I think they meant it as a pun, along the same lines as basement. it's something "underneath" your code |
2021-12-02 04:10:42 +0100 | <boxscape> | yeah, they also came along long before the haskell foundation existed |
2021-12-02 04:11:24 +0100 | <EvanR> | I was wondering if they had anything to do with haskell foundation |
2021-12-02 04:11:50 +0100 | <EvanR> | kind of like w3schools xD |
2021-12-02 04:12:38 +0100 | <EvanR> | s/confusing/potential trademark infringement/ |
2021-12-02 04:15:38 +0100 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2021-12-02 04:16:33 +0100 | <hololeap> | I like this idea, but where should I put it? http://sprunge.us/xglu0G?haskell |
2021-12-02 04:17:39 +0100 | xkuru | (~xkuru@user/xkuru) |
2021-12-02 04:18:59 +0100 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2021-12-02 04:20:15 +0100 | <dsal> | Put in a module called Old.Python.Bugs |
2021-12-02 04:21:06 +0100 | <hololeap> | I don't understand the sass |
2021-12-02 04:21:44 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 04:22:50 +0100 | <EvanR> | shouldn't your IsString instance be on StringException |
2021-12-02 04:23:01 +0100 | <dsal> | SomeException itself shouldn't be thrown. This effectively gets rid of all of the exception hierarchy in a way that'll be very confusing. |
2021-12-02 04:23:03 +0100 | <hololeap> | yes, that too |
2021-12-02 04:23:20 +0100 | <dsal> | Python used to let you do that, but even in python2, they tell you not to: |
2021-12-02 04:23:22 +0100 | <dsal> | TypeError: exceptions must be old-style classes or derived from BaseException, not str |
2021-12-02 04:23:56 +0100 | <dsal> | Because using a string instead of a type makes all the things harder. |
2021-12-02 04:23:57 +0100 | <hololeap> | dsal: I haven't had a need for the exception heirarchy beyond SomeException. how will this make things confusing? |
2021-12-02 04:24:24 +0100 | <dsal> | Catching SomeException is almost always a very bad idea. |
2021-12-02 04:25:06 +0100 | <EvanR> | if I was using StringException... I'd throw or catch StringException |
2021-12-02 04:25:16 +0100 | <hololeap> | I tried using ExceptT ExceptionA (ExceptT ExceptionB (..)) but this was annoying |
2021-12-02 04:25:21 +0100 | <EvanR> | if you put IsString on both, now throwing is ambiguous |
2021-12-02 04:25:35 +0100 | <hololeap> | it seems better just to catch SomeException and know what exceptions you're looking for |
2021-12-02 04:25:44 +0100 | <EvanR> | that sounds so wrong |
2021-12-02 04:25:55 +0100 | <dsal> | The documentation describes this better than I can here: https://hackage.haskell.org/package/base-4.16.0.0/docs/Control-Exception.html#g:4 |
2021-12-02 04:26:16 +0100 | <EvanR> | catches can let you catch multiple types of exceptions |
2021-12-02 04:26:33 +0100 | <EvanR> | and if you don't know what you're trying to catch you're SOL anyway |
2021-12-02 04:26:59 +0100 | gehmehgeh_ | (~user@user/gehmehgeh) |
2021-12-02 04:27:06 +0100 | <hololeap> | that's always the case, though. there's no way you're going to account for every single IO exception |
2021-12-02 04:27:11 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds) |
2021-12-02 04:27:16 +0100 | <EvanR> | traditionally I just hate having my exception handling code running when the exception is god knows what unknown thing I never heard of |
2021-12-02 04:27:42 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Ping timeout: 276 seconds) |
2021-12-02 04:27:47 +0100 | <EvanR> | no, no one should be accounting for every IO exception |
2021-12-02 04:27:57 +0100 | <EvanR> | you can use finally or a bracket to clean up and rethrow |
2021-12-02 04:28:01 +0100 | <boxscape> | If I have `data Foo a b = Foo a b`, I can write `Foo Int String` and `Foo' Int String` at the type level to differentiate them. But Int `Foo` String will always refer to the type constructor. Is there a way to use the data constructor as infix on the type level? |
2021-12-02 04:28:23 +0100 | <hololeap> | how is that any different from using SomeException? |
2021-12-02 04:28:42 +0100 | <EvanR> | I assumed you were trying to catch an exception (and not crash) |
2021-12-02 04:28:45 +0100 | <dsal> | This is a thing I noticed in java: Almost every time someone did a `try` they just wanted `finally` (or had to do dumb wrapper stuff for an API). `catch` leads to bugs. |
2021-12-02 04:29:05 +0100 | <hololeap> | EvanR: you can catch exceptions from SomeException if you tell it what you're looking for |
2021-12-02 04:29:26 +0100 | <boxscape> | (pretty sure the answer is no but I want to make sure) |
2021-12-02 04:29:26 +0100 | <hololeap> | so how is this any different from IO? |
2021-12-02 04:29:26 +0100 | <dsal> | What are you doing when you catch the exception? |
2021-12-02 04:29:40 +0100 | <EvanR> | SomeException is always used behind the scenes using dynamic types and the Typable instance for.. what you're looking for. No need to mess with SomeException directly |
2021-12-02 04:29:42 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-12-02 04:30:14 +0100 | <EvanR> | if it's a finally type pattern I'd just use finally |
2021-12-02 04:30:23 +0100 | <hololeap> | ok, well maybe I should bypass SomeException then |
2021-12-02 04:30:40 +0100 | <hololeap> | I thought it was just a convenient wrapper |
2021-12-02 04:30:49 +0100 | <dsal> | bracket is almost always what you need. |
2021-12-02 04:31:04 +0100 | <dsal> | If you need to continue after exceptions, you need to enumerate the specific conditions you want to continue. |
2021-12-02 04:31:05 +0100 | <EvanR> | well unless you're trying to catch a specific exception xD |
2021-12-02 04:31:12 +0100 | <dsal> | SomeException includes thread killed, control-c, etc... |
2021-12-02 04:31:22 +0100 | <dsal> | Then you end up with programs that you can't stop. |
2021-12-02 04:32:29 +0100 | <EvanR> | bracket also deals with async exception masking on your behalf so you don't mess that up |
2021-12-02 04:32:38 +0100 | <EvanR> | you don't want an async exception during the exception handler |
2021-12-02 04:32:48 +0100 | <hololeap> | EvanR: can't you do the same thing with SomeException as they are doing here with catching MismatchedParenthesis? https://hackage.haskell.org/package/base-4.16.0.0/docs/Control-Exception.html#t:Exception |
2021-12-02 04:33:34 +0100 | <EvanR> | they throw and catch specific exceptions there |
2021-12-02 04:33:38 +0100 | <dsal> | Yeah, you can catch specific exceptions. I catch application specific exceptions. |
2021-12-02 04:33:53 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:1d11:e285:317e:6a2a) (Quit: Textual IRC Client: www.textualapp.com) |
2021-12-02 04:34:22 +0100 | <EvanR> | and in the example, not crash but continue, another difference |
2021-12-02 04:35:22 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 04:35:36 +0100 | <hololeap> | my point is that there is an assumption that you are catching a subset of exceptions that could be thrown, whether you are talking about IOException or more broadly SomeException |
2021-12-02 04:36:10 +0100 | <hololeap> | so what is the problem with using SomeException directly? |
2021-12-02 04:36:33 +0100 | <dsal> | What are you doing to do when you catch the thread killed or control-c or whatever? |
2021-12-02 04:36:34 +0100 | <EvanR> | What are you trying to do again? Catch a specific exception and continue? |
2021-12-02 04:36:44 +0100 | <EvanR> | and not catch others |
2021-12-02 04:36:53 +0100 | <hololeap> | dsal: nothing if I don't have a catch for it |
2021-12-02 04:37:02 +0100 | <dsal> | SomeException *does* catch it. |
2021-12-02 04:37:29 +0100 | <EvanR> | catching SomeException and continuing is very bad |
2021-12-02 04:37:32 +0100 | <dsal> | That is, catching SomeException does catch it. |
2021-12-02 04:37:44 +0100 | <EvanR> | it nullifies all exceptions |
2021-12-02 04:37:53 +0100 | <EvanR> | you're program is unkillable xD |
2021-12-02 04:38:11 +0100 | <dsal> | It's the secret to making your program live forever. |
2021-12-02 04:38:16 +0100 | <hololeap> | I would re-throw it if nothing in the `case` block matched |
2021-12-02 04:38:17 +0100 | td_ | (~td@94.134.91.22) (Ping timeout: 256 seconds) |
2021-12-02 04:38:21 +0100 | <EvanR> | I haven't see a use case for doing it in any language |
2021-12-02 04:38:42 +0100 | <dsal> | Wait, are you reinventing catch / catches? |
2021-12-02 04:39:04 +0100 | <EvanR> | catches and bracket etc will handle async masking for you, at least there's that benefit |
2021-12-02 04:39:30 +0100 | <hololeap> | the original point was having an IsString instance for SomeException using StringException as the intermediary |
2021-12-02 04:39:41 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2021-12-02 04:39:55 +0100 | <EvanR> | I like the idea of having IsString for StringException |
2021-12-02 04:40:00 +0100 | <EvanR> | then you can even catch it |
2021-12-02 04:40:04 +0100 | td_ | (~td@muedsl-82-207-238-002.citykom.de) |
2021-12-02 04:40:08 +0100 | <dsal> | Having a StringException as a different thing isn't terrible. It just means you have an application-specific exception you can't distinguish sub-values of quite as much. |
2021-12-02 04:40:16 +0100 | <EvanR> | (without touching SomeException radioactive waste xD) |
2021-12-02 04:40:28 +0100 | <hololeap> | you couldn't catch it if you packed it in SomeException? |
2021-12-02 04:40:29 +0100 | <EvanR> | StringException is from UnliftIO |
2021-12-02 04:40:42 +0100 | gehmehgeh_ | (~user@user/gehmehgeh) (Ping timeout: 276 seconds) |
2021-12-02 04:40:44 +0100 | <EvanR> | it's not as easily caught and you are messing with fire |
2021-12-02 04:40:55 +0100 | <hololeap> | that's a fair point |
2021-12-02 04:40:56 +0100 | <dsal> | You just want to basically forget SomeException exists. :) |
2021-12-02 04:40:58 +0100 | <EvanR> | but do it xD |
2021-12-02 04:41:20 +0100 | <dsal> | stringException :: HasCallStack => String -> StringException |
2021-12-02 04:42:16 +0100 | <EvanR> | I'm always scared of accidentally catching and ignoring stuff like undefined and error |
2021-12-02 04:42:32 +0100 | <EvanR> | which I don't even know how to catch and don't want to know |
2021-12-02 04:42:44 +0100 | <hololeap> | you are both helping figure this out, so thanks! |
2021-12-02 04:42:46 +0100 | <dsal> | The closest I get to that is running code in an async and then reporting what happened. |
2021-12-02 04:43:02 +0100 | <dsal> | hololeap: Yeah, sorry if it sounds harsh. Just avoid SomeException. It's tempting, but painful. :) |
2021-12-02 04:43:11 +0100 | <hololeap> | no, I appreciate the feedback |
2021-12-02 04:43:34 +0100 | <dsal> | async can blow up with any type of exception and then you can just ask how it was. |
2021-12-02 04:44:26 +0100 | <dsal> | I wrote a thing that did this and a bunch of tests to make sure various types of runtime and IO exceptions and stuff were handled nicely. The neat thing is that the supervisor (I used to write a lot of erlang) doesn't actually catch any exceptions. |
2021-12-02 04:44:35 +0100 | <EvanR> | actually you can assume async don't throw, and use normal exception handling around the await call xD |
2021-12-02 04:44:58 +0100 | <EvanR> | even then you don't have to deal with SomeException |
2021-12-02 04:45:05 +0100 | <hololeap> | what monad should be used to catch in? always IO? I find it painful to string together ExceptTs if I need to compose functions that throw different exceptions |
2021-12-02 04:45:21 +0100 | <EvanR> | I never thought of trying to catch in anything but IO |
2021-12-02 04:45:48 +0100 | <EvanR> | usually failing monads can be handled at the runcall |
2021-12-02 04:45:56 +0100 | <hololeap> | I liked the idea of making explicit in the type what kind of exceptions it could throw |
2021-12-02 04:46:11 +0100 | <EvanR> | oh god, checked exceptions xD |
2021-12-02 04:46:27 +0100 | <EvanR> | java tried that no one liked it |
2021-12-02 04:47:36 +0100 | <EvanR> | I feel like the original idea of exceptions was to deal with the fact that usually you don't want to know/deal with all the ways things could fail rarely |
2021-12-02 04:47:52 +0100 | <EvanR> | it was too annoying |
2021-12-02 04:48:22 +0100 | <EvanR> | but knowing that something MAY throw SOMETHING being in the type is great |
2021-12-02 04:48:26 +0100 | <dsal> | I'd think it was a good idea if I never programmed in Java. |
2021-12-02 04:48:28 +0100 | <hololeap> | it could be helpful because you can just visually enumerate what you need to catch by reading the file |
2021-12-02 04:48:41 +0100 | <EvanR> | wait... that still doesn't sound right |
2021-12-02 04:48:45 +0100 | <dsal> | In java, it was like, "Can throw X, Y, Z, or like, anything else." |
2021-12-02 04:48:53 +0100 | <hololeap> | not every exception, obviously |
2021-12-02 04:49:02 +0100 | <EvanR> | ok yeah |
2021-12-02 04:49:10 +0100 | <Adeon> | I've been trying zig for past few days |
2021-12-02 04:49:12 +0100 | <Adeon> | it does not have exceptions |
2021-12-02 04:49:16 +0100 | <Adeon> | but it does have a nice error system |
2021-12-02 04:49:18 +0100 | <Adeon> | "error sets" |
2021-12-02 04:49:25 +0100 | <Adeon> | has a similar vibe to checked exceptions |
2021-12-02 04:49:27 +0100 | <EvanR> | it would be theoretically nice to see all the possible things something could throw |
2021-12-02 04:49:48 +0100 | <EvanR> | but for most of the IO section of the stdlib, that's like ... a lot |
2021-12-02 04:49:48 +0100 | <Adeon> | but it tries to make it very frictionless to combine error types etc. so it's very much out of the way |
2021-12-02 04:50:07 +0100 | <hololeap> | if it doesn't mention IO except as a black box, that would be helpful |
2021-12-02 04:50:45 +0100 | <hololeap> | maybe throw in other large classes of exceptions, like pure exceptions and STM exceptions |
2021-12-02 04:50:59 +0100 | <EvanR> | hold on, so we're really talking about application specific "exceptions" defined for use in pure code? |
2021-12-02 04:51:07 +0100 | <hololeap> | correct |
2021-12-02 04:51:10 +0100 | <EvanR> | like Either on steroids |
2021-12-02 04:51:42 +0100 | <EvanR> | now we can get even more thereoretical. Have you heard of extensible variants? xD |
2021-12-02 04:51:59 +0100 | <EvanR> | might achieve what Adeon was talking about, if it existed |
2021-12-02 04:52:02 +0100 | <hololeap> | I'm somewhat familiar with the concept. extensible sum types, right? |
2021-12-02 04:52:19 +0100 | <Adeon> | I think you can do what zig does in haskell but it's probably not nice |
2021-12-02 04:52:27 +0100 | <EvanR> | yeah instead of SomeException or defining a lot of exception types, you throw extensible variants |
2021-12-02 04:53:07 +0100 | <hololeap> | isn't polysemy supposed to do this? I haven't looked at it yet |
2021-12-02 04:53:53 +0100 | <EvanR> | that looks like a free monads lib |
2021-12-02 04:54:08 +0100 | boxscape_ | (~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-12-02 04:55:18 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2021-12-02 04:55:18 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-12-02 04:55:18 +0100 | finn_elija | FinnElija |
2021-12-02 04:56:04 +0100 | <hololeap> | I read this: https://haskell-explained.gitlab.io/blog/posts/2019/07/28/polysemy-is-cool-part-1/ |
2021-12-02 04:57:07 +0100 | <dsal> | I've still never found that to improve anything. |
2021-12-02 04:57:52 +0100 | <hololeap> | dsal: what do you do when it comes to exceptions? |
2021-12-02 04:58:08 +0100 | <EvanR> | "let it crash" philosophy xD |
2021-12-02 04:58:15 +0100 | <dsal> | I've never even considered polysemy related to exceptions. :) |
2021-12-02 04:58:34 +0100 | <EvanR> | but this doesn't apply to pure code that uses exceptions for fun and profit, which seems beyond me |
2021-12-02 04:58:35 +0100 | <dsal> | "let it crash" is pretty good, though. I had pretty good uptimes in all my erlang code. |
2021-12-02 04:58:40 +0100 | <Adeon> | I pretend exceptions don't exist except to make my code work correctly if someone `throwTo` into my code |
2021-12-02 04:58:43 +0100 | <dsal> | But erlang is crash-oriented |
2021-12-02 04:58:43 +0100 | <Adeon> | I think that's "let it crash" |
2021-12-02 04:58:59 +0100 | <dsal> | Yeah, that's basically right. |
2021-12-02 04:59:05 +0100 | <hololeap> | I thought that since Either was an "effect" of sorts, you could stack them a little bit less painfuly |
2021-12-02 04:59:18 +0100 | <EvanR> | async haskell library gives you similar to erlang stuff, but that's IO oriented |
2021-12-02 04:59:54 +0100 | <dsal> | Yeah, you can sneak an async exception across an Asycn boundary. |
2021-12-02 05:00:10 +0100 | <Axman6> | I'm not sure I agree Async gives you that. cloud haskell aimed to give you that, but async is quite a different paraidgm from Erlang |
2021-12-02 05:00:21 +0100 | <hololeap> | and compose things so that you could combine (Either e a) and (Either f b) into (Either' '[e,f] (a,b)), at least that's what I hoped :) |
2021-12-02 05:00:29 +0100 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
2021-12-02 05:00:49 +0100 | <EvanR> | I'm sure were talking about two different things now with cloud haskell |
2021-12-02 05:01:16 +0100 | <Axman6> | I probably need to read more of the discussion |
2021-12-02 05:01:25 +0100 | <EvanR> | this is the exceptions discussion xD |
2021-12-02 05:01:30 +0100 | <dsal> | Axman6: I used async that way in a limited fashion. Run an effect with this input and give me a constrained result. If you crash then I record that. If *I* crash dealing with you, then I record that as well. |
2021-12-02 05:01:30 +0100 | <EvanR> | and how to or not to deal with them |
2021-12-02 05:07:18 +0100 | azimut_ | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2021-12-02 05:07:37 +0100 | on^ | (~on@68.101.58.90) |
2021-12-02 05:07:46 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2021-12-02 05:11:58 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 05:13:38 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 05:14:22 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 05:23:53 +0100 | gehmehgeh_ | (~user@user/gehmehgeh) |
2021-12-02 05:25:33 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Ping timeout: 276 seconds) |
2021-12-02 05:29:25 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:2978:bff0:cda7:8559) (Remote host closed the connection) |
2021-12-02 05:30:22 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 05:31:23 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 05:33:00 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 05:33:33 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 05:35:37 +0100 | renzhi | (~xp@2607:fa49:6500:b100::5cef) (Ping timeout: 268 seconds) |
2021-12-02 05:37:13 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:b0e6:1646:3027:d258) |
2021-12-02 05:40:01 +0100 | n8ess163 | (~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-12-02 05:40:40 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2021-12-02 05:45:44 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 05:48:24 +0100 | <EvanR> | wait is this an ultimate irony |
2021-12-02 05:48:27 +0100 | <EvanR> | No instance for (PrintfArg Foreign.C.Types.CInt) |
2021-12-02 05:48:35 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-12-02 05:48:48 +0100 | <EvanR> | arising from printf "whatever = %d\n" myCInt |
2021-12-02 05:54:09 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-12-02 05:55:30 +0100 | <monochrom> | Oh haha I see. |
2021-12-02 05:55:45 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 265 seconds) |
2021-12-02 05:55:46 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 05:56:30 +0100 | Bitters | (~Bitters@37.19.211.58) |
2021-12-02 05:57:38 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 05:57:54 +0100 | <Bitters> | not too alive for 705 |
2021-12-02 05:58:24 +0100 | Bitters | (~Bitters@37.19.211.58) () |
2021-12-02 06:02:31 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:b0e6:1646:3027:d258) (Ping timeout: 252 seconds) |
2021-12-02 06:04:52 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection) |
2021-12-02 06:05:04 +0100 | <Axman6> | omg, where did lambdabot go D: |
2021-12-02 06:05:26 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2021-12-02 06:05:32 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) (Quit: ...) |
2021-12-02 06:06:17 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) |
2021-12-02 06:06:44 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) |
2021-12-02 06:06:44 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
2021-12-02 06:06:44 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2021-12-02 06:08:19 +0100 | on^ | (~on@68.101.58.90) (Remote host closed the connection) |
2021-12-02 06:10:07 +0100 | <jackdk> | @botsnack welcome back |
2021-12-02 06:10:07 +0100 | <lambdabot> | :) |
2021-12-02 06:13:08 +0100 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-12-02 06:13:14 +0100 | dlew^ | (~dlew@68.101.58.90) |
2021-12-02 06:13:26 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 06:13:46 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:e5c8:bb31:7afd:efa5) |
2021-12-02 06:14:50 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2021-12-02 06:15:11 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2021-12-02 06:17:55 +0100 | dispater | (~dispater@user/brprice) (Ping timeout: 252 seconds) |
2021-12-02 06:19:59 +0100 | pyook | (~puke@user/puke) |
2021-12-02 06:19:59 +0100 | puke | Guest8593 |
2021-12-02 06:19:59 +0100 | Guest8593 | (~puke@user/puke) (Killed (strontium.libera.chat (Nickname regained by services))) |
2021-12-02 06:19:59 +0100 | pyook | puke |
2021-12-02 06:21:25 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Ping timeout: 256 seconds) |
2021-12-02 06:21:47 +0100 | Jing_ | (~hedgehog@2604:a840:3::1061) |
2021-12-02 06:22:41 +0100 | Jing | (~hedgehog@115.207.46.97) (Ping timeout: 252 seconds) |
2021-12-02 06:22:45 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 276 seconds) |
2021-12-02 06:22:47 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) |
2021-12-02 06:22:47 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
2021-12-02 06:22:47 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2021-12-02 06:23:52 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2021-12-02 06:24:03 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 06:25:14 +0100 | curiousgay | (~curiousga@77-120-141-90.kha.volia.net) |
2021-12-02 06:28:13 +0100 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
2021-12-02 06:31:06 +0100 | mario | (~mario@31.147.205.13) |
2021-12-02 06:31:31 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds) |
2021-12-02 06:32:06 +0100 | mario | (~mario@31.147.205.13) (Remote host closed the connection) |
2021-12-02 06:32:21 +0100 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-12-02 06:33:08 +0100 | dispater | (~dispater@user/brprice) (Ping timeout: 252 seconds) |
2021-12-02 06:33:10 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
2021-12-02 06:33:57 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-12-02 06:34:58 +0100 | TranquilEcho | (~grom@user/tranquilecho) (Quit: WeeChat 2.8) |
2021-12-02 06:35:42 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 06:36:02 +0100 | orcus | (~orcus@user/brprice) |
2021-12-02 06:40:11 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 06:42:59 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-12-02 06:45:27 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) |
2021-12-02 06:47:33 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 256 seconds) |
2021-12-02 06:49:51 +0100 | gehmehgeh_ | gehmehgeh |
2021-12-02 06:54:41 +0100 | <EvanR> | oh wow |
2021-12-02 06:55:24 +0100 | <EvanR> | I got screwed on AoC by getting foldr and foldl backwards, it doesn't make a difference on the first part, but does on the second part and I was very confused |
2021-12-02 06:56:16 +0100 | <dsal> | Yeah, that does sound confusing. |
2021-12-02 06:56:41 +0100 | <dsal> | I like foldr in general, but I don't think about order much. |
2021-12-02 06:58:39 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 06:58:49 +0100 | <EvanR> | years of people in this channel challenging every possible interpretation of foldl and foldr xD |
2021-12-02 07:00:20 +0100 | <EvanR> | in the end I always just bring up the @src for them |
2021-12-02 07:05:41 +0100 | yauhsien | (~yauhsien@2402:7500:5e7:7cb:e5c8:bb31:7afd:efa5) (Remote host closed the connection) |
2021-12-02 07:06:47 +0100 | <int-e> | > foldr (flip (.) . flip f) id [b,c,d] a |
2021-12-02 07:06:48 +0100 | <lambdabot> | f (f (f a b) c) d |
2021-12-02 07:08:16 +0100 | <EvanR> | that's the one I thought was right |
2021-12-02 07:08:53 +0100 | <int-e> | > foldl f a [b,c,d] |
2021-12-02 07:08:55 +0100 | <lambdabot> | f (f (f a b) c) d |
2021-12-02 07:08:58 +0100 | <EvanR> | lol |
2021-12-02 07:09:10 +0100 | <EvanR> | also that one |
2021-12-02 07:09:29 +0100 | <c_wraith> | foldl is specifically for working with an accumulator you update with each element of the list |
2021-12-02 07:09:59 +0100 | <int-e> | explicit recursion exists btw ;-) |
2021-12-02 07:10:14 +0100 | <c_wraith> | foldr is for... anything else that traverses the list exactly once |
2021-12-02 07:10:36 +0100 | <iqubic> | If an AoC problem is asking me to process a list of commands in order, I usually parse the data into some data structure and then foldl' of them. |
2021-12-02 07:11:20 +0100 | <EvanR> | yeah i use foldr a lot for haskelly stuff |
2021-12-02 07:11:38 +0100 | <EvanR> | or accumulating but i guess it's usually commutative |
2021-12-02 07:11:52 +0100 | <c_wraith> | I wouldn't use foldr for accumulating. you can blow the stack |
2021-12-02 07:11:55 +0100 | <dsal> | I like fold when I can use it or foldMap. foldr for more general, and foldl when I'm doing stupid AoC stuff that cares about order. |
2021-12-02 07:12:16 +0100 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-12-02 07:12:20 +0100 | <iqubic> | I used foldMap for part 1 of today's problem. |
2021-12-02 07:12:25 +0100 | <c_wraith> | like... foldr (+) is *really* bad for stack use |
2021-12-02 07:12:30 +0100 | <EvanR> | no not + |
2021-12-02 07:12:34 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 07:12:46 +0100 | <dsal> | None of these problems are big enough for it to make a big difference. |
2021-12-02 07:13:53 +0100 | <dsal> | iqubic: It'd be fairly straightforward to do it with `fold`. Or just like, in the parser. |
2021-12-02 07:14:40 +0100 | <EvanR> | I will do 90 laps around the yard and return to internalizing the meaning of folds and their seemingly arbitrary names xD |
2021-12-02 07:15:52 +0100 | <c_wraith> | the names are arbitrary, but the function difference is pretty huge. |
2021-12-02 07:15:57 +0100 | <EvanR> | yep |
2021-12-02 07:17:30 +0100 | chomwitt | (~chomwitt@2a02:587:dc0d:6d00:12c3:7bff:fe6d:d374) |
2021-12-02 07:18:03 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds) |
2021-12-02 07:18:11 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 07:18:24 +0100 | <int-e> | > foldr f a [b,c,d] |
2021-12-02 07:18:26 +0100 | <lambdabot> | f b (f c (f d a)) |
2021-12-02 07:18:43 +0100 | <iqubic> | Is foldl' (+) bad for memory usage? |
2021-12-02 07:18:53 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 07:18:57 +0100 | <opqdonut> | iqubic: no it's great |
2021-12-02 07:19:07 +0100 | <dsal> | Just use `sum` |
2021-12-02 07:19:13 +0100 | <dsal> | No need to reinvent `sum` |
2021-12-02 07:19:19 +0100 | <opqdonut> | yeah that's better for that exact invocation |
2021-12-02 07:20:00 +0100 | <iqubic> | sum = getSum . foldMap Sum |
2021-12-02 07:20:12 +0100 | <opqdonut> | however for tracking complex state, explicit recursion with bang patterns is both nicer to write and better performing than foldl/foldl' on tuples |
2021-12-02 07:20:25 +0100 | <iqubic> | I didn't know that. |
2021-12-02 07:20:34 +0100 | <iqubic> | But for Advent Of Code, I don't really care. |
2021-12-02 07:20:38 +0100 | <opqdonut> | yeah |
2021-12-02 07:21:38 +0100 | <int-e> | iqubic: ah but that's misleading, since it's a class member of Foldable (and even if it were not there'd surely be rewrite rules for it) |
2021-12-02 07:22:49 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:24:38 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 07:24:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:24:59 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 07:25:15 +0100 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-12-02 07:25:15 +0100 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
2021-12-02 07:25:35 +0100 | orcus | (~orcus@user/brprice) |
2021-12-02 07:25:53 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 07:26:03 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 07:27:10 +0100 | <dsal> | iqubic: Fold it in the parser! :) https://www.irccloud.com/pastebin/L4wAGlf6/fold.hs |
2021-12-02 07:27:19 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 07:27:37 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:27:56 +0100 | <dsal> | iqubic: Also, that's an older implementation. The latest base does it differently. |
2021-12-02 07:28:03 +0100 | <iqubic> | Really? |
2021-12-02 07:29:16 +0100 | <dsal> | Data.List has `sum = foldl' (+) 0` but Data.Foldable has `sum = getSum #. foldMap' Sum` |
2021-12-02 07:29:39 +0100 | <iqubic> | Right. |
2021-12-02 07:29:47 +0100 | <iqubic> | But #. is just ., right |
2021-12-02 07:29:55 +0100 | <dsal> | All the people who told you never to use `sum` made you write a bunch of code for no good reason. |
2021-12-02 07:30:03 +0100 | <dsal> | foldMap' is the more significant change. |
2021-12-02 07:30:25 +0100 | <dsal> | (#.) _f = coerce |
2021-12-02 07:30:33 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 256 seconds) |
2021-12-02 07:31:59 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 07:32:18 +0100 | <opqdonut> | oh wow that's an absolutely genius definition |
2021-12-02 07:33:58 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 07:34:16 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:34:18 +0100 | mniip_ | (mniip@libera/staff/mniip) |
2021-12-02 07:34:45 +0100 | <dsal> | It's pretty neat. Kind of a weird thing where you write code that doesn't actually run but leave it there to be read. heh |
2021-12-02 07:35:24 +0100 | mniip | (mniip@libera/staff/mniip) (Quit: This page is intentionally left blank.) |
2021-12-02 07:35:43 +0100 | mniip_ | mniip |
2021-12-02 07:36:51 +0100 | <int-e> | crucially, (#.) has a type signature; the `getSum` still matters for type inference |
2021-12-02 07:37:02 +0100 | <opqdonut> | yeah |
2021-12-02 07:37:58 +0100 | ubert | (~Thunderbi@p200300ecdf0ba290e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection) |
2021-12-02 07:37:58 +0100 | ub | ubert |
2021-12-02 07:38:01 +0100 | ubert1 | (~Thunderbi@p200300ecdf0ba290e6b318fffe838f33.dip0.t-ipconnect.de) |
2021-12-02 07:40:47 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 07:42:51 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 07:43:09 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:44:57 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 07:45:09 +0100 | <EvanR> | in retrospect, I'm glad it's foldl so I can use foldl for something xD |
2021-12-02 07:45:28 +0100 | <EvanR> | I know it's bad laziness, but doesn't matter in this case |
2021-12-02 07:47:06 +0100 | <iqubic> | foldl' is better than foldl. Period. |
2021-12-02 07:47:33 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 07:47:39 +0100 | <opqdonut> | I've been kinda assuming that for something like `foldl (\(s,n) x -> (s+x,n+1)) (0,0) ...` strictness analysis will save my bacon |
2021-12-02 07:47:43 +0100 | <opqdonut> | but I haven't actually verified that |
2021-12-02 07:47:56 +0100 | <opqdonut> | (might still write foldl', but it wouldn't matter really) |
2021-12-02 07:48:06 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-12-02 07:48:19 +0100 | <opqdonut> | maybe I'll check the core for fun |
2021-12-02 07:48:40 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 07:50:43 +0100 | <opqdonut> | yeah, -ddump-simpl and I see explicit recursion over an unboxed tuple |
2021-12-02 07:51:34 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:51:37 +0100 | <opqdonut> | no, explicit recursion with multiple arguments, just the return value is an unboxed tuple |
2021-12-02 07:52:34 +0100 | <EvanR> | foldl' makes no sense if you're implementing list reverse xD |
2021-12-02 07:53:15 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
2021-12-02 07:53:21 +0100 | <EvanR> | so yeah my solution contains foldl no prime and scary terrifying lazy readFile, it's great |
2021-12-02 07:53:40 +0100 | <EvanR> | how haskell should be |
2021-12-02 07:53:45 +0100 | <opqdonut> | :) |
2021-12-02 07:54:19 +0100 | <EvanR> | -ddump-simpl? |
2021-12-02 07:54:22 +0100 | <EvanR> | let me see |
2021-12-02 07:54:29 +0100 | <opqdonut> | yeah |
2021-12-02 07:55:04 +0100 | <opqdonut> | you need to squint a bit and ignore some verbosity, but otherwise GHC Core is pretty easy to read |
2021-12-02 07:55:20 +0100 | <iqubic> | EvanR: I see you like to live dangerously with foldl no prime. |
2021-12-02 07:55:37 +0100 | <opqdonut> | btw I had to specify -O to get the recursion, without it foldl wasn't even getting inlined |
2021-12-02 07:55:53 +0100 | <EvanR> | was about to say, it just calls foldl xD |
2021-12-02 07:57:43 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 07:58:02 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 07:58:09 +0100 | cheater | (~Username@user/cheater) (Quit: (BitchX) Terminated.) |
2021-12-02 08:01:13 +0100 | <EvanR> | with -O maybe I technically read it, but I have no idea what's going on xD |
2021-12-02 08:02:27 +0100 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-12-02 08:03:18 +0100 | <EvanR> | oh nice, I see it doing a recursion over my tuple |
2021-12-02 08:04:03 +0100 | <EvanR> | foldl ftw |
2021-12-02 08:05:40 +0100 | bollu | (uid233390@id-233390.helmsley.irccloud.com) |
2021-12-02 08:06:30 +0100 | michalz | (~michalz@185.246.204.33) |
2021-12-02 08:06:46 +0100 | <EvanR> | the results of the loop body are returned in an unboxed pair or unboxed triple, cool I guess |
2021-12-02 08:07:05 +0100 | <EvanR> | does that still require allocation |
2021-12-02 08:07:34 +0100 | <c_wraith> | not for the tuple |
2021-12-02 08:07:42 +0100 | <c_wraith> | but what you put inside it might |
2021-12-02 08:10:04 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:10:22 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:12:00 +0100 | <dsal> | I used foldl because I didn't want to import anything. |
2021-12-02 08:12:12 +0100 | acidsys | (~LSD@2.lsd.systems) (Excess Flood) |
2021-12-02 08:12:21 +0100 | neurocyte0132889 | (~neurocyte@45.128.181.202) |
2021-12-02 08:12:21 +0100 | neurocyte0132889 | (~neurocyte@45.128.181.202) (Changing host) |
2021-12-02 08:12:21 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-12-02 08:12:47 +0100 | acidsys | (~LSD@2.lsd.systems) |
2021-12-02 08:14:15 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-12-02 08:16:16 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-12-02 08:19:21 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 08:19:35 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:19:52 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:24:23 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 08:26:57 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 08:27:12 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-12-02 08:27:32 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ebd1:d304:8195:da29) |
2021-12-02 08:31:05 +0100 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
2021-12-02 08:31:49 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 08:32:25 +0100 | chele | (~chele@user/chele) |
2021-12-02 08:33:35 +0100 | siers | (~ij@user/ij) |
2021-12-02 08:35:15 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:36:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:37:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:38:09 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Read error: Connection reset by peer) |
2021-12-02 08:39:56 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:39:58 +0100 | deadmarshal | (~deadmarsh@104.223.98.144) |
2021-12-02 08:40:11 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:ec14:1667:941b:a8bf) (Ping timeout: 252 seconds) |
2021-12-02 08:40:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:40:42 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 08:40:59 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:6aa9:cc6d:b99a:ba9f) |
2021-12-02 08:43:14 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:43:32 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 08:45:08 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds) |
2021-12-02 08:45:29 +0100 | deadmarshal | (~deadmarsh@104.223.98.144) (Read error: Connection reset by peer) |
2021-12-02 08:49:19 +0100 | random-jellyfish | (~random-je@user/random-jellyfish) (Ping timeout: 256 seconds) |
2021-12-02 08:50:11 +0100 | Farzad | (~FarzadBek@37.98.111.153) |
2021-12-02 08:56:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 08:56:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:00:37 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:00:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:01:39 +0100 | jamestmartin | (~james@jtmar.me) |
2021-12-02 09:02:51 +0100 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) |
2021-12-02 09:03:27 +0100 | jstolarek | (~jstolarek@137.220.120.162) |
2021-12-02 09:04:38 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 09:07:52 +0100 | deadmarshal_ | (~deadmarsh@68.235.38.163) |
2021-12-02 09:08:33 +0100 | cosimone | (~user@93-44-186-55.ip98.fastwebnet.it) |
2021-12-02 09:09:09 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 252 seconds) |
2021-12-02 09:11:00 +0100 | shriekingnoise | (~shrieking@186.137.144.80) (Quit: Quit) |
2021-12-02 09:12:19 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-12-02 09:13:34 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-12-02 09:15:47 +0100 | vysn | (~vysn@user/vysn) |
2021-12-02 09:16:47 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 09:20:27 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:20:45 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:21:15 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
2021-12-02 09:21:37 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 09:24:25 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:24:42 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:26:22 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:26:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:28:21 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 09:32:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:33:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:33:35 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 09:34:02 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 09:34:50 +0100 | deadmarshal_ | (~deadmarsh@68.235.38.163) (Read error: Connection reset by peer) |
2021-12-02 09:38:07 +0100 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
2021-12-02 09:41:11 +0100 | curiousgay | (~curiousga@77-120-141-90.kha.volia.net) (Quit: Leaving) |
2021-12-02 09:43:41 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:43:59 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:45:34 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 09:46:45 +0100 | <mikko> | is there a better way to do what the readInstruction function does here? capitalizing strings just to appease the default Read feels icky https://github.com/Andriamanitra/adventofcode2021/blob/main/day02/solution.hs (advent of code day 2 spoilers) |
2021-12-02 09:48:09 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) |
2021-12-02 09:48:09 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) (Changing host) |
2021-12-02 09:48:09 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-12-02 09:48:14 +0100 | dschrempf | (~dominik@mobiledyn-62-240-134-39.mrsn.at) |
2021-12-02 09:49:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 09:50:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 09:50:27 +0100 | <mikko> | by better i mean something that doesn't require me explicitly write "forward" "up" "down" again when they're already known because of the data definition |
2021-12-02 09:51:21 +0100 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-12-02 09:51:28 +0100 | <dminuoso> | 15:51:04 merijn | boxscape: Yes, but you can never do that for an individual irrefutable pattern |
2021-12-02 09:52:33 +0100 | <dminuoso> | Many years ago there was an issue suggesting being able to selectively turn off warnings for a given region. Didn't take long until this was bikeshedded into "If at all, let's bake in some extremely generic diagnostics machinery into GHC rather than just wire it in for a select few diagnostics." |
2021-12-02 09:53:07 +0100 | <dminuoso> | Maybe that issue should be relooked at, realistically there's just a handful of warnings where this is even applicable. |
2021-12-02 09:53:57 +0100 | <dminuoso> | merijn: Btw, regarding your warning, was that triggered by a singleton data constructor match or a newtype match? |
2021-12-02 09:55:24 +0100 | <boxscape> | dminuoso: erm, shouldn't it not fire on either of those, since those wouldn't be incomplete patterns? |
2021-12-02 10:00:09 +0100 | anotherbruce[m] | (~anotherbr@2001:470:69fc:105::1:2548) (Quit: You have been kicked for being idle) |
2021-12-02 10:00:24 +0100 | <merijn> | dminuoso: Which warning? |
2021-12-02 10:00:37 +0100 | anotherbruce[m] | (~anotherbr@2001:470:69fc:105::1:2548) |
2021-12-02 10:01:30 +0100 | <merijn> | oh, yesterday. Neither |
2021-12-02 10:01:36 +0100 | <merijn> | It was an irrefutable match on Just |
2021-12-02 10:02:08 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:6aa9:cc6d:b99a:ba9f) (Ping timeout: 252 seconds) |
2021-12-02 10:03:11 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:5e3e:87f2:29ae:8612) |
2021-12-02 10:05:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:05:30 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:06:14 +0100 | alzgh | (~alzgh@user/alzgh) |
2021-12-02 10:06:50 +0100 | <dminuoso> | I wonder, is Lower Your Guards already fully implemented in GHC? |
2021-12-02 10:08:17 +0100 | Jing_ | (~hedgehog@2604:a840:3::1061) (Remote host closed the connection) |
2021-12-02 10:08:24 +0100 | <eyJhb> | Just tried installing haskell-mode for Emacs, and now I can't even type without much delay. I have disabled eldoc, lsp-mode, company-mode but still very sluggish (profiler - https://i.imgur.com/I0ib6Wu.png). Anyone else have had this issue? |
2021-12-02 10:08:48 +0100 | <dminuoso> | Oh boy |
2021-12-02 10:08:52 +0100 | Jing | (~hedgehog@115.207.46.97) |
2021-12-02 10:08:56 +0100 | <dminuoso> | I think it is mostly implemented |
2021-12-02 10:09:00 +0100 | <dminuoso> | We even have this dark primitive |
2021-12-02 10:09:02 +0100 | <dminuoso> | https://hackage.haskell.org/package/base-4.16.0.0/docs/GHC-Exts.html#v:considerAccessible |
2021-12-02 10:09:08 +0100 | <dminuoso> | % import GHC.Exts |
2021-12-02 10:09:08 +0100 | <yahb> | dminuoso: |
2021-12-02 10:09:12 +0100 | <dminuoso> | % :t considerAccessible |
2021-12-02 10:09:13 +0100 | <yahb> | dminuoso: ; <interactive>:1:1: error: Variable not in scope: considerAccessible |
2021-12-02 10:09:13 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2021-12-02 10:11:27 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:11:45 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:12:35 +0100 | dispater | (~dispater@user/brprice) (Ping timeout: 252 seconds) |
2021-12-02 10:12:35 +0100 | orcus | (~orcus@user/brprice) (Ping timeout: 252 seconds) |
2021-12-02 10:12:49 +0100 | orcus | (~orcus@user/brprice) |
2021-12-02 10:13:18 +0100 | dispater | (~dispater@user/brprice) |
2021-12-02 10:15:33 +0100 | nschoe | (~quassel@2a01:e0a:8e:a190:1242:6edc:4e6a:28bd) |
2021-12-02 10:17:36 +0100 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-12-02 10:17:36 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-12-02 10:17:39 +0100 | allbery_b | geekosaur |
2021-12-02 10:19:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:20:14 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:23:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:24:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:24:38 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 10:27:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:28:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:29:05 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
2021-12-02 10:31:37 +0100 | <tomsmeding> | dminuoso: it's even just defined as True |
2021-12-02 10:31:40 +0100 | <tomsmeding> | that's really dark |
2021-12-02 10:34:07 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:34:25 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:38:04 +0100 | Farzad | (~FarzadBek@37.98.111.153) (Remote host closed the connection) |
2021-12-02 10:38:21 +0100 | Farzad | (~FarzadBek@37.98.111.153) |
2021-12-02 10:43:58 +0100 | cfricke | (~cfricke@user/cfricke) |
2021-12-02 10:47:43 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 10:48:00 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 10:48:40 +0100 | acidjnk_new | (~acidjnk@p200300d0c7271e31dccc5136b6b31647.dip0.t-ipconnect.de) |
2021-12-02 10:50:50 +0100 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-12-02 10:51:58 +0100 | Guest|44 | (~Guest|44@cpc104774-belf12-2-0-cust670.2-1.cable.virginm.net) |
2021-12-02 10:52:25 +0100 | Guest|44 | (~Guest|44@cpc104774-belf12-2-0-cust670.2-1.cable.virginm.net) (Client Quit) |
2021-12-02 10:53:19 +0100 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-12-02 10:53:43 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-12-02 10:55:30 +0100 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.3) |
2021-12-02 10:58:17 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 10:58:25 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:41f2:b4d5:142e:946f) (Remote host closed the connection) |
2021-12-02 10:58:28 +0100 | bollu | (uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2021-12-02 11:02:26 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-12-02 11:02:45 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-12-02 11:03:07 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 11:04:40 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
2021-12-02 11:05:01 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-12-02 11:05:14 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-12-02 11:05:19 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
2021-12-02 11:06:32 +0100 | Lord_of_Life_ | Lord_of_Life |
2021-12-02 11:08:08 +0100 | <boxscape> | I just realized the hackage bot isn't here - has that been the case ever since the switch to libera? |
2021-12-02 11:08:23 +0100 | <sm> | I think so |
2021-12-02 11:08:25 +0100 | <merijn> | Even before then, I think |
2021-12-02 11:08:31 +0100 | <boxscape> | hm okay |
2021-12-02 11:09:49 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-12-02 11:11:16 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-12-02 11:13:14 +0100 | mmhat | (~mmh@55d45251.access.ecotel.net) |
2021-12-02 11:16:09 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-12-02 11:16:24 +0100 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-12-02 11:18:04 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 11:18:21 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 11:20:01 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 11:21:22 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 11:24:49 +0100 | vpan | (~0@212.117.1.172) |
2021-12-02 11:25:43 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 11:30:20 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 11:35:37 +0100 | kuribas | (~user@ptr-25vy0i85jcl6zvp0ziu.18120a2.ip6.access.telenet.be) |
2021-12-02 11:36:29 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 256 seconds) |
2021-12-02 11:38:27 +0100 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
2021-12-02 11:39:58 +0100 | ubert1 | (~Thunderbi@p200300ecdf0ba290e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection) |
2021-12-02 11:44:44 +0100 | jakalx | (~jakalx@base.jakalx.net) () |
2021-12-02 11:47:27 +0100 | jakzale | (6291399afa@2604:bf00:561:2000::1e4) |
2021-12-02 11:52:09 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 11:52:33 +0100 | mc47 | (~mc47@xmonad/TheMC47) |
2021-12-02 11:55:13 +0100 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-12-02 11:58:48 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) |
2021-12-02 12:03:19 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) (Ping timeout: 252 seconds) |
2021-12-02 12:07:12 +0100 | Codaraxis__ | (~Codaraxis@user/codaraxis) |
2021-12-02 12:08:24 +0100 | Codaraxis_ | (~Codaraxis@user/codaraxis) (Read error: Connection reset by peer) |
2021-12-02 12:12:08 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-12-02 12:13:16 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 12:16:43 +0100 | alzgh | (~alzgh@user/alzgh) (Ping timeout: 256 seconds) |
2021-12-02 12:18:04 +0100 | jgeerds | (~jgeerds@55d45b75.access.ecotel.net) |
2021-12-02 12:20:01 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2021-12-02 12:23:29 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 12:23:48 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 12:25:41 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:5e3e:87f2:29ae:8612) (Ping timeout: 252 seconds) |
2021-12-02 12:26:24 +0100 | xff0x | (~xff0x@port-92-193-253-16.dynamic.as20676.net) |
2021-12-02 12:29:11 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 256 seconds) |
2021-12-02 12:32:19 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 12:35:02 +0100 | jess | (~jess@libera/staff/jess) |
2021-12-02 12:38:17 +0100 | bliminse | (~bliminse@host86-162-147-196.range86-162.btcentralplus.com) |
2021-12-02 12:38:19 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 12:39:23 +0100 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Remote host closed the connection) |
2021-12-02 12:39:42 +0100 | Codaraxis_ | (~Codaraxis@user/codaraxis) |
2021-12-02 12:39:43 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 12:40:32 +0100 | max22- | (~maxime@2a01cb0883359800c40fd24ed5f88e1c.ipv6.abo.wanadoo.fr) |
2021-12-02 12:41:19 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 12:42:04 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 12:42:34 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Client Quit) |
2021-12-02 12:43:10 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 12:43:21 +0100 | Codaraxis__ | (~Codaraxis@user/codaraxis) (Ping timeout: 256 seconds) |
2021-12-02 12:44:01 +0100 | mvk | (~mvk@2607:fea8:5cc1:fa00::4702) (Ping timeout: 252 seconds) |
2021-12-02 12:46:29 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 12:46:36 +0100 | boxscape_ | (~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) |
2021-12-02 12:46:38 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 12:46:50 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Client Quit) |
2021-12-02 12:47:41 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds) |
2021-12-02 12:48:47 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds) |
2021-12-02 12:49:14 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-12-02 12:50:54 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 13:02:33 +0100 | <merijn> | hmmm |
2021-12-02 13:02:40 +0100 | <merijn> | Complicated PVP question :p |
2021-12-02 13:02:50 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 13:02:57 +0100 | <Hecate> | merijn: that is not answered by the FAQ? :p |
2021-12-02 13:03:08 +0100 | <merijn> | If you replace the type of a function with a type alias that refers to the same type, is that only a minor bump? |
2021-12-02 13:03:15 +0100 | <Hecate> | I don't miss the hackage bot, personally |
2021-12-02 13:03:21 +0100 | <Hecate> | merijn: yes |
2021-12-02 13:03:26 +0100 | <Hecate> | types are transparent |
2021-12-02 13:03:34 +0100 | <Hecate> | as such, they don't cause compile-time breakage |
2021-12-02 13:03:48 +0100 | <Hecate> | and modify only half of the GHC errors :P |
2021-12-02 13:04:05 +0100 | <Hecate> | that being said unless it's a very complex type I would advise against a type alias |
2021-12-02 13:05:16 +0100 | <merijn> | Hecate: I need one to work across GHC with incompatible definitions >.> |
2021-12-02 13:05:58 +0100 | <Hecate> | ah so you wish to unify those incompatible definitions by setting the content of the alias based on CPP? |
2021-12-02 13:06:01 +0100 | <Hecate> | hmm |
2021-12-02 13:06:03 +0100 | <Hecate> | I'd use a newtype tbh |
2021-12-02 13:06:04 +0100 | <Hecate> | :( |
2021-12-02 13:06:28 +0100 | <merijn> | Hecate: Well, I don't wish that. But that's what the compat library gives me :p |
2021-12-02 13:06:44 +0100 | <merijn> | newtype doesn't work, because that won't typecheck |
2021-12-02 13:07:31 +0100 | <Hecate> | merijn: can I see the code or is it proprietary? |
2021-12-02 13:08:10 +0100 | <merijn> | Hecate: It's about typed TH splices, my code is TH and needs to be accepted by TH splices. But the types of those changed in 9.0, so a newtype can't ever solve/help :) |
2021-12-02 13:08:27 +0100 | <Hecate> | ok |
2021-12-02 13:08:32 +0100 | <Hecate> | yeah go with it |
2021-12-02 13:08:39 +0100 | <Hecate> | PVP is about compilation breakage |
2021-12-02 13:11:02 +0100 | <merijn> | We'll see what the CI says :) |
2021-12-02 13:14:06 +0100 | fjmorazan | (~quassel@user/fjmorazan) (Quit: fjmorazan) |
2021-12-02 13:14:44 +0100 | fjmorazan | (~quassel@user/fjmorazan) |
2021-12-02 13:17:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 13:18:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 13:18:29 +0100 | jgeerds | (~jgeerds@55d45b75.access.ecotel.net) (Ping timeout: 252 seconds) |
2021-12-02 13:20:09 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 13:20:27 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 13:21:10 +0100 | unyu | (~pyon@user/pyon) |
2021-12-02 13:21:31 +0100 | pc__ | (~pc@41.69.129.98) |
2021-12-02 13:22:40 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 13:22:45 +0100 | pc__ | (~pc@41.69.129.98) (K-Lined) |
2021-12-02 13:26:34 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 13:26:52 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 13:27:33 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 13:31:03 +0100 | waleee | (~waleee@h-82-196-111-63.NA.cust.bahnhof.se) |
2021-12-02 13:37:11 +0100 | waleee | (~waleee@h-82-196-111-63.NA.cust.bahnhof.se) (Ping timeout: 252 seconds) |
2021-12-02 13:38:33 +0100 | <albet70> | why Eq remove /=? what's the benefit? |
2021-12-02 13:39:04 +0100 | <Franciman> | why? |
2021-12-02 13:39:27 +0100 | Megant | (megant@user/megant) (Ping timeout: 256 seconds) |
2021-12-02 13:39:46 +0100 | <geekosaur> | that question is why there are screaming fits thrown over it |
2021-12-02 13:39:54 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 13:40:03 +0100 | <geekosaur> | about the only real benefit is that a 1-entry dictionary can easily be optimized away |
2021-12-02 13:40:05 +0100 | lbseale | (~ep1ctetus@user/ep1ctetus) |
2021-12-02 13:40:23 +0100 | <arahael> | Of all the breakages I had moving to ghc 9.2.1, /= wasn't one of them - not one of the major ones anyway. |
2021-12-02 13:41:05 +0100 | Megant | (megant@user/megant) |
2021-12-02 13:41:33 +0100 | <boxscape> | /= is still part of Eq in 9.2.1. |
2021-12-02 13:42:01 +0100 | dlew^ | (~dlew@68.101.58.90) (Remote host closed the connection) |
2021-12-02 13:42:17 +0100 | <kritzefitz> | albet70: https://github.com/haskell/core-libraries-committee/issues/3 list quite understandable pros and cons. I doubt you will find any enlightenment here, that isn't already listed there. |
2021-12-02 13:42:35 +0100 | <boxscape> | but all the breakage it will cause was already identified in the proposal (not that much, since usually people just Eq and otherwise use the default definition of (/=)) |
2021-12-02 13:43:09 +0100 | <hpc> | they could at least have started with the numeric hierarchy, there's sooooooo much duplication there |
2021-12-02 13:43:17 +0100 | <merijn> | boxscape: How about we benchmark and demonstrate it's actually worth it before breaking shit? |
2021-12-02 13:43:37 +0100 | <merijn> | boxscape: Right now all we have is a hypothetical optimisation that we're not sure will actually benefit anyone |
2021-12-02 13:43:41 +0100 | <boxscape> | merijn: I don't really have an opinion on the change |
2021-12-02 13:43:54 +0100 | <merijn> | hpc: Please no >.> |
2021-12-02 13:44:19 +0100 | <merijn> | I dislike the Num hierarchy, but any alternatives I've seen so far are all far less practical |
2021-12-02 13:44:26 +0100 | <hpc> | merijn: at least then the proposal wouldn't be borderline cosmetic :P |
2021-12-02 13:44:52 +0100 | <merijn> | I really hate the amount of superficial cosmetic/syntactical fiddling in recent years |
2021-12-02 13:45:42 +0100 | <merijn> | Wish I could nuke it from orbit, together with all the recent record extensions (except for NoFieldSelectors, that one is Actually Good (TM)) |
2021-12-02 13:46:10 +0100 | <hpc> | what we need is a proposal to make everyone unhappy |
2021-12-02 13:46:18 +0100 | <hpc> | move (/=) out of Eq, and replace it with (!=) |
2021-12-02 13:46:26 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-12-02 13:46:37 +0100 | <boxscape> | move (==) out of Eq, too, while we're at it |
2021-12-02 13:46:46 +0100 | <hpc> | yes |
2021-12-02 13:46:55 +0100 | <hpc> | all our equality comparisons are typesafe so it should really be (===) |
2021-12-02 13:46:58 +0100 | <kuribas> | merijn: hey, I like recordWildCards, duplicateRecordFields, namedFieldPuns, etc... |
2021-12-02 13:47:05 +0100 | <merijn> | Proposal to replace == with unsafePtrEquality |
2021-12-02 13:47:14 +0100 | <merijn> | kuribas: I said *recent* record extensions |
2021-12-02 13:47:24 +0100 | <kuribas> | merijn: which ones? |
2021-12-02 13:47:27 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 252 seconds) |
2021-12-02 13:47:30 +0100 | <merijn> | kuribas: RecordWildCards and NamedFieldPuns are ancient |
2021-12-02 13:47:35 +0100 | <kuribas> | ah :) |
2021-12-02 13:47:38 +0100 | <hpc> | block arguments? |
2021-12-02 13:47:47 +0100 | <merijn> | Do you even need DuplicateRecordFields with NoFieldSelectors? |
2021-12-02 13:47:50 +0100 | <merijn> | hpc: Also bad |
2021-12-02 13:48:08 +0100 | [_] | [itchyjunk] |
2021-12-02 13:48:19 +0100 | <merijn> | hpc: "block arguments" is in the category like postfix qualified in imports |
2021-12-02 13:48:22 +0100 | <boxscape> | % :set -XNoDuplicateRecordFields -XNoFieldSelectors |
2021-12-02 13:48:23 +0100 | <yahb> | boxscape: Some flags have not been recognized: -XNoFieldSelectors |
2021-12-02 13:48:31 +0100 | <boxscape> | :( |
2021-12-02 13:48:32 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-12-02 13:48:36 +0100 | <merijn> | hpc: "Woulda been good if we had come up with it earlier and put it in initially" |
2021-12-02 13:48:52 +0100 | <merijn> | hpc: But not worth the gratuitous backwards incompat for what they provide |
2021-12-02 13:49:08 +0100 | <hpc> | still, it's on the way to becoming default enabled when we finally standardize haskell 2077 |
2021-12-02 13:49:14 +0100 | <merijn> | I find reading code using block arguments really hard too |
2021-12-02 13:49:30 +0100 | <merijn> | So, the more I see it, I'm actually more leaning towards "actually bad if we invented it earlier" |
2021-12-02 13:49:51 +0100 | <merijn> | boxscape: NoFieldSelectors is only 9.0 or 9.2, I think? |
2021-12-02 13:50:01 +0100 | <geekosaur> | 9.2 |
2021-12-02 13:50:26 +0100 | <albet70> | "hpc :all our equality comparisons are typesafe so it should really be (===)", how about to introduce javascript's holy trinity? haha |
2021-12-02 13:50:45 +0100 | <merijn> | albet70: See acme-php |
2021-12-02 13:50:48 +0100 | <merijn> | @hackage acme-php |
2021-12-02 13:50:48 +0100 | <lambdabot> | https://hackage.haskell.org/package/acme-php |
2021-12-02 13:51:06 +0100 | <boxscape> | % GHC.SysTools.BaseDir.findTopDir Nothing |
2021-12-02 13:51:06 +0100 | <yahb> | boxscape: "/srv/sandbox/root/usr/lib/ghc-9.0.1/lib" |
2021-12-02 13:51:12 +0100 | <hpc> | i am accepting PRs on acme-php if you want to add it btw :D |
2021-12-02 13:52:02 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 252 seconds) |
2021-12-02 13:52:08 +0100 | <albet70> | "🟢 merijn :albet70: See acme-php", do u like php better than js? :) |
2021-12-02 13:52:13 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 13:53:36 +0100 | <albet70> | now I think python is more powerful, it can return anything I want everywhere |
2021-12-02 13:54:26 +0100 | <boxscape> | so can haskell if you use Dynamic |
2021-12-02 13:54:47 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 13:55:12 +0100 | __monty__ | (~toonn@user/toonn) |
2021-12-02 13:55:26 +0100 | <hpc> | maybe it's time for acme-haskell27 |
2021-12-02 13:56:33 +0100 | quintasan | (~quassel@quintasan.pl) (Quit: quintasan) |
2021-12-02 13:56:43 +0100 | quintasan | (~quassel@quintasan.pl) |
2021-12-02 13:59:11 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
2021-12-02 14:00:02 +0100 | gabriel_sevecek | (~gabriel@188-167-229-200.dynamic.chello.sk) |
2021-12-02 14:02:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:02:56 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:04:36 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:04:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:05:39 +0100 | max22- | (~maxime@2a01cb0883359800c40fd24ed5f88e1c.ipv6.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
2021-12-02 14:06:02 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 14:07:20 +0100 | <kuribas> | You already can return anything everywhere. You just need to give it the right type :) |
2021-12-02 14:07:50 +0100 | <merijn> | unsafeCoerce all the things :p |
2021-12-02 14:11:09 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:11:27 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:13:07 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:13:25 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:15:05 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:15:23 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:21:21 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:21:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:22:19 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-12-02 14:27:35 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:27:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:31:33 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:31:51 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:33:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:33:49 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:37:01 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-12-02 14:42:41 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:42:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:44:45 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 14:45:03 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 14:46:29 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-12-02 14:47:35 +0100 | shriekingnoise | (~shrieking@186.137.144.80) |
2021-12-02 14:47:49 +0100 | <merijn> | Finally getting around to looking at some PRs people made to my code and I don't understand why people always feel compelled to fix things that aren't broken... |
2021-12-02 14:48:43 +0100 | <Rembane> | Which is the worst one so far? |
2021-12-02 14:48:45 +0100 | dschrempf | (~dominik@mobiledyn-62-240-134-39.mrsn.at) (Quit: WeeChat 3.3) |
2021-12-02 14:48:57 +0100 | <merijn> | Literally needed to add 6 lines of language pragmas to replace my lambda + case in LambdaCase and replacing all uses of liftM with fmap |
2021-12-02 14:49:38 +0100 | <merijn> | Which proceeds to break code that's perfectally functional on everything since, essentially GHC 6.10 to something that only works with like 8.x+ >.> |
2021-12-02 14:50:17 +0100 | <merijn> | Like, I'm not deadset on supporting stupid old GHCs, but why break it if it's not necessary for whatever feature you wanna add? |
2021-12-02 14:50:21 +0100 | benin | (~benin@183.82.179.164) |
2021-12-02 14:50:37 +0100 | <Rembane> | Wow, that's an interesting decision by the person who submitted the PR |
2021-12-02 14:50:40 +0100 | <maerwald> | show me how you install GHC 6.10 on a modern machine |
2021-12-02 14:51:32 +0100 | <merijn> | maerwald: My point is: why touch a whole bunch of code that isn't even close to the code you're adding/changing only to make it gratuitously backwards incompatible |
2021-12-02 14:51:49 +0100 | <maerwald> | to force people to upgrade their damn GHCs :p |
2021-12-02 14:52:18 +0100 | <merijn> | It's just churn unrelated to the actual change in various commits |
2021-12-02 14:52:58 +0100 | <maerwald> | I hate it when people nitpick on my PRs and tell me it doesn't work with GHC-not-even-installable... those people can use older hackage state |
2021-12-02 14:53:18 +0100 | <maerwald> | or just use stack |
2021-12-02 14:54:05 +0100 | <maerwald> | well... the solution is easy: ask them to split their commits properly and just remove the stuff that doesn't add anything |
2021-12-02 14:54:11 +0100 | <maerwald> | they won't even notice you removed it |
2021-12-02 14:54:37 +0100 | <merijn> | maerwald: Well, that's part of the problem too. People having shitty commit hygiene |
2021-12-02 14:54:45 +0100 | <maerwald> | then you pretend the merge commit swallowed it |
2021-12-02 14:56:13 +0100 | <merijn> | Even if people had proper commit hygiene, github PRs suck. WTB mainstream patch based VCS >.> |
2021-12-02 14:57:33 +0100 | <maerwald> | why do they suck? |
2021-12-02 14:58:44 +0100 | <merijn> | maerwald: Nearly impossible to review individual commits |
2021-12-02 14:58:57 +0100 | <merijn> | The only overview/review possibility they give is "everything in the branch" |
2021-12-02 14:59:02 +0100 | <maerwald> | how so? you can comment on individual commits |
2021-12-02 14:59:15 +0100 | <maerwald> | and I think these comments now show up in the PR even |
2021-12-02 14:59:33 +0100 | <geekosaur> | they do but you can't e.g. reject an individual commit |
2021-12-02 14:59:42 +0100 | <maerwald> | well, that's obvious |
2021-12-02 14:59:43 +0100 | <geekosaur> | without rejecting the whole PR |
2021-12-02 15:00:05 +0100 | <maerwald> | because github has now way of knowing how you want to rebase |
2021-12-02 15:00:26 +0100 | <maerwald> | it may not even work |
2021-12-02 15:00:42 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ebd1:d304:8195:da29) (Quit: WeeChat 2.8) |
2021-12-02 15:01:31 +0100 | <merijn> | maerwald: tbh, I can't figure out how to comment on individual commits either |
2021-12-02 15:01:56 +0100 | <geekosaur> | hm, actually that's a good point. you can't comment on *commits*, y6ou comment on individual *diffs* |
2021-12-02 15:02:15 +0100 | <maerwald> | merijn: I just did https://github.com/haskell/haskell-language-server/pull/2420 |
2021-12-02 15:02:50 +0100 | <merijn> | maerwald: That's just part of the final diff AFAICT? |
2021-12-02 15:03:23 +0100 | <maerwald> | I commented on the commit |
2021-12-02 15:03:58 +0100 | <maerwald> | and github fixes the link to point to those |
2021-12-02 15:04:03 +0100 | <merijn> | maerwald: If I click on the corresponding view changes I get taken to the global diff |
2021-12-02 15:04:18 +0100 | <merijn> | And I don't see a link to the specific commit or an indication which commit you commented on? |
2021-12-02 15:04:20 +0100 | <maerwald> | merijn: nope |
2021-12-02 15:04:22 +0100 | <maerwald> | not true |
2021-12-02 15:04:38 +0100 | <maerwald> | you're not looking hard enough |
2021-12-02 15:04:56 +0100 | <maerwald> | github even has a drop-down showing you're only looking at a specific commit of the PR |
2021-12-02 15:04:59 +0100 | <maerwald> | everything is there |
2021-12-02 15:05:05 +0100 | <merijn> | well, the fact that I spend 30s starting at your comment and can't figure out how it relates to a commit is already pretty clear evidence the UX is shit |
2021-12-02 15:05:26 +0100 | <maerwald> | https://imgur.com/FykkqhE.png |
2021-12-02 15:05:41 +0100 | <maerwald> | looks pretty intuitive to me |
2021-12-02 15:05:53 +0100 | <merijn> | If I click the "View Changes" button from the PR I get taken to "Changes from all commits" |
2021-12-02 15:05:54 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 15:06:05 +0100 | <maerwald> | because I commented on the last commit |
2021-12-02 15:06:15 +0100 | <merijn> | So I'm not sure how you got there from the PR comments |
2021-12-02 15:06:41 +0100 | <maerwald> | https://github.com/haskell/haskell-language-server/pull/2420/files/5b869fd8087e1d2a6636c3ce183a6cb… |
2021-12-02 15:06:50 +0100 | <maerwald> | you're really trying hard not to get it :p |
2021-12-02 15:06:52 +0100 | <merijn> | Anyway, this is doing the opposite of convincing me the github UI for reviews isn't shit |
2021-12-02 15:07:11 +0100 | <maerwald> | CHANGES FROM 1 COMMIT |
2021-12-02 15:07:17 +0100 | <merijn> | maerwald: I literally went to the PR, looked at the diff you commented my name and clicked on "View Changes" |
2021-12-02 15:07:34 +0100 | <maerwald> | I made another comment from a different commit |
2021-12-02 15:07:45 +0100 | <maerwald> | at this point I'm convinced you're not trying :p |
2021-12-02 15:09:40 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:b4e0:9d38:46ba:cc41) |
2021-12-02 15:10:53 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-12-02 15:11:17 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 15:12:01 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 15:12:35 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 15:16:19 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 15:16:20 +0100 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-12-02 15:16:37 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 15:16:38 +0100 | <boxscape> | My favorite controversial use of BlockArguments: Use it on non-monadic expressions to give a function one argument per line https://paste.tomsmeding.com/b2zy3Jw0 |
2021-12-02 15:17:08 +0100 | <boxscape> | s/of/of `do` with |
2021-12-02 15:17:45 +0100 | <boxscape> | (also the paste is missing a `]` at the end) |
2021-12-02 15:20:07 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 15:24:55 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 256 seconds) |
2021-12-02 15:25:21 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-12-02 15:26:43 +0100 | <merijn> | Thanks, I hate it |
2021-12-02 15:26:47 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 15:27:12 +0100 | sprout_ | (~quassel@2a02:a467:ccd6:1:54db:f79f:90dc:3ee5) |
2021-12-02 15:29:21 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 15:29:26 +0100 | <boxscape> | I thought you would >:) |
2021-12-02 15:29:38 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 15:30:42 +0100 | sprout | (~quassel@2a02:a467:ccd6:1:14f6:792c:9624:6b14) (Ping timeout: 268 seconds) |
2021-12-02 15:31:55 +0100 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2021-12-02 15:34:20 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 252 seconds) |
2021-12-02 15:35:53 +0100 | Farzad | (~FarzadBek@37.98.111.153) (Quit: Leaving) |
2021-12-02 15:39:20 +0100 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 268 seconds) |
2021-12-02 15:40:10 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2021-12-02 15:40:14 +0100 | jlamothe | (~jlamothe@198.251.61.229) (Quit: leaving) |
2021-12-02 15:41:40 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 15:42:58 +0100 | dibblego | (~dibblego@122-199-1-30.ip4.superloop.com) |
2021-12-02 15:42:58 +0100 | dibblego | (~dibblego@122-199-1-30.ip4.superloop.com) (Changing host) |
2021-12-02 15:42:58 +0100 | dibblego | (~dibblego@haskell/developer/dibblego) |
2021-12-02 15:44:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 15:44:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 15:46:56 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 15:47:14 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 15:50:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 15:51:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 15:52:37 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ebd1:d304:8195:da29) |
2021-12-02 15:52:43 +0100 | jlamothe | (~jlamothe@198.251.61.229) |
2021-12-02 15:54:53 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 15:56:03 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 15:57:27 +0100 | <boxscape> | % a | let b | let c | let d = 1 = 2 = 3 = 4 |
2021-12-02 15:57:28 +0100 | <yahb> | boxscape: |
2021-12-02 15:58:35 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 15:59:29 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-12-02 16:03:31 +0100 | <boxscape> | % [t|Int ::: String|] |
2021-12-02 16:03:32 +0100 | <yahb> | boxscape: AppT (AppT (ConT Ghci25.:::) (ConT GHC.Types.Int)) (ConT GHC.Base.String) |
2021-12-02 16:03:38 +0100 | <boxscape> | why is this nested AppT rather than InfixT? |
2021-12-02 16:05:33 +0100 | <geekosaur> | doesn't InfixT only happen afterward when fixity is known? |
2021-12-02 16:05:46 +0100 | <geekosaur> | but ghci and probably TH mess that up |
2021-12-02 16:07:11 +0100 | max22- | (~maxime@2a01cb0883359800118b3200b4a756c8.ipv6.abo.wanadoo.fr) |
2021-12-02 16:08:12 +0100 | <geekosaur> | or maybe it's the other way around. I don't really know how that works, only that fixity gets applied only late becuase it might not be known until the end of the file |
2021-12-02 16:09:41 +0100 | <boxscape> | hmm right |
2021-12-02 16:09:49 +0100 | <boxscape> | it seems to work differently for expressions though |
2021-12-02 16:10:00 +0100 | <boxscape> | % [e|1 + 3|] |
2021-12-02 16:10:00 +0100 | <yahb> | boxscape: InfixE (Just (LitE (IntegerL 1))) (VarE GHC.Num.+) (Just (LitE (IntegerL 3))) |
2021-12-02 16:10:10 +0100 | <boxscape> | okay wait that's because it knows this name |
2021-12-02 16:10:48 +0100 | <geekosaur> | mm, so it knows fixity and my first one was probably correct |
2021-12-02 16:11:28 +0100 | <boxscape> | % [t|Int GHC.TypeLits.<= String|] |
2021-12-02 16:11:29 +0100 | <yahb> | boxscape: AppT (AppT (ConT GHC.TypeNats.<=) (ConT GHC.Types.Int)) (ConT GHC.Base.String) |
2021-12-02 16:11:34 +0100 | <boxscape> | 🤔 |
2021-12-02 16:11:48 +0100 | <boxscape> | that produces Data.Type.Ord.<= in HEAD |
2021-12-02 16:11:51 +0100 | <boxscape> | guess I'll report a bug |
2021-12-02 16:12:01 +0100 | <boxscape> | oh wait |
2021-12-02 16:12:04 +0100 | <boxscape> | it's fine |
2021-12-02 16:12:12 +0100 | <boxscape> | I thought it was Data.Ord |
2021-12-02 16:12:38 +0100 | <boxscape> | in any case, you'd think it would know fixity for this one geekosaur , so I think it never does it for types |
2021-12-02 16:14:21 +0100 | Guest29 | (~Guest29@84.212.204.195) |
2021-12-02 16:15:02 +0100 | acidjnk_new | (~acidjnk@p200300d0c7271e31dccc5136b6b31647.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-12-02 16:17:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 16:17:49 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 16:17:59 +0100 | Guest29 | (~Guest29@84.212.204.195) (Quit: Client closed) |
2021-12-02 16:19:12 +0100 | puke | (~puke@user/puke) (Quit: puke) |
2021-12-02 16:19:35 +0100 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Read error: Connection reset by peer) |
2021-12-02 16:19:54 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2021-12-02 16:20:46 +0100 | <geekosaur> | actually that makes me wonder, would it require an early fixity declaration for type level fixity to work? |
2021-12-02 16:22:18 +0100 | <boxscape> | % [t|1 : 2 : 4 : '[]|] -- it seems to be able to figure it out |
2021-12-02 16:22:18 +0100 | <yahb> | boxscape: AppT (AppT (PromotedT GHC.Types.:) (LitT (NumTyLit 1))) (AppT (AppT (PromotedT GHC.Types.:) (LitT (NumTyLit 2))) (AppT (AppT (PromotedT GHC.Types.:) (LitT (NumTyLit 4))) PromotedNilT)) |
2021-12-02 16:23:52 +0100 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-12-02 16:25:43 +0100 | <boxscape> | % [e|a ++++ b ++++ c|] -- assuming infixl 9 here I supppose |
2021-12-02 16:25:43 +0100 | <yahb> | boxscape: InfixE (Just (InfixE (Just (VarE Ghci24.a)) (UnboundVarE ++++) (Just (UnboundVarE b)))) (UnboundVarE ++++) (Just (UnboundVarE c)) |
2021-12-02 16:27:45 +0100 | xff0x | (~xff0x@port-92-193-253-16.dynamic.as20676.net) (Ping timeout: 256 seconds) |
2021-12-02 16:28:03 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 16:28:42 +0100 | Farzad | (~FarzadBek@94.74.153.97) |
2021-12-02 16:30:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 16:30:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 16:31:33 +0100 | <merijn> | cabal.project can't have fields conditional on compiler version, right? |
2021-12-02 16:33:03 +0100 | <maerwald> | no |
2021-12-02 16:33:17 +0100 | <maerwald> | I'm also not sure what my opinion on that feature is |
2021-12-02 16:33:49 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-12-02 16:34:17 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 16:34:19 +0100 | <maerwald> | with the include feature you could easily re-use cabal.project code and supply multiple per-ghc files... then you still have the burden of telling cabal which one to use |
2021-12-02 16:34:23 +0100 | <EvanR> | can somebody sanity check me on this. The AudioSpec record type in SDL has a field with a hidden type variable for sample format. So the accessor doesn't work. And the record constructor is not exported for some reason. Is there no way to access this field? |
2021-12-02 16:34:27 +0100 | <boxscape> | geekosaur: btw, it has to know the fixity to convert to double AppT as well, so that doesn't seem like a good reason to avoid InfixT |
2021-12-02 16:35:30 +0100 | Jing | (~hedgehog@115.207.46.97) (Quit: Textual IRC Client: www.textualapp.com) |
2021-12-02 16:35:38 +0100 | <merijn> | maerwald: I'm just trying to find a way to specify per-GHC flags for CI, as Haskell-CI doesn't currently support it and "manually modifying the generated CI file" is something I wanna try and avoid |
2021-12-02 16:35:42 +0100 | <boxscape> | It has UInfixT to deal with unresolved fixities |
2021-12-02 16:35:50 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-12-02 16:35:57 +0100 | <maerwald> | Use github actions |
2021-12-02 16:36:00 +0100 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-12-02 16:36:01 +0100 | <merijn> | maerwald: So I was just wondering, because haskell-ci does support copying fields from cabal.project |
2021-12-02 16:36:02 +0100 | <maerwald> | matrices are easy |
2021-12-02 16:36:08 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 16:36:15 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-12-02 16:36:23 +0100 | <merijn> | maerwald: haskell-ci generates github actions scripts already |
2021-12-02 16:36:30 +0100 | <yin> | wasn't there an extension that let you partially applicate (-) if you leave a space between the argument? |
2021-12-02 16:36:33 +0100 | <maerwald> | never used haskell-ci |
2021-12-02 16:36:36 +0100 | <geekosaur> | but would it know what to do with a conditional fied? |
2021-12-02 16:36:40 +0100 | <geekosaur> | *field |
2021-12-02 16:36:54 +0100 | <geekosaur> | yin: LexicalNegation |
2021-12-02 16:37:09 +0100 | <merijn> | geekosaur: I mean, making a PR to handle that case is simpler then designing an interface for this from scratch :p |
2021-12-02 16:37:37 +0100 | <EvanR> | since the sdl2 package has been like this for 6 years, I question whether I am missing something |
2021-12-02 16:37:57 +0100 | <geekosaur> | there were several other negationb-related extensions but they got subsumed |
2021-12-02 16:38:16 +0100 | <geekosaur> | at one point we were up to 4 negation-related extensions all with slightly different behavior |
2021-12-02 16:38:28 +0100 | <merijn> | Hot take: Not requiring spaces around operators was a mistake |
2021-12-02 16:38:45 +0100 | <boxscape> | likely true |
2021-12-02 16:38:49 +0100 | <geekosaur> | there's a ghc proposal to more or less that extent currently |
2021-12-02 16:38:53 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
2021-12-02 16:38:55 +0100 | <geekosaur> | may even have made 9.2 |
2021-12-02 16:39:11 +0100 | <EvanR> | whitespace relevance intensifies |
2021-12-02 16:39:24 +0100 | <geekosaur> | I think merijn was complaining about it theother day because it broke working code |
2021-12-02 16:40:00 +0100 | <merijn> | geekosaur: Hot take #2: Fixing said mistake now is a mistake |
2021-12-02 16:40:02 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:6ba7:7a98:a1da:e88f) |
2021-12-02 16:40:23 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Ping timeout: 268 seconds) |
2021-12-02 16:41:20 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2021-12-02 16:42:17 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2021-12-02 16:43:26 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 16:44:15 +0100 | benin | (~benin@183.82.179.164) (Ping timeout: 256 seconds) |
2021-12-02 16:44:54 +0100 | <boxscape> | EvanR: it probably has something to do with this existential type. But that's also not exported... https://hackage.haskell.org/package/sdl2-2.5.3.0/docs/src/SDL.Audio.html#AnAudioFormat |
2021-12-02 16:46:03 +0100 | <boxscape> | which makes me think that maybe the field really is only meant for internal use |
2021-12-02 16:47:30 +0100 | mc47 | (~mc47@xmonad/TheMC47) |
2021-12-02 16:50:20 +0100 | <EvanR> | it is exported |
2021-12-02 16:50:35 +0100 | <boxscape> | oh |
2021-12-02 16:50:37 +0100 | <EvanR> | that's why I get a type error and not a 'not found error', unlike the samples field xD |
2021-12-02 16:50:44 +0100 | <EvanR> | which is inexplicably not exported |
2021-12-02 16:50:55 +0100 | <boxscape> | I meant "AnAudioFormat" is not exported |
2021-12-02 16:50:55 +0100 | <EvanR> | maybe the "intentionally didn't export" the wrong one |
2021-12-02 16:51:25 +0100 | <EvanR> | didn't even know AnAudioFormat exited... |
2021-12-02 16:51:46 +0100 | <EvanR> | you have to provide the AudioFormat type to the api |
2021-12-02 16:52:00 +0100 | <boxscape> | that's why I linked to it :) |
2021-12-02 16:52:10 +0100 | <boxscape_> | hmmm |
2021-12-02 16:52:38 +0100 | <EvanR> | it just looks like a botched export list, doing a PR |
2021-12-02 16:52:48 +0100 | <EvanR> | though my other PR has sat there for 2 years xD |
2021-12-02 16:52:51 +0100 | gabriel_sevecek | (~gabriel@188-167-229-200.dynamic.chello.sk) (Quit: WeeChat 3.3) |
2021-12-02 16:52:56 +0100 | <boxscape> | oof |
2021-12-02 16:54:15 +0100 | Itaru | (~DaSH@ro2.flokinet.is) |
2021-12-02 16:55:43 +0100 | <yin> | where can i find an updated list of all record syntax goodies? like field matching and whatever? |
2021-12-02 16:56:26 +0100 | <geekosaur> | https://downloads.haskell.org/ghc/latest/docs/html/users_guide/exts/records.html ? |
2021-12-02 16:56:54 +0100 | <geekosaur> | although that won't include stuff in the standard, just ghc extensions |
2021-12-02 17:02:59 +0100 | <yin> | ah. i am interested in the standard |
2021-12-02 17:03:37 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) |
2021-12-02 17:05:17 +0100 | <geekosaur> | https://www.haskell.org/onlinereport/haskell2010/haskellch3.html#x8-490003.15 |
2021-12-02 17:05:22 +0100 | <yin> | that's fine, the examples in NoTraditionalRecordSyntax suffice! |
2021-12-02 17:05:36 +0100 | <yin> | :) |
2021-12-02 17:07:04 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 17:08:01 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) (Ping timeout: 252 seconds) |
2021-12-02 17:11:21 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 17:11:27 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2021-12-02 17:11:39 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 17:13:17 +0100 | boxscape_ | (~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) (Quit: Connection closed) |
2021-12-02 17:13:24 +0100 | <geekosaur> | also, fixing it now may be a mistake in some sense but we now have so many things that require space disambiguation that it's better to fix it once and for all instead of every special case being, well, special |
2021-12-02 17:13:34 +0100 | <geekosaur> | starting already with BangPatterns back in 6.x |
2021-12-02 17:14:12 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 17:14:29 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 17:14:47 +0100 | Farzad | (~FarzadBek@94.74.153.97) (Ping timeout: 256 seconds) |
2021-12-02 17:15:18 +0100 | <boxscape> | Did they have additional problems over irrefutable patterns? |
2021-12-02 17:16:03 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2021-12-02 17:16:10 +0100 | <geekosaur> | hm? |
2021-12-02 17:18:09 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 17:18:36 +0100 | ec_ | (~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds) |
2021-12-02 17:18:51 +0100 | <boxscape> | Irrefutable patterns also seem like a special case so I was wondering why we're starting with Bang patterns rather than irrefutable patterns |
2021-12-02 17:20:33 +0100 | <janus> | mikko: you could theoretically use DerivingVia trick to specify that you want the 'Read' instance to use lower case |
2021-12-02 17:20:34 +0100 | <geekosaur> | I think you can't use ~ as an operator anyway, which is how the Report resolved it |
2021-12-02 17:20:54 +0100 | <janus> | mikko: waargonaut probably does it with json |
2021-12-02 17:21:04 +0100 | <boxscape> | I see |
2021-12-02 17:21:05 +0100 | <janus> | matt parsons has a blog post on it |
2021-12-02 17:21:11 +0100 | <geekosaur> | which is probably why they borrowed it at type level for type equality |
2021-12-02 17:21:18 +0100 | <boxscape> | right, make sense |
2021-12-02 17:21:31 +0100 | <boxscape> | % let (~) = (+) in 1 ~ 2 |
2021-12-02 17:21:31 +0100 | <yahb> | boxscape: 3 |
2021-12-02 17:21:36 +0100 | <boxscape> | not true anymore though |
2021-12-02 17:22:11 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 17:22:12 +0100 | <janus> | doesn't compile with warnings though ;) |
2021-12-02 17:22:15 +0100 | <geekosaur> | right, wonder if that came in at the same time they started using it at type level. would be interesting to see if that worked in 6.x |
2021-12-02 17:22:44 +0100 | <geekosaur> | I think it used to throw an error about pattern syntax in expression context |
2021-12-02 17:23:04 +0100 | <boxscape> | it doesn't work on tryhaskell.org |
2021-12-02 17:23:38 +0100 | <geekosaur> | but for all that they're different, there are a lot of similarities between type and term level these days and that's why I suspect it came in when ~ on type level did |
2021-12-02 17:23:52 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-12-02 17:26:33 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-12-02 17:27:05 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Ping timeout: 252 seconds) |
2021-12-02 17:27:21 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-12-02 17:30:01 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 252 seconds) |
2021-12-02 17:32:49 +0100 | vpan | (~0@212.117.1.172) (Quit: Leaving.) |
2021-12-02 17:38:34 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ebd1:d304:8195:da29) (Quit: WeeChat 2.8) |
2021-12-02 17:39:11 +0100 | jstolarek | (~jstolarek@137.220.120.162) (Ping timeout: 252 seconds) |
2021-12-02 17:39:45 +0100 | cheater | (~Username@user/cheater) |
2021-12-02 17:41:16 +0100 | gensyst | (gensyst@user/gensyst) |
2021-12-02 17:41:22 +0100 | <gensyst> | I have a long .hs file which tells a story, i.e. the order of the functions and comments is important. By splitting it into multiple files, I'd lose the "storyline" because I'd lose the order because the module filenames wouldn't necessarily preserve the order. |
2021-12-02 17:41:25 +0100 | <gensyst> | Any ways around this? |
2021-12-02 17:41:30 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 17:42:37 +0100 | <geekosaur> | is it necessary to split it in the first place? |
2021-12-02 17:43:07 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 17:43:42 +0100 | <c_wraith> | there isn't actually a maximum size on modules in haskell |
2021-12-02 17:43:52 +0100 | <geekosaur> | if it is, I'd probably take care to name the modules to keep the order, possibly by using hierarchical namespace |
2021-12-02 17:43:54 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 17:44:41 +0100 | Codaraxis_ | (~Codaraxis@user/codaraxis) (Ping timeout: 252 seconds) |
2021-12-02 17:45:46 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 17:45:47 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-12-02 17:47:59 +0100 | <boxscape> | % Proxy @($(pure $ TH.UInfixT (TH.ConT $ TH.mkName "Int") (TH.mkName "':|") (TH.ConT $ TH.mkName "Any"))) |
2021-12-02 17:47:59 +0100 | <yahb> | boxscape: ; <interactive>:94:10: error:; * Illegal type constructor or class name: ':|; When splicing a TH type: (Int ':| Any); * In the untyped splice: $(pure $ TH.UInfixT (TH.ConT $ TH.mkName "Int") (TH.mkName "':|") (TH.ConT $ TH.mkName "Any")) |
2021-12-02 17:48:04 +0100 | <boxscape> | is there a way to make this work? |
2021-12-02 17:48:20 +0100 | <boxscape> | I have to use UInfixT because I don't know the fixity of the operators I'm handling |
2021-12-02 17:49:04 +0100 | <boxscape> | and I have to distinguish them from type constructors (so I can't just use `TH.mkName ":|"` without the tick) because I don't know if a type constructor with the same name is in scope |
2021-12-02 17:49:05 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 252 seconds) |
2021-12-02 17:50:01 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 17:50:31 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 17:51:12 +0100 | <boxscape> | And I cannot look up the global name of the operator because the package containing might not even be installed while generating this code |
2021-12-02 17:51:23 +0100 | <boxscape> | s/containing/containing it |
2021-12-02 17:51:41 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 17:52:35 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 17:52:53 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 17:52:56 +0100 | <janus> | csaba's talk on the external spineless tagless g-machine starts in 20 minutes: https://skillsmatter.com/meetups/13654-haskell-stg-interp |
2021-12-02 17:53:03 +0100 | <janus> | or rather, 8 minutes |
2021-12-02 17:53:18 +0100 | <janus> | (minutes in decimal notation) |
2021-12-02 17:54:58 +0100 | <boxscape> | I think this is impossible, in which case I suppose I'll probably just open a ticket to add support for promoted names in UInfix |
2021-12-02 17:56:13 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 256 seconds) |
2021-12-02 17:56:14 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 268 seconds) |
2021-12-02 17:57:17 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 17:58:27 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) |
2021-12-02 17:59:40 +0100 | boxscape_ | (~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) |
2021-12-02 18:03:03 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2021-12-02 18:08:34 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:b4e0:9d38:46ba:cc41) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-12-02 18:09:35 +0100 | benin | (~benin@183.82.179.164) |
2021-12-02 18:13:43 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:14:10 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 18:15:08 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:15:26 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-12-02 18:16:13 +0100 | vysn | (~vysn@user/vysn) (Ping timeout: 252 seconds) |
2021-12-02 18:16:45 +0100 | retro_ | (~retro@97e2ba2e.skybroadband.com) |
2021-12-02 18:20:15 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-12-02 18:20:17 +0100 | retroid_ | (~retro@97e2ba2e.skybroadband.com) (Ping timeout: 268 seconds) |
2021-12-02 18:20:23 +0100 | retroid_ | (~retro@97e2ba2e.skybroadband.com) |
2021-12-02 18:20:43 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:21:31 +0100 | retro_ | (~retro@97e2ba2e.skybroadband.com) (Ping timeout: 268 seconds) |
2021-12-02 18:21:57 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 18:22:58 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 18:23:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 18:24:56 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-12-02 18:25:56 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-12-02 18:26:20 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:26:22 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:b4e0:9d38:46ba:cc41) |
2021-12-02 18:27:19 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 256 seconds) |
2021-12-02 18:29:33 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 18:29:50 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 18:29:53 +0100 | ozzymcduff | (~mathieu@81-234-151-21-no94.tbcn.telia.com) (Remote host closed the connection) |
2021-12-02 18:30:18 +0100 | <EvanR> | on an old random blog I found a surprising feature related to blocking unsafe ffi calls "non-threaded runtime has an SIGALARM timer that interrupts (most) blocking system calls" |
2021-12-02 18:30:41 +0100 | <EvanR> | the safe unsafe ffi plot thickens |
2021-12-02 18:30:55 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) |
2021-12-02 18:31:51 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:31:55 +0100 | ozzymcduff | (~mathieu@81-234-151-21-no94.tbcn.telia.com) |
2021-12-02 18:32:06 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:33:54 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 18:34:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 18:35:17 +0100 | nschoe | (~quassel@2a01:e0a:8e:a190:1242:6edc:4e6a:28bd) (Ping timeout: 252 seconds) |
2021-12-02 18:35:42 +0100 | ec_ | (~ec@gateway/tor-sasl/ec) |
2021-12-02 18:37:31 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:37:50 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:38:01 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-12-02 18:38:33 +0100 | jstolarek | (~jstolarek@137.220.120.162) |
2021-12-02 18:39:31 +0100 | Erutuon | (~Erutuon@user/erutuon) |
2021-12-02 18:41:33 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) |
2021-12-02 18:41:53 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) (Remote host closed the connection) |
2021-12-02 18:41:55 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-12-02 18:42:07 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) |
2021-12-02 18:43:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 18:43:15 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:43:35 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:44:35 +0100 | <yin> | • Couldn't match expected type ‘GHC.Exts.Item a0’ |
2021-12-02 18:44:51 +0100 | <yin> | ^ what does this mean ? |
2021-12-02 18:44:51 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 18:45:01 +0100 | <yin> | it's just a (Int,Int) |
2021-12-02 18:45:58 +0100 | <hippoid> | why is 'join.fmap return' not the same as '(join.fmap) return' - since function application is left associative, I thought join.fmap return would be (join.fmap) return, but it's actually join.(fmap return). What am I missing? |
2021-12-02 18:46:05 +0100 | <hippoid> | :t join.fmap return |
2021-12-02 18:46:05 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 18:46:10 +0100 | <hippoid> | :t join.(fmap return) |
2021-12-02 18:46:11 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 18:46:17 +0100 | <hippoid> | :t (join.fmap) return |
2021-12-02 18:46:19 +0100 | <lambdabot> | error: |
2021-12-02 18:46:19 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: m ~ (->) (m a) |
2021-12-02 18:46:19 +0100 | <lambdabot> | Expected type: (a -> m1 a) -> m (m (m1 a)) |
2021-12-02 18:46:47 +0100 | <dolio> | Because operators are always looser than function application. |
2021-12-02 18:47:19 +0100 | <hippoid> | so I shouldn't consider (.) to be a function? |
2021-12-02 18:47:21 +0100 | <[exa]> | yin: a tiny piece of source around could help, this looks like GHC.Exts.Item can't be evaluated because a0 is unknown |
2021-12-02 18:47:26 +0100 | <yin> | :t (join .) fmap return |
2021-12-02 18:47:27 +0100 | <lambdabot> | error: |
2021-12-02 18:47:27 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: m ~ (->) (m a) |
2021-12-02 18:47:27 +0100 | <lambdabot> | Expected type: (a -> m1 a) -> m (m (m1 a)) |
2021-12-02 18:47:51 +0100 | <dolio> | "Function application" means prefix function application in this case. |
2021-12-02 18:48:01 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-12-02 18:48:03 +0100 | <yin> | :t (.) join fmap return |
2021-12-02 18:48:04 +0100 | <lambdabot> | error: |
2021-12-02 18:48:04 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: m ~ (->) (m a) |
2021-12-02 18:48:05 +0100 | <lambdabot> | Expected type: (a -> m1 a) -> m (m (m1 a)) |
2021-12-02 18:48:23 +0100 | <yin> | :t (.) join (fmap return) |
2021-12-02 18:48:24 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 18:48:31 +0100 | <yin> | there you go ^ |
2021-12-02 18:48:51 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:49:06 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 18:49:15 +0100 | <[exa]> | hippoid: (.) is not a function application |
2021-12-02 18:50:09 +0100 | <hippoid> | is (.) a function? |
2021-12-02 18:50:17 +0100 | <yin> | yes |
2021-12-02 18:50:21 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 18:50:23 +0100 | <yin> | however |
2021-12-02 18:50:37 +0100 | <yin> | f = join . fmap return |
2021-12-02 18:51:02 +0100 | <yin> | means that f x === (join . fmap return) x |
2021-12-02 18:51:15 +0100 | <yin> | and when you write it in ghci it gives you |
2021-12-02 18:51:33 +0100 | <hippoid> | yin: following so far |
2021-12-02 18:52:18 +0100 | pfurla | (~pfurla@201.17.118.230) |
2021-12-02 18:52:36 +0100 | <yin> | :t (join . fmap return) |
2021-12-02 18:52:38 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 18:52:50 +0100 | pfurla | (~pfurla@201.17.118.230) (Client Quit) |
2021-12-02 18:54:20 +0100 | <yin> | not sure what your intention is |
2021-12-02 18:54:47 +0100 | <[exa]> | hippoid: probably better compare 'join.fmap return' with 'join$fmap return' (which is a slightly rewritten version of your 2nd snippet) |
2021-12-02 18:55:00 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 18:55:25 +0100 | imdoor | (~imdoor@balticom-142-78-50.balticom.lv) |
2021-12-02 18:56:04 +0100 | <hippoid> | i still dont get it. I mean `(.) join fmap` seems like function application to me, even if it doesn't type check |
2021-12-02 18:56:43 +0100 | <yin> | :t fmap return |
2021-12-02 18:56:44 +0100 | <lambdabot> | (Monad m, Functor f) => f a -> f (m a) |
2021-12-02 18:57:10 +0100 | <yin> | :t (.) (join) (fmap return) |
2021-12-02 18:57:11 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 18:57:29 +0100 | <yin> | (join) and (fmap return) are the arguments to (.) |
2021-12-02 18:57:47 +0100 | <[exa]> | hippoid: yeah, 2 function applications in fact |
2021-12-02 18:58:35 +0100 | <yin> | this is the order of application: (join) . (fmap return) |
2021-12-02 18:59:11 +0100 | <yin> | what's in parens gets computed first |
2021-12-02 18:59:21 +0100 | imdoor | (~imdoor@balticom-142-78-50.balticom.lv) (Client Quit) |
2021-12-02 18:59:37 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 18:59:40 +0100 | imdoor | (~imdoor@balticom-142-78-50.balticom.lv) |
2021-12-02 18:59:41 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 18:59:58 +0100 | <hippoid> | what i'm trying to understand is why is the expression parsed that way. does it have to do with precedence rule? |
2021-12-02 19:00:04 +0100 | <[exa]> | hippoid: just to be sure, what precisely you don't get? the 2 programs you wrote there are both syntactically and semantically different, it looks like you're assuming the . in the middle is something like function application, but that's not -- it's an operator |
2021-12-02 19:00:13 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 19:00:29 +0100 | <yin> | function application takes precedence over fixity |
2021-12-02 19:00:35 +0100 | <[exa]> | hippoid: the "spaces" between can be reimagined like function application operators, and in 'join . fmap return' there is only one |
2021-12-02 19:00:58 +0100 | <yin> | ^ that |
2021-12-02 19:01:06 +0100 | yin | speak broken english |
2021-12-02 19:01:14 +0100 | <[exa]> | hippoid: so there really isn't any point at trying associativity. On the other hand, as yin, pointed out--- |
2021-12-02 19:01:27 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) (Remote host closed the connection) |
2021-12-02 19:01:39 +0100 | <monochrom> | Parsing is always about precedence rules. |
2021-12-02 19:01:55 +0100 | <[exa]> | join . fmap return == (.) join (fmap return) ==(highlighting associativity)== ((.) join) (fmap return) |
2021-12-02 19:02:02 +0100 | <hippoid> | ok i need to get more clear on the ideas of fixity and operators |
2021-12-02 19:02:29 +0100 | <yin> | or... |
2021-12-02 19:02:40 +0100 | <yin> | :t (join .) (fmap return) |
2021-12-02 19:02:41 +0100 | <lambdabot> | Monad m => m a -> m a |
2021-12-02 19:02:52 +0100 | <yin> | fun |
2021-12-02 19:02:55 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 19:03:01 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 256 seconds) |
2021-12-02 19:03:03 +0100 | <[exa]> | hippoid: a nice example for playing with parentheses: negate 3 + 4 vs negate (3+4) |
2021-12-02 19:03:05 +0100 | chomwitt | (~chomwitt@2a02:587:dc0d:6d00:12c3:7bff:fe6d:d374) (Remote host closed the connection) |
2021-12-02 19:03:24 +0100 | Midjak | (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) |
2021-12-02 19:03:29 +0100 | chomwitt | (~chomwitt@2a02:587:dc0d:6d00:12c3:7bff:fe6d:d374) |
2021-12-02 19:03:30 +0100 | <hippoid> | i wonder what concept i'm missing... is expression parsing, fixity, operators, or something else |
2021-12-02 19:04:15 +0100 | <[exa]> | hippoid: the first of the example reads '(negate _APP_ 3) + 4', the second reads 'negate _APP_ (3+4)'. |
2021-12-02 19:04:24 +0100 | <monochrom> | In ghci you can use :info to ask operator precedence. Try :info + |
2021-12-02 19:04:43 +0100 | <monochrom> | Bigger number is higher precedence. |
2021-12-02 19:04:55 +0100 | <monochrom> | If it doesn't say, the default is "infixl 9" |
2021-12-02 19:05:17 +0100 | <[exa]> | hippoid: the _APP_ is "hidden" in normal expressions for making the code nice, but you should remember that any 2 things without an operator between them will make a highest-priority function application |
2021-12-02 19:05:21 +0100 | <hippoid> | and function application has the highest precedence? |
2021-12-02 19:05:25 +0100 | <[exa]> | yes |
2021-12-02 19:05:28 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) |
2021-12-02 19:05:28 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) (Changing host) |
2021-12-02 19:05:28 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-12-02 19:05:57 +0100 | <hippoid> | ahh ok, something is starting to click. |
2021-12-02 19:06:03 +0100 | <[exa]> | like, this is a pretty common point of confusion, takes a bit of time to get used to that |
2021-12-02 19:06:21 +0100 | <hippoid> | i'm going to play with the different examples you all put into the chat |
2021-12-02 19:06:26 +0100 | yin | whishes ' ' = _APP_ |
2021-12-02 19:06:32 +0100 | <hippoid> | thanks so much! |
2021-12-02 19:07:11 +0100 | <monochrom> | Unfortunately the "space = function application" model breaks easily as soon as you try for example: |
2021-12-02 19:07:27 +0100 | <monochrom> | > map(\x->x+1)[3,4,5] |
2021-12-02 19:07:28 +0100 | <lambdabot> | [4,5,6] |
2021-12-02 19:07:54 +0100 | <monochrom> | No space at all. |
2021-12-02 19:08:12 +0100 | <yin> | map (\x->x + 1) [3,4,5] |
2021-12-02 19:08:13 +0100 | <[exa]> | hippoid: I'm showing this with small "implicit apply operator" to students on first few courses, like: negate⏝3+4 |
2021-12-02 19:08:21 +0100 | <yin> | ^i wish we *had* to write it like this |
2021-12-02 19:08:45 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 19:08:45 +0100 | <hippoid> | > map \x->x+1 [3, 4, 5] |
2021-12-02 19:08:46 +0100 | <monochrom> | The better model is: juxtaposition (so, lack of syntax) is function application. (In suitable contexts anyway.) |
2021-12-02 19:08:47 +0100 | <lambdabot> | error: |
2021-12-02 19:08:47 +0100 | <lambdabot> | Unexpected lambda expression in function application: |
2021-12-02 19:08:47 +0100 | <lambdabot> | \ x -> x + 1 [3, 4, ....] |
2021-12-02 19:09:09 +0100 | <monochrom> | > length"hello" |
2021-12-02 19:09:10 +0100 | <[exa]> | hippoid: there you were calling function `1` with parameter `[3,4,5]` :] |
2021-12-02 19:09:10 +0100 | <lambdabot> | 5 |
2021-12-02 19:09:17 +0100 | <gensyst> | geekosaur, no there's really no need to split it :D |
2021-12-02 19:09:39 +0100 | <gensyst> | but it has a few separate, but related, concept. |
2021-12-02 19:09:46 +0100 | <gensyst> | the relation forms the "story", so to speak |
2021-12-02 19:10:01 +0100 | <gensyst> | for filename ordering, it's pity module names can't start with number |
2021-12-02 19:10:02 +0100 | <yin> | and then you learn about qualified dot and record dot... :'( |
2021-12-02 19:10:29 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:6ba7:7a98:a1da:e88f) (Ping timeout: 252 seconds) |
2021-12-02 19:10:32 +0100 | <[exa]> | yin: ssshh :] no complications now :D |
2021-12-02 19:10:33 +0100 | <geekosaur> | but you could say S1-Foo etc. |
2021-12-02 19:10:57 +0100 | jstolarek | (~jstolarek@137.220.120.162) (Ping timeout: 256 seconds) |
2021-12-02 19:11:04 +0100 | <gensyst> | geekosaur, yeah i could. i'll think about it. thanks! |
2021-12-02 19:11:12 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:11:13 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
2021-12-02 19:11:14 +0100 | xff0x | (~xff0x@port-92-193-253-16.dynamic.as20676.net) |
2021-12-02 19:11:14 +0100 | <yin> | you can also use Enum |
2021-12-02 19:11:26 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) |
2021-12-02 19:11:26 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) (Changing host) |
2021-12-02 19:11:26 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-12-02 19:11:26 +0100 | <yin> | and name your files A-Z |
2021-12-02 19:11:41 +0100 | <yin> | or whatever |
2021-12-02 19:11:47 +0100 | <monochrom> | On the bright side, it is intuitive that lack of syntax binds tighter than presence of syntax. foo"hello" $ sin(x) is very intuitively "$ is the most loose one". |
2021-12-02 19:11:57 +0100 | econo | (uid147250@user/econo) |
2021-12-02 19:13:09 +0100 | <geekosaur> | well, the advantage of my suggestion is the module names could then be part of, or at least summarize parts of, the "story" |
2021-12-02 19:13:26 +0100 | <monochrom> | > zip"abc""def" |
2021-12-02 19:13:27 +0100 | <lambdabot> | [('a','d'),('b','e'),('c','f')] |
2021-12-02 19:14:18 +0100 | <xerox> | in C that wouldn't work |
2021-12-02 19:14:26 +0100 | <monochrom> | That's got to be my latest most favourite example :) |
2021-12-02 19:14:39 +0100 | <[exa]> | pls spaces |
2021-12-02 19:14:47 +0100 | <geekosaur> | @quote zip`ap |
2021-12-02 19:14:47 +0100 | <lambdabot> | quicksilver says: zip`ap`tail the aztec god of consecutive numbers |
2021-12-02 19:15:29 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 19:15:35 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2021-12-02 19:16:02 +0100 | <yin> | i don't undestand this error: https://paste.jrvieira.com/1638468946485 |
2021-12-02 19:16:29 +0100 | <monochrom> | Uh which line is line "45"? |
2021-12-02 19:16:39 +0100 | <xerox> | just after 44 |
2021-12-02 19:17:05 +0100 | Itaru | (~DaSH@ro2.flokinet.is) (Ping timeout: 252 seconds) |
2021-12-02 19:17:06 +0100 | <yin> | sorry, it's 17 |
2021-12-02 19:17:20 +0100 | <yin> | i forgot to edit it there also |
2021-12-02 19:17:32 +0100 | <yin> | i edited it in the error for convenience ;) |
2021-12-02 19:18:55 +0100 | <monochrom> | What is the type of aim? |
2021-12-02 19:19:07 +0100 | <yin> | Int |
2021-12-02 19:19:41 +0100 | <yin> | it's right there in Stt |
2021-12-02 19:19:46 +0100 | <geekosaur> | seems like it should error on that and not the first tuple if it were that tyope mismatch |
2021-12-02 19:19:50 +0100 | <geekosaur> | *type |
2021-12-02 19:19:59 +0100 | <monochrom> | So I would think "[(x,y), (aim :: Int but not even a tuple), (k,n)]" cannot be well-typed. |
2021-12-02 19:20:01 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 252 seconds) |
2021-12-02 19:20:02 +0100 | <[exa]> | yin: did you try with a different operator than # ? |
2021-12-02 19:20:05 +0100 | <geekosaur> | and I don't see where Item came in |
2021-12-02 19:20:23 +0100 | <yin> | ho |
2021-12-02 19:20:26 +0100 | <yin> | i see my mistake now |
2021-12-02 19:20:28 +0100 | <yin> | ll |
2021-12-02 19:20:31 +0100 | <[exa]> | # is used for ghc-internal magicks, not sure if it's safe to overload it like this |
2021-12-02 19:20:46 +0100 | zebrag | (~chris@user/zebrag) |
2021-12-02 19:20:47 +0100 | doyougnu | (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) |
2021-12-02 19:20:50 +0100 | <monochrom> | # is fine if you don't turn on MagicHash |
2021-12-02 19:20:59 +0100 | <geekosaur> | it's safe as long as MagicHash isn't enabled |
2021-12-02 19:21:01 +0100 | <yin> | thanks monochrom |
2021-12-02 19:21:07 +0100 | <[exa]> | ah okay good |
2021-12-02 19:21:10 +0100 | <monochrom> | > let x # y = y/x in 2 # 4 |
2021-12-02 19:21:11 +0100 | <lambdabot> | 2.0 |
2021-12-02 19:21:37 +0100 | [exa] | starts using # |
2021-12-02 19:22:04 +0100 | <monochrom> | > let x #! y = 2*x+y in 2 #! 4 |
2021-12-02 19:22:06 +0100 | <lambdabot> | 8 |
2021-12-02 19:22:16 +0100 | <yin> | that wasn't supposed t be a list. []s for ()s |
2021-12-02 19:22:22 +0100 | <yin> | sorry |
2021-12-02 19:22:34 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-12-02 19:22:41 +0100 | <yin> | time to go eat something |
2021-12-02 19:23:05 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 19:25:40 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:27:20 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 19:27:21 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-12-02 19:27:38 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:27:44 +0100 | <Profpatsch> | I have a GADT like |
2021-12-02 19:27:46 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-12-02 19:27:53 +0100 | <Profpatsch> | data G a where |
2021-12-02 19:28:03 +0100 | <Profpatsch> | Simple :: G Text |
2021-12-02 19:28:21 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 19:28:22 +0100 | <Profpatsch> | List :: a -> G [a] |
2021-12-02 19:28:41 +0100 | <Profpatsch> | Now, I can see that it can either be G Text or G [Text] |
2021-12-02 19:29:20 +0100 | <Profpatsch> | And I want to `show` my `a` that comes from `G a` |
2021-12-02 19:30:20 +0100 | <Profpatsch> | But I can’t rely on the information that all of my `a`s are always showable if I have a `G a`. Or can I? |
2021-12-02 19:31:23 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-12-02 19:31:44 +0100 | <Profpatsch> | Okay wait my List cnostructor was wrong |
2021-12-02 19:31:48 +0100 | <Profpatsch> | List :: G a -> G [a] |
2021-12-02 19:32:40 +0100 | jasonmason | (~bc8165b6@cerf.good1.com) |
2021-12-02 19:32:51 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
2021-12-02 19:33:29 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) |
2021-12-02 19:33:32 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) (Max SendQ exceeded) |
2021-12-02 19:33:47 +0100 | <monochrom> | Have you tried? |
2021-12-02 19:33:49 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) |
2021-12-02 19:33:59 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) (Max SendQ exceeded) |
2021-12-02 19:34:07 +0100 | <monochrom> | Apparently, "instance Show (G a) where ... show (List x) = show x" is accepted. |
2021-12-02 19:34:18 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) |
2021-12-02 19:34:38 +0100 | chillin_penguin | (~igloo@mobile-166-175-56-140.mycingular.net) (Max SendQ exceeded) |
2021-12-02 19:34:41 +0100 | <Profpatsch> | monochrom: not instance Show (G a), but the inferrence that G a means `a` is Show |
2021-12-02 19:36:24 +0100 | <monochrom> | Have you tried? |
2021-12-02 19:36:45 +0100 | <monochrom> | The thing I tried and got rejected is: f :: G a -> a -> String; f _ x = show x |
2021-12-02 19:37:13 +0100 | <Profpatsch> | monochrom: and it gets rejected right? |
2021-12-02 19:37:36 +0100 | <Profpatsch> | Because how would GHC know that all `a`s that can be assigned to G are showable |
2021-12-02 19:37:56 +0100 | <Profpatsch> | I mean *I* know it but I don’t know how to write it down |
2021-12-02 19:38:28 +0100 | <Profpatsch> | I wolud just give it a Show a constraint, but I’m trying to give it a natural transformation which doesn’t allow restrictions. |
2021-12-02 19:38:46 +0100 | <Profpatsch> | forall m x. G x -> m x is hard to argue with |
2021-12-02 19:38:54 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 19:38:58 +0100 | <maerwald> | how do you use TH to include another haskell source file like you would with CPP and #include? |
2021-12-02 19:39:01 +0100 | <Profpatsch> | err well |
2021-12-02 19:39:06 +0100 | <Profpatsch> | forall m. (x. G x -> m x) -> m x is hard to argue with |
2021-12-02 19:39:10 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:39:14 +0100 | Farzad | (~FarzadBek@94.74.154.205) |
2021-12-02 19:40:54 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 19:41:12 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:41:14 +0100 | <monochrom> | I don't think TH provides for including a haskell source file. |
2021-12-02 19:41:45 +0100 | <dolio> | Write: f' :: G b -> (Show b => a -> String) -> a -> String |
2021-12-02 19:42:04 +0100 | <dolio> | Then write: f :: G a -> a -> String |
2021-12-02 19:42:06 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:715b:47ca:3928:db8d) |
2021-12-02 19:42:13 +0100 | <dolio> | f g x = f g show x |
2021-12-02 19:43:54 +0100 | gensyst | (gensyst@user/gensyst) (Quit: Leaving) |
2021-12-02 19:47:11 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 19:47:29 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:47:46 +0100 | <monochrom> | Yikes haha write an induction proof and don't perform proof erasure for the executable... |
2021-12-02 19:48:03 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Read error: Connection reset by peer) |
2021-12-02 19:48:31 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) |
2021-12-02 19:48:31 +0100 | neurocyte0132889 | (~neurocyte@46.243.81.73) (Changing host) |
2021-12-02 19:48:31 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-12-02 19:50:04 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 19:50:22 +0100 | <Profpatsch> | monochrom: Okay, I figured it out, you have to do something like `:: G a -> a -> Text` and then manuall match on all constructors of G. |
2021-12-02 19:50:31 +0100 | <Profpatsch> | Inside the match arms, the right types will be availabl |
2021-12-02 19:50:43 +0100 | <Profpatsch> | This makes too much sense! |
2021-12-02 19:53:51 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 19:54:08 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 19:57:36 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 20:00:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 20:00:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 20:01:41 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 20:01:57 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-12-02 20:04:10 +0100 | <monochrom> | Category theory is really easier. |
2021-12-02 20:04:10 +0100 | nschoe | (~quassel@2a01:e0a:8e:a190:5edd:cf91:5423:75e0) |
2021-12-02 20:04:10 +0100 | nschoe | (~quassel@2a01:e0a:8e:a190:5edd:cf91:5423:75e0) (Client Quit) |
2021-12-02 20:09:32 +0100 | <Midjak> | Hello I am using haskell-language-server from emacs on Mac OSX 11. When I try to open o haskell source file from emacs I get this message https://paste.tomsmeding.com/DM5eBvjM . If i check lsp-logs this messages: https://paste.tomsmeding.com/eehb6COh |
2021-12-02 20:10:42 +0100 | <Hecate> | Midjak: so you did install haskell-language-server |
2021-12-02 20:10:46 +0100 | <Hecate> | is it in your PATH ? |
2021-12-02 20:11:03 +0100 | <Midjak> | I tried to update the language server with brew and to update the emacs packages but I could not get this error message to disappear. |
2021-12-02 20:11:36 +0100 | <Midjak> | Hecate, yes it worked a few days ago |
2021-12-02 20:11:47 +0100 | <Midjak> | just now I get this error... |
2021-12-02 20:12:01 +0100 | <tomsmeding> | you didn't change anything in your emacs configuration? |
2021-12-02 20:12:06 +0100 | <Midjak> | I am looking the path the PATH |
2021-12-02 20:12:12 +0100 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.3) |
2021-12-02 20:13:32 +0100 | <Midjak> | no I didn't change nothing. I have just added (require lsp) and (require lsp-haskell) right now which were missing in .emacs |
2021-12-02 20:13:37 +0100 | <tomsmeding> | Midjak: apparently 'M-x getenv' allows you to get the value of an environment variable in emacs (I don't actually know emacs). Try to look up PATH in that way, and see if the directory where haskell-language-server-wrapper is located is indeed in that list |
2021-12-02 20:14:04 +0100 | <Midjak> | ok I am looking this tomsmeding |
2021-12-02 20:14:04 +0100 | Farzad | (~FarzadBek@94.74.154.205) (Quit: Leaving) |
2021-12-02 20:14:20 +0100 | <tomsmeding> | Midjak: you added those statements to your .emacs file; did that break it, or is that unrelated? |
2021-12-02 20:14:33 +0100 | <Midjak> | no effect |
2021-12-02 20:14:35 +0100 | <tomsmeding> | ok |
2021-12-02 20:14:45 +0100 | <Midjak> | I get the error I have before this |
2021-12-02 20:15:36 +0100 | emf | (~emf@2620:10d:c090:400::5:d28b) (Ping timeout: 268 seconds) |
2021-12-02 20:15:45 +0100 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
2021-12-02 20:16:32 +0100 | <tomsmeding> | (you can check where haskell-language-server-wrapper is by typing 'which haskell-language-server-wrapper' in a terminal) |
2021-12-02 20:17:32 +0100 | emf | (~emf@2620:10d:c091:480::1:6546) |
2021-12-02 20:17:44 +0100 | Erutuon | (~Erutuon@user/erutuon) |
2021-12-02 20:21:22 +0100 | dudek | (~dudek@185.150.236.103) |
2021-12-02 20:21:36 +0100 | <Midjak> | ok the server wrapper is in /usr/local/bin and is not in the emacs PATH |
2021-12-02 20:21:56 +0100 | <Midjak> | I am going to change this |
2021-12-02 20:22:46 +0100 | <tomsmeding> | how are you starting emacs? Is it also not on the path of a newly started emacs in a new terminal? |
2021-12-02 20:24:36 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 20:24:52 +0100 | <Midjak> | I launch emacs from the dock. I think I had made configuration which was gone when I upgraded emacs. (not sure of this however) |
2021-12-02 20:27:27 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 20:27:45 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 20:27:56 +0100 | <tomsmeding> | ah, probably you're adding /usr/local/bin to the PATH in something like .bashrc, right? |
2021-12-02 20:28:19 +0100 | <tomsmeding> | a program in the dock launches from the context of WindowServer or something like that, which doesn't load .bashrc beforehand -- it runs in a fairly bare environment |
2021-12-02 20:29:09 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 20:29:15 +0100 | emf_ | (~emf@2620:10d:c090:400::5:d28b) |
2021-12-02 20:30:03 +0100 | emf | (~emf@2620:10d:c091:480::1:6546) (Ping timeout: 252 seconds) |
2021-12-02 20:31:25 +0100 | <Midjak> | in zsh I have '/usr/local/bin' in my PATH but I didn't do nothing for that. I have added some local '/bin' in my PATH with zshrc but not /usr/local/bin |
2021-12-02 20:31:51 +0100 | <Midjak> | https://paste.tomsmeding.com/ubNQZxwh |
2021-12-02 20:32:46 +0100 | <tomsmeding> | then it might be some zsh functionality perhaps |
2021-12-02 20:33:06 +0100 | <tomsmeding> | in any case, /usr/local/bin is not put in PATH by anything that runs before the window system starts on mac, I believe |
2021-12-02 20:33:23 +0100 | <Midjak> | yes I think so |
2021-12-02 20:33:24 +0100 | <tomsmeding> | you might be able to do something with something like /etc/environ, but not sure |
2021-12-02 20:33:34 +0100 | <tomsmeding> | easiest is probably to add /usr/local/bin to the PATH in emacs itself somehow :) |
2021-12-02 20:33:43 +0100 | <Midjak> | but I don't understand how this worked before... |
2021-12-02 20:34:16 +0100 | <Midjak> | my .emacs file was not changed when I upgrade emacs |
2021-12-02 20:35:03 +0100 | <Midjak> | I have looked into and didn't see nothing which add /usr/local/bin explicitely. |
2021-12-02 20:35:45 +0100 | <tomsmeding> | sounds odd |
2021-12-02 20:37:35 +0100 | <Midjak> | yeah... I am going to find how to do that definitively in .emacs (it's the configuration file for emacs) |
2021-12-02 20:39:53 +0100 | inkbottle[m] | (~inkbottle@2001:470:69fc:105::2ff5) |
2021-12-02 20:40:11 +0100 | <Midjak> | aah I think I have installed this https://github.com/purcell/exec-path-from-shell |
2021-12-02 20:40:53 +0100 | curiousgay | (~curiousga@77-120-141-90.kha.volia.net) |
2021-12-02 20:40:55 +0100 | jstolarek | (~jstolarek@137.220.120.162) |
2021-12-02 20:44:59 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 20:45:16 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 20:45:26 +0100 | Itaru | (~DaSH@ro2.flokinet.is) |
2021-12-02 20:45:42 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 20:46:29 +0100 | <tomsmeding> | and it did the opposite of what you wanted? :p |
2021-12-02 20:48:49 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 20:53:41 +0100 | <Midjak> | No perhaps I have remove something when I upgraded |
2021-12-02 20:54:03 +0100 | nabaiste^ | (~nabaiste@68.101.58.90) |
2021-12-02 20:54:13 +0100 | <Midjak> | Well now I have the proper PATH |
2021-12-02 20:55:13 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-12-02 20:58:06 +0100 | hippoid | (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (Quit: leaving) |
2021-12-02 20:58:09 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 20:58:57 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Client Quit) |
2021-12-02 21:00:19 +0100 | pavonia | (~user@user/siracusa) |
2021-12-02 21:00:33 +0100 | narendraj9 | (~user@2a02:8109:b63f:ff7c::57b2) |
2021-12-02 21:02:29 +0100 | <Profpatsch> | monochrom: well I only went down this rabbit hole because I wanted to use a free applicative :) |
2021-12-02 21:05:05 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 21:05:26 +0100 | juhp | (~juhp@128.106.188.82) (Ping timeout: 252 seconds) |
2021-12-02 21:05:49 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 21:07:29 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:07:29 +0100 | juhp | (~juhp@128.106.188.82) |
2021-12-02 21:07:47 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:09:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:09:48 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:10:18 +0100 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
2021-12-02 21:10:23 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
2021-12-02 21:12:03 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:12:21 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:12:23 +0100 | <zincy_> | When doing property based state machine testing should you be relying on your existing logic to inform your test model of the suitable next action? |
2021-12-02 21:12:41 +0100 | <Midjak> | Ok it works now thanks for your help tomsmeding Hecate |
2021-12-02 21:12:49 +0100 | <tomsmeding> | cheers! |
2021-12-02 21:15:20 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
2021-12-02 21:16:59 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds) |
2021-12-02 21:17:21 +0100 | <Hecate> | Midjak: good luck |
2021-12-02 21:19:01 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:19:18 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:20:58 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:21:15 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:22:30 +0100 | <Midjak> | Hecate, why do you say "good luck" ? |
2021-12-02 21:22:42 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection) |
2021-12-02 21:25:13 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 21:25:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 21:27:13 +0100 | <Hecate> | Midjak: everything |
2021-12-02 21:28:45 +0100 | <Midjak> | Well I would prefer not to rely too much on luck Hecate |
2021-12-02 21:29:02 +0100 | <Hecate> | very well, than I wish you success :) |
2021-12-02 21:29:21 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 21:30:46 +0100 | <Hecate> | hi waleee o/ |
2021-12-02 21:32:21 +0100 | epolanski | (uid312403@id-312403.helmsley.irccloud.com) |
2021-12-02 21:33:07 +0100 | hamflask | (~hamflask@2600:1700:1bd8:b00f:ea60:30f6:60ab:8120) |
2021-12-02 21:33:10 +0100 | <waleee> | Hecate: ? |
2021-12-02 21:34:14 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) |
2021-12-02 21:34:27 +0100 | <waleee> | (but hi to you too, even if I can't remember the nick) |
2021-12-02 21:34:53 +0100 | xff0x | (~xff0x@port-92-193-253-16.dynamic.as20676.net) (Ping timeout: 256 seconds) |
2021-12-02 21:34:55 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) (Client Quit) |
2021-12-02 21:34:58 +0100 | <boxscape> | Hecate: people seem to be confused a lot by your cordiality today :D |
2021-12-02 21:35:12 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) |
2021-12-02 21:35:49 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:9887:9cf7:56de:2525) |
2021-12-02 21:35:51 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) |
2021-12-02 21:35:55 +0100 | <monochrom> | Next time use "may the odds be ever in your favour" >:) |
2021-12-02 21:36:06 +0100 | <Hecate> | boxscape: yeah I have a reputation :') |
2021-12-02 21:36:13 +0100 | benin | (~benin@183.82.179.164) (Quit: The Lounge - https://thelounge.chat) |
2021-12-02 21:36:15 +0100 | <Hecate> | waleee: you just joined the channel and I was feeling cordial :) |
2021-12-02 21:36:18 +0100 | <Rembane> | "May you love in interesting times." > "good luck" |
2021-12-02 21:36:18 +0100 | <Hecate> | monochrom: hehehe |
2021-12-02 21:36:51 +0100 | <dsal> | Love in interesting times sounds like a sitcom situation. |
2021-12-02 21:37:34 +0100 | <geekosaur> | love in the time of covid |
2021-12-02 21:37:54 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 21:38:22 +0100 | vysn | (~vysn@user/vysn) |
2021-12-02 21:39:43 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds) |
2021-12-02 21:39:53 +0100 | <Rembane> | That typo made the quote so much more concerning. :D |
2021-12-02 21:40:11 +0100 | <Rembane> | s/concerning/disconcerting/ |
2021-12-02 21:40:19 +0100 | <Rembane> | My fingers arne't doing my bidding today |
2021-12-02 21:42:40 +0100 | <Hecate> | "May you leave the Thunderdome" |
2021-12-02 21:46:00 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |
2021-12-02 21:47:12 +0100 | <Rembane> | That's a good one |
2021-12-02 21:47:23 +0100 | <Rembane> | "Two enters, three leaves." |
2021-12-02 21:47:53 +0100 | <Hecate> | :) |
2021-12-02 21:49:10 +0100 | <monochrom> | Sounds like something like the LHC. Which are like Thunderdomes for particles. |
2021-12-02 21:50:15 +0100 | <Rembane> | Indeed, with extra speed added. :) |
2021-12-02 21:50:31 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) |
2021-12-02 21:51:07 +0100 | <Hecate> | monochrom, Rembane: btw, what are you doing with Haskell these days? |
2021-12-02 21:51:58 +0100 | <Rembane> | Hecate: I'm only doing Advent of Code, and it's blissful. At work I'm working in Elixir which is surprisingly good but it has too much and too weird syntax imo. |
2021-12-02 21:52:14 +0100 | <monochrom> | Yesterday I was reading https://link.springer.com/chapter/10.1007/978-3-662-54434-1_21 |
2021-12-02 21:52:39 +0100 | <monochrom> | So now I am learning representable functors and the Yoneda lemma again. |
2021-12-02 21:52:56 +0100 | <Hecate> | Rembane: yes I'm very familiar with Elixir, my first job was with it :) |
2021-12-02 21:53:06 +0100 | <Hecate> | monochrom: oooh! |
2021-12-02 21:53:19 +0100 | jgeerds | (~jgeerds@55d45b75.access.ecotel.net) |
2021-12-02 21:54:20 +0100 | <Rembane> | Hecate: Sweet! What are you doing with Haskell these days? |
2021-12-02 21:54:35 +0100 | <Hecate> | $dayjob technically |
2021-12-02 21:54:44 +0100 | <Hecate> | I've also joined the Cabal dev team |
2021-12-02 21:54:58 +0100 | <Hecate> | still doing my job as Board Member for the Haskell Foundation |
2021-12-02 21:55:35 +0100 | <Hecate> | Started an alternative Hackage repository called Flora: https://twitter.com/TechnoEmpress/status/1465713784945659906 |
2021-12-02 21:55:42 +0100 | <Rembane> | Cool! |
2021-12-02 21:55:52 +0100 | <Hecate> | I try |
2021-12-02 21:56:14 +0100 | <Rembane> | Was it you who was the force behind adding good stuff to the Haskell docs? |
2021-12-02 21:56:33 +0100 | <boxscape> | "Namespaces for packages" what does this mean in practice? |
2021-12-02 21:56:54 +0100 | <boxscape> | Oh I'm seeing it |
2021-12-02 21:57:00 +0100 | <boxscape> | e.g. @haskell/bytestring |
2021-12-02 21:57:01 +0100 | <Hecate> | boxscape: https://www.npmjs.com/package/@purescript/node-path |
2021-12-02 21:57:03 +0100 | <Hecate> | yes |
2021-12-02 21:57:12 +0100 | <Hecate> | Rembane: Yes :) :) :) |
2021-12-02 21:57:15 +0100 | <Hecate> | 'tis me |
2021-12-02 21:58:07 +0100 | <boxscape> | hmm namespaces do seem nice |
2021-12-02 21:59:31 +0100 | <Rembane> | Hecate: Then it's you I'm sending grateful thoughts to when I see useful examples in base! :D |
2021-12-02 21:59:36 +0100 | <Rembane> | Hecate: Thank you for doing that work! |
2021-12-02 22:00:02 +0100 | benin | (~benin@183.82.179.164) |
2021-12-02 22:00:19 +0100 | <Hecate> | Rembane: <3 <3 <3 |
2021-12-02 22:00:26 +0100 | <Hecate> | thank you as well, it really warms my heart |
2021-12-02 22:00:49 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection) |
2021-12-02 22:01:04 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) |
2021-12-02 22:03:19 +0100 | <Rembane> | Hecate: ^^ no worries, may the slugs hand you fresh lettuce |
2021-12-02 22:03:23 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-12-02 22:03:23 +0100 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-12-02 22:03:26 +0100 | allbery_b | geekosaur |
2021-12-02 22:06:23 +0100 | <Hecate> | awww |
2021-12-02 22:06:26 +0100 | <Hecate> | this is very cute |
2021-12-02 22:09:46 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Remote host closed the connection) |
2021-12-02 22:10:01 +0100 | hamflask | (~hamflask@2600:1700:1bd8:b00f:ea60:30f6:60ab:8120) (Ping timeout: 256 seconds) |
2021-12-02 22:10:50 +0100 | benin | (~benin@183.82.179.164) (Quit: The Lounge - https://thelounge.chat) |
2021-12-02 22:11:07 +0100 | benin | (~benin@183.82.179.164) |
2021-12-02 22:11:09 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) |
2021-12-02 22:11:59 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
2021-12-02 22:12:00 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Quit: gone to sleep. ZZZzzz…) |
2021-12-02 22:14:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 22:14:49 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 22:16:37 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 22:16:40 +0100 | jess | (~jess@libera/staff/jess) () |
2021-12-02 22:16:55 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 22:18:13 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:9887:9cf7:56de:2525) (Ping timeout: 252 seconds) |
2021-12-02 22:18:15 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Remote host closed the connection) |
2021-12-02 22:19:01 +0100 | xff0x | (~xff0x@2001:1a81:5351:7200:d75b:ca2f:7cd3:f39) |
2021-12-02 22:20:33 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:f9b9:ddeb:6361:fc1a) |
2021-12-02 22:22:52 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:f9b9:ddeb:6361:fc1a) (Remote host closed the connection) |
2021-12-02 22:24:39 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) |
2021-12-02 22:27:22 +0100 | acidjnk_new | (~acidjnk@p200300d0c7271e85247d18c27da64632.dip0.t-ipconnect.de) |
2021-12-02 22:29:17 +0100 | yauhsien | (~yauhsien@61-231-22-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-12-02 22:29:57 +0100 | hamflask | (~hamflask@2600:1700:1bd8:b00f:11a7:e1ed:d710:a4af) |
2021-12-02 22:30:14 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection) |
2021-12-02 22:30:31 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) |
2021-12-02 22:31:33 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) |
2021-12-02 22:32:24 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 22:32:30 +0100 | mvk | (~mvk@2607:fea8:5cc1:fa00::4702) |
2021-12-02 22:32:38 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) |
2021-12-02 22:33:13 +0100 | hamflask | (~hamflask@2600:1700:1bd8:b00f:11a7:e1ed:d710:a4af) (Client Quit) |
2021-12-02 22:33:27 +0100 | Hashida | (~DaSH@ro2.flokinet.is) |
2021-12-02 22:33:31 +0100 | pfurla | (~pfurla@2804:14d:5c81:4104:5084:9b62:332c:deab) (Client Quit) |
2021-12-02 22:34:57 +0100 | hskpractice | (~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds) |
2021-12-02 22:35:12 +0100 | hamflask | (~hamflask@2600:1700:1bd8:b00f:8fba:5075:a126:c2f) |
2021-12-02 22:35:51 +0100 | Hashida | (~DaSH@ro2.flokinet.is) (Remote host closed the connection) |
2021-12-02 22:36:19 +0100 | Hashida | (~DaSH@ro2.flokinet.is) |
2021-12-02 22:36:33 +0100 | Itaru | (~DaSH@ro2.flokinet.is) (Ping timeout: 252 seconds) |
2021-12-02 22:40:26 +0100 | xkuru | (~xkuru@user/xkuru) |
2021-12-02 22:40:52 +0100 | Hashida | (~DaSH@ro2.flokinet.is) (Client Quit) |
2021-12-02 22:43:53 +0100 | Itaru | (~DaSH@ro2.flokinet.is) |
2021-12-02 22:49:23 +0100 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds) |
2021-12-02 22:50:52 +0100 | imdoor | (~imdoor@balticom-142-78-50.balticom.lv) (Quit: imdoor) |
2021-12-02 22:52:41 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds) |
2021-12-02 22:55:02 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 23:00:12 +0100 | michalz | (~michalz@185.246.204.33) (Remote host closed the connection) |
2021-12-02 23:03:57 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds) |
2021-12-02 23:06:14 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-12-02 23:08:52 +0100 | abrantesasf | (~abrantesa@187.36.170.211) |
2021-12-02 23:09:06 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) |
2021-12-02 23:13:33 +0100 | burnsidesLlama | (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-12-02 23:14:02 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-12-02 23:15:55 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-12-02 23:16:44 +0100 | doyougnu | (~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) (Read error: Connection reset by peer) |
2021-12-02 23:17:15 +0100 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-12-02 23:19:52 +0100 | <Hecate> | omfg |
2021-12-02 23:20:02 +0100 | <Hecate> | Flora.pm appears in the Haskell Weekly newsletter |
2021-12-02 23:20:03 +0100 | <Hecate> | https://haskellweekly.news/issue/292.html |
2021-12-02 23:20:04 +0100 | <Hecate> | :D |
2021-12-02 23:20:33 +0100 | <Rembane> | Yay! :D |
2021-12-02 23:20:55 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-12-02 23:21:17 +0100 | benin | (~benin@183.82.179.164) (Quit: The Lounge - https://thelounge.chat) |
2021-12-02 23:27:31 +0100 | Itaru | (~DaSH@ro2.flokinet.is) (Ping timeout: 252 seconds) |
2021-12-02 23:28:04 +0100 | Itaru | (~DaSH@ro2.flokinet.is) |
2021-12-02 23:29:43 +0100 | sagax | (~sagax_nb@user/sagax) (Ping timeout: 252 seconds) |
2021-12-02 23:30:22 +0100 | benin | (~benin@183.82.179.164) |
2021-12-02 23:33:01 +0100 | monochrom | (trebla@216.138.220.146) (Ping timeout: 252 seconds) |
2021-12-02 23:35:33 +0100 | benin | (~benin@183.82.179.164) (Quit: The Lounge - https://thelounge.chat) |
2021-12-02 23:40:04 +0100 | monochrom | (trebla@216.138.220.146) |
2021-12-02 23:40:55 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:b4e0:9d38:46ba:cc41) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-12-02 23:42:50 +0100 | TranquilEcho | (~grom@user/tranquilecho) |
2021-12-02 23:44:01 +0100 | narendraj9 | (~user@2a02:8109:b63f:ff7c::57b2) (Remote host closed the connection) |
2021-12-02 23:45:29 +0100 | deadmarshal | (~deadmarsh@95.38.119.253) (Ping timeout: 252 seconds) |
2021-12-02 23:45:43 +0100 | <dsal> | Hecate: I love the response to the "why don't you just" on that post. |
2021-12-02 23:46:55 +0100 | <Franciman> | congrawts Hecate |
2021-12-02 23:48:03 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-12-02 23:49:09 +0100 | fizbin | (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
2021-12-02 23:50:46 +0100 | DNH | (~DNH@2a02:8108:1100:16d8:a968:658b:9652:428a) |
2021-12-02 23:52:45 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-12-02 23:54:02 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection) |
2021-12-02 23:54:36 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-12-02 23:54:42 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-12-02 23:55:20 +0100 | kupi | (uid212005@id-212005.hampstead.irccloud.com) |
2021-12-02 23:55:25 +0100 | Itaru | (~DaSH@ro2.flokinet.is) (Remote host closed the connection) |
2021-12-02 23:59:03 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |