Hi Daniele, > Le 3 juil. 2020 à 23:15, Daniele Nicolodi <dani...@grinta.net> a écrit : > > Hello, > > the historical pairing is using Flex with Bison. However, while Bison is > under active development and seems to be a very solid code base, there > isn't much activity on the Flex side https://github.com/westes/flex and > Flex codebase and capabilities show their age.
Yes. I have a couple of issues opened over there, and it takes for ages to get them processed. When they are. When I tried to modernize the Flex doc about Bison, they even managed to turn this into a lecture about software maintenance. And not install my changes. https://github.com/westes/flex/pull/420 > I recently became aware of RE/flex https://www.genivia.com/reflex.html > which seems very promising. However, it only generates a C++ scanner > which may be (I haven't tried) to retro-fit into existing C projects to, > for example, gain full unicode (in its utf8 encoded form) support. It seems amazing. Featurewise and performancewise. I did not know it (nor did I know ugrep). I've seen projects use ragel (http://www.colm.net/open-source/ragel/) and re2c (https://re2c.org). But, sadly, I have first-hand experience with Flex only, I can't comment about the others. > Has anyone tried to hammer a C++ scanner peg generated by RE/flex into a > C grammar hole generated by Bison? > > Which other scanners do people use? Fine question. I'm eager to read the answers! Cheers!