Live data from Hacker News

Show HN: Lisp Shell

github.com

11–20 of 61 posts

Re: Show HN: Lisp Shell

#11
For the Emacs users, there's eshell - a Shell, implemented in Elisp with the common GNU tooling, but also with the option to hook into regular elisp functions. Pretty cool stuff!

Re: Show HN: Lisp Shell

#14

It would be nice to see some examples of the syntax, maybe a couple of simple scripts... E.g., the README states that 'cd/' is an alias for '(cd "/")' which seems to imply that one has to wrap every command in '()' and quote every filename... not very practical for a shell!

Thanks for the feedback, I will update the description ASAP. I know I need to write a few examples, especially how to handle files. If compiled with pmap, it's possible to do things like:

(pmap (lambda (f) (run (+ "[some-command] " f))) (directory-list))

...and run any binary against all files in the current directory, in parallel. (directory-list) returns a list of files and one can run any Racket function against that list. It's also possible to gather any command output and pipe it back to Racket for processing. I'm working on a more polished build with better docs.

  I'd like to cover the minimum (like running binaries directly instead of having to use run). I've only begun to think about everything that's needed to bring this to its full potential.

  I'll also check the other projects I hadn't heard of, maybe some of them are already far better than mine :)

Re: Show HN: Lisp Shell

#15

RASH, RAcket SHell library and language: https://github.com/willghatch/racket-rash Note: I am not the author

I started lsh a few weeks before finding out about Rash. I found it too complicated to be used as a replacement for sh, but I might not have read enough about it to make a proper judgment. In the end I wanted to implement something that behaved exactly like I'd expect to.

Re: Show HN: Lisp Shell

#16
post #3

Fun Unix Trivia Time: Touch is supposed to update modified times. That it creates files when they don't exist is only the most common use, not the point of the thing.

Thanks! I implemented this just to create blank files, and didn't bother researching correctness. That's exactly the kind of correction I was hoping for when posting to HN. My first post too.

Another minor issue: cd without arguments should switch to the home directory rather than display the current directory (as your Readme suggests you do). You already have pwd for displaying the current directory.

Re: Show HN: Lisp Shell

#17
This reminds me of my time working with the Scheme Shell scsh!

From the readme I don’t quite understand the purpose of lsh, though. Usually, a shell allows you to run programs and manipulate their environment. However, lsh seems to reimplement some commands like find or rm and does not provide operators to manipulate the runtime environment like redirecting output. Maybe you can write in the readme your goal: play with racket, have a shell that accepts racket forms or something different.

Re: Show HN: Lisp Shell

#18
post #5

CLASH: CLisp As SHell http://clisp.org/clash.html

suprised no one has posted the venerable https://en.wikipedia.org/wiki/Scsh

The most memorable thing about Scsh for me is its acknowledgments rant, which starts:

"Who should I thank? My so-called "colleagues," who laugh at me behind my back, all the while becoming famous on my work? My worthless graduate students, whose computer skills appear to be limited to downloading bitmaps off of netnews? My parents, who are still waiting for me to quit "fooling around with computers," go to med school, and become a radiologist? My department chairman, a manager who gives one new insight into and sympathy for disgruntled postal workers?"

and concludes:

"Oh yes, the acknowledgements. I think not. I did it. I did it all, by myself."

http://philip.greenspun.com/wtr/dead-trees/acknowledgments.h...

Re: Show HN: Lisp Shell

#19

Earlier quoted context omitted.

Thanks! I implemented this just to create blank files, and didn't bother researching correctness. That's exactly the kind of correction I was hoping for when posting to HN. My first post too.

Another minor issue: cd without arguments should switch to the home directory rather than display the current directory (as your Readme suggests you do). You already have pwd for displaying the current directory.

[deleted]

Re: Show HN: Lisp Shell

#20

Earlier quoted context omitted.

Thanks! I implemented this just to create blank files, and didn't bother researching correctness. That's exactly the kind of correction I was hoping for when posting to HN. My first post too.

Another minor issue: cd without arguments should switch to the home directory rather than display the current directory (as your Readme suggests you do). You already have pwd for displaying the current directory.

Unless you’re seven directories deep and accidentally hit the button instead of the button.

In which case, uh, you want the current functionality.

Post reply on HN