Hacker News new | past | comments | ask | show | jobs | submit login

Call me old. But I want my shell to be a tight binary, preferably distributed (at some point) by major distros.

This needs freakin' Node.js.

I'm more looking in the Rust/Haskell/OCaml direction for a hip bash/zsh replacement.




Racket's RaSH is heading there.

I have to say I have been using BASH, SED and AWK less. They are great tools but in the end it is getting easier and easier to get things done with a Macro in Racket for me.


what are you thoughts about not being able to share your nifty shell hacks with others? (because so few use RaSH)


Not worried. If that was everyone's thoughts we all would be using Perl, Java and PHP :)


Couldn't agree more with you on that one. Hell, even common lisp on sbcl would be better.


Looking back, I'd like to add Go to the list. (Not that I consider it hip, probably the least hip on the list. But well suited for writing a shell I guess.)


on a related note there's Upterm https://github.com/railsware/upterm which is a terminal emulator in node. I've found it pretty sucky for running fish shell in but i think it's ok for bash and zsh


This needs freakin' Node.js.

Yeah, that's an old sentiment. I used to echo the same thing, but it's worth coming to terms with the fact that node is a pretty good platform to build on.


It may be old, but it's good and true.

There are zero things I want my shell to do which depend on as much tooling as Node provides.

I want a compiled native binary with as few dependencies as possible for the shell I'm going to use in single-user mode with very few resources available.


Hi five grandpa! Pepperidge farm remembers :)


Could not agree less. It's not totally bad, but for sure not good. I prefer:

* compile to native binaries

* many ways to do concurrency (instead of async all the way)

* a serious language (not created-in-10-days JS)

Node is really step back for me, coming from Ruby and the JVM.


JavaScript looks nothing like the “created in 10 days” version to which you speak. I would highly suggest you take an uncomfirmation(?) biased look at the language as it is now. Asyncs simplicity is arguably a reason why it’s a good platform to build off of. I agree I would rather have a single binary, and node may not be the best platform for shells on this point.


> JavaScript looks nothing like the “created in 10 days” version to which you speak.

It has improved, sure. But not only in the direction that makes me happy. But you cannot undo some bad design choices, without it becoming a different language.

> I would highly suggest [...]

I write JS at times. It hurts badly. Not everyone feels it. Maybe coming from PHP or Perl it does not even hurt that much. But after writing some Haskell and Elm lately, the pain got more intense.

> Asyncs simplicity is arguably a reason why it’s a good platform to build off of.

Not having choices is never a good thing in my book. And I do not think that JS does async particularly well. So much line noise when it comes to working with promises.

No fan here.


"Maybe coming from PHP or Perl"

I don't know about PHP (my experience with it is limited), but coming from Perl, Perl is a breath of fresh air in comparison.

Then again, to me Haskell makes even the worst JAPH-style Perl one-liners look readable in comparison, so maybe I'm not the best judge of language design.


i'm with you @cies JS has had some of its edges smoothed out but it's not a great language and its answer to parallelism and concurrency is crap IMNSHO. And i'm someone who came from perl way back in the day.


> many ways to do concurrency (instead of async all the way)

Though core.async makes async programming quite nice


> Though core.async makes async programming quite nice

Sure you can paint your cage gold, and it will look nicer. But it remains a cage. I want to choose, especially when it comes to how I do my concurrency.


Node may be OK for some things but it's not standard. I don't want to use a shell that I won't find anywhere but my own workstation. I want to use a shell that I will find on 99% of any systems I have to manage or work on. Even Python doesn't meet that bar and it's been around a lot longer than Node.


[flagged]


Yeah. I have the feeling people like Node because they know JS, and Node gives them JS. That's it.


They worship Node because it gives them an earning opportunity while not having to put in any real effort in learning and thinking in my opinion. If C# was made mandatory for example I imagine this lets kode trend would die pretty quickly.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: