What is a shell?


[Prev][Next][Index][Thread]

What is a shell?



After being thouroughly annoyed by Jason Todd's newest release of OShell-82
(called OS-82), I began to wonder what a shell should contain, what
features should be in it, what features shouldn't.

Here is my description of a properly built shell:

1) It should have a title.
2a) The author's name and title should only be mentioned ONCE (at the
entrance).
2b) A SINGLE keypress should be all that it takes to get to the list of
programs from the entrance.
3) A single program should be the only one needed to run the shell.
4) NO programs should come with the shell.
5) A single familiar keypress should be all that it takes to quit the shell
(2nd QUIT) and run a program (ENTER).
6) The title and version number (nothing else and nothing fancy) at the top
of the shell (when viewing programs).
7) The shell should scroll the list of programs and not need a keypress to
get more.
8) It should use the graphics screen (so it can fit more programs on it).
9) The shell should highlight the title of each program ONLY...not extra
spaces.
10) The exit screen should contain NOTHING except the cursor.
Advertisements at this point are a BIG NO, NO.

A shell is designed to RUN PROGRAMS.  Many people constantly forget this
and add features which just degrade the shell.  Keep it simple folks and
you will have a great shell which many will use.


                 Thomas J. Hruska -- thruska@tir.com
Shining Light Productions -- "Meeting the needs of fellow programmers"
         http://www.geocities.com/SiliconValley/Heights/8504
                    http://shinelight.home.ml.org