Re: Maxima and thread safety
David Scherfgen via Maxima-discuss <[email protected]> Sun, 7 Jun 2026 23:45:40 +0200
| Newsgroups | gmane.comp.mathematics.maxima.general |
|---|---|
| Message-ID | <CAMTHLKjyzAMQS9Rj7DHRn-ABJwqjV8UH00CHOx0+Se0TEet1Wg@mail.gmail.com> |
Thanks for the historical context, Stavros! That was long before I was born ... To clarify, what I really meant was true hardware parallelism (multicore/SMP) aimed at accelerating compute-intensive tasks (which requires synchronization), rather than concurrency (time-slicing on a single CPU for asynchronous events). Stavros Macrakis <[email protected]> schrieb am So., 7. Juni 2026, 23:25: > I agree with all of this until: > > On Sun, Jun 7, 2026 at 4:35 PM David Scherfgen via Maxima-discuss < > [email protected]> wrote: > >> ...Multi-threading support is a fundamental architectural design >> decision that is difficult to retrofit - especially for a program like >> Maxima, which was written decades before multi-threading was even a concept. >> > > Actually, multithreading was not only a concept when Macsyma was being > developed, it was actually implemented in Lisp systems at the time (under > the name multiprocessing): > > - BBN Lisp (one of the godparents of Common Lisp) implemented > multithreading in around 1974 and had a tree-structured stack. > - The Lisp Machine not only had multithreading but also built an > entire operating system out of it, starting in 1974. > > But MacLisp, which Macsyma was being developed on, didn't have these > mechanisms, and anyway most of Macsyma had already been written at that > point, complete with the ubiquitous use of global variables and data > structures. For that matter, the purpose of multiprocessing at the time was > not to run compute-intensive tasks faster because almost all machines only > had a single CPU. It was for dealing with asynchronous events like (early > forms of) windowing UIs. > _______________________________________________ Maxima-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/maxima-discuss