On 5/9/25 16:45, Nikolaos Chatzikonstantinou wrote:
[...]
I'm worried about:

1. What mode GNU m4 opens files in; m4p always open in binary,
potentially treating carriage return differently on Windows.
2. Sneaky bugs.

The functions that I have not yet implemented are debug functions, so
they probably will not affect production m4 macros. The changeword
macro might be removed in future versions of GNU m4 and I might not
implement it at all, not sure if anyone uses it. I have not had any
benchmarks, but from roughly looking at
how long tests take I'm measuring a 100x slowdown.

Have you tried running it with PyPy? (<URL:https://pypy.org/>)

  I'm hoping to
rewrite it in Rust later to address that.

Unfortunately, Rust has ... problems as a language and ecosystem.  For reasons that are partially technical and partially political, the general view of Rust at the GNU project seems rather dim to me.  (An "AI"-assisted switch to Rust was the April Fool's joke earlier this year.)

The political problems were bad enough to spawn a Rust fork (<URL:https://crablang.org/>) which amusingly has provided most of the logo for the ongoing efforts to implement a Rust frontend for GCC.  (<URL:https://rust-gcc.github.io/>)

Rust should probably be considered unusable for GNU development until that GCC frontend is complete due to one of the larger problems with Rust:  the Rust language drifts "out from underneath" existing code.  That is not acceptable at GNU, but the GCC Rust-language frontend is expected to follow the same convention GCC uses for other languages where the standards have evolved with time.

I believe that their first goal is to implement Rust 1.49, which gccrs will continue to support into the indefinite future.


-- Jacob


Reply via email to