One of frequently mentioned problem is lack of libraries and ecosystem.
Say Nim doesnt have MongoDB driver. So you tell AI - go look at Python driver repo, and rewrite it in Nim.
Or matplotlib binding. And then you tell AI - I have no docs and examples for my Nim matplotlib binding, go look at python examples, and adopt it to my Nim binding.
Current level of AI is not powerful enough to do this.
But once the AI gets this powerful why program at all? Just ask the things you want done, the AI would machine code directly.
Every now and then I start to dust off https://github.com/Niminem/Py2Nim for that very reason and to try solving that very problem.
The idea I have is to combine a logic engine with LLMs to create a reliable (and practical) Python-to-Nim transpiler. Recursively add types to the python code, walk and translate all the dependencies, then the repository/project/module itself, output the code as idiomatic Nim code.
Ambitious I know but I do get that itch every so often when I run into scenarios where I don't have a library readily available. Wrapping C/C++ libraries are a pain in the ass for me, and using the Nimpy bridge is (to me) like a temporary hack.
The lack of libraries suuuuuuuuuucks.
Would be super cool to just help guide a program that will port a full python project over to nim.
@xigoi there are insanely huge difference between defining the goal and providing a solution.
Declarative code or specification, or goal, maybe written in english - yes, it's the future.
Imperative code, i.e. how 99.999% code looks today - no, it's a thing of past, like horse harness, still be used for years, but it's a dead end.
Hahaha nice comic-strip. That's how it is..
We might also create a feeling of togetherness in our amazement how bad the AI-answers often are. Maybe I am using an older version but the AI is often very confused :-)
It reminds me of my high-school philosophy that any answer is better than no answer at all. (no answer = no points). But in hindsight my guessing-answers may have irritated my teacher to give me a lower grade. Or the teacher became good-humored with the ridiculous answers I may have invented...
You need to semantically ground it or it'll get lost in woo woo land, that's the issue. Look at what happened with the Dota 2 model early on, it got to the point where it beat humans, but humans figured out how to counter its strategies, then it had to play another billion games against itself before it beat them again.
The point is that the alignment problem is less to do with paperclip maximizing scenarios and more that the space of functions is too absurdly large that merely playing against your self over and over does not necxezarily mean you keep getting better if you do not occasionally touch base and ground it in human reinforcement:
We will be there learning along the way, because it is a question of what we even want. As Ingo said: Garbage in, garbage out; Polish a turd as much as you like..
This isn't really a theory or argument as it is a limitation on what it means categorically for syntax & semantics to converge in the functoral limit. The stable reasoning required to learn from less data like humans do is the issue of hallucination, humans definitely conflate things but AI conflate much more absurdly, arbitrarily even.(Functional programmers sometimes get lost out there too, it's always your hardware not your clever syntax that define good abstraction; this is why i came to nim from clojure/haskell)
There is no need for AI to beat human. All thats needed for AI is to be more economically efficient for typical programming job, than the average programmer.
Most programming jobs are like plumbing, and dont require much of thinking.
Can AI in next 5 years write typical UI App or React.JS Web App? Or game? Or Server Rest API, or Data Processing? Or driver? Or db schema? With some human supervision. I think so. Thats enough to fire half or maybe even 80% of IT jobs.
I can't help but share the coolest thing I've seen in a while here: Diffusion models(like what's used in my avatar) for syntax trees.
This is more the meta I envision than just natural language for programs(which the earlier meme in this thread greatly explicates😂); Multi-modal representation.
Yet you bump a two day old topic to do just that? You're right that further discussion along these lines will not be tolerated. I didn't remove the original post (which in retrospect I probably should've because it's quite off-topic) because it is close to the best estimates for Palestinian casualties. Removing it without doing something about the light hearted nature of your post about anti-missile tech felt like leaving the conversation unbalanced.
Any further comments on the matter will be removed however. Feedback on the moderation is always accepted through the moderator feedback form