Theoretically, is it possible to write programs without using variables? What will the most complex program look like? Does the answer vary depending on the language? Would you be able to use functions? Control flow?
closed as too broad by gnat, dagnelies, Pieter B, David Arno, Christophe Mar 29 '17 at 19:37
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
A language doesn't need variables to be Turing-complete; therefore, every program that can be written at all, can also be written without variables.
Some notable languages which don't have variables, yet are Turing-complete, are:
In general, by thinking about how data flows through a system and is transformed and reduced in the process instead of mutating state, you can get rid of variables, and express computation as a series of combinations of functions. Think of a Unix shell pipeline, for example.
But the really obvious example is: your computer. It doesn't have variables, yet it executes all your programs.