Visual programming language
From Wikipedia, the free encyclopedia
A visual programming language (VPL) is any programming language that lets users create programs 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. 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 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.
A visually transformed language is a non-visual language with a superimposed visual representation. Naturally visual languages have an inherent visual expression for which there is no obvious textual equivalent.
Current developments try to integrate the visual programming approach with dataflow programming languages to either have immediate access to the program state resulting in online debugging or automatic program generation and documentation (i.e. visual paradigm). Dataflow languages also allow automatic parallelization, which is likely to become one of the greatest programming challenges of the future.[1]
Contents |
[edit] Visual languages
- AgentSheets, easy to use game authoring and computational science authoring tool
- Alice
- Analytica
- AppWare, also known as MicroBrew, icon based programming for Mac OS and Microsoft Windows
- AudioMulch, an audio signal flow based sound and music creation environment
- Automator
- Aviary Peacock, browser based visual laboratory
- Baltie
- Befunge, an esoteric text-based programming language in which commands are laid out graphically in a text file.
- CODE
- DRAKON, a language designed for developing the Soviet Buran (spacecraft)
- Flow
- G, the language used in the LabVIEW development environment.
- Kwikpoint, an isotype visual translator created by Alan Stillman
- LabVIEW, a graphical language designed for engineers and scientists.
- Ladder logic, a language that simulates relay logic commonly used in Programmable logic controllers
- Lava
- Lily, browser based visual programming environment
- Limnor
- Max (software), visual programming environment for building interactive, real-time music and multimedia applications
- Microsoft Visual Programming Language, dataflow language for Robotics programming that is a component of Microsoft Robotics Studio
- MST Workshop, an interactive visual programming language for creating mathematical solutions, rapid prototyping, two-dimensional and three-dimensional graphic applications
- OpenDX scientific data visualization using a visual programming language and data flow model
- OpenMusic, a visual programming language for music composition (based on CLOS)
- PointDragon, a visual programming language for cloud computing offered by GraphLogic.[2]
- Prograph
- Ptolemy
- Quartz Composer, a language for processing and rendering graphical data (MaxOS X)
- Reaktor, a DSP and MIDI-processing language by Native Instruments
- SCADE
- Scala Multimedia Authoring suite and complete multimedia system for AmigaOS and Windows
- Simulink
- Built on Squeak
- Sequential function chart, a Petri-net like programming language for Programmable logic controllers
- Stagecast Creator, formerly Apple's Cocoa
- Subtext
- SynthMaker, an audio programming tool using a visual programming language
- SynthEdit, a tool similar to SynthMaker
- Tersus
- ThingLab
- ToonTalk
- VEE
- VisSim
- virtools
- WireFusion, a visual programming environment for creating interactive 3D web presentations.
- Vsxu, music visual / real time 3D graphics generation (Windows, GNU/Linux, Mac Os X)
- vvvv, real time video synthesis
- XEE, a visual data processing language for ETL tasks
- EICASLAB, a software suite including a graphical languange for supporting the design of control architectures
Note: Microsoft Visual Studio and the languages it encompasses (Visual Basic, Visual C#, Visual J#, etc.) are commonly confused to be but are not visual programming languages. All of these languages are textual and not graphical. MS Visual Studio is a visual programming environment, but not a visual programming language hence the confusion.
[edit] See also
- Dataflow programming
- Domain-Specific Modeling
- Flowchart
- Flow-based programming
- Unified Modeling Language
- Deutsch Limit
- Widget Workshop
[edit] External links
This article was originally based on material from the Free On-line Dictionary of Computing, used with permission. Update as needed.
[edit] Notes and references
- ^ Johnston, W.M.; Hanna, J.R.P. and Millar, R.J. (2004). "Advances in dataflow programming languages" (PDF). ACM Computing Surveys (CSUR) 36 (1): 1–34. doi:. http://www.ittc.ku.edu/~rsass/rcreading/johnston04.pdf. Retrieved on 2007-03-31.
- ^ Steven Allen Gold, David Marvin Baker, Vladimir Gusev, Hongping Liang. Object process graph system, US Patent number 7316001, Filing date: May 20, 2005, Issue date: Jan 1, 2008.
|