Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm sure you know this, but I'd just like to clarify something:

You absolutely can generate only programs that terminate; for instance, throw out any that have recursion or unbounded loops, or use a non Turing complete language that is guaranteed to terminate.

That you can't solve the halting problem in general does not mean that static analysis is fruitless. The answer to "does this terminate" will be yes, no or maybe, almost always in the latter category.

The correct thing to say would be:

If you modify your algorithm to only generate programs without infinite loops, you've most likely thrown out the correct solution.



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

Search: