List of educational programming languages: Difference between revisions

Content deleted Content added
No edit summary
mNo edit summary
Line 68:
==Children==
* '''[[AgentSheets]]''' and '''[[AgentCubes]]''' are two computational thinking tools to author 2D/3D games and simulations. Authoring takes place through desktop applications or browser-based apps, and it can create 2D/3D games playable in HTML5 compliant browsers, including mobile ones.
* [[Alice (software)|'''Alice''']] is a free programming software designed to teach event-driven object-oriented programming to children. Programmers create interactive stories using a modern IDE interface with a drag and drop style of programming. The target audience ranges from middle school children all the way to university students.<ref>{{Cite web|title=About – Alice|url=https://www.alice.org/about/|access-date=2024-10-07|language=en-US}}</ref> [[Storytelling alice|'''Storytelling Alice''']] is ana variant of the Alice variantsoftware designed for younger children, with ana greater emphasis on its evencapabilities strongerin storyterms tellingof bentstorytelling.<ref>{{Cite web|title=Storytelling Alice – Alice|url=http://www.alice.org/get-alice/storytelling-alice/|access-date=2023-11-07|language=en-US}}</ref>
* '''[[Blockly]]''' is an open-source web-based graphical language where users can drag blocks together to build an application with no typing required. It was developed by [[Google]]. It allows users to convert their Blockly code into other programming languages such as PHP, Python, etc.
* '''[[CiMPLE]]''' was a visual language for programming robotic kit designed for children. It was built on top of [[C (programming language)|C]] as a [[Digital subscriber line|DSL]]. ThinkLabs, an Indian Robotics education-based startup, built it for the iPitara Robotics Kit. The language bore strong resemblance to the C language. At least one school in Bangalore, India bought the iPitara kit and had their students program the robots using CiMPLE.<ref>{{Cite web|last=EducationWorld|date=2012-09-21|title=ThinkLABS RoboLAB|url=https://www.educationworld.in/thinklabs-robolab/|access-date=2024-10-08|website=EducationWorld|language=en-US}}</ref> More information is available at the CiMPLE Original Developers Weblog.<ref>[http://www.uptosomething.in/weblog/?p=531 CiMPLE Original Developers Weblog] {{webarchive|url=https://web.archive.org/web/20110721181639/http://www.uptosomething.in/weblog/?p=531|date=July 21, 2011}}</ref><ref>{{Cite web|date=2012-09-20|title=ThinkLABS -|url=http://www.thinklabs.in/school/robo-camp.html#tab-3|access-date=2024-10-09|archive-url=https://web.archive.org/web/20120920065922/http://www.thinklabs.in/school/robo-camp.html#tab-3|archive-date=September 20, 2012}}</ref> ThinkLabs eventually switched to using "THiNK VPL" as their visual programming software.
* [[Physical Etoys|'''Physical Etoys''']] is a free open-source extension of Etoys. Its philosophy is that "it helps children explore their own creativity by combining science and art in an infinite laboratory."<ref>{{Cite web|title=Physical EToys - General description of the project|url=https://tecnodacta.com.ar/gira/projects/physical-etoys/|website=Tecnodata}}</ref> It can run on [[Microsoft Windows|Windows]], [[Linux]] and [[Sugar OS|Sugar]]. Due to its block scripting system, Physical Etoys allows different electronic devices such as [[Lego Mindstorms NXT|Lego NXT]], [[Arduino]] boards, [[Sphero]], [[Kinect]], and [[Wii Remote|Wiimote]] joysticks interact between themselves.
* [[Hackety Hack|'''Hackety Hack''']] is a free [[Ruby (programming language)|Ruby]]-based environment aimingthat aims to make learning [[computer programming|programming]] easy for beginners, especially teenagers.<ref>{{Cite web|title=Hackety Hack|url=https://github.com/hacketyhack|access-date=2024-10-09|website=GitHub|language=en}}</ref>
* [[Karel (programming language)|'''Karel''']], [[Karel++|Karel''++'']], and [[Karel the robot|Karel J. Robot]] are languages aimed at beginners, used to control a simple robot in a city consisting of a rectangular grid of streets. While Karel is its own language, Karel++ is a version of Karel implemented in [[C++]], while Karel J. Robot is a version of Karel implemented in [[Java (programming language)|Java]].
* '''[[Kodu]]''' is a language that is simple and entirely icon based. It was developed by [[Microsoft Research]] as a project to encourage younger children, especially girls, to enjoy technology. Programs are composed of pages, which are divided into rules, which are further divided into conditions and actions. Conditions are evaluated simultaneously. The Kodu language is designed specifically for game development and provides specialized primitives derived from gaming scenarios. Programs are expressed in physical terms, using concepts like vision, hearing, and time to control character behavior. The Kodu tool is available in three forms: [[Personal computer|PC]] as a free download in public beta and academic forms, and as a low-cost [[Xbox 360]] Live download.
Line 79:
* [[Mama (software)|'''Mama''']] is an educational [[object-oriented programming|object oriented]] language designed to help young students start programming by providing all the language elements in the student's language. Mama language is available in several languages, with both LTR and RTL language direction support. A [http://www.eytam.com/mama new variant of Mama] was built atop [[Carnegie Mellon]]'s ''[[Alice (software)|Alice]]'' development environment, supporting scripting of the 3D stage objects. This variant was designed to help young students start programming by building 3D animations and games. A document on educational programming principles explains Mama's design considerations.<ref>[http://en.eytam.com/mama/educational_programming_language Mama educational programming principles]</ref>
* '''[[RoboMind]]''' is a simple educational programming environment that allows beginners to program a robot. It introduces popular programming techniques along with robotics and artificial intelligence. The robot can be programmed in Arabic, Chinese, Dutch, German, English and Swedish.
* [[Scratch (programming language)|'''Scratch''']] is a visual language with the goal of teaching programming concepts to children by lettingallowing them to create projects such as games, videos, and music. It does this by simplifying what we know to be code into function "blocks" that the user can drag and connect, then run by clicking the green flag icon. In Scratch, all the interactive objects, graphics, and sounds can be easily imported to a new program and combined in new ways. That way, beginners can get quick results and be motivated to try further. The Scratch community has developed and uploaded over 1,000,000,000 projects with over 164,000,000 publicly shared.<ref name="u895">{{cite web|title=Imagine, Program, Share|website=Scratch Statistics|date=2023-05-25|url=https://scratch.mit.edu/statistics/|language=la|access-date=2024-11-17}}</ref> It is developed by the Lifelong Kindergarten<ref>{{Cite web|title=Group Overview ‹ Lifelong Kindergarten|url=https://www.media.mit.edu/groups/lifelong-kindergarten/overview/|access-date=2024-10-08|website=MIT Media Lab}}</ref> group at [[MIT Media Lab]].
* '''[[ScratchJr]]''' is derivative of the Scratch graphical language. It is designed for children with ages around 5-7.
* [[Snap! (programming language)|'''Snap!''']] is a free [[Open-source software|open-source]] blocks-based graphical language implemented in [[JavaScript]] and originally derived from [[MIT]]'s [[Scratch (programming language)|Scratch]]. Snap! adds the ability to create new blocks and has [[first-class functions]] that enables the use of [[anonymous functions]]. It is actively maintained by [[UC Berkeley]]. The [https://github.com/jmoenig/Snap--Build-Your-Own-Blocks source] is entirely hosted on [[GitHub]].