ircmaxell/php-yacc
PHP port of kmyacc: a YACC/LALR(1) parser generator that takes a YACC grammar (plus a parser template) and generates a PHP parser. Useful for building fast parsers for structured/unstructured languages; generation is resource-heavy, parsing is fast.
Architecture fit: The package is designed for build-time code generation, fitting Laravel's static code generation patterns (e.g., migrations, factories). However, it lacks Laravel-specific abstractions, requiring manual integration of generated parsers via service providers or facades. The template-based generation approach conflicts with Laravel's convention-over-configuration philosophy, adding complexity.
Integration feasibility: Technically possible but high-effort. Requires Composer installation and build pipeline modifications. The unstable CLI tool (flag behavior changes between releases) and lack of versioned API make integration brittle. PHP 8.1+ compatibility aligns with modern Laravel, but no guarantees for future versions.
Technical risk: High. Critical risks include: (1) No maintenance since 2020 (security/compatibility vulnerabilities), (2) NOASSERTION license (legal uncertainty), (3) Unresolved bugs in core algorithms (e.g., conflict resolution), (4) Missing critical features like %union support, (5) Minimal test coverage.
Key questions: (1) Are there maintained forks addressing these gaps? (2) How to handle PHP version upgrades if the package breaks? (3) Is there a viable alternative (e.g., ANTLR-PHP, custom parser)? (4) What's the fallback if critical bugs
How can I help you explore Laravel packages today?