There has been a lot of work on inferring programs from ambiguous and incomplete specs. These systems aren’t what we normally mean by compilers, since they typically take inputs that don’t belong to any well-defined programming language.
For example, see “Macho: Programming with Man Pages” by Anthony Cozzie, Murph Finnicum, and Samuel T. King. It appeared at HotOS ’11: http://www.usenix.org/events/hotos11/tech/final_files/Cozzie.pdf The idea is that man pages go in one end of their system and a working program comes out the other.
Another piece of modern work on automatic programming is Programming by Sketching. There was a paper at PLDI ’05 by Solar-Lezama et al : http://cs.berkeley.edu/~bodik/research/pldi05-streambit.pdf (PLDI is the ACM conference on Programming Language Design and Implementation)
Both of those papers are from mainline computer scientists outside the AI community—HotOS is a [well regarded] systems workshop, and PLDI is probably the top venue for programming-language research.
There has been a lot of work on inferring programs from ambiguous and incomplete specs. These systems aren’t what we normally mean by compilers, since they typically take inputs that don’t belong to any well-defined programming language.
For example, see “Macho: Programming with Man Pages” by Anthony Cozzie, Murph Finnicum, and Samuel T. King. It appeared at HotOS ’11: http://www.usenix.org/events/hotos11/tech/final_files/Cozzie.pdf The idea is that man pages go in one end of their system and a working program comes out the other.
Another piece of modern work on automatic programming is Programming by Sketching. There was a paper at PLDI ’05 by Solar-Lezama et al : http://cs.berkeley.edu/~bodik/research/pldi05-streambit.pdf (PLDI is the ACM conference on Programming Language Design and Implementation)
Both of those papers are from mainline computer scientists outside the AI community—HotOS is a [well regarded] systems workshop, and PLDI is probably the top venue for programming-language research.