Dingen die per ongeluk Turingcompleet zijn
- January 9, 2015
- 0
Een systeem wordt Turingcompleet genoemd als je er een Turingmachine mee kunt simuleren. Voor je je weer in de schoolbanken voelt of op Wikipedia gaat opzoeken wie Turing nu weer was, maak ik het je wat gemakkelijker: in grote lijnen wil Turingcompleet zeggen dat je er alles mee kunt berekenen dat praktisch berekenbaar is.
Of anders gezegd: in een Turingcompleet systeem kun je elk willekeurig computerprogramma uitvoeren. Nu blijkt dat enkele systemen ‘per ongeluk’ Turingcompleet zijn: het was niet de bedoeling dat ze zo krachtig waren. Andreas Zwinkau heeft de bekendste hiervan op zijn website verzameld en ze zullen je verbazen. Of niet… Dat C++-templates Turingcompleet zijn, verbaast me eerlijk gezegd niet, gezien hun complexiteit. En de regels van Magic The Gathering kon ik ook nooit onthouden. Toen ik las dat je met het complexe spel elke berekening kunt simuleren, voelde ik me al minder dom. Maar ook de combinatie van HTML5 en CSS3 is Turingcompleet, evenals Minecraft, de herschrijfregels van de Apache-module mod_rewrite, MediaWiki-templates, het Border Gateway Protocol (BGP) en de configuratie van Sendmail. Over dat laatste zullen niet veel systeembeheerders verbaasd zijn…