Automatic programming, that is, machine synthesis of algorithms, has advanced to the stage where most simple standard algorithms, for example for searching, sorting and combinatorics, can be routinely synthesized. In this paper, we study a much more difficult problem, namely automatic programming for learning the semantics of human language. As far as we know, the most advanced and capable system for fully automatic programming is Automatic Design of Algorithms through Evolution (ADATE), which has a unique ability to generate recursive functional programs from first principles with automatic invention of recursive help functions. The semantics of the simple language learnt by ADATE in our experiments is grounded in a desktop world where an agent moves a cursor on a surface covered with a number of windows, similar to the desktop facing millions of computer users every day.
展开▼