randomSample =: 4 :'(x ? #y){y' NB. can't repeat.
randomSample =: 4 :'(? x # #y){y' can repeat.
So that, in many cases, one day projects could be reduced to one or two lines definitions (for those that know J that is the caveat).I wonder where April would fit in, with your idea? Joining forces with the fellow who made April might be a possibility. Strength in numbers, and all that.
jksmith•6mo ago
lispitillo•6mo ago
I recall Norvig mentioning that other computer languages have taken many ideas from Lisp, those languages are also in the new civilization. Just to give an example: destructing-bind, apply and others are now done in javascript with a shorter syntax, and javascript without macros has excellent speed.
Jtsummers•6mo ago
Their use of L1 and L2 should be read as "L" as "level" L1 is lower level, L2 is higher level. They're suggesting using Ada (or some other well-suited language) for the lower level trusted systems language and Lisp for the application language.
What it has to do with AI, I don't know. People want AI everywhere now.
jksmith•6mo ago
People are still limited by Dunbar's number, so they need domain specific vocabularies to help them describe solutions to smaller groups. Maybe a direction exploitable by lisp at the L2 level.
But with an AI native L1, it doesn't care about the domain but would need to hold up the whole organization. Ada assurance. So it produces a 60% solution that has to be consumable by any particular L2. Multiple enterprise apps with a common base layer. No need to provide connectors or bridging apps for separate ERP, SCM, BI, HR vendors. Complete line of site, real time analytics and real time budget adjustments, eliminating need for budget cycles. It's kind of the Deus Ex God app. Deprecates need for separate Salesforce, Oracle Fusion, Tableau apps, separate vendor expenses, etc.