Hacker News new | past | comments | ask | show | jobs | submit login

Dijkstra is wrong on this one. Siri and Cortana have already achieved this for trivial classes of programs, and they will only improve.

People comparing natural language programming to EULAs are missing the point entirely: natural language input guides a search process for formal programs, it isn't literally "the program" itself.




I think Djikstra would not be bothered by this. His arguments tend to be that even with such a search process it's the very providence of formal language to give someone the power to guide that search.

In other words, you'd need formal language to be able to specify what you truly want, then would "translate" it to natural language to execute the search, the processor would search for the proper formal language expression, and then you would verify.

Or you could just skip all the intermediate steps.


It's the developers of agents like Siri and Cortana, not the users, who need formal language.

Anyway I don't think we're disagreeing with each other: there is always going to be a place for formal languages, they won't ever go away and be "replaced" with natural language interfaces, it's just that Jane Random will be more than happy to speak some gibberish to her computer and let the machine figure things out.


Oh but we are: I don't think Jane Random will ever reach so far into that direction until her desires become vastly simplified. So in a Wall-e style future then yes, but in one where people still do things creatively there will always be need for formality.


So, they are not programming. The ones that build the backend do it, and put a natural input interface as a frontend.


Yes, but that's a bit of a semantic quibble. If they're making their computer do nontrivial things they're essentially programming.

If the computer changes state it's because of the execution of a program, and if no programmer actually wrote that specific program then the act of creation can be considered "programming".


By that definition, a user drawing a picture is programming too! Especially if the picture is exported to PostScript.


Yep. I take it you don't enjoy this definition?

One alternative I've seen is what happens with artificial intelligence: if we can do it, it's not AI, just "algorithms" or whatever. In reality the definition of "artificial intelligence" is broad enough to cover the things we consider mundane today, like movie recommendations and search engine results.

If MS Paint was souped up with things like repetition and conditionals, would you be so opposed to calling that "programming"?




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: