Turing Completeness is a concept from CS Theory. It is an adjective describing the power of a computing system. If your computer is Turing Complete, then you can pretty much compute (given enough time) anything any other computer can. I never actually thought it would prove directly useful, only as a stepping stone for deeper theoretical results. I was wrong.
One of the less glamorous realities of working as a researcher for a financial syndicate is financial software. Specifically, Trading Software. These programs are interface nightmares and work to further obfuscate an already incredibly challenging task. And yet, traders, knowing no better and having no other options, soldier on anyway. Once in a while, I have to gird my loins, put on my biohazard suit, say a few hail Marys, and plunge into the muck and work with these programs.
You see, my client wanted me to build a tool in the embedded formula language of a financial charting program (which will go unnamed). For a week I struggled with the program and kept hitting the wall. Today, while walking to work I actually determined that the embedded formula language of said program I work with is *NOT* Turing complete and incapable of producing this tool. I couldn’t believe it. It takes shockingly little for a language to be capable of Universal Computation. (I did this by realizing the language cannot simulate rewinding the tape and rewrite a symbol, you have to know the sequence of rewinds and the symbols in advance… never mind if this doesn’t make any sense)
Why would they do this? Because they don’t have the support staff to handle fixing a client’s buggy scripts? Not a good reason; they already have a disclaimer regarding their limited support with coding. Ignorance? Most likely. There just doesn’t seem to be any reason for this restriction except ineptitude. This poor design choice has cost the software company many thousands of dollars as we will now have to look elsewhere for a solution to our problem.
Moral: if you’re going to hamstring your users, let them know you’ve done so. If you’re planning on building an add-on that gives your users the ability to write code, please hire someone who has a degree in Computer Science and has taken a class in Theory. Even the more highfalutin concepts can have practical application!
If innumeracy is the mathematical equivalent to illiteracy, what is the analogue for CS? Illambdacy?