The ENIAC (1946) was the first machine that was both electronic and general purpose. It was Turing complete, with conditional branching, and programmable to solve a wide range of problems, but its program was held in the state of switches in patchcords, not in memory, and it could take several days to reprogram. Researchers such as Turing and Zuse investigated the idea of using the computer's memory to hold the program as well as the data it was working on, and it was mathematician John von Neumann who wrote a widely distributed paper describing that computer architecture, still used in almost all computers.