All Projects → willghatch → Racket Rash

willghatch / Racket Rash

Licence: other
The Reckless Racket Shell

Programming Languages

shell
77523 projects
bash
514 projects
language
365 projects
lisp
113 projects
racket
414 projects

Labels

Projects that are alternatives of or similar to Racket Rash

Baapan
✨ Super Cool NPM Playground right on the Node REPL ✨
Stars: ✭ 60 (-83.24%)
Mutual labels:  cli, repl
Bull Repl
Bull / BullMQ queue command line REPL
Stars: ✭ 121 (-66.2%)
Mutual labels:  cli, repl
Flask Konch
An improved shell command for the Flask CLI
Stars: ✭ 65 (-81.84%)
Mutual labels:  cli, repl
Repl
🐚 an instant REPL for any command
Stars: ✭ 71 (-80.17%)
Mutual labels:  cli, repl
Vsh
vsh - HashiCorp Vault interactive shell and cli tool
Stars: ✭ 209 (-41.62%)
Mutual labels:  cli, repl
Jay
😎 Supercharged JavaScript REPL
Stars: ✭ 970 (+170.95%)
Mutual labels:  cli, repl
Psysh
A REPL for PHP
Stars: ✭ 9,161 (+2458.94%)
Mutual labels:  cli, repl
Radian
A 21 century R console
Stars: ✭ 878 (+145.25%)
Mutual labels:  cli, repl
Ldb
A C++ REPL / CLI for LevelDB
Stars: ✭ 201 (-43.85%)
Mutual labels:  cli, repl
Alive Progress
A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!
Stars: ✭ 2,940 (+721.23%)
Mutual labels:  cli, repl
Lua Resty Repl
Interactive console (REPL) for Openresty and luajit code
Stars: ✭ 165 (-53.91%)
Mutual labels:  cli, repl
Croissant
🥐 A Lua REPL and debugger
Stars: ✭ 285 (-20.39%)
Mutual labels:  cli, repl
Cliffy
NodeJS Framework for Interactive CLIs
Stars: ✭ 263 (-26.54%)
Mutual labels:  cli, repl
Lev
The complete REPL & CLI for managing LevelDB instances.
Stars: ✭ 295 (-17.6%)
Mutual labels:  cli, repl
Hues
Colored terminal text made easy for Python and happiness.
Stars: ✭ 345 (-3.63%)
Mutual labels:  cli
Taskwarrior Tui
`taskwarrior-tui`: A terminal user interface for taskwarrior
Stars: ✭ 339 (-5.31%)
Mutual labels:  cli
Fuck
Fix command line spelling errors like it's 1999.
Stars: ✭ 344 (-3.91%)
Mutual labels:  cli
J
❌ Multi-format spreadsheet CLI (now merged in http://github.com/sheetjs/js-xlsx )
Stars: ✭ 343 (-4.19%)
Mutual labels:  cli
Pundle
👾 peaceful bundles - js bundler, built from the ground up for speed and extensibility
Stars: ✭ 354 (-1.12%)
Mutual labels:  cli
Gandi.cli
command line interface to Gandi.net products using the public API
Stars: ✭ 349 (-2.51%)
Mutual labels:  cli

Rash: The Reckless Racket Shell

Scribble Docs

Rash is a shell language, library, and REPL for Racket.

Use as a repl that is as convenient for pipelining programs as Bash is, but has all the power of Racket. Use as a scripting language with #lang rash. Embed in normal Racket files with (require rash), and mix freely with any other Racket language or library.

Rash is in active development, but it is largely stable (and the parts that aren't are marked as such). I use it as my default interactive shell on my laptop. It currently lacks the interactive polish of Zsh or Fish, but it is so much better as a language. Every script I've ported from a Bourne-related shell to Rash is more robust, simpler, easier to maintain, easier to expand, and much more fun.

Getting started

Prerequisites

Rash does work on windows, but it works better and is more useful on unix based systems.

To install, you will need a working installation of racket v6.12 or later.

Installation

You can either install with racket's built in package manager, raco, or install directly from github. If you have DrRacket installed, you can install rash with File -> Install Package.

via raco:

raco pkg install rash

git version:

git clone https://github.com/willghatch/racket-rash rash && cd rash/linea && raco pkg install && cd ../shell-pipeline && raco pkg install && cd ../rash && raco pkg install

OR

use raco pkg install --clone rash

Readline

The Rash REPL currently relies on Racket's Readline FFI wrapper. However, by default Racket uses libedit instead of libreadline for licensing reasons. Libedit does not support unicode, so typing non-ASCII characters will result in sadness. To use libreadline instead, run raco pkg install readline-gpl. Note that the readline-gpl Racket package needs a libreadline shared library to be installed on your system, so you may need to install a libreadline package using your system package manager. For example, on Debian-based distributions you can install by running sudo apt install --yes libreadline-dev.

Usage

Run with racket -l rash/repl --, or with rash-repl if you have Racket's package bin/ directory on your path.

Online documentation is here. After installation, local documentation can be accessed with raco docs rash.

The project web site has a quick demo video of Rash in action.

I published a paper about Rash in GPCE 2018.

This repo also contains the shell-pipeline and linea packages. They mostly support Rash itself, so they live in the same repo.

Talk

Feel free to ask questions in issues, to join the matrix room, to email me, etc.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].