HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, hardware and softw ...
, a visual programming language (visual programming system, VPL, or, VPS), also known as diagrammatic programming, graphical programming or block coding, is a
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
that lets users create programs by manipulating program elements rather than by specifying them . A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of
syntax In linguistics, syntax ( ) is the study of how words and morphemes combine to form larger units such as phrases and sentences. Central concerns of syntax include word order, grammatical relations, hierarchical sentence structure (constituenc ...
or secondary notation. For example, many VPLs 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. VPLs are generally the basis of
low-code development platform A low-code development platform (LCDP) provides a development environment used to create application software, generally through a graphical user interface (as opposed to only writing code, though some coding is possible and may be required). A l ...
s.


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 is a Block-based programming language, block-based programming language designed for children. AgentSheets uses Drag and drop, drag-and-drop mechanisms with commands such as conditions and actions as editable blocks that could be comp ...
or
AgentCubes AgentCubes is an educational programming language for children to create 3D and 2D online games and simulations. The main application of AgentCubes is as computational thinking tool teaching children computational thinking through game and simula ...
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. As of 2005, 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, 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), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (classic), the original Visual Basic suppo ...
, Visual C#, Visual J# etc. languages of the
Microsoft Visual Studio Visual Studio is an integrated development environment (IDE) developed by Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms ...
integrated development environment (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 and sometimes also have graphical tools to illustrate (but not define) control flow and data dependencies.
Parser Parsing, syntax analysis, or syntactic analysis is a process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar by breaking it into parts. The term '' ...
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.


Types of visual languages

The following list is not mutually exclusive, as some visual programming environments may incorporate elements from multiple paradigms. The choice of visual programming paradigm often depends on the specific requirements of the application or the preferences of the users or the developers. ;Block-based programming : Popularized by platforms like Scratch and Blockly, used in educational settings and for introductory programming. ;
Flowcharts 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 ...
: Widely used in software engineering and systems design for representing algorithms and processes. ;Drag-and-drop interfaces :Commonly used in GUI design tools and development environments for creating user interfaces. ; Node graphs : Frequently used in visual programming languages, game development, and dataflow systems. ;
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 ...
: Popular in parallel computing, signal processing, and visual programming environments. ;Iconic programming : Used in various contexts for simplifying programming tasks, often associated with mobile app development. ;
State machines State most commonly refers to: * State (polity), a centralized political organization that regulates law and society within a territory **Sovereign state, a sovereign polity in international law, commonly referred to as a country **Nation state, a ...
: Widely employed in game development, control systems, and modeling reactive systems. ;Sheet-based programming : Found in spreadsheet applications and certain educational programming environments. ;Timeline-based programming : Common in multimedia and animation software for sequencing events over time. ;Spatial programming : Applied in certain interactive and 3D modeling environments. ;Form-based programming : Used in applications where user input and graphical interfaces play a significant role, such as data entry applications.


General-purpose visual languages

Most of the VPLs are designed for
education Education is the transmission of knowledge and skills and the development of character traits. Formal education occurs within a structured institutional framework, such as public schools, following a curriculum. Non-formal education als ...
or
domain-specific Domain specificity is a theoretical position in cognitive science (especially modern cognitive development) that argues that many aspects of cognition are supported by specialized, presumably evolutionarily specified, learning devices. The posit ...
usage where the target users are novice programmers. But there are some research projects try to provide a general-purpose visual programming language that can be used by mainstream programmers in any
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
project instead of using textual programming languages (like C, C++,
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
, etc.). For example, research projects such as Envision and PWCT are designed to achieve this goal. It's common for a VPL to be developed using a textual programming language. Developing general-purpose VPLs allows the other way around. For example, a new textual programming language
Compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
and
Virtual Machine In computing, a virtual machine (VM) is the virtualization or emulator, emulation of a computer system. Virtual machines are based on computer architectures and provide the functionality of a physical computer. Their implementations may involve ...
have been developed and maintained using visual programming for many years. This approach increased the abstraction level, thereby hiding unnecessary details. This increased level of abstraction enables developers to concentrate on the program's overall structure and functionality instead of being entangled in the details of code syntax.


List of visual languages

The following contains a list of notable visual programming languages.


Educational

*
AgentCubes AgentCubes is an educational programming language for children to create 3D and 2D online games and simulations. The main application of AgentCubes is as computational thinking tool teaching children computational thinking through game and simula ...
, 3D and 2D game design and simulation design computational thinking tools. *
AgentSheets AgentSheets is a Block-based programming language, block-based programming language designed for children. AgentSheets uses Drag and drop, drag-and-drop mechanisms with commands such as conditions and actions as editable blocks that could be comp ...
, 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, a tool for creating Android applications, based on Blockly and Kawa. * Blockly, a client-side library for the programming language
JavaScript JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior. Web browsers have ...
for creating block-based visual programming languages (VPLs) and editors. Blockly is known for its use on Scratch. * Catrobat, block-based visual programming language for animations, apps and games * Etoys, developed under the direction of
Alan Kay Alan Curtis Kay (born May 17, 1940) published by the Association for Computing Machinery 2012 is an American computer scientist who pioneered work on object-oriented programming and windowing graphical user interface (GUI) design. At Xerox ...
at Disney to support constructionist learning, influenced by
Seymour Papert Seymour Aubrey Papert (; 29 February 1928 – 31 July 2016) was a South African-born American mathematician, computer scientist, and educator, who spent most of his career teaching and researching at MIT. He was one of the pioneers of artif ...
and the Logo programming language * Flowcode, a visual programming tool for embedded microcontrollers and Windows. * Flowgorithm, creates executable flowcharts which can be converted to several languages. *
Greenfoot Greenfoot is an integrated development environment using Java (programming language), Java or Stride designed primarily for educational purposes at the Secondary school, high school and Undergraduate education, undergraduate level. It allows easy ...
, an IDE for Java or Stride primarily designed for educational purposes, as well as for GUI and game development *
Hopscotch Hopscotch is a 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 children's ...
, an
iPad The iPad is a brand of tablet computers developed and marketed by Apple Inc., Apple that run the company's mobile operating systems iOS and later iPadOS. The IPad (1st generation), first-generation iPad was introduced on January 27, 2010. ...
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 that it represents, as in ...
. * Kojo, a programming language, IDE, and learning environment. * mBlock, an extension of Scratch for
Arduino Arduino () is an Italian open-source hardware and open-source software, software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardwar ...
hardware interfaces. Developed by Makeblock. * Open Roberta, online programming environment from Fraunhofer IAIS, designed for children. * Pencil Code, a visual programming language centered on drawing with a pencil * Raptor, a product of the
USAF The United States Air Force (USAF) is the Air force, air service branch of the United States Department of Defense. It is one of the six United States Armed Forces and one of the eight uniformed services of the United States. Tracing its ori ...
, for drawing executable flowcharts. * Scratch, a product of
MIT The Massachusetts Institute of Technology (MIT) is a private research university in Cambridge, Massachusetts, United States. Established in 1861, MIT has played a significant role in the development of many areas of modern technology and sc ...
, designed for children in K-12 and after-school programs. * ScratchJr, 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 undergone several lineup changes over the years, featuring American singers, songwriters, and rappers such as Thea Austin, Turbo ...
, a browser-based reimplementation of BYOB, 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 land-grant research university in Berkeley, California, United States. Founded in 1868 and named after the Anglo-Irish philosopher George Berkele ...
. * Stagecast Creator, a Java-based teaching system. *
StarLogo StarLogo is an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at the Massachusetts Institute of Technology (MIT) Media Lab and Scheller Teacher Education Program in Massachusetts. It is an extension of ...
, an agent-based simulation language developed by
Mitchel Resnick Mitchel Resnick (born June 12, 1956) is an American computer scientist. He is the LEGO Papert Professor of Learning Research at the Massachusetts Institute of Technology (MIT) Media Lab, and is the founder of Scratch. , Resnick serves as head ...
, 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 MIT School of Architecture and Planning, School of Architecture. Its research does not restrict to fi ...
. 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 that it represents, as in ...
programming language (a
dialect A dialect is a Variety (linguistics), variety of language spoken by a particular group of people. This may include dominant and standard language, standardized varieties as well as Vernacular language, vernacular, unwritten, or non-standardize ...
of
Lisp Lisp (historically LISP, an abbreviation of "list processing") is a family of programming languages with a long history and a distinctive, fully parenthesized Polish notation#Explanation, prefix notation. Originally specified in the late 1950s, ...
). * 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 2/regan-bidule.html * Blender, the open source
3D graphics 3D computer 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 the purposes of perfor ...
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 s ...
s, composites textures, and non-destructive geometry. * Cameleon, graphical functional language * Clickteam'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 employed electromagnets for self-starting by using residual magnetic field left in the iron cores ...
, a generative modeling interface for
Autodesk Revit Autodesk Revit is a building information modeling software for architects, structural engineers, mechanical, electrical, and plumbing (MEP) engineers, and contractors. The original software was developed by Charles River Software, founded in 1 ...
* Filter Forge, a 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 reflec ...
, a visual effects, 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' ...
* Grasshopper 3D, a generative modeling interface for Rhinoceros 3D * Isadora, a proprietary graphic programming environment for
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
and
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
, with emphasis on real-time manipulation of digital video. * Kyma (sound design language), 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, per ...
, a visual programming environment for building interactive, real-time music and multimedia applications ** Max/MSP ** Pure Data ** 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 as 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 fo ...
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, Live-action shooting for compositing ...
by The Foundry powered by Tcl, Python, and Blink-script. * OpenMusic, 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 in American National Standards Institute, ANSI Common Lisp. CLOS is a powerful dynamic programming language, dynamic object system which differs radically from t ...
(CLOS)) applications, and mobile applications * Pure Data (Pd) is a visual programming language developed for creating interactive computer music and multimedia works. * Quartz Composer, a language for processing and rendering graphical data () * Reaktor, 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 Authoring suite and complete multimedia system for AmigaOS and Windows * Softimage, 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 vvvv ( = "Vau Vier" or "v4") is a general-purpose digital toolkit with a special focus on real-time video synthesis and programming of large media environments with physical interfaces, real-time motion graphics, audio and video. vvvv uses a D ...
, 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) * Buildbox * 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 (video game), Far Cry'', and continues to be updated to sup ...
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–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 video game console developed by Nintendo and released worldwide in most regions on March 3, 2017. Released in the middle of the Eighth generation of video game consoles, eighth generation of home consoles, the Switch succeeded the ...
, developed by
Nintendo is a Japanese Multinational corporation, multinational video game company headquartered in Kyoto. It develops, publishes, and releases both video games and video game consoles. The history of Nintendo began when craftsman Fusajiro Yamauchi ...
. *
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'' was released ...
, has a drag-and-drop game creation system developed by YoYo Games. * GameSalad is a visual game creation tool developed by GameSalad, Inc. * GDevelop 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. This feature has been removed but can still be used with an addon * 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. * MakeCode Arcade, by Microsoft * Pixel Game Maker MV is an interface-based 2D video game development tool. * Rec Room 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 (biology), family Amaryllidaceae. The plants have two linear leav ...
has a visual scripting system. * Stencyl, a video game creation tool. * Unity has a visual scripting system as of the ECS release. (Formally known as Bolt) *
Unreal Engine 4 Unreal Engine 4 (UE4) is the fourth version of Unreal Engine developed by Epic Games. UE4 began development in 2003 and was released in March 2014, with the first game using UE4 being released in April 2014. UE4 introduced support for Physically ...
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) is a 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 (or referee) rather than by a ...
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. * 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. * Cerbrec Graphbook, a computing platform that allows anyone to use visual programming to design, audit, and run GPU-intensive workflows *
DRAKON DRAKON () is a Free and open-source software, free and open source algorithmic visual programming language, visual programming and modeling language developed as part of the defunct Soviet Union Buran program, Buran space program in 1986 ...
, a graphical algorithmic language, a
free and open source Free and open-source software (FOSS) is software available under a license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term encompassing free ...
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
ic visual programming and
modeling language A modeling language is any artificial language that can be used to express data, information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in ...
developed as part of the defunct Soviet Union Buran space program * Flowcode is a graphical programming language to program embedded microprocessors
Flyde
is an open-source visual-programming language that integrates with
Typescript TypeScript (abbreviated as TS) is a high-level programming language that adds static typing with optional type annotations to JavaScript. It is designed for developing large applications and transpiles to JavaScript. It is developed by Micr ...
code and can runs from VS Code studio *
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 o ...
s, used in
programmable logic controller A programmable logic controller (PLC) or programmable controller is an industrial computer that has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, machines, robotic devices, or any activity that ...
s * 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 data analytics, reporting and integrating platform. KNIME integrates various components for machine learning and data mining through its modular data pipelining "Building Blocks of Analytics" con ...
, the Konstanz Information Miner, is an open source data analytics, reporting and integration platform * LabVIEW, 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 logic, 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 w ...
, a language that simulates relay logic commonly used in
programmable logic controller A programmable logic controller (PLC) or programmable controller is an industrial computer that has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, machines, robotic devices, or any activity that ...
s * 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 inte ...
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 the interdisciplinary study and practice of the design, construction, operation, and use of robots. Within mechanical engineering, robotics is the design and construction of the physical structures of robots, while in computer s ...
programming that is a component of Microsoft Robotics Studio * MindRover, a robot programming game incorporating a dataflow "wiring" language * Minibloq, visual programming language for
robotics Robotics is the interdisciplinary study and practice of the design, construction, operation, and use of robots. Within mechanical engineering, robotics is the design and construction of the physical structures of robots, while in computer s ...
and
Arduino Arduino () is an Italian open-source hardware and open-source software, software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardwar ...
compatible boards * MST Workshop, an interactive visual programming language for creating mathematical solutions, rapid prototyping, two-dimensional and three-dimensional graphic applications * Node-RED: 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 Lego Mindstorms#Robotics Invention System, Robotics Invention System, the first-generation Lego Mindstorms kit. The base kit ships in two ve ...
robotics kit * OpenDX 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 (Πυθώ), was an ancient sacred precinct and the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient Classical antiquity, classical world. The A ...
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 use i ...
(VCL) components and a graphical editor (homonymous
binary protocol A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any variation of a physical quantity. The protocol defines the rules, syntax, semantics, and synchronization of ...
is unrelated) * Orange - An
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
, visual programming tool for
data mining Data mining is the process of extracting and finding patterns in massive data sets involving methods at the intersection of machine learning, statistics, and database systems. Data mining is an interdisciplinary subfield of computer science and ...
, statistical
data analysis Data analysis is the process of inspecting, Data cleansing, cleansing, Data transformation, transforming, and Data modeling, modeling data with the goal of discovering useful information, informing conclusions, and supporting decision-making. Da ...
, and
machine learning Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of Computational statistics, statistical algorithms that can learn from data and generalise to unseen data, and thus perform Task ( ...
* 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''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impl ...
language that uses iconic symbols to represent actions to be taken on data * Ptolemy Project - a project aimed at modeling and designing real-time
embedded system An embedded system is a specialized 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 e ...
s. * Qucs graphical interface to set up simulation of electronic circuit signal and noise behavior * Reallusion - iClone, a 3D software with Lua language and visual programming 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, Waldachtal, Germany. Fans often refer to Fischertechnik as "FT" or "ft". It is used in education for teachin ...
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 simul ...
) * Sequential function chart, a Petri-net like programming language for
programmable logic controller A programmable logic controller (PLC) or programmable controller is an industrial computer that has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, machines, robotic devices, or any activity that ...
s * Simcenter Amesim, 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 offe ...
, graphical programming environment for modeling, simulating and analyzing multidomain dynamical systems *
Stateflow Stateflow (developed by MathWorks) is a control logic tool used to model reactive systems via state machines and flow charts within a Simulink model. Stateflow uses a variant of the finite-state machine notation established by David Harel, enab ...
, 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, simulate particles and perform various other tasks *
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose visual modeling language that is intended to provide a standard way to visualize the design of a system. UML provides a standard notation for many types of diagrams which can be roughly ...
depicts connectives (arrows) such as 'isA', 'has' as icons; resources can be roles * 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, 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 ( ) is a Latin term meaning "from the beginning" and is derived from the Latin ("from") + , ablative singular of ("beginning"). Etymology , from Latin, literally "from the beginning", from ablative case of "entrance", "beginning", related t ...
, a tool for ETL processing by creating graphs * Alteryx Designer, a tool for data processing and analytics incorporating
SQL Structured Query Language (SQL) (pronounced ''S-Q-L''; or alternatively as "sequel") is a domain-specific language used to manage data, especially in a relational database management system (RDBMS). It is particularly useful in handling s ...
, R, and Python. * Apache Nifi, software project to automate the flow of data between software systems. * IBM Cognos Business Intelligence, is an example for front-end programs in
business intelligence Business intelligence (BI) consists of strategies, methodologies, and technologies used by enterprises for data analysis and management of business information. Common functions of BI technologies include Financial reporting, reporting, online an ...
applications, which are used to generate
SQL Structured Query Language (SQL) (pronounced ''S-Q-L''; or alternatively as "sequel") is a domain-specific language used to manage data, especially in a relational database management system (RDBMS). It is particularly useful in handling s ...
queries to run against
RDBMS A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970. A Relational Database Management System (RDBMS) is a type of database management system that stores data in a structured forma ...
databases * IBM InfoSphere DataStage, an ETL tool * Informatica Powercenter is an ETL tool to design mappings graphically for data load in Data Warehouse systems *
Microsoft Access Microsoft Access is a database management system (DBMS) from Microsoft that combines the relational database, relational Access Database Engine (ACE) with a graphical user interface and software-development tools. It is a member of the Microsof ...
, query design functionality * 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

