@jakob My changes were included in Guile in december 2024, and they are already in the most recent release.
6750f6cc8 PEG: string-peg: Add HTML5 grammar test. 38ad26497 PEG: string-peg: Better support for escaping. c86a48a92 PEG: string-peg: Fix [^...] interpretation. 25504ba21 PEG: Add support for `not-in-range` and [^...] ff11753df PEG: Add full support for PEG + some extensions
@jakob HEY! that's NOT true! I renewed the string-peg a little bit not that long ago, and @regtur has prepared a great PR with improvements to PEG. If you are interested on it, please help me review!
By default it has a commonmark parser which is problematic, because it does not support a few things I use a lot: footnotes.
It doesn't support ids on headers either.
So I could convert the posts to sxml or html with other tool and migrate them like that, or I could add a new parser that actually supports those features.
I don't dislike simplifying my future post style or move to texinfo, which is better supported.
@janneke@cnx I like the approach but in a way that would destroy the process of reaching the conclusions I reached. In some commits, it's interesting, others are just silly fixes. But yeah, it's a reasonable balance.
About the commits, it's probably me that I'm that kind of "all over the place" programmers that touch too many things at the same time and when I make the commits I sometimes have interleaved things that are then hard to reorder for squashing...
@janneke@cnx From the top of my head, for example a tool like fossil where the commits are immutable, could keep track the fixups and, regardless if they are mixed with other dependent commits in between, could allow for querying a fixup history for one commit and understand it in context... That could be an interesting way to logically organize the changes, but in the query, and not when the change is introduced.
@janneke@cnx Being more organized would help here, but I don't want the politics of a project or the tool that I use (git in this case) to dictate how should I work.
I prefer to let the fixes come first and adapt the policy and the tool to support that.
(Now I'm not saying we should change the tool in Mes or the policy, I think it is fine. I'm just trying to think about a different paradigm of something that would fit my brain better)
@janneke@civodul@wingo Yes, the module system is one of the things that produces most of this Scheme->C->Scheme dance and also guile having a different behavior when it's AOT compiled vs when it's interpreting makes everything very hard: It forces us to expand+compile+evaluate top-level expressions one by one, with all the problems that has.
@civodul@janneke@wingo One of the most limiting things I found is the context switches between C and Scheme, that sometimes can trigger some `eval` that makes another context switch.
Also, moving a few things (like arithmetic operators) to opcodes makes everything WAAAAY faster, but that disallows making things like (define (+ . x) whatever) if it's not done carefully. Do you have any trick for this?