The Basic Shell


Downloads

Introduction

Basic Shell is a UNIX shell, designed specifically on MacOS and Linux, but likely will work on any UNIX like system, designed and modeled after Commodore BASIC. It makes shell scripting within the shell easy and fun, and familiar to anyone who used classic Commodore computers. Basic Shell is also tiny and fast, being written entirely in C, there is no bloat here!

In case it isn't obvious, this shell started life as a joke, and is still beign developed as one. I like the idea of it, however, its just not super practical to use a shell like this, especially with the recent advent of cutting edge technology like files or a harddisk, but I still love it all the same.


A sample Basic Shell interaction demonstrating the scripting capabilities

How to use

This section is sparse right now as there is not much in Basic Shell at the moment. Expect this to be radically overhauled as the development continues (slowly).

Like any other shell, commands can be typed directly into it, and are executed by the system. However, unlike other UNIX shells, this one has a unique way to program it, which is not through scripts.

Like Commodore BASIC, Basic Shell uses line numbers typed into the prompt to dentore line numbers for execution. A command can be entered into the program by simply putting the line number before the command. For example 10 echo Hello will insert echo Hello on line 10. By defualt, the program will begin at the lowest line number, and continue up. Lines which contian no text will be ignored. It is good practice to add code on line numbers that are multiples of 10 in order to ensure that code can be added between them if forgotten. It is impossible to shift line numbers up or down.

Other built in commands include list and run. list will print out the program stored in memory. run will likewise execute it. At the moment, these are the only built in commands, as Basic Shell is very early in development. Its capabilities will expand with time.