Logs: liberachat/#haskell
| 2025-11-07 12:22:47 | <lortabac> | the fact that HLint is configurable doesn't make the defaults less bad |
| 2025-11-07 12:23:33 | <kuribas> | agreed |
| 2025-11-07 12:25:25 | × | wbrawner quits (~wbrawner@129.146.105.153) (Remote host closed the connection) |
| 2025-11-07 12:25:36 | → | wbrawner joins (~wbrawner@129.146.105.153) |
| 2025-11-07 12:27:00 | × | gorignak quits (~gorignak@user/gorignak) (Ping timeout: 245 seconds) |
| 2025-11-07 12:27:59 | × | trickard quits (~trickard@cpe-57-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-07 12:28:13 | → | trickard_ joins (~trickard@cpe-57-98-47-163.wireline.com.au) |
| 2025-11-07 12:28:23 | → | vulpine joins (xfnw@user/meow/xfnw) |
| 2025-11-07 12:29:29 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-11-07 12:30:00 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 12:30:42 | <lortabac> | There was an article about this but I can't find it anymore. It's a kind of fallacy where people who are expert about a field/tool tend to respond to criticism with "you are doing it the wrong way" |
| 2025-11-07 12:31:47 | <lortabac> | which is the right answer of course, but sometimes it's also good to consider how to improve the tool |
| 2025-11-07 12:35:18 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-11-07 12:41:57 | <__monty__> | dminuoso: Most of my linting experience is with Pylint and no I don't know of a way to configure it from outside the source files. Don't really see a good way that'd be resilient to refactoring. Can't rely on line numbers for example but even function/method names can change. |
| 2025-11-07 12:42:46 | → | kuribas` joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 2025-11-07 12:44:12 | × | kuribas quits (~user@2a02:1808:d1:be31:ac10:dd83:cea2:1717) (Ping timeout: 244 seconds) |
| 2025-11-07 12:45:47 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 12:51:01 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2025-11-07 12:51:32 | × | Square2 quits (~Square4@user/square) (Ping timeout: 244 seconds) |
| 2025-11-07 12:52:44 | → | Zemy_ joins (~Zemy@2600:100c:b0a1:9f27:50d3:74ff:fece:a256) |
| 2025-11-07 12:56:25 | × | Zemy quits (~Zemy@72.178.108.235) (Ping timeout: 264 seconds) |
| 2025-11-07 12:57:37 | × | bggd quits (~bgg@2a01:e0a:819:1510:488d:f1b1:72a6:5bef) (Remote host closed the connection) |
| 2025-11-07 12:59:46 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2025-11-07 13:00:26 | → | gmg joins (~user@user/gehmehgeh) |
| 2025-11-07 13:01:35 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 13:06:36 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2025-11-07 13:07:42 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 13:08:03 | → | Square2 joins (~Square4@user/square) |
| 2025-11-07 13:12:49 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2025-11-07 13:15:34 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 2025-11-07 13:23:13 | → | Zemy joins (~Zemy@syn-192-154-181-091.biz.spectrum.com) |
| 2025-11-07 13:23:28 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 13:27:23 | × | Zemy_ quits (~Zemy@2600:100c:b0a1:9f27:50d3:74ff:fece:a256) (Ping timeout: 250 seconds) |
| 2025-11-07 13:28:07 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-11-07 13:36:25 | <Square2> | In ghci, why can I do `:info Maybe` but not `:info List`? |
| 2025-11-07 13:37:21 | <tomsmeding> | because List does not exist? |
| 2025-11-07 13:37:31 | <haskellbridge> | <Morj> You can do ":info []" |
| 2025-11-07 13:38:23 | <tomsmeding> | interesting: |
| 2025-11-07 13:38:26 | <tomsmeding> | % :i [] |
| 2025-11-07 13:38:26 | <yahb2> | type List :: * -> * ; data List a = [] | a : [a] ; -- Defined in ‘GHC.Types’ ; instance Traversable [] ; -- Defined in ‘GHC.Internal.Data.Traversable’ ; instance MonadFail [] ; -- Defined in... |
| 2025-11-07 13:38:36 | <tomsmeding> | turns out that since GHC 9.6, it prints `data List a` there |
| 2025-11-07 13:38:36 | <int-e> | % import GHC.Types |
| 2025-11-07 13:38:36 | <yahb2> | <no output> |
| 2025-11-07 13:38:40 | <int-e> | % :i List |
| 2025-11-07 13:38:40 | <yahb2> | type List :: * -> * ; data List a = [] | a : [a] ; -- Defined in ‘GHC.Types’ ; instance Traversable [] ; -- Defined in ‘GHC.Internal.Data.Traversable’ ; instance MonadFail [] ; -- Defined in... |
| 2025-11-07 13:38:45 | <int-e> | see, it works ;-) |
| 2025-11-07 13:38:59 | <tomsmeding> | then `:i []` is wrong, because the List should have been qualified |
| 2025-11-07 13:39:16 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 13:40:26 | <tomsmeding> | % :i Data.List.List |
| 2025-11-07 13:40:26 | <yahb2> | type List :: * -> * ; data List a = [] | a : [a] ; -- Defined in ‘GHC.Types’ ; instance Traversable [] ; -- Defined in ‘GHC.Internal.Data.Traversable’ ; instance MonadFail [] ; -- Defined in... |
| 2025-11-07 13:40:30 | <tomsmeding> | int-e: it's also in Data.List |
| 2025-11-07 13:40:53 | <haskellbridge> | <Morj> Are there any libraries to help me write (mostly) the same code for sqlite and postgres? I know of persistent, but I don't really love it |
| 2025-11-07 13:41:55 | <Square2> | int-e, nice. Thanks |
| 2025-11-07 13:42:34 | <int-e> | tomsmeding: That's new... since 9.10? Odd. |
| 2025-11-07 13:44:09 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-11-07 13:44:23 | <haskellbridge> | <Morj> My ghci 9.6 doesn't have Data.List.List indeed, but :i [] still refers to some 'List' from who knows where |
| 2025-11-07 13:45:54 | <tomsmeding> | Morj: GHC.Types |
| 2025-11-07 13:46:13 | <tomsmeding> | hm, 9.10 indeed |
| 2025-11-07 13:50:10 | <int-e> | tomsmeding: it was a proposal here: https://github.com/haskell/core-libraries-committee/issues/182 |
| 2025-11-07 13:51:24 | <haskellbridge> | <Morj> GHC.Types.List exists indeed |
| 2025-11-07 13:55:03 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 13:59:31 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2025-11-07 14:04:05 | × | trickard_ quits (~trickard@cpe-57-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-07 14:04:17 | → | trickard_ joins (~trickard@cpe-57-98-47-163.wireline.com.au) |
| 2025-11-07 14:04:48 | → | Zemy_ joins (~Zemy@2600:100c:b0ab:d403:d483:98ff:fee4:d9f9) |
| 2025-11-07 14:04:49 | × | Zemy quits (~Zemy@syn-192-154-181-091.biz.spectrum.com) (Read error: Connection reset by peer) |
| 2025-11-07 14:05:16 | → | Zemy joins (~Zemy@syn-192-154-181-091.biz.spectrum.com) |
| 2025-11-07 14:08:40 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 14:09:18 | × | Zemy_ quits (~Zemy@2600:100c:b0ab:d403:d483:98ff:fee4:d9f9) (Ping timeout: 256 seconds) |
| 2025-11-07 14:09:44 | → | Zemy_ joins (~Zemy@2600:100c:b0ab:d403:cbc:dbff:fe6f:c62e) |
| 2025-11-07 14:11:25 | × | Zemy quits (~Zemy@syn-192-154-181-091.biz.spectrum.com) (Ping timeout: 246 seconds) |
| 2025-11-07 14:13:16 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-11-07 14:15:19 | → | ft joins (~ft@p4fc2aaeb.dip0.t-ipconnect.de) |
| 2025-11-07 14:22:20 | → | Zemy joins (~Zemy@72.178.108.235) |
| 2025-11-07 14:22:53 | <[exa]> | how does one rewrite a continuation-ish computation with a "fmap" in it, like `fmap something . blah $ \x -> ...`, into ContT? (All combinations failed for me so I'm asking) |
| 2025-11-07 14:24:13 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 14:25:00 | <[exa]> | example: https://paste.tomsmeding.com/WfUKO31Y |
| 2025-11-07 14:25:37 | <[exa]> | (this is torn out from a mildly over-complicated code, I'll try to materialize a simple example. The `run1` and `run2` is something like `withFileOpen` or so. |
| 2025-11-07 14:25:40 | <[exa]> | ) |
| 2025-11-07 14:25:44 | × | Zemy_ quits (~Zemy@2600:100c:b0ab:d403:cbc:dbff:fe6f:c62e) (Ping timeout: 256 seconds) |
| 2025-11-07 14:28:34 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2025-11-07 14:30:32 | → | Googulator30 joins (~Googulato@team.broadbit.hu) |
| 2025-11-07 14:30:54 | × | fp quits (~Thunderbi@130.233.70.136) (Quit: fp) |
| 2025-11-07 14:31:15 | → | fp joins (~Thunderbi@130.233.70.136) |
| 2025-11-07 14:31:46 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) |
| 2025-11-07 14:32:04 | × | trickard_ quits (~trickard@cpe-57-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-07 14:32:17 | → | trickard_ joins (~trickard@cpe-57-98-47-163.wireline.com.au) |
| 2025-11-07 14:37:27 | → | Googulator57 joins (~Googulato@team.broadbit.hu) |
| 2025-11-07 14:37:42 | × | trickard_ quits (~trickard@cpe-57-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-11-07 14:39:44 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-11-07 14:40:41 | × | Googulator30 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-07 14:42:17 | <Square2> | is filter defined in some base class or is made specifically for different data structures? |
| 2025-11-07 14:42:42 | <Square2> | it seems to be data structure specific |
| 2025-11-07 14:43:12 | → | trickard_ joins (~trickard@cpe-57-98-47-163.wireline.com.au) |
| 2025-11-07 14:43:18 | <haskellbridge> | <Morj> In base it's data-specific. In mono-traversable there is a class for it: https://hackage.haskell.org/package/mono-traversable-1.0.21.0/docs/Data-Sequences.html#v:filter |
| 2025-11-07 14:45:02 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2025-11-07 14:46:02 | → | Googulator18 joins (~Googulato@team.broadbit.hu) |
| 2025-11-07 14:47:53 | <Square2> | oh there's filterM I guess |
| 2025-11-07 14:48:55 | × | Googulator57 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds) |
| 2025-11-07 14:50:40 | → | Googulator94 joins (~Googulato@team.broadbit.hu) |
All times are in UTC.