What exactly is the problem with finding all starred symbols? Why will that become insufficient?
P.S. Honestly, wtf is with all these AI posts lately?
ai needs to read the entire nim file to know which exported symbols are there, and the context size of ai is limited.
PS. AI is not omnipotent, but if you have a deep understanding of its upper and lower limits, it will greatly improve development efficiency.
Nim language does not have header files like C/C++. If AI want to know what external interfaces a file provides, AI must read the entire file and find the symbol with *.
Most of programming languages I know excepts C/C++ don't have header files like C/C++. Many of popular programming languages excepts C/C++ probably requires to read the entire file to find public symbols. So AI assistance is usable only with C/C++? If it is really a problem, programmers should manually write a list of public functions or types in a separate file like C programmers do?
There's an app for that!
Honestly, wtf is with all these AI posts lately? Do people seriously suggest changing the language to serve LLMs?
Isn't that how progress work? Instead of designing better shovel for humans, the excavator bucket designed :).
@ xiwandashi
As i understand it, the AI needs no header-files. It just needs tons of code to learn how to generate code, that is how to determine what is the most appropriate response (of source-code) considering the input-requests.
@ alexeypetrushin
Progress is what creates the best increase of aggregate fullfillment of people (and other conscious beings), not necessarily delivering more gadgets.
Yes, maybe I phrased it poorly. Saying declarative vs imperative was wrong. It's better to rephrase it as the language as close as possible to human mind architecture and maximising its capabilities and processing power.
In the past, when humans were superior to machines languages were designed to make machine work easier. Now the situation reversed, machines are superior to humans, and optimal language is the one that's easier for human to process.
I’m finding Nim to be pretty good with LLM AI tools. Compile time type checking is good, while Nim’s syntax is much simpler than C++ or Rust in general which seem to cause more work for LLMs.
It’d appear that extra unnecessary tokens cause headaches for humans and machines while basic type info is still valuable.
I’m using Atlas and all my dependencies are in a deps/ folder. Cursor and Claude Code can search it and find definitions. Sonnet is good at this process now. Anthropic really has improved their tooling around Claude.
Also AIs and LLMs aren’t going to replace programming languages for humans. They’re a much more precise and consistent form of symbolic logic which human languages just don’t match. Hence jokes like:
Wife sends her programmer husband grocery shopping. She tells him:
“I need butter, sugar and cooking oil. Also, get a loaf of bread and if they have eggs, get 6.”
The husband returns with the butter, sugar and cooking oil, as well as 6 loaves of bread.
The wife asks: “Why the hell did you get 6 loaves of bread?”
To which the husband replies: “They had eggs.”
Does anyone else here find it baffling that so many people consider a programming language being more similar to a natural language to be something of value? And being able to program in a natural language to be something desirable?
In natural sciences, long before the conception of computers, the appearance of highly specialized symbolic languages was what accelerated progress tremendously (see how people wrote down how to solve cubics at the time). You wouldn't strive to purge mathematics and physics of symbols and equations to replace them with human language. Why strive for it in programming?
Does anyone else here find it baffling that so many people consider a programming language being more similar to a natural language to be something of value?
Many/most people think in natural language, the inner monologue .
Maybe mathemagicians and APL programmers have a symbol inner language, I don't know.
That's kinda the point, you need to develop a more precise thinking mode to do mathematics effectively. I do have inner monologue, and I do have a symbol inner language for thinking about mathematical stuff.
Perhaps the same is true for programming. If you lack the precise thinking skill, being able to program in natural language won't save you. Otherwise natural language gets in the way.
a more precise thinking
We are perfectly able to use natural language to express very precise and exact. We are perfectly capable to express everything in math in natural language. It will take more space.
Regardless of the programming language (syntax) under the hood "it's just looping". zip, map, for .. in, or every thing in shopping list ...
A lot is kind of "sugar" and sugar takes learning, but is less verbose. In real life I've never "zipped" my shopping list(s).
We are perfectly capable to express everything in math in natural language. It will take more space.
Such expression is so inefficient it is useless. Come on, write down Schroedinger's equation without symbols, just using normal words. And try do derive hydrogen's energy levels, also without writing down a single symbol. Also, the words in natural language are blurry. To do maths, you'll have to attach precise meaning to words. You'll end up with something more similar to the language used in legal documents, and calling that "natural" is a quite a stretch.