News for hackers. Stuff that matters.
Re:Making ASDF more magic by making it less magic by mynewtb on Monday August 20, 2018 @04:09AM (#17798372)
> ASDF, the Common Lisp build system
Re:Making ASDF more magic by making it less magic by WalterGR on Monday August 20, 2018 @11:22PM (#17806678)
It goes on

> In the spirit of the original Lisp DEFSYSTEM, it compiles and loads software...

ASDF stands for Another System Definition Facility.

Re:Making ASDF more magic by making it less magic by xellisx on Monday August 20, 2018 @09:10AM (#17799592)
Thanks for the click saving!
Re:Making ASDF more magic by making it less magic by Jaruzel on Monday August 20, 2018 @05:06AM (#17798555)
Off topic, but my first thought was 'omg, a livejournal link. people still use that!?"
Re:Making ASDF more magic by making it less magic by nerdponx on Sunday August 19, 2018 @10:34PM (#17797375)
The upside of the Unix way is greater parallelizability, which allows for greater speed on newer multi-processor machines

Why is this true? Because parallel/shared memory access is hard to get right?

Re:Making ASDF more magic by making it less magic by stutonk on Sunday August 19, 2018 @11:13PM (#17797480)
In context, I believe the author means that having a build system which splits into independent, simultaneously executing processes (such as `make -j 5` or some such) tends to have an advantage over ASDF's monolithic process model which doesn't take full advantage of multiple cores/CPUs.
Re:Making ASDF more magic by making it less magic by Jtsummers on Sunday August 19, 2018 @10:44PM (#17797409)
The UNIX way doesn't involve shared memory in that sense, unless multiple processes are modifying the same files at the same time (known to be a bad idea). Instead it's more akin to go's channels and go procs. Use text between unix processes.
Re:Making ASDF more magic by making it less magic by nerdponx on Monday August 20, 2018 @12:34AM (#17797752)
I was asking about the Lisp, way, which it said was harder to parallelize because everything was held in memory.
Re:Making ASDF more magic by making it less magic by JoachimSchipper on Monday August 20, 2018 @02:53AM (#17798150)
AFAIK, Common Lisp doesn't have a portable threading/multiprocess story, and asdf appears to target the standard / lowest common denominator.
Re:Making ASDF more magic by making it less magic by armitron on Monday August 20, 2018 @05:09AM (#17798570)
This is inaccurate, for threads see: https://common-lisp.net/project/bordeaux-threads/

For processes, ASDF comes with UIOP which contains portable code for multiprocessing (among other things).

Re:Making ASDF more magic by making it less magic by lispm on Monday August 20, 2018 @06:01AM (#17798732)
But that does not make the compiler thread safe.

'Unix way' to compilation: possibly parallel compile activities by running multiple compiler instances as programs

'ASDF way' to compilation: compile multiple files in a serialized fashion using one Lisp image for compilation

To run multiple compile activities inside one Lisp image, one would require that something like the file compiler is thread safe and corresponding stuff implemented by the program in the compile-time environment is thread-safe, too.