But owning the code doesnt mean removing the runtime after he "blessed" the company with his proprietary "help" and some poor underpaid sob now has to "only maintain" the work of the great master.
He'll code it in C or Java or Javascript and that'll be it thank you very much, so that we can maintain it forever.
Not sure what this subthread is worried about. I never said I was going antisocial and forcing Lisp upon my fellow coworkers.
I just said that, where I have complete control (i.e. on personal projects, or companies I bootstrap) I will choose Lisp because I wouldn't have to care for junior employees.
This forum is so preoccupied by only considering something that could be understood by a team of thousand average-skilled engineers, and only the easiest to understand languages matter, which is why all Lisp discussions devolves into mentioning how hard it is to adopt in large corporate teams.
The power of Lisp is inversely proportional to the headcount, and sometimes you're the only one working on a project, so you want max velocity and flexibility. Not everything has to be optimised for a FAANG development model.
Ah I misunderstood. You mentioned junior engineer and I interpreted the context as being in a company. But for personal projects, or any other ones with like-minded contributors, more power to you! I try to do all mine in Haskell fwiw, for similar reasons :).
That's a good point, the maintenance burden of vendor libs. It may not necessarily be closed source, but for other reasons--hard math, unfamiliar language, or domain depth--might as well be a proprietary blob.
However, re-reading sph's comment above and seeing their response below, this truth table may help fill in context for me (thinking aloud and all that):
A: Running Lisp stuff for personal
and/or own startup
B: Embedding the libs as a B2B solution
C: Maintenance overhead
A B C A & B & C
T T T SkyMarshal and xwolfi's comment
T T F* I agree there would be a cost
T F* T sph using for own stuff or biz
T F* F Same as above
F* T T N/A
F* T F N/A
F* F T N/A
F* F F N/A
The asterisk (*) above meaning we can abort there since it wouldn't make sense to proceed to the other values.
So then B is where things went one way or the other. And admittedly, I must have assumed B.
He'll code it in C or Java or Javascript and that'll be it thank you very much, so that we can maintain it forever.