• [Python-announce] OGoPEGo v0.1.13

    From =?UTF-8?Q?Juancarlo_A=C3=B1ez?=@[email protected] to comp.lang.python.announce on Sun Jun 14 15:56:04 2026
    From Newsgroup: comp.lang.python.announce

    https://pypi.org/project/ogopego/

    ## [v0.1.13] 2026-06-14 New syntax + optimized grammar models

    ### Added

    - New `@name`, `@int`, `@uint`, `@float`, `@bool` meta-expressions for
    typed token matching (names, signed/unsigned ints, floats, bools)
    - `Cursor.MatchName`/`MatchInt`/`MatchUInt`/`MatchFloat`/`MatchBool`
    methods on `RuneCursor` and `StrCursor`
    - `Ctx` interface methods that delegate to cursor matching
    - Five concrete model types (`NameMeta`, `IntMeta`, `UIntMeta`,
    `FloatMeta`, `BoolMeta`) with `MetaExp` base
    - Full compilation pipeline: EBNF tree compile, JSON import/export,
    analysis passes, display (pretty-print & railroads)
    - 40 cursor-level tests ported from TatSu
    - Boot grammar usage of `@name` in rule definitions

    ### Changed

    - Meta expression dispatch updated from single `*MetaExp` type case to five individual type cases across the compiler pipeline
    - All TatSu `@` meta features brought to parity with TatSu v5.21.1

    ### Changed

    - Refactored grammar semantics from function type (`SemanticsFunc`) to `GrammarSemantics` interface in `pkg/config`; replaced
    `GrammarParserSemantics` with `EBNFGrammarSemantics` struct adding meta-expression node production (`NameMeta`, `IntMeta`, `UIntMeta`, `FloatMeta`, `BoolMeta`) during boot grammar compilation of `@` expressions

    --
    Juancarlo AƱez
    mailto:[email protected]
    --- Synchronet 3.22a-Linux NewsLink 1.2