Live data from Hacker News

GNU Parallel, where have you been all my life?

alexplescan.com

141–150 of 277 posts

Re: GNU Parallel, where have you been all my life?

#141
post #78

Earlier quoted context omitted.

Can you back that up? If I put the GPL in my software and add a file next to it that says "Also you can't use this software if you make more than $100k/year", I've pretty clearly added an additional clause that's incompatible with the GPL.

Author of software package can revoke his license. Author can provide same package under multiple licenses, for example: GPL and proprietary license, like QT. Author may say that user A may use GPL license only, while user B may use proprietary license only.

Eh, this is kind of right but also not really responsive to the thread.

For one thing, if the author provides the source with a GPL license to user A, and user A sends it to user B, user B has the software under a GPL'd license. The normal reason for dual licensing GPL/proprietary is so that user B can pay money to bundle the software in a non-GPL-compliant way. The author can stop licensing future releases under GPL, but they can't revoke the GPL on already-distributed software.

For another, this isn't what's happening here. GNU Parallel is released under the GPL, and the author is affixing what is debatably an additional term to the GPL'd release, under the claim that it doesn't count as an additional restriction because it's "academic tradition". By the same token, I can add a clause to my software saying that rich people can't use it, because it's "hippie tradition" to stick it to The Man.

Re: GNU Parallel, where have you been all my life?

#142

First paragraph: I want to test my tests. Second paragraph: I want to test my test-tester. OP 100% fell down a rabbit-hole.

Exactly! I was kind of shaking my head over this one...

"they execute extensive scenarios against a live service over HTTP"

Any time I've seen people think they've needed to test live services, over HTTP... it means that there are far deeper issues.

Re: GNU Parallel, where have you been all my life?

#143
post #112

Earlier quoted context omitted.

What do you mean? Stallman adjudicates the disputes.

I think disputes are handled between the author of the code and the user. Stallman is rightfully the most prominent voice to comment on the spirit of the GPL/CopyLeft/Free Software.

[deleted]

Re: GNU Parallel, where have you been all my life?

#144

Earlier quoted context omitted.

> IIRC the citation notice was cleared by Stallman as GPL. I really hope that whomever adjudicate these disputes regarding licence agreements doesn't care what a random person says about it.

It's disingenuous to say that Richard Stallman is a "random person" regarding the GPL.

“Arbitrary” is probably a better description than “random” here.

Re: GNU Parallel, where have you been all my life?

#145
post #140

Earlier quoted context omitted.

I think disputes are handled between the author of the code and the user. Stallman is rightfully the most prominent voice to comment on the spirit of the GPL/CopyLeft/Free Software.

You’re referring to a different kind of dispute than I (and parent) was talking about. In this case, Stallman did handle the dispute about whether GNU Parallel’s citation notice conflicted with the terms of the GPL.

Okay that makes sense. You're saying that since the GPL itself is not open, that it needs Stallman's approval for modifications that are not explicitly allowed. And I was saying that it does not necessarily mean those modifications are enforceable between two parties in a random jurisdiction, which comes down to courts and whatnot.

Re: GNU Parallel, where have you been all my life?

#146
I didn't know about this, and reading through the comments, I found out that xargs can also do batching and parallelism (nice!). However, it appears that if you pipe the output of an xargs-parallel command into another utility, it jumbles the output of the multiple subprocesses, whereas GNU parallel does not.

I was a little put off by the annoying/scary citation issue mentioned by another commenter, so I am not sure I will use parallel.

I want to pipe the output of parallel processes into a utility that I wrote for progress printing (https://github.com/titzer/progress), but I think that neither of these solutions work; my progress utility will have to do this on its own.

Re: GNU Parallel, where have you been all my life?

#147

It's a nice tool, but it also shows the shortcomings of shell commands. In a proper programming language, we'd have something like parallel [1..5], i => { sleep random()*10+5; possibly_flaky i } // [{"Seq": 4, "Host": ":", "Starttime": 1692491267... And `parallel` would only have to worry about parallelization. Instead, the shell environment forces programs to invent their own parameter separator (:::), a templating…

What you mention is the main reason why shell script is not a decent language to write long programs. It is full of inconsistencies, and since it depends on other commands, you have to learn the quirks of each command you use. Moreover, good luck if you need to debug this. Shell should only be used for small scripts that are easy to debug.

Do you recommend any good alternative when your shell program gets too large?

Honest question, as I’m struggling to leave the shell environment once the program gets too large. I could use Perl, but $? and the likes get quickly out of hand. Python’s support for pipes was difficult last time I used it, but that may have changed. What would you recommend?

Re: GNU Parallel, where have you been all my life?

#148
post #128
post #81

Earlier quoted context omitted.

> Is the author still adding the "cite me or pay 10000€" notice to the output? And calling that GPL? IIRC the citation notice was cleared by Stallman as GPL compatible. I’d be surprised if anyone’s paid, I assumed that’s rhetoric to imply the value of a citation, or lack of citation, for anyone publishing scientific works. > These are just some of the reasons I’ll never use parallel. Hey I’ve actually ranted on HN be…

> and the citation notice is a one-time thing you can silence permanently This doesn't scale. Imagine if all the software you used nagged you and had their own individual methods to silence them. I don't think this would be reasonable. What makes this particular software so special?

Lots of software nags with something when it first starts up. It’s mostly annoying, but doesn’t seem to have a scaling problem.

zsh gives you a config wizard, sudo admonishes you to use it responsibly, just about every iOS app and an increasing number of desktop apps gives you a few pages of “what’s new” every time they’re upgraded. Desktop apps have given tips-on-startup since the 90s.

Re: GNU Parallel, where have you been all my life?

#150
post #140

Earlier quoted context omitted.

You’re referring to a different kind of dispute than I (and parent) was talking about. In this case, Stallman did handle the dispute about whether GNU Parallel’s citation notice conflicted with the terms of the GPL.

Okay that makes sense. You're saying that since the GPL itself is not open, that it needs Stallman's approval for modifications that are not explicitly allowed. And I was saying that it does not necessarily mean those modifications are enforceable between two parties in a random jurisdiction, which comes down to courts and whatnot.

Yes kind-of… in this case Parallel’s notice is not a modification of the license at all, and Stallman is the person who ruled on this question and confirmed this to be true. The GPL doesn’t prevent authors from including a notice, and having a notice doesn’t conflict with the terms of the GPL.

I feel like the whole problem here is that the legality of Parallel’s notice, and the separation of the notice from the GPL, is not at all clear. The language is confusing to users. People who take the license seriously are staying away from Parallel because of the fear of accidentally breaking the license terms.

Post reply on HN