Let’s say you wanted to use the mind as a calculator, and pen and paper as memory/registers/storage. Is there a programming language that works with pen and paper?
Yes, the WDR Paper Computer: https://en.wikipedia.org/wiki/WDR_paper_computer
It’s an awesome way to show the fundamentals of an assembly language without getting too complicated.
Originally designed for use in schools to teach computer science without needing an expensive electronic computer.
Check out lambda calculus—it was created by Turing’s doctoral advisor in 1936, before any real-world programming languages existed.
Turing machine itself is a theoretical tool that was thought to me using pen and paper, or chalk and blackboard. I guess you are looking for higher level language.
In such case i would allow multiple heads and more complex operations on the heads.
In theory, any programming language can be carried out on pen and paper. The problem is that it doesn’t take much for it to become far beyond impractical.
A pen and paper is the original memory/storage/register and your brain is the original calculator so yes and no.
You literally carried out the outcome of your question by asking it
This is actually something that a turing machine is suitable for.
Get youself something to remember what state you’re in, write the rules on a sheet of paper and use a stack of paper as the tape, with each piece of paper being one cell.
Turing’s idea was to build a mathematical model that mirrored how humans go about large, complex tasks.
Honestly, all of these super basic mathematical models for calculation are fairly well suited to being “run” by hand.
Random-access-machines can be done similarly to turing machines. Write the program down, keep the program counter on one piece of paper, and have a (numbered) stack of paper as memory.
And lambda-calculus is probably the easiest. Just write out the expression, and then write out each reduction step. This is what functional programming languages build on, and with the additional effort of checking types, you could probabl evaluate something like Haskell by hand pretty well.
All of those are turing complete (if you ignore infinite memory).
EDIT: spelling


