Super interesting, thanks for that! —S
On Thu, Dec 3, 2020 at 8:00 AM Pascal Costanza <p...@p-cos.net> wrote: > This was primarily for the lack of good parallel, concurrent garbage > collectors in Common Lisp implementations. The CL version of elPrep was > actually still a tad faster than any of the C++, Go, or Java versions, but > we had to work hard to avoid long GC pauses. elPrep allocates a lot of > memory, and the pause time hurts a lot. We solved this by, basically, > disabling the garbage collector, and reusing memory manually as much as > possible, which turned the program into almost a manually memory-managed > affair. > > Manual memory management became a huge burden because we wanted to add > more and more components to the software, and then it becomes almost > impossible to predict object lifetimes. > > We evaluated Go and Java for their concurrent, parallel GCs, and C++ for > its reference counting. Interestingly, reference counting is often > described as more efficient than GC, but in our case that’s not true: > Because there is a huge object graph at some stage that needs to be > deallocated, reference counting incurs more or less the same pause that a > non-concurrent GC does. That’s why we don’t expect Rust to fare better here > either. > > Again, we’re still prototyping in Common Lisp, which is a huge win, > because this makes us much more productive. > > Pascal > > > On 3 Dec 2020, at 12:16, Svante Carl v. Erichsen < > svante.v.erich...@web.de> wrote: > > > > Hi! > > > > I vaguely remember having read that you do that. I'm still wondering > > why, though. I guess that you wrote about it, but I can't find it right > > now. > > > > So, if it's not because Common Lisp is not seen as “production ready”, > > why rewrite instead of just adding the production parts (I guess > > hardening, monitoring, logging, documentation etc.)? > > > > Yours aye > > > > Svante > > > > > > Pascal Costanza writes: > > > >> In my opinion, prototyping in Common Lisp, and then translating to a > >> different programming language for creating the final product, is a > >> perfectly valid professional use of Common Lisp. It’s useful to know > >> which programming languages may be good targets for such an approach. > >> > >> This is, of course, not ideal, because this can easily be > >> misunderstood as a statement that Common Lisp is not fit for > >> purpose. However, I don’t see it that way, and you cannot control > >> people’s perceptions. > >> > >> In our particular case, our manager is on board with this approach, > >> and this allows us to pay for regular licenses for LispWorks. The > >> approach works really well for us. > >> > >> Pascal > >> > >> Sent from my iPad > >> > >>> On 3 Dec 2020, at 05:29, Dave Cooper <david.coo...@genworks.com> > wrote: > >>> > >>> > >>> > >>>> Where else do Common Lispers go to talk shop, whether CL or something > else? > >>> > >>> > >>> To me, Common Lispers "talking shop" by definition means talking about > CL or related topics, not an open-ended "something else." I would turn that > question around and ask "where else do Common Lispers go for unapologetic > mutual support for their chosen or imposed computing platform, which is > Common Lisp?" If groups such as this mailing list become diluted with hand > wringing, naysaying, and negativity, then you tell me Tim, where do actual > Common Lispers go? > >>> > >>> > >>>> CL is very good but it is not perfect. Debating the relative merits > of > >>>> various languages can lead to cross-pollination of ideas. It appears > that > >>>> most innovation is happening elsewhere, and I hope this community can > >>>> bring the best of CL into a worthy successor, whatever it may be > called. > >>>> > >>> > >>> If "most innovation is happening elsewhere" then those of us who have > the propensity to look into other languages can serve the community here by > reporting back the cool things they find and discussing how we may or may > not be able to co-opt such things into CL. If such is the perspective and > purpose of "debating the merits of various languages," then indeed, such > debate can result in productive cross-pollination, and this is needed and > wanted. > >>> > >>> If the intention and focus is instead to sing the praises of other > environments in order to seek fellow converts or validation for converting, > and doing this while specifically targeting a group set up to support > "professional common lispers," then I consider such efforts to be unhelpful > in the context of this group and I would invite you to take such > discussions into the forums of those other environments or into some > general language discussion forums. > >>> > >>> Understand that not all of us have the "luxury" on the one hand, nor > the desire on the other hand, to chase the dragon of the latest cool thing, > and we look to groups such as this one specifically to support our crusty > old entrenched mentality -- and to improve our environment as best we can, > understanding the inherent limitations that exist. This is the life we have > chosen. > >>> > >>> > > > > > > -- > Pascal Costanza > > > >