A modified version of byacc that generates a parser in Perl code, by Rick Ohnemus.
It has a "-p" switch so multiple parsers can be used in one program (C or Perl).
Version 1.8.2 should work on most Unix systems.
It also works with SAS/C 6.x on Amiga.