/neoCLASH

CLASH taken to the very next level.

Primary LanguageCommon LispGNU General Public License v3.0GPL-3.0

neoCLASH

CLASH (CLisp As a SHell) is a document describing the steps to turn CLisp into a basic shell on GNU/Linux.
This repository is based upon this document to provide a modern and handy LISPy shell experience.

Features

Running commands

The #{<command> <args>* } form can be used to evaluate shell commands directly in the REPL.

#{ls --color=always \. }

Evaluating LISP forms inside commands

In a command, the S-Expression after the *expansion-start* (default: \#$) character is evaluated as a LISP form, instead of being turned into a string.

#{ls $(cd) --color=always }

Roadmap

  • ❏ Pipelines

  • ✓ LISP code expansion in strings.

  • ❏ Job control.

Usage

  • From a POSIX shell:

$ $([ -z ${PREFIX+x} ] && echo "/usr/" || echo ${PREFIX})/bin/nch

Installation

Prerequisties: CLISP.

[PREFIX=/path/(default:/usr)] clisp install.lisp

License

GPL3 License

neoCLASH is licensed under the GNU General Public License version 3.0 or later.
The full text of the license can be accessed via this link and is also included in the COPYING file of this software package.