parser yacc (pre-bison) nello script bash. Implementazione di jq in bash

A volte sorge il problema di scrivere un piccolo script intelligente che comprenda la grammatica incorporata, cioè con un mini-linguaggio al suo interno. Inizialmente avevo scritto un'implementazione minima di jq in bash. Ma più “intelligenza” veniva aggiunta lì, più difficile diventava implementare l’analisi ricorsiva delle sottoespressioni. Ero così stanco di questo che mi è stato chiesto di scrivere prima il compilatore LARL(1) yacc (pre-bison) per generare uno script bash e poi, come un orologio, ho ottenuto un codice molto simile all'originale e un buon test per yacc_bash.c mini-jq in bash.

Articolo completo:

Fonte: linux.org.ru

Aggiungi un commento