Why Sponsor Oils? | blog | oilshell.org
I fixed up the ${}
parser and these projects now parse without errors:
Julia (github): ~58K lines of shell
scripts. Most of the lines are generated by autotools, which I believe
uses a pretty restricted subset of sh
to work on as many machines as
possible.
Mesos (github): ~1600 lines of shell scripts in the repo for this cluster manager in C++.
Dokku (github): ~600 lines of shell scripts for the "smallest PaaS you've ever seen". I think that this is the whole project!
Bash on Balls (github): ~600 lines for a web framework written in bash!
I'm working on parsing code in these categories:
Repos on my hard drive, because they were there :-). I have an interest in programing languages and (distributed) operating systems, and the first three projects reflect that.
Esoteric projects like Bash on Balls. These programs tend to abuse bash
(not just sh
) as a language, so they should be good test cases. I've seen
a second web framework in bash as well as two different Lisps -- each of
which have a handful of parse errors left.
Repos that are widely used. I'm working on parsing the git source tree, which has over a 100K lines of shell scripts.
If there are other good test cases I should know about, especially in the last category, send me a mail (address on the home page).
Tomorrow I will show the grammar that I used to parse ${}
and point out
some notable issues.