Programming language Semantics

As discussed previously, approaches to artificial general intelligence can be classified as reverse or forward engineering. In the forward engineering domain, one promising approach, I believe, is programming language reengineering or PLR.

One aspect of conventional programming languages that make them difficult to use and fragile is narrow-semantics - the fact that subroutines1 and their parameters only have semantics (meaning) by their context in a particular program.

How would a broad-semantics language look? Subroutines and their parameters would include a network of information about how they are commonly used. During programming (human programming or an evolutionary programming based AGI), a list of subroutines would continually be presented in an order based on the semantic network.

For example, consider the trig Sin subroutine. In our human programmer mind, we have an implicit semantic about the Sin function - that it is often used:

  • with other mathematical subroutines like Cos, Tan, Multiply, Add, etc.
  • when numbers have been computed
  • when the context includes some concept of arcs or circles
  • etc.

In an explicit-semantic language the language, or perhaps a wrapper to the language, would explicitly encode the above connections. The connections could be hard coded or auto-learned from the collective code of some group or even all the programmers using the language, say via the internet.

In an AGI evolutionary programming context the semantic network of the reengineered programming language would strongly bias the growth of the evolved program.

Related video
Functional Programming II - languages and compilers
Functional Programming II - languages and compilers ...
Principles of Programming Languages Lecture 3 Part 1
Principles of Programming Languages Lecture 3 Part 1
Morgan Kaufmann Blondie24: Playing at the Edge of AI (The Morgan Kaufmann Series in Artificial Intelligence)
Book (Morgan Kaufmann)
  • David B. Fogel
  • math
  • technology
Interesting facts
Related Posts