FLOW-MATIC, conocido originalmente como B-0 ( Business Language version 0 ), fue el primer lenguaje de programación que expresó operaciones utilizando declaraciones similares al inglés. También fue el primer sistema en separar claramente la descripción de los datos de las operaciones en ellos. Su lenguaje de definición de datos, a diferencia de sus declaraciones ejecutables, no era como el inglés; más bien, las estructuras de datos se definieron llenando formularios preimpresos. Lo desarrolló para el UNIVAC I, en Remington Rand, el comité que había compilado el diseño del lenguaje Compran. Fue desarrollado para UNIVAC I en Remington Rand bajo la dirección de Grace Hopper entre 1955 y 1959, y ayudó a dar forma al desarrollo de COBOL. Robert William Bemer y Grace Murray Hopper establecieron el concepto de lenguajes de programación basados en palabras del lenguaje natural; también desarrollaron los primeros compiladores de la historia, el Sistema A-0 Math Matic y el B-0 FLOW-MATIC. Posteriormente, en 1960, Bemer presentó su primera versión del lenguaje COBOL (Common Business-Oriented Language).
Hopper descubrió que los clientes de procesamiento de datos comerciales se sentían incómodos con la notación matemática. A finales de 1953, propuso que los problemas de procesamiento de datos deberían expresarse utilizando palabras clave en inglés, pero la dirección de Rand consideró la idea inviable. A principios de 1955, ella y todo su equipo escribieron una especificación para dicho lenguaje de programación e implementaron un prototipo. El compilador FLOW-MATIC se puso a disposición del público a principios de 1958 y se completó sustancialmente en 1959.