You're looking at Less Wrong's discussion board. This includes all posts, including those that haven't been promoted to the front page yet. For more information, see About Less Wrong.

asr comments on Q&A with experts on risks from AI #3 - Less Wrong Discussion

13 Post author: XiXiDu 12 January 2012 10:45AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (28)

You are viewing a single comment's thread. Show more comments above.

Comment author: CronoDAS 12 January 2012 10:28:53PM *  2 points [-]

William Uther: There is a whole field of 'automatic programming'. The main difficulties in that field were in specifying what you wanted programmed. Once you'd done that the computers were quite effective at making it. (I'm not sure people have tried to make computers design complex algorithms and data structures yet.)

Tools that take "a description of what you want programmed" and turn it into code already exist. They're called compilers. If you've specified what you want in a way that doesn't leave any ambiguities, you've already written your program.

Comment author: asr 16 January 2012 05:37:35PM *  1 point [-]

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.