データフロープログラミング(英: dataflow programming)は、データフローの原理とアーキテクチャに準拠したプログラミングパラダイムであり、コンピュータプログラムをオペレーション間のデータフローの有向グラフとして模型化する。データフロー言語は、関数型言語の特徴を共有しており、より数値処理に適したものになっている。 データフロー言語は、命令型プログラミングモデルなどの他の主要のプログラミング言語とは対照的である。命令型プログラミングではプログラムは一連の命令文で構成され、データの流れは見えない。この違いは瑣末に思われるかもしれないが、パラダイムとしての違いは非常に大きく、データフロー言語はマルチコアシステムやマルチプロセッシングシステムを自由に使える。 プログラミングにおける重要な概念として「状態」がある。状態とは基本的には、システムの各種条件(変数)の測定値のスナップショッ