HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
, a visual programming language (visual programming system, VPL, or, VPS) is any
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming l ...
that lets users create
programs Program, programme, programmer, or programming may refer to: Business and management * Program management, the process of managing several related projects * Time management * Program, a part of planning Arts and entertainment Audio * Programm ...
by manipulating program elements ''graphically'' rather than by specifying them ''textually''. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs (known as ''dataflow'' or ''diagrammatic programming'') are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations.


Definition

VPLs may be further classified, according to the type and extent of visual expression used, into icon-based languages, form-based languages, and diagram languages. Visual programming environments provide graphical or iconic elements which can be manipulated by users in an interactive way according to some specific spatial grammar for program construction. The general goal of VPLs is to make programming more accessible to novices and to support programmers at three different levels * ''Syntax'': VPLs use icons/blocks, forms and diagrams trying to reduce or even eliminate the potential of syntactic errors helping with the arrangement of programming primitives to create well-formed programs. * ''Semantics'': VPLs may provide some mechanisms to disclose the meaning of programming primitives. This could include help functions providing documentation functions built-in to programming languages. * ''Pragmatics'': VPLs support the study of what programs mean in particular situations. This level of support allows users to put artifacts created with a VPL into a certain state in order to explore how the program will react to that state. Examples: In
AgentSheets AgentSheets was one of the first modern block-based programming language for kids. The idea of AgentSheets was to overcome syntactic challenges found in common text-based programming languages by using drag and drop mechanisms conceptualizing com ...
or AgentCubes users can set games or simulations into a particular state in order to see how program would react. With the Thymio programming language users can bring a robot into a certain state in order to see how it will react, i.e., which sensors will be activated. Current developments try to integrate the visual programming approach with
dataflow programming In computer programming, dataflow programming is a programming paradigm that models a program as a directed graph of the data flowing between operations, thus implementing dataflow principles and architecture. Dataflow programming languages share ...
languages to either have immediate access to the
program state In information technology and computer science, a system is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system. The set of states a system can oc ...
, resulting in online debugging, or automatic program generation and documentation. Dataflow languages also allow
automatic parallelization Automatic may refer to: Music Bands * Automatic (band), Australian rock band * Automatic (American band), American rock band * The Automatic, a Welsh alternative rock band Albums * ''Automatic'' (Jack Bruce album), a 1983 electronic rock ...
, which is likely to become one of the greatest programming challenges of the future. The
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic .NET (now simply referred to as "Visual Basic"), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (c ...
, Visual C#, Visual J# etc. languages of the
Microsoft Visual Studio Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including web site, websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platfor ...
IDE are not visual programming languages: the representation of algorithms etc. is textual even though the IDE embellishes the editing and debugging activities with a rich user interface. A similar consideration applies to most other
rapid application development Rapid application development (RAD), also called rapid application building (RAB), is both a general term for adaptive software development approaches, and the name for James Martin's method of rapid development. In general, RAD approaches to ...
environments which typically support a
form designer A graphical user interface builder (or GUI builder), also known as GUI designer or sometimes RAD IDE, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements (often calle ...
and sometimes also have graphical tools to illustrate (but not define) control flow and data dependencies.
Parser Parsing, syntax analysis, or syntactic analysis is the process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar. The term ''parsing'' comes from Lati ...
s for visual programming languages can be implemented using
graph grammar In computer science, graph transformation, or graph rewriting, concerns the technique of creating a new graph (discrete mathematics), graph out of an original graph algorithmically. It has numerous applications, ranging from software engineering (s ...
s.


List of visual languages

The following contains a list of notable visual programming languages.


Educational

* AgentCubes, 3D and 2D game design and simulation design computational thinking tools. *
AgentSheets AgentSheets was one of the first modern block-based programming language for kids. The idea of AgentSheets was to overcome syntactic challenges found in common text-based programming languages by using drag and drop mechanisms conceptualizing com ...
, game authoring and computational science authoring tool. *
Alice Alice may refer to: * Alice (name), most often a feminine given name, but also used as a surname Literature * Alice (''Alice's Adventures in Wonderland''), a character in books by Lewis Carroll * ''Alice'' series, children's and teen books by ...
, an object based language used to program 3D environments. * Analytica, for building and analyzing quantitative models for decision and risk analysis. *
App Inventor for Android MIT App Inventor is a web application integrated development environment originally provided by Google, and now maintained by the Massachusetts Institute of Technology (MIT). It allows newcomers to computer programming to create application soft ...
, a tool for creating Android applications, based on
Blockly Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0. It ...
and Kawa. *
Blockly Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0. It ...
, a client-side library for the programming language
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
for creating block-based visual programming languages (VPLs) and editors * Bubble, for creating production-ready
web application A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection. History In earlier computing models like client-serve ...
s. * Catrobat, block-based visual programming language for animations, apps and games * Flowgorithm, creates executable flowcharts which can be converted to several languages. *
Hopscotch Hopscotch is a popular playground game in which players toss a small object, called a lagger, into numbered triangles or a pattern of rectangles outlined on the ground and then hop or jump through the spaces and retrieve the object. It is a chi ...
, an
iPad The iPad is a brand of iOS and iPadOS-based tablet computers that are developed by Apple Inc. The iPad was conceived before the related iPhone but the iPhone was developed and released first. Speculation about the development, operati ...
app, and visual programming language for creating touchscreen-oriented mobile applications. * Kodu, a visual programming tool for
Logo A logo (abbreviation of logotype; ) is a graphic mark, emblem, or symbol used to aid and promote public identification and recognition. It may be of an abstract or figurative design or include the text of the name it represents as in a wordm ...
. * Kojo, a programming language, IDE, and learning environment. *
mBlock Makeblock is a private Chinese technology company headquartered in Shenzhen, China. It develops Arduino-based hardware, robotics hardware, and Scratch-based software for the purpose of providing educational tools for learning. This includes ...
, an extension of Scratch for
Arduino Arduino () is an open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed und ...
hardware interfaces. Developed by
Makeblock Makeblock is a private Chinese technology company headquartered in Shenzhen, China. It develops Arduino-based hardware, robotics hardware, and Scratch-based software for the purpose of providing educational tools for learning. This includes ...
. *
Open Roberta Open Roberta is a project within the German education initiative "Roberta—Learning with robots", initiated by Fraunhofer IAIS, which is an institute belonging to the Fraunhofer Society. With Open Roberta Fraunhofer IAIS is looking to encourag ...
, online programming environment from
Fraunhofer IAIS Fraunhofer may refer to: * Joseph von Fraunhofer (1787–1826), German physicist *Fraunhofer (crater), a lunar crater *Fraunhofer Society (Fraunhofer-Gesellschaft), a large German research organization *Fraunhofer diffraction, far-field diffractio ...
, designed for children. * Raptor, a product of the
USAF The United States Air Force (USAF) is the Aerial warfare, air military branch, service branch of the United States Armed Forces, and is one of the eight uniformed services of the United States. Originally created on 1 August 1907, as a part ...
, for drawing executable flowcharts. * Scratch, a product of
MIT The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of the ...
, designed for children in K-12 and after-school programs. *
ScratchJr ScratchJr is a visual programming language designed to introduce programming skills to children ages 5–7. The app is considered an introductory programming language. It is available as a free app for iOS, Android and Chromebook. ScratchJr is a ...
, an interpretation of Scratch designed primarily for younger audiences (5-7-year-old children). *
Snap! Snap! is a German Eurodance group formed in 1989 by producers Michael Münzing and Luca Anzilotti. The act has been through a number of line-up changes over the years, including American singers, songwriters and rappers Thea Austin, Turbo B, N ...
, a browser-based reimplementation of
BYOB BYOB or BYO is an initialism and acronym concerning alcohol that means "bring your own bottle" or "bring your own booze" or "bring your own beer". BYOB is stated on an invitation to indicate that the host will not be providing alcohol and that gu ...
, and extension of Scratch, with first class procedures and lists. Used for teaching at
UC Berkeley The University of California, Berkeley (UC Berkeley, Berkeley, Cal, or California) is a public university, public land-grant university, land-grant research university in Berkeley, California. Established in 1868 as the University of Californi ...
. * Stagecast Creator, a Java-based teaching system. * StarLogo, an agent-based
simulation language A computer simulation language is used to describe the operation of a simulation on a computer.Fritzson, Peter, and Vadim Engelson.Modelica—A unified object-oriented language for system modeling and simulation" European Conference on Object-Orie ...
developed by
Mitchel Resnick Mitchel Resnick (born June 12, 1956) is Lego Papert Professor of Learning Research, Director of the Okawa Center, and Director of the Lifelong Kindergarten group at the Massachusetts Institute of Technology (MIT) Media Lab. , Resnick serves as h ...
, Eric Klopfer, and others at
MIT Media Lab The MIT Media Lab is a research laboratory at the Massachusetts Institute of Technology, growing out of MIT's Architecture Machine Group in the School of Architecture. Its research does not restrict to fixed academic disciplines, but draws from ...
. An extension of the
Logo A logo (abbreviation of logotype; ) is a graphic mark, emblem, or symbol used to aid and promote public identification and recognition. It may be of an abstract or figurative design or include the text of the name it represents as in a wordm ...
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming l ...
(a
dialect The term dialect (from Latin , , from the Ancient Greek word , 'discourse', from , 'through' and , 'I speak') can refer to either of two distinctly different types of linguistic phenomena: One usage refers to a variety of a language that ...
of
Lisp A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech. Types * A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lispi ...
). * ToonTalk, programming system for children. * Visual Logic, for creating executable flowcharts. * VIPLE Visual IoT/Robotics Programming Language Environment


Multimedia

* AudioMulch, an audio signal flow based sound and music creation environment *
Bidule Bidule is a commercial software application for the creation of interactive computer music and multimedia produced by the Canadian company Plogue Arts and Technology. It runs on both Windows and Mac computers. Bidule uses a modular struct ...
, a modular node and patch cord environment for the creation of interactive computer music and multimedia (Windows, MacOS). * Blender (software), the
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
3D graphics 3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for th ...
package, includes node graphs for building
shader In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene - a process known as '' shading''. Shaders have evolved to perform a variety of spec ...
s, composites and textures, non-destructive geometry. * Cameleon, graphical functional language *
Clickteam Clickteam is a French software development company based in Boulogne-Billancourt, Hauts-de-Seine. Founded by Francis Poulain, François Lionet and Yves Lamoureux, Clickteam is best known for the creation of Clickteam Fusion, a script-free pro ...
's The games factory/Multimedia fusion series, environments made for visually developing games *
Dynamo "Dynamo Electric Machine" (end view, partly section, ) A dynamo is an electrical generator that creates direct current using a commutator. Dynamos were the first electrical generators capable of delivering power for industry, and the foundat ...
, a generative modeling interface for
Autodesk Revit Autodesk Revit is a building information modelling software tool for architects, landscape architects, structural engineers, mechanical, electrical, and plumbing (MEP) engineers, designers and contractors. The original software was developed by ...
* Filter Forge Node based filter generation for image processing. *
Houdini (software) Houdini is a 3D animation software application developed by Toronto-based SideFX, who adapted it from the PRISMS suite of procedural generation software tools. The procedural tools are used to produce different effects such as complex reflectio ...
vfx, modeling and animation software. * GenerativeComponents, a parametric CAD software developed by
Bentley Systems Bentley Systems, Incorporated is an American-based software development company that develops, manufactures, licenses, sells and supports computer software and services for the design, construction, and operation of infrastructure. The company's ...
* Grasshopper 3d, a generative modeling interface for
Rhinoceros 3D Rhinoceros (typically abbreviated Rhino or Rhino3D) is a commercial 3D computer graphics and computer-aided design (CAD) application software that was developed by Robert McNeel & Associates, an American, privately held, and employee-owned com ...
*
Isadora Isidora or Isadora is a female given name of Greek origin, derived from Ἰσίδωρος, ''Isídōros'' (a compound of Ἶσις, ''Ísis'', and δῶρον, ''dōron'': "gift of he goddessIsis"). The male equivalent is Isidore. The name sur ...
, a proprietary graphic programming environment for
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
and Microsoft Windows, with emphasis on real-time manipulation of digital video. *
Kyma (sound design language) Kyma is a visual programming language for sound design used by musicians, researchers, and sound designers. In Kyma, a user programs a multiprocessor DSP by graphically connecting modules on the screen of a Macintosh or Windows computer. Backgroun ...
, a visual programming language for sound design used by musicians, researchers, and sound designers. * Mama (software) – a programming language and IDE for building 3D animations and games *
Max (software) Max, also known as Max/MSP/Jitter, is a visual programming language for music and multimedia developed and maintained by San Francisco-based software company Cycling '74. Over its more than thirty-year history, it has been used by composers, pe ...
, visual programming environment for building interactive, real-time music and multimedia applications **
Max/MSP Max, also known as Max/MSP/Jitter, is a visual programming language for music and multimedia developed and maintained by San Francisco-based software company Cycling '74. Over its more than thirty-year history, it has been used by composers, pe ...
**
Pure Data Pure Data (Pd) is a visual programming language developed by Miller Puckette in the 1990s for creating interactive computer music and multimedia works. While Puckette is the main author of the program, Pd is an open-source software, open-source ...
** nato.0+55+3d * Nodal, a node-based generative programming software application for music composition * Nuke, an object-based visual programming software for
visual effects Visual effects (sometimes abbreviated VFX) is the process by which imagery is created or manipulated outside the context of a live-action shot in filmmaking and video production. The integration of live-action footage and other live-action foota ...
compositing Compositing is the process or technique of combining visual elements from separate sources into single images, often to create the illusion that all those elements are parts of the same scene. Live-action shooting for compositing is variously c ...
by The Foundry powered by Tcl, Python and Blink-script. *
OpenMusic OpenMusic (OM) is an object-oriented visual programming environment for musical composition based on Common Lisp. It may also be used as an all-purpose visual interface to Lisp programming. At a more specialized level, a set of provided classes ...
, a visual programming language for music composition (based on
Common Lisp Object System The Common Lisp Object System (CLOS) is the facility for object-oriented programming which is part of ANSI Common Lisp. CLOS is a powerful dynamic object system which differs radically from the OOP facilities found in more static languages such a ...
(CLOS)) applications, and mobile applications *
Pure Data Pure Data (Pd) is a visual programming language developed by Miller Puckette in the 1990s for creating interactive computer music and multimedia works. While Puckette is the main author of the program, Pd is an open-source software, open-source ...
(Pd) is a visual programming language developed for creating interactive computer music and multimedia works. *
Quartz Composer Quartz Composer is a node-based visual programming language provided as part of the Xcode development environment in macOS for processing and rendering graphical data. Quartz Composer uses OpenGL (including GLSL), OpenCL (only in Mac OS X Sn ...
, a language for processing and rendering graphical data () *
Reaktor Reaktor is a graphical modular software music studio developed by Native Instruments (NI). It allows musicians and sound specialists to design and build their own instruments, samplers, effects and sound design tools. It is supplied with many ...
, a DSP and MIDI-processing language by
Native Instruments Native Instruments is a German company that develops, manufactures, and supplies music software and hardware for music production, sound design, performance, and DJing. The company's corporate headquarters and main development facilities are lo ...
*
Scala Multimedia Scala is a producer of multimedia software. It was founded in 1987 as a Norwegian company called Digital Visjon. It is headquartered near Philadelphia, Pennsylvania, USA, and has subsidiaries in Europe and Asia. History In 1987 a young Norwe ...
Authoring suite and complete multimedia system for AmigaOS and Windows *
Softimage Autodesk Softimage, or simply Softimage () was a 3D computer graphics application, for producing 3D computer graphics, 3D modeling, and computer animation. Now owned by Autodesk and formerly titled Softimage, XSI, the software has been predomina ...
, with ICE Interactive Creative Environment. * SynthEdit, a Synthesizer construction tool using a VPL. * TouchDesigner, visual programming language for real-time multimedia content * Virtools, a middleware used to create interactive 3D experiences * vvvv, a general purpose toolkit with a special focus on real-time video synthesis and programming large media environments with physical interfaces, real-time motion graphics, audio and video. * WireFusion, visual programming environment for creating interactive 3D web presentations


Video games

* Babylon.js has a node material editor that can be used to build shaders, procedural textures, particle systems and post processing effects. * Blender Game Engine (Graphical logic editor) * Clickteam Fusion, a 2D game creation software with event editor system, developed by Clickteam SARL, originally known as Klik n' Play, The Games Factory and Multimedia Fusion 2 * Construct 2-3 are HTML5-based 2D game editors, developed by Scirra Ltd. ** Construct Classic is the previous, DirectX-based open-sourced version of Construct. *
CryEngine CryEngine (stylized as CRYENGINE) is a game engine designed by the German game developer Crytek. It has been used in all of their titles with the initial version being used in '' Far Cry'', and continues to be updated to support new consoles and ...
has a node-based visual programming language called FlowGraph. *
Dreams A dream is a succession of images, ideas, emotions, and sensations that usually occur involuntarily in the mind during certain stages of sleep. Humans spend about two hours dreaming per night, and each dream lasts around 5 to 20 minutes, althou ...
, which runs on PlayStation, has an extensive visual language to allow players to create any kind of game * Game Builder Garage, a 3D and 2D game creation tool for the
Nintendo Switch The is a hybrid video game console developed by Nintendo and released worldwide in most regions on March 3, 2017. The console itself is a tablet that can either be docked for use as a home console or used as a portable device, making it a ...
, developed by Nintendo. *
GameMaker Studio GameMaker (originally Animo, Game Maker ''(until 2011)'' and GameMaker Studio) is a series of cross-platform game engines created by Mark Overmars in 1999 and developed by YoYo Games since 2007. The latest iteration of ''GameMaker'' released ...
, has a drag and drop game creation system developed by YoYo Games. *
GameSalad GameSalad Creator is an authoring tool developed by GameSalad used by educators and non-programmers alike. It consists of a visual editor and a behavior-based logic system. GameSalad is used in over 223 schools for teaching computer science concep ...
is a visual game creation tool developed by GameSalad, Inc. *
GDevelop GDevelop is a 2D cross-platform, free and open-source game engine, which mainly focuses on creating PC and Mobile games, as well as HTML5 games playable in the browser. Created by Florian Rival; a software engineer at Google, GDevelop is mainly a ...
is a visual game creation tool created by Florian Rival (4ian). * Godot game engine allows game scripts and graphics shaders to be built using node-graph visual programming languages. * Human Resource Machine is a visual programming-based puzzle game developed by Tomorrow Corporation. * Kodu, a software designed to program games with a 3D Interface developed by Microsoft Research. * Pixel Game Maker MV is an interface-based 2D video game development tool. *
Rec Room A recreation room (also known as a rec room, rumpus room, play room, playroom, games room, or ruckus room) is a room used for a variety of purposes, such as parties, games and other everyday or casual activities. The term ''recreation room'' is ...
includes a game creation system with a node-based visual programming language called Circuits. *
Snowdrop ''Galanthus'' (from Ancient Greek , (, "milk") + (, "flower")), or snowdrop, is a small genus of approximately 20 species of bulbous perennial herbaceous plants in the family Amaryllidaceae. The plants have two linear leaves and a single ...
has a visual scripting system. *
Stencyl Stencyl is a video game development tool that allows users to create 2D video games for computers, mobile devices, and the web. The software is available for free, with select publishing options available for purchase. The software was originally ...
, a video game creation tool. *
Unity Unity may refer to: Buildings * Unity Building, Oregon, Illinois, US; a historic building * Unity Building (Chicago), Illinois, US; a skyscraper * Unity Buildings, Liverpool, UK; two buildings in England * Unity Chapel, Wyoming, Wisconsin, US; a ...
has a visual scripting system as of the ECS release. *
Unreal Engine 4 Unreal Engine (UE) is a 3D computer graphics game engine developed by Epic Games, first showcased in the 1998 first-person shooter game ''Unreal (1998 video game), Unreal''. Initially developed for Personal computer, PC first-person shooters, i ...
has a node-based visual programming language called Blueprints, and also shaders. Many modern video games make use of behavior trees, which are in principle a family of simple programming languages designed to model behaviors for
non-player character A non-player character (NPC), or non-playable character, is any character in a game that is not controlled by a player. The term originated in traditional tabletop role-playing games where it applies to characters controlled by the gamemaster ...
s. The behaviors are modeled as trees, and are often edited in graphical editors.


Systems / simulation

* Analytica, a commercial visual language for decision models based on
influence diagrams Influence or influencer may refer to: *Social influence, in social psychology, influence in interpersonal relationships ** Minority influence, when the minority affect the behavior or beliefs of the majority *Influencer marketing, through individ ...
. * BPEL (Business Process Execution Language), currently a Graphical user based Programming Language used to create orchestration logic for data and web services. It is based on XML, but has a graphical interface for faster coding. *
DRAKON DRAKON is a free and open source algorithmic visual programming and modeling language developed within the Buran space project following ergonomic design principles. The language provides a uniform way to represent flowcharts of any c ...
, a graphical algorithmic language *
EICASLAB EICASLAB is a software suite providing a laboratory for automatic control design and time-series forecasting developed as final output of the European ACODUASIS Project IPS-2001-42068 funded by the European Community within the Innovation Program ...
, a software suite including a graphical language for supporting the design of control architectures * Flowcode is a graphical programming language to program embedded microprocessors *
Function block diagram The Function Block Diagram (FBD) is a graphical language for programmable logic controller design, that can describe the function between input variables and output variables. A function is described as a set of elementary blocks. Input and out ...
s, used in programmable logic controllers * GNU Radio, a development toolkit which provides signal-processing blocks to implement software-defined-radios and signal-processing systems *
KNIME KNIME (), the Konstanz Information Miner, is a free and open-source data analytics, reporting and integration platform. KNIME integrates various components for machine learning and data mining through its modular data pipelining "Building Blocks ...
, the Konstanz Information Miner, is an open source data analytics, reporting and integration platform *
LabVIEW Laboratory Virtual Instrument Engineering Workbench (LabVIEW) is a system-design platform and development environment for a visual programming language from National Instruments. The graphical language is named "G"; not to be confused with G- ...
, a graphical language designed for engineers and scientists *
Ladder logic Ladder logic was originally a written method to document the design and construction of relay racks as used in manufacturing and process control. Each device in the relay rack would be represented by a symbol on the ladder diagram with connecti ...
, a language that simulates relay logic commonly used in programmable logic controllers * MeVisLab, cross-platform
application framework In computer programming, an application framework consists of a software framework used by software developers to implement the standard structure of application software. Application frameworks became popular with the rise of graphical user inter ...
for medical image processing and
scientific visualization Scientific visualization ( also spelled scientific visualisation) is an interdisciplinary branch of science concerned with the visualization of scientific phenomena. Michael Friendly (2008)"Milestones in the history of thematic cartography, st ...
* Microsoft Visual Programming Language, dataflow language for
robotics Robotics is an interdisciplinarity, interdisciplinary branch of computer science and engineering. Robotics involves design, construction, operation, and use of robots. The goal of robotics is to design machines that can help and assist human ...
programming that is a component of Microsoft Robotics Studio * MindRover, a robot programming game incorporating a dataflow "wiring" language *
Minibloq Minibloq is a graphical development environment for Arduino and other platforms. Its main objective is to help in teaching programming. It is specially used in robotics at elementary, middle and high schools. It's widely used in Argentina, where j ...
, visual programming language for
robotics Robotics is an interdisciplinarity, interdisciplinary branch of computer science and engineering. Robotics involves design, construction, operation, and use of robots. The goal of robotics is to design machines that can help and assist human ...
and
Arduino Arduino () is an open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed und ...
compatible boards *
MST Workshop The MST Workshop (short for Math Science and Technology Workshop) is an interactive computer programming language. It has hundreds of components that can be dragged on to the workspace and connected by wires or snapping them together. The workspac ...
, an interactive visual programming language for creating mathematical solutions, rapid prototyping, two-dimensional and three-dimensional graphic applications *
Node-RED Node-RED is a flow-based development tool for visual programming developed originally by IBM for wiring together hardware devices, APIs and online services as part of the Internet of Things. Node-RED provides a web browser-based flow editor, wh ...
: software system rapid development toolkit * NXT-G, a visual programming language for the
Lego Mindstorms NXT Lego Mindstorms NXT is a programmable robotics kit released by Lego on August 2, 2006. It replaced the first-generation Lego Mindstorms kit, which was called the Robotics Invention System. The base kit ships in two versions: the Retail Versio ...
robotics kit *
OpenDX OpenDX stands for Open Data Explorer and is IBM's scientific data visualization software. It can handle complex domains (such as a mechanical gear or a human brain) along with measured or computed data. The data may be scalar (such as the co ...
scientific data visualization using a visual programming language and data flow model * OpenWire - adds visual dataflow programming abilities to
Delphi Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracl ...
via
Visual Component Library The Visual Component Library (VCL) is a visual component-based object-oriented framework for developing the user interface of Microsoft Windows applications. It is written in Object Pascal. History The VCL was developed by Borland for u ...
(VCL) components and a graphical editor (homonymous binary protocol is unrelated) *
Orange Orange most often refers to: *Orange (fruit), the fruit of the tree species '' Citrus'' × ''sinensis'' ** Orange blossom, its fragrant flower * Orange (colour), from the color of an orange, occurs between red and yellow in the visible spectrum ...
- An
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
, visual programming tool for data mining, statistical
data analysis Data analysis is a process of inspecting, cleansing, transforming, and modeling data with the goal of discovering useful information, informing conclusions, and supporting decision-making. Data analysis has multiple facets and approaches, en ...
, and
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
* OutSystems language, a visual modeling language to develop and change all layers of business centric web applications * Prograph - an
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
language that uses iconic symbols to represent actions to be taken on data * Ptolemy Project - a project aimed at modeling and designing
real-time Real-time or real time describes various operations in computing or other processes that must guarantee response times within a specified time (deadline), usually a relatively short time. A real-time process is generally one that happens in defined ...
embedded system An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' ...
s. *
Qucs Quite Universal Circuit Simulator (Qucs) is a free-software electronics circuit simulator Electronic circuit simulation uses mathematical models to replicate the behavior of an actual electronic device or circuit. Simulation software allows for ...
graphical interface to set up simulation of electronic circuit signal and noise behavior * Reallusion - iClone, a 3D software with Lua language and visual programing design * ROBO Pro, a visual programming language for the
fischertechnik Fischertechnik is a brand of construction toy. It was invented by Artur Fischer and is produced by fischertechnik GmbH in Waldachtal, Germany. Fans often refer to Fischertechnik as "FT" or "ft". It is used in education for teaching about sim ...
robotics kit * Scicos A graphical language associated with the numerical analysis package ScicosLab (originally
SciLab Scilab is a free and open-source, cross-platform numerical computational package and a high-level, numerically oriented programming language. It can be used for signal processing, statistical analysis, image enhancement, fluid dynamics simula ...
) *
Sequential function chart Sequential function chart (SFC) is a visual programming language used for programmable logic controllers (PLCs). It is one of the five languages defined by IEC 61131-3 standard. The SFC standard is defined as ''Preparation of function charts for co ...
, a Petri-net like programming language for programmable logic controllers *
Simcenter Amesim Simcenter Amesim is a commercial simulation software for the modeling and analysis of multi-domain systems. It is part of systems engineering domain and falls into the mechatronic engineering field. The software package is a suite of tools used to ...
, graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems *
Simulink Simulink is a MATLAB-based graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems. Its primary interface is a graphical block diagramming tool and a customizable set of block libraries. It offers t ...
, graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems * Stateflow, a graphical language that includes  executable state transition diagrams, flow charts, state transition tables, and truth tables * STELLA, a VPL for system dynamics modeling * Softimage ICE, a node-based system that is used to create and modify
3D models In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, a ...
, simulate particles and perform various other tasks * VEE is a powerful graphical programming environment for automated test, measurement and advanced analysis used in Test Engineering. * VisSim, modeling and simulation language, allows making mathematical models quickly and executing them in real-time


Automation

* Automator *
CiMPLE CiMPLE is a visual programming language that tries to visually mimic procedural languages like C (programming language), C/C++. Created by robo.in, a venture by Indian Institute of Technology Bombay alumni, using C++ on a Qt (framework), Qt 4.+ c ...
, Visual Programming Language by ThinkLABs for teaching robotics * Flow a graphical integration language used in the webMethods platform * Pipeline Pilot is a scientific visual and dataflow programming language, and the authoring tool for the Accelrys Enterprise Platform.


Data warehousing / business intelligence

*
Ab Initio ''Ab initio'' ( ) is a Latin term meaning "from the beginning" and is derived from the Latin ''ab'' ("from") + ''initio'', ablative singular of ''initium'' ("beginning"). Etymology Circa 1600, from Latin, literally "from the beginning", from a ...
, a tool for ETL processing by creating graphs * Alteryx Designer, a tool for data processing and analytics incorporating SQL, R, and Python. *
Apache Nifi Apache NiFi is a software project from the Apache Software Foundation designed to automate the flow of data between software systems. Leveraging the concept of extract, transform, load (ETL), it is based on the "''NiagaraFiles''" software prev ...
, software project to automate the flow of data between software systems. *
IBM Cognos Business Intelligence IBM Cognos Business Intelligence is a web-based integrated business intelligence suite by IBM. It provides a toolset for reporting, analytics, scorecarding, and monitoring of events and metrics. The software consists of several components des ...
, is an example for front-end programs in
Business Intelligence Business intelligence (BI) comprises the strategies and technologies used by enterprises for the data analysis and management of business information. Common functions of business intelligence technologies include reporting, online analytical pr ...
applications, which are used to generate SQL queries to run against
RDBMS A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
databases *
IBM InfoSphere DataStage IBM InfoSphere DataStage is an ETL tool and part of the IBM Information Platforms Solutions suite and IBM InfoSphere. It uses a graphical notation to construct data integration solutions and is available in various versions such as the Server Ed ...
, an ETL tool * Informatica Powercenter is an ETL tool to design mappings graphically for data load in Data Warehouse systems * Microsoft SQL Server Integration Services (SSIS), a platform for data integration and workflow applications * Pentaho Data Integration (PDI), formerly named Kettle, an open-source ETL tool


Miscellaneous

*
Kwikpoint Kwikpoint is an Alexandria, Virginia based company that develops visual language and icon translation tools designed to help users communicate without having to read written information or foreign languages. Kwikpoint's target markets include the m ...
, an isotype visual translator created by Alan Stillman *
Lava Lava is molten or partially molten rock ( magma) that has been expelled from the interior of a terrestrial planet (such as Earth) or a moon onto its surface. Lava may be erupted at a volcano or through a fracture in the crust, on land or ...
, an experimental object oriented
RAD RAD or Rad may refer to: People * Robert Anthony Rad Dougall (born 1951), South African former racing driver * Rad Hourani, Canadian fashion designer and artist * Nickname of Leonardus Rad Kortenhorst (1886–1963), Dutch politician * Radley ...
language * Limnor, a general purpose programming system. Limnor Studio is an IDE for rapid software development. * Morphic (software), makes it easier to build and edit graphical objects by direct manipulation and from within programs; the whole
Self (programming language) is an object-oriented programming language based on the concept of '' prototypes''. Self began as a dialect of Smalltalk, being dynamically typed and using just-in-time compilation (JIT) as well as the prototype-based approach to objects: it was ...
programming environment is built using Morphic * Piet, an esoteric language, the program is an image whose pixels are the language's elements * PWCT, Free open source visual programming language for software development * Shortcuts, a visual scripting language developed by Apple for creating macros on
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
,
iOS iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also include ...
,
iPadOS iPadOS is a mobile operating system developed by Apple Inc. for its iPad line of tablet computers. It is a rebranded variant of iOS, the operating system used by Apple's iPhones, renamed to reflect the diverging features of the two product ...
, and
watchOS watchOS is the operating system of the Apple Watch, developed by Apple Inc. It is based on iOS, the operating system used by the iPhone, and has many similar features. It was released on April 24, 2015, along with the Apple Watch, the only ...
. * StreamBase Systems, StreamBase EventFlow is a visual programming language for processing streaming events * WebML, is a visual language for designing complex data-intensive Web applications that can be automatically generated * Yahoo! Pipes is a visual data-flow programming system to process web data *
YAWL A yawl is a type of boat. The term has several meanings. It can apply to the rig (or sailplan), to the hull type or to the use which the vessel is put. As a rig, a yawl is a two masted, fore and aft rigged sailing vessel with the mizzen mast p ...
, graphical workflow language


Legacy

* AppWare, also known as MicroBrew, icon based programming for
classic Mac OS Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Macintosh family of personal computers by Apple Computer from 1984 to 2001, starting with System 1 and ending with Mac OS 9. Th ...
and Microsoft Windows *
Macromedia Authorware Adobe Authorware (previously Macromedia Authorware, originally Authorware) was an elearning authoring tool with its own interpreted, flowchart-based, graphical programming language. Authorware was used for creating interactive elearning programs ...
- flowchart based programming language *
Helix A helix () is a shape like a corkscrew or spiral staircase. It is a type of smooth space curve with tangent lines at a constant angle to a fixed axis. Helices are important in biology, as the DNA molecule is formed as two intertwined hel ...
and Double Helix, a pioneering database management system for the Apple Macintosh platform, created in 1983 *
Illumination Software Creator Illumination Software Creator (Illumination) is a tool for visually designing and developing software, and a corresponding Visual programming language that is available for Microsoft Windows, Linux and Mac OS X. Software developed with Illumination ...
, a language and IDE for visually creating desktop and mobile software *
ThingLab ThingLab is a visual programming environment implemented in Smalltalk and designed at Xerox PARC PARC (Palo Alto Research Center; formerly Xerox PARC) is a research and development company in Palo Alto, California. Founded in 1969 by Jacob E. ...


Visual styles

* DRAKON (Dragon), a SDL- and AADL-influenced visual 2D programming language designed for developing the on-board hard real-time software system for automatic flight and landing of the Soviet/Russian Buran (Snowstorm) orbiting spacecraft * Executable UML, a profile of the
Universal Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
specification defining executable semantics for a subset of UML *
Flowchart A flowchart is a type of diagram that represents a workflow or process. A flowchart can also be defined as a diagrammatic representation of an algorithm, a step-by-step approach to solving a task. The flowchart shows the steps as boxes of va ...
*
Subtext Subtext is any content of a creative work, which is not announced explicitly (by characters or author), but is implicit, or becomes something understood by the audience. Subtext has been used historically to imply controversial subjects without ...


See also

*
Argument map An argument map or argument diagram is a visual representation of the structure of an argument. An argument map typically includes the key components of the argument, traditionally called the '' conclusion'' and the ''premises'', also called ''con ...
*
Cognitive dimensions of notations Cognitive dimensions or cognitive dimensions of notations are design principles for notations, user interfaces and programming languages, described by researcher Thomas R.G. Green and further researched with Marian Petre. The dimensions can be u ...
- Notation assessment for visual and non-visual languages *
Concept map A concept map or conceptual diagram is a diagram that depicts suggested relationships between concepts. Concept maps may be used by instructional designers, engineers, technical writers, and others to organize and structure knowledge. A conc ...
*
Dataflow programming In computer programming, dataflow programming is a programming paradigm that models a program as a directed graph of the data flowing between operations, thus implementing dataflow principles and architecture. Dataflow programming languages share ...
*
Deutsch limit The Deutsch limit is an aphorism about the information density of visual programming languages originated by L. Peter Deutsch that states: :The problem with visual programming is that you can’t have more than 50 visual primitives on the screen ...
, an
aphorism An aphorism (from Greek ἀφορισμός: ''aphorismos'', denoting 'delimitation', 'distinction', and 'definition') is a concise, terse, laconic, or memorable expression of a general truth or principle. Aphorisms are often handed down by t ...
about the information density of
language primitive In computing, language primitives are the simplest elements available in a programming language. A primitive is the smallest 'unit of processing' available to a programmer of a given machine, or can be an atomic element of an expression in a la ...
s in a visual notation * Domain-specific modeling *
Drag and drop In computer graphical user interfaces, drag and drop is a pointing device gesture in which the user selects a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object. In general, it can be used ...
*
Flow-based programming In computer programming, flow-based programming (FBP) is a programming paradigm that defines applications as networks of "black box" processes, which exchange data across predefined connections by message passing, where the connections are specif ...
*
Graph drawing Graph drawing is an area of mathematics and computer science combining methods from geometric graph theory and information visualization to derive two-dimensional depictions of graphs arising from applications such as social network analysis, car ...
*
Low-code development platform A low-code development platform (LCDP) provides a development environment used to create application software through a graphical user interface. A low-coded platform may produce entirely operational applications, or require additional coding for s ...
*
No-code development platform No-code development platforms (NCDPs) allow programmers and non-programmers to create application software through graphical user interfaces and configuration instead of traditional computer programming. No-code development platforms are closely r ...
*
Programming game A programming game is a video game that incorporates elements of computer programming, enabling the player to direct otherwise autonomous units within the game to follow commands in a domain-specific programming language, often represented as a ...
*
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally ...
*
Visual language A visual language is a system of communication using visual elements. Speech as a means of communication cannot strictly be separated from the whole of human communicative activity which includes the visual and the term 'language' in relation to ...
*
Visual thinking Visual thinking, also called visual or spatial learning or picture thinking, is the phenomenon of thinking through visual processing. Visual thinking has been described as seeing words as a series of pictures. It is common in approximately 60� ...


References

:''This article was originally based on material from the Free On-line Dictionary of Computing, used with permission. Update as needed.''


External links

* {{Authority control Programming language classification