I wonder how many language designers explicitly thought about the goal of turing completeness or just had it happen as they added high level constructs like functions et al.
Certainly turing completeness does not guarantee a nice language (see brainfuck and friends) and I am sure that there are some non-turing complete DSLs which are very nice to work with. It may just be that when people try to design general purpose languages, they end up with turing completeness.
> Certainly turing completeness does not guarantee a nice language
Actually, I would say exactly the opposite. Turing completeness guarantees you the ability to write a Lisp interpreter in that language, and thereby have "a nice language."
Turing-completeness doesn't guaranty any sort of I/O, which I would make a requirement of a nice language. I may be able to write a Lisp interpreter using Conway's Game of Life, but then I have to represent my Lisp code within the cellular automaton. (The same thing applies to, for example, Brainfuck.)
Also, I'd say that any language which requires me to write a Lisp interpreter to be nice is not a "nice language".
Certainly turing completeness does not guarantee a nice language (see brainfuck and friends) and I am sure that there are some non-turing complete DSLs which are very nice to work with. It may just be that when people try to design general purpose languages, they end up with turing completeness.