I am doing AI work (not neural nets) and I'm also a programming language aficionado. I've invented several special purpose languages and have implemented them. The role programming language might play in AI is something I have though about.
That all said, the place to start is the AI model. It only make sense to invent a programming language as an aid to humans to express designs using a chosen model. In short, you don't start with the language but the designs you would like to express. The purpose of a language is solely to make designs easier to read and write by humans.
Any system that takes a huge amount of input data and reduces it to some sort of representation will have input cases it doesn't handle well. The reduction throws away data of a certain, supposedly unimportant, variety. Input cases are bound to exist where the data thrown away by the reduction algorithm are, in fact, important. Visual illusions are such cases for the human visual system. Those that work on autonomous vehicles have to deal with such cases. Humans that understand how such recognition systems work can purposefully construct such cases in order to "hack" them. It's a jungle out there.
I look at this from a functional point of view. If I were designing an AGI, what role would emotions play in its design? In other words, my concern is to design in emotions, not wait for them to emerge from my AGI. This implies that my AGI needs emotions in order to function more competently. I am NOT designing in emotions in order to better simulate a human, though that might be a design goal for some AGI projects.
So what are emotions and why would an AGI need them? In humans and other animals, emotions are a global mechanism for changing the creature...
Agoric Computing seems like a new name given to a very common mechanism employed by many programs in the software industry for decades. It is quite common to want to balance the use of resources such as time, memory, disk space, etc. Accurately estimating these things ahead of their use may use substantial resource by itself. Instead, a much simpler formula is associated with each resource usage type and that stands as a proxy for the actual cost. Some kind of control program uses these cost functions to decide how best to allocate tasks and use actual res...
Seems like the planning process or algorithm is recursive but the plans are merely hierarchical.
Speaking or recursion in human cognition, I've always wondered if it is implemented in the human brain in what computer scientists (programming language compiler writers, to be specific) call "unrolling" as opposed to true recursion. Many modern compilers, when they detect that a recursive algorithm or simple loop will actually only nest 5 times, say, will generate machine code that unrolls the recursion into a simple linear series of 5 steps. The... (read more)