all versions |
Oil 0.12.0 Quality
This is a supplement to the main release page.
Other Primary Suites
- Parser. How fast does OSH
parse compared to other shells?
- Runtime. How fast does OSH run shell
- Compute. How fast does OSH run small programs
- Build. How long does it take for end users to
build Oil? How big is the resulting binary?
- Virtual Memory Baseline. How much memory do
shells use at startup?
- mycpp. Compares Python and generated C++
on small examples.
- Lines of source, counted in different ways:
- overview. The whole Oil repo organized by
type of source file.
An overview of the "compile engineer" project.
- osh-cloc. OSH and common
libraries, as measured by the cloc tool.
- oil-cpp. The C++ code in the
- preprocessed. How much code is
passed to the compiler?
These files may help you understand how Oil is implemented, i.e. with
domain-specific languages and code generation.
- _devbuild/gen/id.h. A list of language
elements, used in the lexer and in multiple parsers and evaluators.
- The regex-based lexer uses two stages of code generation:
- frontend/syntax.asdl. The syntax tree
for OSH and Oil.
- oil_lang/grammar.pgen2. The
expression grammar for Oil. In contrast, the OSH parsers are hand-written.
Also see the oilshell/oil repository.
These links describe the CPython / "OVM" build, which should become
the "experimental" version of Oil.
OPy / OVM Metrics
- Lines of dependencies:
- pydeps. Oil code plus the Python
- nativedeps. Oil code plus a
slice of CPython.
- Bytecode Metrics
- OVM / CPython
- overview - An analysis of GCC's
compilation of OVM (a subset of CPython). Bloaty provides the
- cpython-defs/overview - We try to
ship as little of CPython as possible, and this is what's left.
Generated on Sun Jul 24 00:29:42 EDT 2022