Skip to content
C++ Shell Python CSS Makefile C Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
args-pattern
bernstein-fix
closures
crazy-old-bug
data-frames
ddmin
dotd
dynamic-scope
empty-arrays
fgrep-problem-benchmarks
forth-like
git-changelog
grep-for-papers
hard-coded-descriptors
id-kind-func
interactive-shell
libc-unicode
line-counts
metaprogramming
perl
point-free
py-slots
python-getopt
redirects-dup
return-array
stdout-stderr
tools-snapshot
.gitignore
LICENSE
README.md

README.md

Code for the Oil Shell Blog

TODO: Parsing Bash is Undecidable

andychu/pratt-parsing-demo (other repo) -- Pratt Parsing Without Prototypal Inheritance, Global Variables, Virtual Dispatch, or Java

TODO: Thirteen Incorrect Ways and Two Awkward Ways to Use Arrays

TODO: Example Code in Shell, Awk, and Make

id-kind-func/ - Four Functions and Enum Labelings

forth-like/ - Shell Has a Forth-like Quality

point-free/ - Pipelines Support Vectorized, Point-Free, and Imperative Style

bernstein-fix/ - Bernstein Chaining of ssh and su

bourguet/operator_precedence_parsing - Code for the Shunting Yard Algorithm, and More

hard-coded-descriptors/ - Avoid Directly Manipulating File Descriptors in Shell

git-changelog/ - How to Quickly and Correctly* Generate a Git Log in HTML

Pending

args-pattern/ -- TODO: Shell: The Good Parts

redirects-dup/ -- This was for explaining redirects

metaprogramming/ -- Different styles of metaprogramming solving the same problem

python-getopt/ -- Quadratic behavior I noticed when implementing args.py, never used

py-slots/ -- Slots are not that much faster, but they use much less memory.

empty-arrays/ -- From bash-help thread

dynamic-scope/ -- Never blogged about this

dotd/ -- HN thread about Make

closures/ -- HN thread about use cases for closures

return-array/

2018

perl/ -- Is Perl an Acceptable Shell?

tools-snapshot/ -- A few people wanted to know whta tools I use to write the blog.

ddmin/ -- Refactoring / rewriting the original ddmin Python code.

fgrep-problem-benchmarks/ -- Grew out of a discussion on the Aho-Corasick algorithm for matching a set of fixed strings.

You can’t perform that action at this time.