thoughts on splitting up NYACC
Matt Wette <[email protected]> Sat, 27 Dec 2025 15:09:25 -0800
| Newsgroups | gmane.lisp.guile.user |
|---|---|
| Message-ID | <[email protected]> |
Hi All, I have been working on NYACC for over 10 years now. I started with a parser-generator (lalr) and progressed to C parser (parse-c99) and then FFI helper (ffi-helper). Lately I have replaced the backend for the ffi-helper with a custom bytevector layer (cdata). I have wondered if I should split up this package. If so, it would likely be into the following: 1) nyacc : the parser generator; no other guile-external dependencies 2) guile-cdata: bytevector cover for C data, with arch-info; no other guile-external dependencies 3) guile-cparser : C parser, dependent on (1) nyacc and arch-info from (2) 4) guile-ffi-helper: C code to guile FFI generator Thoughts? I'm looking for feedback from those who use any of the above. FYI, regarding the FFI helper, I have inserted a level of indirection so that the FFI helper can generate code for not only cdata, but also scheme-bytestructures and bstructs, given the plugins from github.com/mwette/guile-fhbe (ffi helper back-end). I'm hoping I will not have to provide support for the alternate backends. (See dev-3.02 branch in github.com/mwette/nyacc for work-in-progress.) Matt