News for hackers. Stuff that matters.
Re:Why Create a New Unix Shell? by mschuster91 on Wednesday January 31, 2018 @06:31PM (#16278541)
> They must be short (<=100 lines), and if their complexity exceeds a certain threshold then a shell script is no longer acceptable regardless of length.

Well, the question is: what do you use as a replacement? For my scripts I tend to pull in some version of PHP as soon as needed. Perl is something that's universally available in anything based on Debian or Ubuntu, but it's a maintenance nightmare, and PHP doesn't care whether I use spaces, tabs or a mixture, or if there are due to any circumstances mixed line endings in a file whereas Python may or may not barf on encountering any of said things...

Re:Why Create a New Unix Shell? by racer-v on Wednesday January 31, 2018 @07:11PM (#16278741)
Anything that supports pipes and signals, and is easy to install. I've started using Steel Bank Common Lisp (SBCL) because it's the default implementation used with the Roswell installer.

https://github.com/roswell/roswell

(As a side-note: Perl 5 was really the ideal language for this, by design; we might be in a different world today if it hadn't been derailed by Perl Forever^W 6).

Re:Why Create a New Unix Shell? by NoGravitas on Thursday February 01, 2018 @08:04AM (#16281553)
I mean, Perl 5 wasn't actually ideal for this, but it was better suited to the task than anything else that actually exists.
Re:Why Create a New Unix Shell? by jdoege on Monday February 12, 2018 @03:43PM (#16361918)
Perl 6 actually exists and has a REPL which Perl 5 lacked.
Re:Why Create a New Unix Shell? by arghwhat on Thursday February 01, 2018 @05:25AM (#16280774)
If I was ever to be religious, I would believe that PHP was the work of the devil. It's just so... uuuugh. It doesn't make sense. Did you know that you can increment a string in PHP? Yup. Of course you can't decrement it, that's crazy talk.

Anyway, I usually avoid perl. While definitely a true programming language, I really don't like it. I find that it lacks clarity, and quickly collapses into bash-like hackery.

I personally use Python when it's a notch above shell, but not enough to pull out the big guns.

(I use to write a lot of perl when I was a kid, even made an accounting system in it, so my dislike of perl is from experience. We also had a 6000 line perl build script at my current job which was the last drop. Rewrote it to 40 lines of batch and 150 lines of Python. Likewise, I also wrote a lot of PHP, and can no longer consider it a proper programming language.)

Re:Why Create a New Unix Shell? by gbacon on Thursday February 01, 2018 @11:17AM (#16282996)
It sounds like the original build script was poorly written. Bad (or hurried) programmers write bad code no matter the language.

Are you claiming that its size was because Perl forced it to be long winded?

Re:Why Create a New Unix Shell? by arghwhat on Friday February 02, 2018 @08:08AM (#16290221)
My dislike of Perl comes from personal experience in using it. I don't think one can have valid strong opinions of a language without having used extensively.

I feel like some programming languages, no matter the structure of the application, feels unstructured and write-only in nature. To me, Perl is one of such languages. Python has a similar effect, but I feel like it is more controllable as long as the project is kept within a sensible length.

So while that abomination was primarily the fault of the designer, I do think that Perl invites this behavior one way or another.

(I gave up entirely on reading that disaster of a build script, and instead instrumented system() so that I could trace the calls to various tools and infer the logic myself.)