yacc (pre-bison) парсер в bash-скрипт. Реализация на jq в bash

Понякога възниква проблем да се напише малък интелигентен скрипт, който разбира определена вградена граматика, т.е. с миниезик вътре. Първоначално написах минимална реализация на jq на bash. Но с увеличаването на "умността" ставаше все по-трудно да се реализира рекурсивен парсинг на подпредикати. Това толкова ми омръзна, че ме подтикна първо да напиша компилатор LARL(1) yacc (pre-bison) за генериране на bash-скрипт, а след това, като по масло, се получи много подобен на оригинала и добър проверъчен код за yacc_bash.c мини-jq на bash.

Цялата статия:

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster