Home

Declaring Syntax Bankruptcy on Shell

2017-01-29

Literal AntiPattern Examples

Three examples:

regex: (?P\d+)

Make:

target: everything here is macro, quotes mean nothing, only $ means something

shell: foo=bar { echo hi; }

You can TELL WHAT THINGS WERE ADDED LATER.

Goal of Oil is to get rid of shitty 70's-style macro processing.

THis is an anti-pattern.

In contrast, JavaScript was poorly designed. BUT it's syntax was NOT poorly designed. Its syntax is extendable, because there are INVALID PROGRAMS.

Trevor Jim: Markdown is not a language because everything is valid markdown.

HN: HTML is not a langauge because everything is valid HTML.

No such thing as invalid Make! No such thing as invalid regex! Well it does impose the constraint [abc].


Discuss this post on Reddit