List of educational programming languages: Difference between revisions

Content deleted Content added
"Educational programming language" is not a proper noun phrase (i.e., it's not referring to a particular programming language called "Educational Programming Language"), so don't capitalize its initial letters. Use sentence case in section headings.
See also: Programming education, code playgrounds
 
(7 intermediate revisions by 5 users not shown)
Line 29:
* '''[[Microsoft Small Basic]]''' is a restricted version of [[Visual Basic (classic)|Visual Basic]], which is designed as "an introductory programming language for beginners". It's intentionally minimal with just 15 keywords for basic functionality. By providing specific libraries for topics that interest children, they can create programs for both the web and [[Desktop computer|desktop]] environments. For example, with 6 lines of code, it is possible to demonstrate a random network image viewer using [[Flickr]] as the source.<ref>Microsoft corporation 2009 [http://download.microsoft.com/download/9/0/6/90616372-C4BF-4628-BC82-BD709635220D/Introducing%20Small%20Basic.pdf Getting Started Guide for Small Basic], p. 64.</ref> The system utilizes the [[Microsoft Visual Studio]] IDE to provide [[IntelliSense|auto-completion]] and [[Tooltip|context-sensitive help]].
* '''[[Basic-256]]''' is an easy-to-use version of BASIC designed to teach anybody the basics of computer programming. It uses traditional BASIC control structures ([[gosub]], [[for loop]]s, [[goto]]) for easy understanding of program flow control. It has a built-in [[graphics]] mode that allows children to draw pictures on the screen after minutes.
* [[Simple Mail Transfer ProtocolSiMPLE|'''SiMPLE''']] is a programming development system that was created to provide easy programming abilities for everybody, especially non-professionals. It is somewhat like [[Applesoft BASIC|AppleSoft BASIC]]. It is compiled and lets users make their own libraries of often-used functions. "Simple" is a generic term for three slightly different versions of the language: Micro-SIMPLE (uses only 4 keywords), Pro-SiMPLE, and Ultra-SiMPLE (using 23 keywords).
* '''[[Hot Soup Processor]]''' is a BASIC-derived language used in Japanese schools.
* '''[[TI-BASIC]]''' is a simple BASIC-like language implemented in [[Texas Instruments]] [[graphing calculator]]s, often serving as a student's first look at programming.
Line 47:
 
===Scala-based===
* [[Kojo (programming language)|'''Kojo''']] is an interactive desktop development environment, developed primarily for educational purposes. The application runs on [[Microsoft Windows|Windows]], [[Linux]] and [[MacOS|OS XmacOS]]. Kojo is a learning environment, with many different features that help with the exploration, learning and teaching of concepts in computer programming, [[critical thinking]], math, science, art, music, [[creative thinking]], computer and [[internet literacy]].<ref>{{cite web|title=About kogics Kojo|url=http://www.kogics.net/sf:about|access-date=February 12, 2011}}</ref>
 
===Smalltalk-based===
As part of the [[One Laptop per Child]] project, a sequence of Smalltalk-based languages has been developed, each designed to act as an introduction to the next. The structure is Scratch to [[Etoys (programming language)|Etoys]] to [[Squeak]] to any [[Smalltalk]].<ref>{{cite web|last=Cavallo|first=David|title=Learning Squeak from Scratch|publisher=One Laptop Per Child News|date=May 28, 2007|url=http://www.olpcnews.com/software/applications/learning_squeak_scratch.html|access-date=April 3, 2009}}</ref> Each provides graphical environments that may be used to teach not only programming concepts to kids but also physics and mathematics simulations, story-telling exercises, etc., through the use of [[Constructivism (philosophy of education)|constructive learning]]. Smalltalk and Squeak have fully featured application development languages that have been around and well-respected for decades; Scratch is a children's learning tool.
* [[Scratch (programming language)|'''Scratch''']] 1.0 is implemented in Smalltalk. See [[#Children|below]] for more information.
* [[Etoys (programming language)|'''Etoys''']] is based on the idea of programmable [[Virtuality|virtual]] entities behaving on the computer screen. Etoys provides a media-rich authoring environment with a simple, powerful scripted object model for many kinds of objects created by end-users. It includes [[2D computer graphics|2D]] and [[3D computer graphics|3D]] [[graphics]], [[image]]s, [[Plain text|text]], particles, presentations, web pages, [[video]]s, sound and [[Musical Instrument Digital Interface|MIDI]] (the ability to share desktops with other Etoys users in [[real-time computing|real-time)]]. Many forms of immersive [[mentorship|mentoring]] and play can be done over the [[Internet]]. It is [[Multilingualism|multilingual]] and has been used successfully in the [[United States]], [[Europe]], [[South America]], [[Japan]], [[Korea]], [[India]], [[Nepal]] and elsewhere. The program is aimed at children between the ages of 9-12.<ref>{{cite book|last=Ducasse|first=Stéphane|url=http://smallwiki.unibe.ch/botsinc/|title=Squeak: Learn Programming with Robots (Technology in Action)|publisher=Apress|year=2005|isbn=1-59059-491-6|pages=289 in ch 24: ''A tour or eTOY''}}</ref>
* '''[[Squeak]]''' is a modern, open-source, full-featured implementation of the Smalltalk language and environment. Smalltalk is an [[Object-oriented programming|object-oriented]], [[Type system|dynamically typed]], [[reflective programming]] language created to underpin the "new world" of computing exemplified by "human-computer symbiosis".<ref name="History">{{cite web|last=Kay|first=Alan|url=http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html|title=The Early History of Smalltalk|access-date=September 13, 2007|archive-url=https://web.archive.org/web/20110429192453/http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html|archive-date=April 29, 2011|url-status=dead}}</ref> Like [[Lisp (programming language)|Lisp]], it has [[Persistence (computer science)#Built-in to operating systems and programming languages|image-based persistence]], so everything is modifiable from within the language (see [[Smalltalk#Reflection]]).<ref>For further discussion of why this make it easy see [[Meta-circular evaluator]]</ref> It has greatly influenced the industry introducing many of the concepts in object-oriented programming and [[just-in-time compilation]]. Squeak is the vehicle for a wide range of projects including multimedia applications, educational platforms and commercial [[web application]] development. Squeak is designed to be highly portable and easy to debug, analyze and change, as its [[virtual machine]] is written fully in Smalltalk.
 
Line 91:
* [[:Category: Programming language comparisons]]
* [[Assembly language]] – a low-level programming language
* [[Wiki Markup Language]]
* [[Sugar (desktop environment)|Sugar]] – a GUI designed for constructive learning
* [[Design By Numbers (programming language)|Design by numbers]]
* [[Processing (programming language)|Processing]] – a language dedicated to artwork
* [[Online integrated development environment|List of online integrated development environments]]
* [[Comparison of online source code playgrounds]]
* [[Programmer#Programming education|Programming education]]
 
==References==