On 3 Dec 2020, at 15:47, Didier Verna didier@lrde.epita.fr wrote:
Pascal Costanza wrote:
This was primarily for the lack of good parallel, concurrent garbage collectors in Common Lisp implementations.
I'd be curious to know if there are particularities in CL itself that make this difficult, or if it's simply because there's no manpower to improve the GCs we have currently.
I don’t believe there is anything in CL that would prevent it from having a good concurrent, parallel garbage collector. One argument I’m hearing in favor of Go is that it has value semantics by default, which suggests that most objects are stored on the stack, but on the other hand, we have dynamic-extent declarations. Some of the detailed trade-offs might be somewhat different, but I don’t think there are any serious showstoppers.
But I’m not even remotely a GC expert, so I’m just guessing here.
Pascal
-- Pascal Costanza