I’m going to found the field of Linguistic Engineering. I wish to study the relationship between what people think (algorithms) and what they say (programs), with the end goal being a set of design principles for the creation of programming languages for specific problem domains (ex. parallel computation and quantum computation ). This subject has some rather interesting ties in other fields.
- Mathematical and algorithmic education. The construction of programs and the languages they are expressed in influence they way in which we think about programming. We need elegant, yet nonrestrictive notations for our programs, and these will correlate strongly with how the human brain functions.
- Artificial Intelligence. The representation of knowledge strongly influences the ease with which certain types of logical inference can be deduced. The organization of knowledge within a cognitive system subjects the system to calculational constraints.