razčlenjevalnik yacc (pre-bison) v skriptu bash. Implementacija jq v bash

Včasih se pojavi težava pri pisanju majhnega pametnega skripta, ki razume nekaj vgrajene slovnice, torej z mini jezikom v notranjosti. Prvotno sem napisal minimalno implementacijo jq v bash. Toda več ko je bilo tam dodanega »pametnosti«, težje je bilo izvajati rekurzivno razčlenjevanje podizrazov. Tega sem bil tako utrujen, da sem moral najprej napisati prevajalnik LARL(1) yacc (pre-bison) za ustvarjanje bash skripta, nato pa sem kot po maslu dobil zelo podobno izvirniku in dobro testno kodo za yacc_bash.c mini-jq v bashu.

Celoten članek:

Vir: linux.org.ru

Dodaj komentar