nash
nash copied to clipboard
WIP: Add formal specification of the language
This PR introduces the formal specification of the language. What do you guys think? Is it better than EBNF? The link to ohm editor with nash's gramar is here: https://ohmlang.github.io/editor/#fca725147857c09bb442be1ce03048e0
Yes, there's some js to validate the grammar until ohm has a Go parser. Still thinking the best way to install ohm-js dependency and run the grammar check from 'make test'. Maybe ran with docker?
Codecov Report
Merging #248 into master will not change coverage. The diff coverage is
n/a
.
@@ Coverage Diff @@
## master #248 +/- ##
=======================================
Coverage 56.85% 56.85%
=======================================
Files 27 27
Lines 4406 4406
=======================================
Hits 2505 2505
Misses 1657 1657
Partials 244 244
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 0088976...6115b1d. Read the comment docs.
Really interesting thing! I miss a lot checkers of EBNF grammar, I search a lot and didn't find anything really good; mostly just legacy, dead or just too painful too use. This ohm is a quite nice. I'm still think that ebnf is nice to read as human being, but have all that software of ohm doing the parsing, show-case of AST and other stuff is really great!
Seems pretty fine to me running the ohm tests inside of docker through make test. Formal tests it's important.