by Axel Liljencrantz
A traditional command line shell that is also a modern programming language

Crush

Crush is an attempt to make a traditional command line shell that is also a modern programming language. It has the features one would expect from a modern programming language like a type system, closures and lexical scoping, but with a syntax geared toward both batch and interactive shell usage.

What features of a traditional shell does Crush retain?

The basic structure of the Crush language resembles a regular shell like bash.

How to invoke commands, pass arguments and set up pipelines are unchanged, as is the central concept of a current working directory . This means that trivial invocations, like ls or find .. | count look the same, but under the hood they are quite different, and nearly everything beyond that is different.

crush> print_everything := {|@unnamed @@named| echo "Named" named "Unnamed" unnamed}
Information updated 02/22/21
View Comments