The course described herein is the means by which a university student is introduced to complex computation. This first contact should happen at the earliest possible time in his college education, and the contact should be analytical, not descriptive. Together with courses in mathematics and natural language, this course should contribute to his development of fluency in the use of intellectual tools. It is hoped that the material presented here will be helpful in organizing a first one-semester course in computing. Because this course is limited to one-semester, it does not contain many things that a programming course should. Succeeding courses involve the student in symbol manipulation, per se, and in the details of designing real and, hence, complex computer systems. (Author).