yacc (pre-bison) parser i bash-skript. Implementering av jq på bash

Noen ganger oppstår det et problem med å skrive et lite smart skript som forstår en innebygd grammatikk, det vil si med et minisil i seg. I utgangspunktet skrev jeg en minimal implementering av jq på bash. Men jo mer "smarte" funksjoner som ble lagt til, desto vanskeligere ble det å implementere rekursiv analyse av deluttrykk. Dette ble så irriterende at det inspirerte meg til først å skrive en LARL(1) yacc (pre-bison) kompilator for å generere bash-skript, og deretter, som en lek, fikk jeg til en kode som lignet mye på originalen, samt en god sjekkekode for yacc_bash.c mini-jq på bash.

Hele artikkelen:

Kilde: linux.org.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster