Repository navigation
Prepare the 3.8 release - #218
Conversation
|
Here is a proposed anoncement post [ANN] Sedlex 3.8Sedlex 3.8 is out! 🎉 Sedlex is a unicode-friendly lexer generator for OCaml originally written by You can read the notes for this release here: The headline feature is named capture groups. Sub-patterns can be bound match%sedlex buf with
| (Plus ('0'..'9') as num), '.', (Plus ('0'..'9') as frac) ->
let n = Sedlexing.Utf8.of_submatch num in
let f = Sedlexing.Utf8.of_submatch frac in
Printf.printf "integer=%s fractional=%s\n" n f
| _ -> ()Captures are implemented with a tagged DFA, so the generated lexer remains a This release also brings:
The Many thanks to everyone who reported issues and reviewed the capture-group |
|
@pmetzger, @toots any thought ? I think master is in a good enough state for a release. The group capture works with no known bugs. There is room for improvement regarding memory/register sizes and number of op to track capture but it doesn't need to come now. This is no perf impact for lexer without group capture. |
|
I think de facto at the moment you are the person who understands this code the best and has the most ownership. Submatch capture is a really important feature, I think it warrants a release, but I don't have a good sense of what remaining performance issues etc. might exist. If you feel it would be a good idea, how about comparing the performance of re2c in OCaml mode and Sedlex on a bunch of representative stuff? I suspect that could be done in an hour or two with the aid of our robot friends, and might yield some interesting information. But do not feel obligated, this is a suggestion for your benefit, not a requirement! I think you should do what you feel is right. Or, in other words, if you think it's a good time for a release, let's do one! |
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Bump the version to 3.8 and date the changelog, as for 3.6 and 3.7:
dune-project, the regeneratedsedlex.opam, and theCHANGES.mdheader.Nothing else references the version. The Unicode version strings in
examples/are the old/new pair used by the regression test and alreadymention 18.0.0.
The date is today's; adjust it if the release slips.
🤖 Generated with Claude Code