Visual programming language
컴퓨팅에서 비주얼 프로그래밍 언어(visual programming language, VPL) 또는 시각 프로그래밍 언어는 사용자가 텍스트로 지정하는 대신 그래픽적으로 프로그램 요소를 조작하여 프로그램을 개발할 수 있게 하는 모든 종류의 프로그래밍 언어를 일컫는다. VPL은 프로그래밍에 시각적 표현식, 텍스트와 그래픽 심볼의 공간적 배치를 허용하며 통사론적 요소나 세컨더리 노테이션 요소로 이용이 가능하다. 예를 들면 수많은 VPL(데이터플로 또는 다이어그램 방식의 프로그래밍)은 상자 또는 화살표 개념에 기반을 두며 여기서 상자나 다른 화면 객체들은 엔티티러 취급하며 화살표, 선, 아치 모양을 통해 연결되어 관계를 표현한다.
구현 참조
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, game authoring and computational science authoring tool.
- Alice, 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 for creating block-based visual programming languages (VPLs) and editors
- Bubble, for creating production-ready web applications.
- CodeWorld, an educational programming environment using Haskell, with polymorphic blocks whose Blockly-based connectors vary based on the block's return type.
- Flowgorithm, creates executable flowcharts which can be converted to several languages.
- Hopscotch, an iPad app, and visual programming language for creating touchscreen-oriented mobile applications.
- Kodu, a visual programming tool for Logo.
- Kojo, a programming language, IDE, and learning environment.
- mBlock, an extension of Scratch for Arduino hardware interfaces. Developed by Makeblock.
- Open Roberta, online programming environment from Fraunhofer IAIS, designed for children.
- Raptor, a product of the USAF, for drawing executable flowcharts.
- Scratch, a product of MIT, designed for children in K-12 and after-school programs.
- ScratchJr, another product of MIT, designed for 5-7 year old children.
- Snap!, a browser-based reimplementation of BYOB, and extension of Scratch, with first class procedures and lists. Used for teaching at UC Berkeley.
- Stagecast Creator, formerly Apple's Cocoa: Internet Authoring for Kids.
- StarLogo, an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at MIT Media Lab. An extension of the Logo programming language (a dialect of Lisp).
- 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, a modular node and patch cord environment for the creation of interactive computer music and multimedia (Windows, MacOS).[8]
- Black Ink, digital painting software focused on generative and procedural art tool.
- Blender (software), the open source 3D graphics package, includes a "node editor" to create shading programs as graphs. Also, custom nodes allows create systems as sverchok, blendgraph or other.
- Cameleon, graphical functional language
- Clickteam's The games factory/Multimedia fusion series, environments made for visually developing games
- Dynamo, a generative modeling interface for Autodesk Revit
- Filter Forge Node based filter generation for image processing.
- Houdini (software) vfx, modeling and animation software.
- GenerativeComponents, a parametric CAD software developed by Bentley Systems
- Grasshopper 3d, a generative modeling interface for Rhinoceros 3D
- 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), visual programming environment for building interactive, real-time music and multimedia applications
- Max/MSP
- Pure Data
- nato.0+55+3d
Video games
- Blender Game Engine (Graphical logic editor)
- Construct 2 is an HTML5-based 2D game editor, developed by Scirra Ltd.
- Construct Classic is the previous, DirectX-based open-sourced version of Construct.[9][10]
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 characters. 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.
- DRAKON, a graphical algorithmic language
- EICASLAB, 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 diagrams, 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, 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, a language that simulates relay logic commonly used in programmable logic controllers
- MeVisLab, cross-platform application framework for medical image processing and scientific visualization
- Microsoft Visual Programming Language, dataflow language for robotics 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 and Arduino 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 robotics kit
- OpenDX scientific data visualization using a visual programming language and data flow model
- OpenWire - adds visual dataflow programming abilities to Delphi via Visual Component Library (VCL) components and a graphical editor (homonymous binary protocol is unrelated)
- Orange - An open-source, visual programming tool for data mining, statistical data analysis, and machine learning
- OutSystems language, a visual modeling language to develop and change all layers of business centric web applications
- Prograph - an object-oriented programming 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 systems.
- Qucs 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 robotics kit
- Scicos A graphical language associated with the numerical analysis package ScicosLab (originally SciLab)
- Sequential function chart, a Petri-net like programming language for programmable logic controllers
- Simulink, 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, simulate particles and perform various other tasks
- VEE
- 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, a tool for ETL processing by creating graphs
- Alteryx Designer, a tool for data processing and analytics incorporating SQL, 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 applications, which are used to generate SQL queries to run against RDBMS 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 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, an isotype visual translator created by Alan Stillman
- Lava, an experimental object oriented RAD 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) 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
- 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[11]
- YAWL, graphical workflow language
Legacy
- AppWare, also known as MicroBrew, icon based programming for classic Mac OS and Microsoft Windows
- Macromedia Authorware - flowchart based programming language
- Helix 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
Node.js libraries
Machine Learning
- Kobra - 머신러닝을 위한 비쥬얼 프로그래밍 언어
- ChainForge - 프롬프트 엔지니어링을 위한 비쥬얼 프로그래밍 도구 오픈소스