YACC ti aiuta con un passo della pipeline: creare un parser per una specifica grammatica. Ci sono molti altri modi per fare questo passo. Ci sono un sacco di generatori di parser disponibili, oppure puoi scrivere manualmente il tuo parser. A seconda delle tue esigenze, ci sono molti motivi tecnici per considerare YACC obsoleto, non ultima la sua scelta limitata di linguaggi di output.
Tuttavia, non è affatto obsoleto come strumento pedagogico. Avrai bisogno di imparare i fondamenti di parser e grammatiche, non importa quale parser usi, e puoi apprenderli altrettanto facilmente usando YACC come qualsiasi altra cosa. La conoscenza si traduce molto facilmente. Ho imparato YACC a scuola, ma ho raccolto ANTLR con pochissimo sforzo.
Considera anche che è molto probabile che il tuo bug non sia nemmeno nel parser. Di solito la maggior parte dei bug del parser viene risolta molto presto nel progetto, perché hanno la tendenza a produrre fallimenti spettacolari. Gli errori più sottili tendono ad essere nei livelli a valle del parser, che non hanno nulla a che fare con YACC.