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

It's also tricky because it's so easy to make a Turing complete system by accident. You may not even realize that you've crossed that line.


It really shouldn't be hard to tell for the designer. If you're considering implementing loops, conditionals or variables in your DSL then you should kind of realize what direction you're headed in.

The hard part is realizing from the get go (before backwards compatibility concerns kick in), that your problem space is not conducive to non-turing complete languages in the first place, and that instead of inventing an exciting new DSL, maybe you should just write a library.


When CSS+HTML5 became Turing complete, do you think the designers knew it?

Or the designers of page fault handling in X86?

As I understand it, C++ templates were not supposed to be Turing complete, but they are.

These examples and more come from http://beza1e1.tuxen.de/articles/accidentally_turing_complet... .




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: