Current location - Training Enrollment Network - Mathematics courses - What language should children teach when they learn programming?
What language should children teach when they learn programming?
Recently, I have just had some experiences and feelings in teaching children to learn programming in a general sense. My child was exposed to a programming language similar to scratch when he was six years old. Later, he thought it was too simple and boring, so he stopped studying. At the end of the third grade of primary school, I felt that it was almost time, and the children also had the will to learn, so after the summer vacation, they began formal programming teaching. The programming language I use is Haskell, a classic functional programming language, and I study in the normal way. Why use Haskell is mainly because I think functional programming is more suitable for children's thinking, and I also want to verify whether my idea is reasonable. In addition, Haskell is the language with the least grammatical noise among functional programming languages, which is very close to the code form of mathematics and can reduce the obstacles for children to learn. Finally, I am only familiar with Haskell in functional programming language, so I can better grasp the difficulty of teaching, try not to touch more abstract and abstruse concepts too early, and try to teach in a simpler way. The general process is to teach four data types: integer type, character type, string type and Boolean type, and to teach some simple addition, subtraction, multiplication and division functions, string connection functions and branch processing expressions. Then I began to teach list types, simple list operations starting with strings. After these basic concepts are clear, we begin to teach recursion, which can realize the functions of sum, product, arbitrary and all, filter, sum, product, arbitrary and all, map and filter. Learn to solve the Hanoi Tower problem recursively in practice, and then hope to realize the output of a 99 multiplication table independently. After about two months' teaching attempt, I think Haskell can still be used in children's programming teaching, provided that the logical ability and English ability have a certain foundation and can accept the programming thinking mode. In addition, try to talk about the thinking mode of functional programming in a way close to mathematics, tell concrete and intuitive examples, and make good use of ghci, ipad, paper and pen.