once. This allows the compiler to easily identify the inputs and outputs. A number of offshoots of SISAL have been developed, including SAC, Single Assignment C, which tries to remain as close to the popular C programming language as possible. The United States Navy funded development of ACOS and SPGN (signal processing graph notation) starting in the early 1980s. This is in use on a number of platforms in the field today. A more radical concept is Prograph, in which programs are constructed as graphs onscreen, and variables are replaced entirely with lines linking inputs to outputs. Incidentally, Prograph was originally written on the Macintosh, which remained single-processor until the introduction of the DayStar Genesis MP in 1996. There are many hardware architectures oriented toward the efficient implementation of dataflow programming models. MIT's tagged token dataflow architecture was designed by Greg Papadopoulos. Data flow has been proposed as an abstraction for specifying the global behavior of distributed system components: in the live distributed objects programming model, distributed data flows are used to store and communicate state, and as such, they play the role analogous to variables, fields, and parameters in Java-like programming languages. Languages Dataflow programming languages include: Céu (programming language) ASCET AviSynth scripting language, for video processing BMDFM Binary Modular Dataflow Machine CAL Cuneiform, a functional workflow language. CMS Pipelines Hume Joule Keysight VEE KNIME is a free and open-source data analytics, reporting and integration platform LabVIEW, G Linda Lucid Lustre Max/MSP Microsoft Visual Programming Language - A component of Microsoft Robotics Studio designed for robotics programming Orange - An open-source, visual programming tool for data mining, statistical data analysis, and machine learning. Oz now also distributed since 1.4.0 Pipeline Pilot Prograph Pure Data Quartz Composer - Designed by Apple; used for graphic animations and effects SAC Single assignment C SIGNAL (a dataflow-oriented synchronous language enabling multi-clock specifications) Simulink SISAL SystemVerilog - A hardware description language Verilog - A hardware description language absorbed into the SystemVerilog standard in 2009 VisSim - A block diagram language for simulation of dynamic systems and automatic firmware generation VHDL - A hardware description language XEE (Starlight) XML engineering environment XProc Libraries Apache Beam: Java/Scala SDK that unifies streaming (and batch) processing with several execution engines supported (Apache Spark, Apache Flink, Google Dataflow etc.) Apache Flink: Java/Scala library that allows streaming (and batch) computations to be run atop a distributed Hadoop (or other) cluster