6 ms·
Rash – The Reckless Racket Shell
- brabel 3y agoIf you like this and use emacs, have a look at eshell: https://www.gnu.org/software/emacs/manual/html_mono/eshell.html https://www.gnu.org/software/emacs/manual/html_mono/eshell.h... Those rash seems even better :)
- Zambyte 3y agoThe biggest advantage Rash seems to have over Eshell is the pipe extensions that is has, and maybe the performance (Racket is really fast). The biggest advantage Eshell has to me is TRAMP, which is more important to my personal workflow than I think the better piping would be. Of course maybe something like TRAMP could be added to Rash though :)
- ParetoOptimal 3y ago> The biggest advantage Rash seems to have over Eshell is the pipe extensions Maybe we can get this added to eshell, it'd be a perfect fit.
- bmacho 3y agoWhy is there video at the front page instead of a text? So annoying. I won't spend n minutes in boredom, staring out of my mind, only to get to know what they offer to me?
- canadianfella 3y agoThis was easy to find: https://docs.racket-lang.org/rash/index.html https://docs.racket-lang.org/rash/index.html
- sigzero 3y agoYou mean like clicking that big DOCUMENTATION button at the very top?
- Brentward 3y agoI agree, it's not about it being "easy" to find the documentation or "easy" to watch the video. This is the landing page for the project, and I'd much rather see the commands in the video listed out on the page rather than having to watch someone else's terminal session. I was recently looking at nushell, and that website has exactly what I would expect to find: example input with screenshots of the output instead of a video.
- fooker 3y agoLooks interesting! Almost feels like reinvented Perl, which can be a great or terrible thing depending on how often you invoke perl from the shell or scripts.
- ufo 3y agoDoes anyone know where I can find more examples of Rash code? Scripts large and small that do something cool... I get more inspired by those than by reading documentation :)
- soegaard 3y agoCheck this: https://github.com/willghatch/racket-rash/tree/master/rash-demos https://github.com/willghatch/racket-rash/tree/master/rash-d... Also check the videos on Rash: https://www.youtube.com/watch?v=Acjqx1MPkw4 https://www.youtube.com/watch?v=Acjqx1MPkw4 https://www.youtube.com/watch?v=yXcwK3XNU3Y https://www.youtube.com/watch?v=yXcwK3XNU3Y
- dorian-graph 3y agoI wonder how this compares with Babashka?
- nrabulinski 3y agoBabashka is purely meant for scripting while rash can replace your shell as a whole
- hn_thrwn 3y agohttps://scsh.net/docu/html/man-Z-H-3.html#node_chap_2 https://scsh.net/docu/html/man-Z-H-3.html#node_chap_2 Kind of amazing tech from 30 years ago is better than what we have today.
- pulkas 3y agoYou are not in here : https://github.com/alebcay/awesome-shell https://github.com/alebcay/awesome-shell
- evandale 3y agoHah, every time I see something cool done with Racket it makes me want to learn it and go through How To Design Programs. I start from the beginning and get a little further every time.. one day I'll finish it.
- dark-star 3y agodoes it provide call/cc? I assume continuations mixed with arbitary shell code is a bit complicated
- michaelsbradley 3y agoRacket supports multiple kinds of continuations, not just call/cc: https://docs.racket-lang.org/reference/cont.html https://docs.racket-lang.org/reference/cont.html Toward the end of the demo video it mentions they are supported in Rash.
- dark-star 3y agoYes, but they're all just syntactic sugar around call/cc though :) I guess I'll have to check out Rash, it looks really interesting
- michaelsbradley 3y agoI may be wrong, but I don't think delimited continuations are just syntactic sugar around call/cc, i.e. the former require operators that depart from the semantics of the latter (undelimited continuations).
- dark-star 3y agoI think delimited continuations can be implemented with call/cc if you let the continuation "leak" out of the call/cc body. I'm pretty sure you can implement most, if not all delimited continuation constructs using call/cc. Maybe not in the fastest/most optimal way, but at least theoretically it should be possible It's been a while that I used Scheme though, so my memory may be a bit rusty and I might have missed some things
- soegaard 3y agoApropos Scheme and shells, this is how you write acknowledgments: https://scsh.net/docu/html/man.html https://scsh.net/docu/html/man.html
- cdaringe 3y agoholy smokes
- junon 3y agoWhat is the history here and how on Earth is this considered appropriate for a manual? Even if this is tongue in cheek it's still way too unhinged to be taken as a joke, or a "Mondays right?" type of comical rant. This is dark, and I'm surprised this person hasn't actually gone off the deep end....
- brabel 3y agoI can't imagine someone writing this as a joke... hope whoever wrote that got the help they needed (it's from 1994, but I'm too afraid to look up who wrote it and what happened).
- darrenf 3y agoThere are numerous old threads about this page (and in fact many other writings/rants by the same author) - for example: https://news.ycombinator.com/item?id=21668685 https://news.ycombinator.com/item?id=21668685
- em-bee 3y agoi like how well the integration between shell commands and the racket language seems to work. in my impression this feels better than what i remember seeing from other programming language commandline shells like xonsh. this is probably due to racket syntax more naturally mapping to shell commands with the function/command name being in first place. xonsh has to parse a command both ways to figure out whether `ls -l` is a shell command or python code, whereas rash doesn't because plain racket code is always in ()
- waffletower 3y agoReminds me a bit of Closh: https://github.com/dundalek/closh https://github.com/dundalek/closh which is now on hiatus. babashka: https://babashka.org https://babashka.org however, is in full bloom for scripting thanks to a relentless Borkdude and the GraalVM project.