2026/03/01

Newest at the top

2026-03-01 20:08:45 +0100KindFoxo(~KindFoxo@user/KindoFoxo) KindoFoxo
2026-03-01 20:05:42 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
2026-03-01 20:03:05 +0100KindFoxo(~KindFoxo@user/KindoFoxo) (Read error: Connection reset by peer)
2026-03-01 20:02:22 +0100 <monochrom> It has been already mzero for MonadPlus, so maybe we could have called it azero.
2026-03-01 19:58:41 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-03-01 19:56:14 +0100 <EvanR> E = empty | just Char | E <> E | E <|> E | many E, "these are the only ways to construct a regular expression --conway" xD
2026-03-01 19:56:05 +0100 <c_wraith> but yes, it was realized pretty early on that applicative+alternative gives you context-free grammars
2026-03-01 19:55:52 +0100 <monochrom> They came from all over the places. many, some, <|> are clearly from parsing and regex. You would then like to say "fail" for the identity of <|>, but "fail" is already taken, so the analogy went sideways and if you think of <|> as set union then its identity is the empty set. (Clearly, it is not the empty string.)
2026-03-01 19:54:58 +0100arandombit(~arandombi@user/arandombit) (Remote host closed the connection)
2026-03-01 19:52:53 +0100 <c_wraith> they were based on parsing, more broadly
2026-03-01 19:52:41 +0100 <EvanR> hold on... were the names of empty, many, some, and <|> based on regex
2026-03-01 19:50:40 +0100tromp(~textual@2001:1c00:3487:1b00:9536:a446:6cb6:b101)
2026-03-01 19:50:39 +0100sawilagar(~sawilagar@user/sawilagar) sawilagar
2026-03-01 19:49:31 +0100Pozyomka(~pyon@user/pyon) pyon
2026-03-01 19:48:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-01 19:47:31 +0100 <monochrom> https://hackage.haskell.org/package/regex-applicative has nicer syntax. (You just use Alternative operators!)
2026-03-01 19:47:23 +0100Pozyomka(~pyon@user/pyon) (Quit: WeeChat 4.8.1)
2026-03-01 19:45:11 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...)
2026-03-01 19:43:18 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-03-01 19:42:51 +0100peterbecich(~Thunderbi@71.84.33.135) peterbecich
2026-03-01 19:42:23 +0100 <EvanR> the tiny game jam was kind of amazing
2026-03-01 19:40:22 +0100tromp(~textual@2001:1c00:3487:1b00:9536:a446:6cb6:b101) (Quit: My iMac has gone to sleep. ZZZzzz…)
2026-03-01 19:38:47 +0100 <haskellbridge> <sm> and of course so can Haskell https://github.com/haskell-game/tiny-games-hs
2026-03-01 19:38:31 +0100 <EvanR> Milan_Vanca, a fun exercise in SDL or raylib etc
2026-03-01 19:37:55 +0100 <haskellbridge> <sm> C can too! https://needleful.net/blog/2024/01/arthur_whitney.html :)
2026-03-01 19:37:52 +0100 <Milan_Vanca> Imagine binary encoded as RGB bitmap...
2026-03-01 19:37:23 +0100 <EvanR> virtuous!
2026-03-01 19:37:13 +0100 <EvanR> APL code has the same compaction, it's so small it occupies the top left 2% of my screen
2026-03-01 19:36:26 +0100 <Milan_Vanca> EvanR: Hehe :D vim can also soft linewrap
2026-03-01 19:36:22 +0100 <EvanR> something might be parsable using an extension to regex... but why
2026-03-01 19:36:02 +0100 <EvanR> they also have come up less since I learned about parser combinators
2026-03-01 19:36:00 +0100 <haskellbridge> <sm> compactness can be a virtue
2026-03-01 19:35:26 +0100 <EvanR> they are (potentially) small so I can fit 2000 of them on my screen? no thanks!
2026-03-01 19:35:05 +0100 <haskellbridge> <sm> s/also//
2026-03-01 19:34:57 +0100 <EvanR> after seeing a lot of other nice looking languages, regex makes my head hurt
2026-03-01 19:32:48 +0100 <haskellbridge> <sm> https://www.regular-expressions.info is also excellent
2026-03-01 19:32:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-01 19:32:38 +0100 <Milan_Vanca> sm: I don't think people hate regexes
2026-03-01 19:32:24 +0100ski. o O ( "Regular Expression Matching Can Be Simple And Fast (but is slow in Java, Perl, PHP, Python, Ruby, ...)" by Russ Cox in 2007-01 at <https://swtch.com/~rsc/regexp/regexp1.html> )
2026-03-01 19:32:20 +0100ski. o O ( "IrRegular Expressions" by foof at <https://synthcode.com/scheme/irregex/> )
2026-03-01 19:31:45 +0100 <Milan_Vanca> Anyway here https://hackage.haskell.org/package/base-4.12.0.0/docs/src/Text.ParserCombinators.ReadP.html#ReadP is ReadP defined with "newtype" but in documentation it shows "data" https://hackage.haskell.org/package/base-4.12.0.0/docs/Text-ParserCombinators-ReadP.html#t:ReadP
2026-03-01 19:31:04 +0100 <haskellbridge> <sm> I don't know how a unix user could really hate regex
2026-03-01 19:30:06 +0100 <haskellbridge> <sm> standard regular expressions are meant to be compact and powerful. (And their syntax predates most of us, so I cut them some slack.) You can always use a DSL or regex flavour that lets you write more verbosely.
2026-03-01 19:27:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-03-01 19:26:40 +0100 <Milan_Vanca> I don't know they should be more simple than "programming languges". Maybe we are just not used to them. And maybe writing whole "program" in one line without indentation is the problem.
2026-03-01 19:17:08 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-03-01 19:14:51 +0100karenw(~karenw@user/karenw) karenw
2026-03-01 19:14:10 +0100ctk(~calimero@user/calimeroteknik) CalimeroTeknik
2026-03-01 19:14:10 +0100ctk(~calimero@ctkarch.org) (Changing host)
2026-03-01 19:12:32 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn