Educational programming language
From Wikipedia, the free encyclopedia
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.
Contents |
[edit] Some examples
[edit] Children
- AgentSheets is an award winning game and simulation authoring tool that is simple enough to be used by middle school students to learn about computer science by making video games, yet sophisticated enough to allow NASA scientist to create simulations of Space Shuttle payload. AgentSheets supports game (animation, interaction, sound, speech synthesis/recognition (Mac)) and well as science applications (plots,output to spreadsheets, 3D plot (Mac)). English, Greek, and Japanese versions are available.
- Alice is a free programming language designed to teach event driven object oriented programming to children. Programmers create interactive stories using a modern IDE interface with and a drag and drop style of programming. The target audience is middle school girls though most children with computer experience will find it entertaining and educational.
- Baltie Baltie ( http://www.baltie.com )is an educational graphic oriented programming tool for children, youth (and adults). Baltie is also main character of this software a little wizard keen to execute miscellaneous commands and to conjure pictures (tiles) in his scene. With Balties help children will quickly realize what is a computer and how to master and program the computer. All that by playing. Baltie can be used also for exercising logical thinking. It makes no demands on childs knowledge, only playfulness and imagination are required. It is used in many countries in the basic schools. The new version of Baltie 4 fully supports C#. Additional usage information can be found at the CIB - Creative Informatic with Baltie.
- Karel, Karel++, and Karel J. Robot are languages aimed at absolute beginners, used to control a simple robot in a city consisting of a rectangular grid of streets. While Karel is its own programming language, Karel++ is a version of Karel implemented in C++, while Karel J. Robot is a version of Karel implemented in Java.
- Logo is a language that was specifically designed to introduce children to programming. An abstract drawing device, called the turtle, is used to make programming for children very attractive by concentrating on doing turtle graphics. Experience shows that children do learn to make the turtle (that is, program the turtle to) draw all kinds of pictures on the screen, starting with simple lines and moving later to the fanciest pictures.
Even though conceived as a language for children, Logo is quite expressive and can be used by experienced programmers as well to write real life application programs. Logo is especially suited for introductory training in developing applications in the field of symbolic programming and artificial intelligence. - Phrogram formally Kid's Programming Language is a freeware programming language and Integrated Development Environment invented in 2005. KPL emphasizes graphics and sounds, making it particularly easy to develop games and entertaining educational material. KPL is a simplified structured language, and offers component-based development features such as classes and methods. KPL is modeled on modern IDEs such as Eclipse and Visual Studio. NET, and intends to prepare a beginner to graduate to these or other professional development environments.
- Squeak, Smalltalk and especially eToys are graphical environments which may be used not just to teach programming concepts to kids, but also Physics and Mathematics simulations, story-telling exercises, etc.
[edit] University
- AgentSheets is a game authoring tool that has been used in a number of educational game design courses to teach ugrad and grad students to quickly prototype, playtest and publish educational games.
- A++ represents a more recent attempt at creating a programming language designed to provide an efficient tool for basic training in programming.
- In the early days of computing, universities taught programming with machine language, assembly language, and then Fortran (in North America) and ALGOL (Europe). Business schools often taught COBOL.
- Oz is a programming language designed to teach computer theory. It supports most major paradigms in a single language so that students can learn paradigms without having to learn multiple syntaxes. Oz contains in a simple and well-factored way most of the concepts of the major programming paradigms, including logic, functional (both lazy and eager), imperative, object-oriented, constraint, distributed, and concurrent programming. It has a canonical textbook Concepts, Techniques, and Models of Computer Programming and a freely available standard implementation Mozart Programming System.
- Pascal is the most well-known programming language that was designed with education in mind. From the late 1970s to the late 1980s, it was the primary choice in introductory computer science classes for teaching students programming in both the US and Europe. Its use for real-world applications has since increased, and regarding it as a purely educational programming language has since become somewhat controversial.
- The publication of Structure and Interpretation of Computer Programs in 1984 changed the predominance of Pascal. The book uses Scheme to teach fundamental concepts of computing, not just the grammar of a programming language. In the meantime, the Scheme community has introduced several pedagogic programming environments that assist students with the learning process, including DrScheme, EdScheme, and 3D Scheme. Scheme has grown to become a serious application programming language, suitable for many kinds of real life applications and is actively used in industry.
[edit] External links
- A discussion on which languages to use for teaching kids. Wide range of opinion on Don's Box