Newest at the top
2024-12-28 02:05:27 +0100 | euleritian | (~euleritia@dynamic-176-006-141-001.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-12-28 02:03:11 +0100 | <haskellbridge> | <Bowuigi> "tr'd xs = go xs "" where go [] = id; go ('!':xs) = go xs; go (x:xs) = (x:) . go xs" |
2024-12-28 01:59:50 +0100 | <haskellbridge> | <Bowuigi> geekosaur it might be faster to use a Cayley-ish abstraction |
2024-12-28 01:57:58 +0100 | <homo> | sed s/!//g |
2024-12-28 01:57:21 +0100 | <geekosaur> | faster wouuld be to prepend to ys and reverse it at the end |
2024-12-28 01:57:06 +0100 | <geekosaur> | tr'd xs = go xs "" where go [] ys = ys; go ('!':xs) ys = go xs ys; go (x:xs) = go xs (ys ++ [x]) |
2024-12-28 01:56:26 +0100 | Sisyphean | (~Sisyphean@user/Sisyphean) Sisyphean |
2024-12-28 01:56:23 +0100 | <homo> | this is why I'm trying to figure out how to add bangpatterns to hugs instead of removing every ! from microhs's code |
2024-12-28 01:56:01 +0100 | <c_wraith> | you could always use seq directly. |
2024-12-28 01:55:38 +0100 | <geekosaur> | uh, no |
2024-12-28 01:55:33 +0100 | <homo> | Bowuigi I don't want to do that because bangpatterns are very important for optimization, they might even prevent hugs from segfaulting |
2024-12-28 01:55:07 +0100 | Sisyphean | (~Sisyphean@user/Sisyphean) (Read error: Connection reset by peer) |
2024-12-28 01:54:57 +0100 | <geekosaur> | tr'd [] = []; tr'd ('!':xs) = tr'd xs |
2024-12-28 01:54:35 +0100 | <homo> | speaking of smaller, https://github.com/blynn/compiler is an interesting quest where minimal compiler written in C compiles tiny subset of haskell, so next compiler is written in that tiny subset to implement bigger subset, then another compiler is written in bigger subset... |
2024-12-28 01:53:04 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-28 01:52:59 +0100 | <haskellbridge> | <Bowuigi> "tr -d '!'" on Linux/POSIX |
2024-12-28 01:52:35 +0100 | <haskellbridge> | <Bowuigi> Hmmm would a simple text replacement command deleting every ! work? |
2024-12-28 01:51:42 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 276 seconds) |
2024-12-28 01:49:14 +0100 | <homo> | microhs is the only hope to bootstrap ghc, as unfortunately ghc maintainers have no interest to make ghc buildable with smaller haskell implementations :( |
2024-12-28 01:48:46 +0100 | <haskellbridge> | <Bowuigi> A similar thing can be done at the type level, tho it doesn't look like that |
2024-12-28 01:48:40 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 01:48:09 +0100 | <haskellbridge> | <Bowuigi> Because that's a term level function, not a type level one |
2024-12-28 01:46:16 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) |
2024-12-28 01:45:40 +0100 | Sisyphean | (~Sisyphean@user/Sisyphean) Sisyphean |
2024-12-28 01:45:30 +0100 | <homo> | last (xs ++ [x]) = x |
2024-12-28 01:44:56 +0100 | <homo> | it's interesting how only haskell's type-system is logic programming, but functional patterns like in curry language are impossible |
2024-12-28 01:44:35 +0100 | IamPyu | (~IamPyu@user/IamPyu) (Client Quit) |
2024-12-28 01:44:05 +0100 | sprotte24 | (~sprotte24@p200300d16f4a7c0031dcae6904c3663c.dip0.t-ipconnect.de) (Quit: Leaving) |
2024-12-28 01:43:54 +0100 | <geekosaur> | ignoring FFI and hierarchical modules, which were widely supported and (semi-)official extensions |
2024-12-28 01:43:29 +0100 | <homo> | npk patterns, a simulation of logical programming |
2024-12-28 01:43:07 +0100 | <geekosaur> | not very; 2010 only added like two things to H98 (and removed one) |
2024-12-28 01:42:44 +0100 | <homo> | it's interesting how much of haskell2010 hugs supports |
2024-12-28 01:42:19 +0100 | <homo> | all other extensions that microhs requires are already (partially?) supported by hugs, so there is hope to get better implementation than hugs bootstrappable |
2024-12-28 01:41:47 +0100 | euandreh | (~Thunderbi@2804:d59:8929:cc00:c70d:53a7:f44e:6c64) euandreh |
2024-12-28 01:41:37 +0100 | <haskellbridge> | <Bowuigi> Oh it has fundeps https://www.haskell.org/hugs/pages/hugsman/exts.html |
2024-12-28 01:41:26 +0100 | <homo> | I want to bootstrap microhs from hugs and it requires bangpatterns, I would rather not remove bangpatterns from microhs's source |
2024-12-28 01:41:25 +0100 | <monochrom> | Oh, bang pattern is a cross-cutting concern, yeah. |
2024-12-28 01:41:00 +0100 | IamPyu | (~IamPyu@user/IamPyu) IamPyu |
2024-12-28 01:41:00 +0100 | IamPyu | (~IamPyu@static209-34-105-235.r.rev.accesscomm.ca) (Changing host) |
2024-12-28 01:41:00 +0100 | IamPyu | (~IamPyu@static209-34-105-235.r.rev.accesscomm.ca) |
2024-12-28 01:40:51 +0100 | <homo> | it is hard for me to understand source code of hugs, I am trying to patch src/parser.y in order to add bangpatterns, but it appears I cannot add them in one short line :( |
2024-12-28 01:40:45 +0100 | <geekosaur> | (well, you can also do it with associated type families, but Hugs definitely doesn't have those) |
2024-12-28 01:40:15 +0100 | <geekosaur> | pretty sure it had both MPTC and fundeps (which are pretty much mandatory to make MPTC usable) |
2024-12-28 01:39:41 +0100 | <haskellbridge> | <Bowuigi> I don't remember Hugs having fundeps, lemme check |
2024-12-28 01:39:28 +0100 | <haskellbridge> | <Bowuigi> I think it is related to MPTC and overlapping instances |
2024-12-28 01:39:05 +0100 | <geekosaur> | they're more or less prolog in haskell's type system |
2024-12-28 01:38:49 +0100 | <geekosaur> | wouldn't have been related to functional dependencies, would it? |
2024-12-28 01:38:42 +0100 | <Zenen> | [rationality intensifies] |
2024-12-28 01:38:24 +0100 | <homo> | prolog implemented in haskell... |
2024-12-28 01:38:17 +0100 | <homo> | while digging hugs's source code, I was surprised to find it contains implementation of prolog |