Educational programming language
An educational programming language is a programming language that is designed primarily as a learning instrument and not so much as a tool for writing real world application programs.
In this sense A++, Pascal and Scheme may be considered
to belong to this category of programming languages.
- Pascal has been traditionally used in many schools, colleges and universities in computer science classes to teach students the fundamentals of programming.
- More and more computer science teachers today prefer Scheme as the programming language of choice whenever students have to be introduced to the world of computer programming.
They argue that learning Pascal requires students to spend too much brainpower on the syntax of a language than on the essentials of programming.
They also believe that Pascal as a programming language is less expressive than Scheme, imposing on students too many limits thus demanding from them to spend much of their intellectual energy coping with the idiosyncracies of a language instead of letting them concentrate on the solution of a given problem.
- Logo is a language especially designed to introduce children to programming. A device called 'turtle' is used to make programming for children very attractive. It is amazing how fast children learn to program the 'turtle' to draw all kinds of pictures on the screen, starting with simple lines and later the fanciest pictures after having been familiarized with basic programming constructs.
Logo is not a 'dumb' language however that can only be used to draw lines. It is very similiar to Scheme in its expressiveness and power and can there be used by experienced programmers as well to write complex application programs. Logo is especially suited for applications in the field of symbolic programming and artificial intelligence.
- A++ in particular is a programming language designed to provide a tool for basic training in programming enforcing a rigorous confrontation with the essentials of programming.
Programming in A++ students learn:
- that programming problems can be solved using the powerful patterns derived from ARS (Abstraction, Reference and Synthesis)
- and that neither the knowledge of the syntax of a programming language
- nor the familiarity with all the primitive functions of a language implementation makes up the art of programming.