Parallelize 1.0.0 released

Parallelize runs jobs in parallel, spreading them over the number of cores (by default; you can alter this).

Now in Alire.

The jobs are read from standard input.

Motivation: to speed up ACATS-grading.

Lessons: It’s a small program (127 loc total), so it’s perhaps not surprising that using named declare blocks rather than single-use subprograms felt clearer. I would have liked to be able to say exit <named block> when ..., but I can see this would be syntactic sugar for a goto!

Alternatives: I’m not sure whether the Perl GNU Parallel would have done the job I needed. I misunderstood the description, and by the time I re-read it properly this program was nearly done.

6 Likes