*
Bubble Bubble, Bubbles or The Bubble may refer to: Common uses * Bubble (physics), a globule of one substance in another, usually gas in a liquid ** Soap bubble * Economic bubble, a situation where asset prices are much higher than underlying fundame ...
, for creating production-ready
web application A web application (or web app) is application software that is created with web technologies and runs via a web browser. Web applications emerged during the late 1990s and allowed for the server to dynamically build a response to the request, ...
s. * Cube , an esolang to emulate a 3D cube via a 2D text interface * Kwikpoint, an isotype visual translator created by Alan Stillman * Morphic (software), makes it easier to build and edit graphical objects by direct manipulation and from within programs; the whole
Self (programming language) Self is a general-purpose, high-level, 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) with the prototype-b ...
programming environment is built using Morphic * Piet, an esoteric language, the program is an image whose pixels are the language's elements * ProtoFlux, visual language used in the Resonite virtual reality system. * PWCT, Free open source visual programming language for software development * Pygmalion, a creative programming environment developed in 1975 by DARPA based on human communication and systems design * 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, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
,
iOS Ios, Io or Nio (, ; ; locally Nios, Νιός) is a Greek island in the Cyclades group in the Aegean Sea. Ios is a hilly island with cliffs down to the sea on most sides. It is situated halfway between Naxos and Santorini. It is about long an ...
,
iPadOS iPadOS is a mobile operating system developed by Apple for its iPad line of tablet computers. It was given a name distinct from iOS, the operating system used by Apple's iPhones to reflect the diverging features of the two product lines, suc ...
, and
watchOS watchOS is the operating system of the Apple Watch, developed by Apple Inc., Apple. 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 o ...
. * 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 Yahoo! Pipes was a web application from Yahoo! that provided a graphical user interface for building data Mashup (web application hybrid), mashups that aggregate web feeds, web pages, and other services; creating Web-based apps from various sour ...
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 ...
, 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 Mac (computer), Macintosh family of personal computers by Apple Computer, Inc. from 1984 to 2001, starting with System 1 and end ...
and
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
*
Macromedia Authorware Adobe Authorware (previously Macromedia Authorware, originally Authorware) is a discontinued e-learning authoring tool with its own interpreted, flowchart-based, graphical programming language. Authorware was used for creating interactive e-le ...
- flowchart based programming language *
Helix A helix (; ) is a shape like a cylindrical coil spring or the thread of a machine screw. 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 for ...
and Double Helix, a pioneering database management system for the Apple Macintosh platform, created in 1983 * Illumination Software Creator, a language and IDE for visually creating desktop and mobile software * ThingLab


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 Executable UML (xtUML or xUML) is both a software development method and a highly abstract software language. It was described for the first time in 2002 in the book "Executable UML: A Foundation for Model-Driven Architecture". The language "combine ...
, a profile of the Universal Modeling Language 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 v ...
*
Subtext In any communication, in any medium or format, "subtext" is the underlying or implicit meaning that, while not explicitly stated, is understood by an audience. The Oxford English Dictionary defines it as "an underlying and often distinct theme ...


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 all the key components of the argument, traditionally called the ''Logical consequence, conclusion'' and the ''prem ...
* Cognitive dimensions of notations - 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, 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 tra ...
about the information density of language primitives 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 (computing), user selects a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object. In general, i ...
* Flow-based programming *
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 graph (discrete mathematics), graphs arising from applications such ...
*
Low-code development platform A low-code development platform (LCDP) provides a development environment used to create application software, generally through a graphical user interface (as opposed to only writing code, though some coding is possible and may be required). A l ...
*
No-code development platform No-code development platforms (NCDPs) allow creating application software through graphical user interfaces and configuration instead of traditional computer programming based on writing code. As with low-code development platforms, it is meant ...
* Programming game *
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose visual modeling language that is intended to provide a standard way to visualize the design of a system. UML provides a standard notation for many types of diagrams which can be roughly ...
* Visual language * Visual modeling * Visual thinking


References

* Based on material from the Free On-line Dictionary of Computing, used with permission.


External links

{{Authority control Programming language classification