There is some debate as to whether it is wise to teach programming to students who are not majoring in computer science. Some claim that students do not need the “Turing expressiveness” of a general purpose programming language (Soloway, 1993, p. 22). There are at least three categories of reasons for taking the opposite view.