Logs: liberachat/#haskell
| 2026-03-12 12:00:51 | → | dhil joins (~dhil@5.151.29.139) |
| 2026-03-12 12:03:11 | → | mauke joins (~mauke@user/mauke) |
| 2026-03-12 12:16:51 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 268 seconds) |
| 2026-03-12 12:21:18 | → | anselmschueler joins (~Thunderbi@user/schuelermine) |
| 2026-03-12 12:23:18 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 2026-03-12 12:31:46 | → | haritz joins (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 2026-03-12 12:31:46 | × | haritz quits (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 2026-03-12 12:31:46 | → | haritz joins (~hrtz@user/haritz) |
| 2026-03-12 12:31:57 | → | arandombit joins (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) |
| 2026-03-12 12:31:57 | × | arandombit quits (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) (Changing host) |
| 2026-03-12 12:31:57 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 12:33:17 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2026-03-12 12:41:58 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds) |
| 2026-03-12 12:51:11 | × | AlexZenon quits (~alzenon@5.139.232.240) (Quit: ;-) |
| 2026-03-12 12:51:41 | × | Alex_delenda_est quits (~al_test@5.139.232.240) (Quit: ;-) |
| 2026-03-12 12:52:11 | × | AlexNoo quits (~AlexNoo@5.139.232.240) (Quit: Leaving) |
| 2026-03-12 13:06:14 | → | qqq joins (~qqq@185.54.22.246) |
| 2026-03-12 13:09:05 | → | AlexNoo joins (~AlexNoo@5.139.232.240) |
| 2026-03-12 13:09:20 | × | anselmschueler quits (~Thunderbi@user/schuelermine) (Ping timeout: 245 seconds) |
| 2026-03-12 13:13:22 | × | AlexNoo quits (~AlexNoo@5.139.232.240) (Ping timeout: 248 seconds) |
| 2026-03-12 13:16:04 | × | qqq quits (~qqq@185.54.22.246) (Ping timeout: 244 seconds) |
| 2026-03-12 13:22:49 | → | AlexZenon joins (~alzenon@5.139.232.240) |
| 2026-03-12 13:28:02 | → | Alex_delenda_est joins (~al_test@5.139.232.240) |
| 2026-03-12 13:33:00 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 13:35:36 | → | qqq joins (~qqq@185.54.22.246) |
| 2026-03-12 13:38:03 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 272 seconds) |
| 2026-03-12 13:49:10 | → | arandombit joins (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) |
| 2026-03-12 13:49:10 | × | arandombit quits (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) (Changing host) |
| 2026-03-12 13:49:10 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 13:54:03 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 268 seconds) |
| 2026-03-12 13:59:14 | × | _d0t quits (~{-d0t-}@user/-d0t-/x-7915216) (Ping timeout: 248 seconds) |
| 2026-03-12 14:04:08 | → | _d0t joins (~{-d0t-}@user/-d0t-/x-7915216) |
| 2026-03-12 14:05:44 | → | arandombit joins (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) |
| 2026-03-12 14:05:44 | × | arandombit quits (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) (Changing host) |
| 2026-03-12 14:05:44 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 14:10:19 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds) |
| 2026-03-12 14:22:01 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 14:23:30 | ski | . o O ( "A break from programming languages" by Alexis King in 2025-05-29 at <https://lexi-lambda.github.io/blog/2025/05/29/a-break-from-programming-languages/> ) |
| 2026-03-12 14:23:43 | → | Square2 joins (~Square@user/square) |
| 2026-03-12 14:24:26 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds) |
| 2026-03-12 14:24:38 | → | jeremyn joins (~jeremy@user/jeremyn) |
| 2026-03-12 14:26:26 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 248 seconds) |
| 2026-03-12 14:27:15 | <mesaoptimizer> | good for her |
| 2026-03-12 14:33:54 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 14:46:01 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 2026-03-12 14:46:01 | jmcantrell_ | is now known as jmcantrell |
| 2026-03-12 14:49:04 | × | jeremyn quits (~jeremy@user/jeremyn) (Ping timeout: 244 seconds) |
| 2026-03-12 14:49:04 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 244 seconds) |
| 2026-03-12 14:50:54 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 2026-03-12 14:56:45 | → | Digitteknohippie joins (~user@user/digit) |
| 2026-03-12 14:56:48 | × | Digit quits (~user@user/digit) (Ping timeout: 264 seconds) |
| 2026-03-12 15:09:13 | × | oskarw quits (~user@user/oskarw) (Ping timeout: 244 seconds) |
| 2026-03-12 15:35:56 | → | machinedgod joins (~machinedg@d172-219-48-230.abhsia.telus.net) |
| 2026-03-12 15:36:52 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 2026-03-12 15:38:14 | × | euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.) |
| 2026-03-12 15:43:19 | × | myme quits (~myme@2a01:799:d5e:5f00:332d:919:8ee8:93eb) (Ping timeout: 244 seconds) |
| 2026-03-12 15:44:21 | → | myme joins (~myme@2a01:799:d5e:5f00:303a:da6f:3ef4:dbc1) |
| 2026-03-12 15:48:04 | → | Wygulmage joins (~Wygulmage@user/Wygulmage) |
| 2026-03-12 15:48:53 | <Wygulmage> | Has anyone else looked at https://discourse.haskell.org/t/sneak-peek-bolt-math/13766 and thinks it's well intentioned but unworkable as written? |
| 2026-03-12 15:49:25 | <Wygulmage> | I'd comment on Discourse but apparently my non-AI browser is not supported... |
| 2026-03-12 15:50:26 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 252 seconds) |
| 2026-03-12 16:05:14 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-03-12 16:07:34 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 2026-03-12 16:08:59 | → | kupi joins (uid212005@id-212005.hampstead.irccloud.com) |
| 2026-03-12 16:10:46 | <Wygulmage> | Clearly not. So, for example, say you have an instance of `AdditiveSemigroup`. Presumably the only law is that it's a semigroup. Cool. So you define `instance AdditiveSemigroup Integer where add = (*)`. Why not? It satisfies the law. And then you define `instance MultiplicativeSemigroup Integer where mul = (*)` Again, it satisfies the law. And |
| 2026-03-12 16:10:47 | <Wygulmage> | they're both monoidal, with `one = 1` and `zero = one`. Again, the laws are still satisfied. And then the library claims you have a `Semiring`, and perhaps assumes that `zero` (1) is annihilative for `mul`. |
| 2026-03-12 16:12:02 | × | Ranhir quits (~Ranhir@157.97.53.139) (Ping timeout: 248 seconds) |
| 2026-03-12 16:16:11 | <Wygulmage> | Sorry. Is IRC dead, or did I just come at a bad time? |
| 2026-03-12 16:19:33 | × | somemathguy quits (~somemathg@user/somemathguy) (Ping timeout: 246 seconds) |
| 2026-03-12 16:20:27 | <haskellbridge> | <sm> it has quiet and busy times. Definitely not dead here, but you may need to wait more than 5m |
| 2026-03-12 16:20:50 | <haskellbridge> | <sm> s/but.*// |
| 2026-03-12 16:21:58 | <haskellbridge> | <sm> do you have javascript disabled in your browser ? |
| 2026-03-12 16:22:11 | <Wygulmage> | Thanks, sm. Just got worried that all the humans had left. *deep breaths* |
| 2026-03-12 16:22:23 | <Wygulmage> | Not for haskell.org. |
| 2026-03-12 16:22:44 | <haskellbridge> | <sm> :) we're still here |
| 2026-03-12 16:23:24 | <haskellbridge> | <sm> I wondered why you couldn't comment at discourse. It requires js I see. |
| 2026-03-12 16:23:56 | → | somemathguy joins (~somemathg@user/somemathguy) |
| 2026-03-12 16:24:32 | <Wygulmage> | When I look at what I have blocked, both for discourse-cdn and haskell.org, everything is enabled. But yeah, I won't try to make #haskell into my IT helpers. Clearly that's a me problem. |
| 2026-03-12 16:25:56 | <Wygulmage> | And possibly a Discourse problem. |
| 2026-03-12 16:27:13 | Digitteknohippie | is now known as Digit |
| 2026-03-12 16:29:04 | → | Ranhir joins (~Ranhir@157.97.53.139) |
| 2026-03-12 16:30:19 | <Wygulmage> | I do have another question that's vaguely related to my initial rant. Are there any major roadblocks in GHC preventing class alias definitions or automatic defaulted superclasses? For example, allowing someone to just write `instance Monad M where...` and let GHC silently take care of `Functor` and `Applicative`, without even having to write |
| 2026-03-12 16:30:20 | <Wygulmage> | `deriving via WrapMonad M instance Applicative M` ? |
| 2026-03-12 16:43:59 | <ski> | Wygulmage : i was just (before i read your responses) about to comment on the same issue with not having a single place in the source which takes resposibility for ensuring that distributivity holds |
| 2026-03-12 16:44:45 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
| 2026-03-12 16:47:27 | ski | coughs and stares at `Read' and `Show' |
| 2026-03-12 16:51:10 | ski | . o O ( "Class Alias Proposal for Haskell" <http://repetae.net/recent/out/classalias.html>,"Supertyping Suggestion for Haskell" <http://repetae.net/recent/out/supertyping.html>, both by jmeacham) |
| 2026-03-12 16:51:30 | → | chewybread joins (~chewybrea@user/chewybread) |
| 2026-03-12 16:51:33 | <Wygulmage> | That's a totally fair point about `Read` and `Show` , but I think they're more clearly "utility" classes that don't have to follow any laws. But you REALLY want your numeric hierarchy to follow well defined laws. |
| 2026-03-12 16:51:41 | <EvanR> | Wygulmage, the humans are dead |
| 2026-03-12 16:52:02 | <EvanR> | 🤖 |
| 2026-03-12 16:52:58 | <Wygulmage> | I'm OK with that as long as Edward Kmett has been replaced with a sufficiently advanced chatbot that I can't tell the difference ;( |
| 2026-03-12 16:53:45 | <Wygulmage> | Which, judging by the AI slop in his youtube feed... |
| 2026-03-12 16:55:07 | <davean> | Wygulmage: Haha, the AI slop in his youtube feed is a very specific thing and I want more of it ... |
| 2026-03-12 16:55:40 | <davean> | Wygulmage: assume the AI slop is an inside joke thing. |
| 2026-03-12 16:56:00 | <Wygulmage> | \O/ |
| 2026-03-12 16:56:30 | <davean> | He's entertaining a specific few of us with a specific project |
| 2026-03-12 16:56:31 | <haskellbridge> | <ijouw> I was experimenting with naming my class of things to add (+) (using type operators) and using functional dependencies to make sure the compiler can infer the types (if 2 of (left arg, right arg, result) type are known). That does limit it to Vector a + a = Vector a or Vector a + Vector a = Vector a |
| 2026-03-12 16:56:46 | <davean> | You wouldn't have the context to enjoy it. Its public because it was being posted in a facebook group. |
| 2026-03-12 16:58:42 | <Wygulmage> | davean: Thanks for outing yourself as part of the SkyNet that replaced Ed. |
All times are in UTC.