Spotted on Freshmeat: Squirrel Shell

Shlomi Fish <shlomif-ik1l9ssToec+JF/[email protected]> Sat, 11 Oct 2008 23:37:33 +0200
Newsgroups gmane.culture.hackers.israel
Message-ID <[email protected]>
Hi all!

I recently spotted a new shell called Squirrel Shell on Freshmeat.net:

http://squirrelsh.sourceforge.net/

Here is my impression from it:

1. Doing the ./configure --prefix ; make ; make install dance caused the "make 
install" stage to fail with weird installation errors. Borrowing from the 
debian/ directory there, I added --with-mime=no which 
disabled ./configure-mime (which can only handle absolute system pathnames) 
from running and as a result, it was sucessful.

2. Here's what happened in my first run of squirrelsh:

{{{{{{
$ ~/apps/squirrelsh/bin/squirrelsh
> ls
ERROR: the index 'ls' does not exist
> help
ERROR: the index 'help' does not exist
> h
ERROR: the index 'h' does not exist
> man ls
SQUIRREL ERROR: Line 1, Col 6: end of statement expected (; or lf)
> run("ls")
apps  Backup  Choices  Desktop  Download  Music  TEMP  Videos
Arcs  bin     conf     Docs     dwhelper  progs  tmp
> help()
ERROR: the index 'help' does not exist
>
}}}}}}

In short - not very usable. Plus, the prompts do not support readline-like 
editing.

3. The man page ( nroff -man ~/apps/squirrelsh/share/man/man1/squirrelsh.1 | 
less -isrr ) is very short, and just refers one to the two .pdf's in the 
install directory (indicated by a "<b>install_dir</b>" string in the output - 
the full path is not given), which naturally, I had little patience to read.

4. The homepage gives several examples:

http://squirrelsh.sourceforge.net/

Whereas in bash running "ls" is simply q{ls}, in squirrelsh it is 
q{run("ls")}, but it gets better:

{{{{
#!/usr/bin/squirrelsh
// Work with command line parameters
run("foo", [ __argv[1], __argv[2] ]); 
}}}}

Which is the equivalent for "foo $1 $2" in bash.

The example for matrix multiplication is shorter in squirrelsh, but it is a 
bit contrived, given that I'd use Perl or whatever for anything of that 
complexity.

5. There are many English errors in the documentation:

* "It is based on Squirrel scripting language which has these features: "

* "Cross-platform nature of Squirrel Shell lets users write one script and use 
it everywhere"

* "Actual location of  the  files  depends  on  installation  method."

* "It is based on  powerful general-purpose scripting language "Squirrel".

-----------------

In short, I was heavily disappointed from squirrelsh. It doesn't look like a 
usable shell. Seems like more developers who don't understand software 
quality enough:

http://www.shlomifish.org/philosophy/computers/high-quality-software/

Regards,

	Shlomi Fish

-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
Stop Using MSIE - http://www.shlomifish.org/no-ie/

Shlomi, so what are you working on? Working on a new wiki about unit testing 
fortunes in freecell? -- Ran Eilam