В далеком 2011 году один студент в рамках GSoC начал писать очень интересную вещь: интерпретатор bash, реализующий парсинг в AST и работу над оным, без, собственно, вызова bash
И все бы хорошо, но лето кончилось, а с ним и энтузиазм студента: больше подвижек в эту сторону вроде не было (может из-за узкой области применения, может из-за говнокода самого сабжа, история умалчивает).
Наиболее интересна штука должна быть гентушникам, так как позволила бы на порядок ускорить работу portage засчет замены кучи вызовов bash на вызовы сишного апи libbash с соответствующим кэшированием абстрактных синтаксических деревьев.
Собственно, хочу продолжить это дело и довести до конца, но мне в корне не нравится подход автора оригинала: нагромождения буста, собственный велосипедный парсер итд.
Вопрос #1:
Подходит ли баш для составления формальной грамматики генератора LR-парсеров вроде bison? (в парсерах не силен, так что не бейте, если ответ очевиден)
Вопрос #2, преимущественно к разработчикам генты и портажа:
Ведется ли какая-то разработка в этом направлении или все затухло тогда в 2011?
Вопрос #3, к ним же:
Нужно ли, будет ли востребовано, и, будет ли включено в состав портаж, если допилю?
Вопрос #4, ко всем остальным:
Какой потенциал у libbash, кроме ускорения портаж, нужно ли оно?
UPDATE:
Мне ответил мейнтейнер либбаша:
Я: We are wondering if libbash is still needed by gentoo dev team and why there was no activity since 2012?
Petteri: It has never been a required component. It could have been had enough effort been put into it. There's no activity because no-one is working on the project.
Я: What have changed and do portage now call bash for every ebuild?
Petteri: Nothing. Portage has always called bash for every ebuild.
Я: Is there any reason to continue libbash development?
Petteri: There is but if it happens, a re-evaluation of the architecture should be done to see if the choices are relevant any more.