I tarp di Turing ci insegnano quanto delle lingue che usiamo nella programmazione quotidiana è lo zucchero sintattico. Se si osservano i linguaggi di assemblaggio a una istruzione (ad es. Subifzjmp abc che sottrae il contenuto del registro a dal registro b ai rami c se il risultato è zero) o jot (qualsiasi albero binario di nodi non etichettati è effettivamente un programma valido in un determinato calcolo combinatore) ti rendi conto di come la complessità emerge praticamente da nulla.
Quindi torni a C ++, Java, Python o what-have-you e sei grato di avere tre o quattro stili di loop e la possibilità di suddividere il problema in componenti testabili separatamente.