Category Archives: Uncategorized
lparallel-2.1.0 released
added readers kernel-name and kernel-context added restart kill-errors to workers — removes debugger popups attempting to submit a task to an ended kernel now signals an error suicidal calls to kill-tasks inside workers are now permitted
Concurrent Hello World
Below is another example of Concurrent Hello World. The macros receive and run are just 9 lines each, given below the fold. (defpackage :example (:use :cl :node)) (in-package :example) (defun hello (hello-queue world-queue) (receive hello-queue (:say-hello (n) (cond ((plusp n) … Continue reading
lparallel-2.0.0 released
The major version bump is for some incompatible changes, though they are unlikely to cause trouble. keyword arguments to psort besides :key have been replaced with a single :granularity argument; the old arguments are now ignored removed deprecated aliases from … Continue reading
Status update
The latest CLISP and ECL appear close to passing all tests, and may indeed pass on some platforms. I am not aware of any outstanding CL implementation bugs affecting lparallel besides those reported in CLISP and ECL. I am also … Continue reading
lparallel-1.7.0 released
added pdotimes optimized cognate functions and macros when they are called inside worker threads; e.g. pmap in (future (pmap …)) no longer blocks a worker
lparallel-1.6.0 released
added clear-ptree-errors — for resuming after an error added clear-ptree — for recomputing from scratch improved task handling for ptrees :lparallel now in *features* after load defpun no longer transforms pfuncall forms
Auto-kill
When an evaluation fails or is interrupted, it may be convenient to automatically kill tasks created during the evaluation. One use for this might be for debugging a set of long-running tasks. Here is a solution using alexandria’s unwind-protect-case. (defpackage … Continue reading