Logs: liberachat/#haskell
| 2025-09-03 17:25:19 | × | marinelli quits (~weechat@gateway/tor-sasl/marinelli) (Quit: marinelli) |
| 2025-09-03 17:26:33 | <__monty__> | I do wonder why the `Str` type has `Zero`, `One a` and `Two (Str a) (Str a)`. It looks so much like `data Str a = One a | Many [Str a]`. |
| 2025-09-03 17:32:50 | → | peterbecich joins (~Thunderbi@syn-172-222-149-049.res.spectrum.com) |
| 2025-09-03 17:33:30 | × | myxos quits (~myxos@syn-065-025-110-175.res.spectrum.com) (Remote host closed the connection) |
| 2025-09-03 17:35:40 | → | Square2 joins (~Square@user/square) |
| 2025-09-03 17:38:57 | <tomsmeding> | two fewer pointers if (<>) is dumb and just produces `Many [a,b]`? |
| 2025-09-03 17:39:05 | × | Square3 quits (~Square4@user/square) (Ping timeout: 245 seconds) |
| 2025-09-03 17:39:07 | × | Googulator quits (~Googulato@2a01-036d-0106-28ad-f9f3-8649-eb89-633c.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-09-03 17:39:24 | → | Googulator joins (~Googulato@2a01-036d-0106-28ad-f9f3-8649-eb89-633c.pool6.digikabel.hu) |
| 2025-09-03 17:39:26 | <tomsmeding> | three fewer pointers even -- to the list, to the second cons cell, and to the nil |
| 2025-09-03 17:40:10 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-03 17:40:11 | × | mari71727 quits (~mari-este@user/mari-estel) (Remote host closed the connection) |
| 2025-09-03 17:42:10 | → | zarakshR joins (~Thunderbi@host5-81-134-212.range5-81.btcentralplus.com) |
| 2025-09-03 17:44:38 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2025-09-03 17:50:06 | → | fp joins (~Thunderbi@89-27-10-140.bb.dnainternet.fi) |
| 2025-09-03 17:50:52 | × | peterbecich quits (~Thunderbi@syn-172-222-149-049.res.spectrum.com) (Ping timeout: 256 seconds) |
| 2025-09-03 17:51:53 | <__monty__> | But it saves pointers whenever you do have a list-like sequence of children, no/ |
| 2025-09-03 17:51:56 | <__monty__> | *? |
| 2025-09-03 17:55:28 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-03 17:55:42 | → | tomboy64 joins (~tomboy64@user/tomboy64) |
| 2025-09-03 17:57:03 | → | acidjnk joins (~acidjnk@p200300d6e7171976182de2090fb12ade.dip0.t-ipconnect.de) |
| 2025-09-03 18:02:16 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2025-09-03 18:03:07 | → | Enrico63 joins (~Enrico63@2a0b:e541:10d0:0:9efc:e8ff:fe24:3213) |
| 2025-09-03 18:05:15 | × | jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 248 seconds) |
| 2025-09-03 18:05:52 | <Enrico63> | Hi there! I've just created a pull request (https://github.com/haskell/haskeline/pull/207) for some fix to the haskeline library (that mimics the famous readline library), but the repo has no actual maintainer, but simply a custodian, so my PR can't be reviewed by them :( |
| 2025-09-03 18:05:52 | <Enrico63> | I've posted the code on https://codereview.stackexchange.com/questions/298044/augment-vi-editing-mode-in-haskeline-by-implementing-the-and-commands so you can look at as an alternative to github. |
| 2025-09-03 18:06:44 | × | cherryramatisdev quits (~cherryram@user/cherryramatisdev) (Ping timeout: 256 seconds) |
| 2025-09-03 18:06:59 | <Enrico63> | I would really be greatful if somebody could help me get that reviewed. Not because the feature is a big deal, but I'm without a job, and I want to get better at Haskell to eventually target some haskell job |
| 2025-09-03 18:07:14 | <Enrico63> | And doing open source seems a way to learn, I suppose |
| 2025-09-03 18:13:27 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-03 18:15:41 | × | fp quits (~Thunderbi@89-27-10-140.bb.dnainternet.fi) (Ping timeout: 258 seconds) |
| 2025-09-03 18:19:12 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2025-09-03 18:20:27 | → | sprotte24 joins (~sprotte24@p200300d16f10bc004086942b78d8edfa.dip0.t-ipconnect.de) |
| 2025-09-03 18:20:34 | → | cherryramatisdev joins (~cherryram@user/cherryramatisdev) |
| 2025-09-03 18:23:18 | <__monty__> | Fair warning, if your priority is landing a job, focusing on Haskell is probably not the way. |
| 2025-09-03 18:24:19 | × | divlamir quits (~divlamir@user/divlamir) (Read error: Connection reset by peer) |
| 2025-09-03 18:24:25 | <[exa]> | (otoh don't get demotivated, saying "I can do haskell" helps :D ) |
| 2025-09-03 18:24:40 | → | divlamir joins (~divlamir@user/divlamir) |
| 2025-09-03 18:24:56 | <chromoblob> | "I can do Haskell but can't do anything other" |
| 2025-09-03 18:25:21 | <[exa]> | s/can't/don't want to/ :D |
| 2025-09-03 18:25:21 | × | cherryramatisdev quits (~cherryram@user/cherryramatisdev) (Ping timeout: 244 seconds) |
| 2025-09-03 18:25:31 | <chromoblob> | you are right |
| 2025-09-03 18:26:02 | <[exa]> | Enrico63: just from the point of the reviewer, could you separate the commits into formatting changes and then actual changes by topic? (not part 1,2,...; these are kinda very anonymous) |
| 2025-09-03 18:26:28 | <[exa]> | OTOH I have to say that some of the formatting changes there are for a very good reason :D |
| 2025-09-03 18:28:48 | → | cherryramatisdev joins (~cherryram@user/cherryramatisdev) |
| 2025-09-03 18:29:17 | <[exa]> | Enrico63: anyway the PR is open for literal 5 hours now and you got feedback already, I'd say wait a day or so and it's gonna get attention |
| 2025-09-03 18:30:35 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-03 18:31:29 | <[exa]> | Enrico63: oh wait you have very good comments in the longer commit messages, stupid me, sorry :D |
| 2025-09-03 18:33:14 | <[exa]> | ^ actual reviewer simulation ^ |
| 2025-09-03 18:35:24 | × | cherryramatisdev quits (~cherryram@user/cherryramatisdev) (Ping timeout: 252 seconds) |
| 2025-09-03 18:37:32 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2025-09-03 18:41:20 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 2025-09-03 18:44:47 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 2025-09-03 18:48:20 | × | Everything quits (~Everythin@217.147.163.184) (Quit: leaving) |
| 2025-09-03 18:48:39 | → | cherryramatisdev joins (~cherryram@user/cherryramatisdev) |
| 2025-09-03 18:49:03 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 2025-09-03 18:51:29 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 2025-09-03 18:57:50 | × | trickard quits (~trickard@cpe-51-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-09-03 18:58:03 | → | trickard_ joins (~trickard@cpe-51-98-47-163.wireline.com.au) |
| 2025-09-03 18:59:27 | × | cherryramatisdev quits (~cherryram@user/cherryramatisdev) (Ping timeout: 244 seconds) |
| 2025-09-03 19:00:03 | × | caconym747 quits (~caconym@user/caconym) (Quit: bye) |
| 2025-09-03 19:00:44 | → | caconym747 joins (~caconym@user/caconym) |
| 2025-09-03 19:01:51 | <tomsmeding> | __monty__: no it doesn't save pointers |
| 2025-09-03 19:02:11 | <tomsmeding> | __monty__: https://paste.tomsmeding.com/LCpzehi8 even with a dumb Zero at the end, it's one pointer less |
| 2025-09-03 19:03:22 | <tomsmeding> | (because the Two is like (:)) |
| 2025-09-03 19:03:46 | <tomsmeding> | if you had Many [a], then that would save some pointers |
| 2025-09-03 19:07:35 | <int-e> | you kind of save the pointer to []: https://paste.tomsmeding.com/EC4Txwvi |
| 2025-09-03 19:08:20 | → | cherryramatisdev joins (~cherryram@user/cherryramatisdev) |
| 2025-09-03 19:08:30 | <tomsmeding> | that's if you sensibly don't use Zero, yes |
| 2025-09-03 19:09:51 | <int-e> | you'd save more if `One a` gets unpacked but that doesn't work with polymorphic types |
| 2025-09-03 19:10:25 | <int-e> | and sure, you can "waste" pointers if you keep using `Zero`. |
| 2025-09-03 19:13:21 | × | cherryramatisdev quits (~cherryram@user/cherryramatisdev) (Ping timeout: 252 seconds) |
| 2025-09-03 19:14:46 | <int-e> | Oh wait my second example is missing the `One` constructors. |
| 2025-09-03 19:26:15 | trickard_ | is now known as trickard |
| 2025-09-03 19:26:28 | → | cherryramatisdev joins (~cherryram@user/cherryramatisdev) |
| 2025-09-03 19:32:42 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 2025-09-03 19:37:36 | → | rustisafungus joins (~segfaultf@23-93-74-222.fiber.dynamic.sonic.net) |
| 2025-09-03 19:43:07 | → | pavonia joins (~user@user/siracusa) |
| 2025-09-03 19:46:05 | <__monty__> | I guess the real question is why do we even have [] and (:)? We should have Zero, One, Two : > |
| 2025-09-03 19:47:13 | <tomsmeding> | because [] has O(1) head :p |
| 2025-09-03 19:48:01 | <tomsmeding> | but if all you do is build a sequence up using Monoid operations and then fold over the thing once, that's unnecessary and something like Str works better |
| 2025-09-03 19:48:12 | <tomsmeding> | I typically call this Bag |
| 2025-09-03 19:49:34 | × | zarakshR quits (~Thunderbi@host5-81-134-212.range5-81.btcentralplus.com) (Quit: zarakshR) |
| 2025-09-03 19:49:52 | → | zarakshR joins (~Thunderbi@host5-81-134-212.range5-81.btcentralplus.com) |
| 2025-09-03 19:50:17 | <int-e> | __monty__: add Three and maybe Four and some inside-out zipper and you might get a finger tree |
| 2025-09-03 19:50:57 | <__monty__> | They're called finger trees because they have a constructor for each of my fingers? : O |
| 2025-09-03 19:51:27 | <tomsmeding> | (see also https://www.cs.tufts.edu/~nr/cs257/archive/koen-claessen/finger-trees.pdf ) |
| 2025-09-03 19:51:29 | <int-e> | I like to explain it as them having a huge middle finger. |
| 2025-09-03 19:51:40 | × | ubert quits (~Thunderbi@178.165.187.121.wireless.dyn.drei.com) (Ping timeout: 265 seconds) |
| 2025-09-03 19:52:10 | <int-e> | Anyway, what I said isn't too accurate... but there are some parts that actually fit. |
| 2025-09-03 19:52:51 | <Enrico63> | [exa], you mean I should keep the fractioning of the change as I have done it? |
| 2025-09-03 19:53:10 | <Enrico63> | ... just read your "oh wait" message. |
| 2025-09-03 19:56:43 | → | ubert1 joins (~Thunderbi@178.165.187.121.wireless.dyn.drei.com) |
| 2025-09-03 19:57:17 | × | zarakshR quits (~Thunderbi@host5-81-134-212.range5-81.btcentralplus.com) (Remote host closed the connection) |
| 2025-09-03 19:57:35 | → | zarakshR joins (~Thunderbi@host5-81-134-212.range5-81.btcentralplus.com) |
| 2025-09-03 20:01:18 | × | Lycurgus quits (~juan@user/Lycurgus) (Remote host closed the connection) |
| 2025-09-03 20:01:24 | × | michalz_ quits (~michalz@185.246.207.200) (Remote host closed the connection) |
| 2025-09-03 20:03:32 | <monochrom> | We should have Zero, One, Two, Three, Four, Five, ... ad infinitum. Deeply magical built-in. |
| 2025-09-03 20:04:10 | <int-e> | monochrom: it's called Array |
| 2025-09-03 20:04:20 | <monochrom> | :( :D |
All times are in UTC.