Has academic computer science been useful for practicing software engineers? I will show that it has, but with about 40 years of delay.
Declarative arithmetic expressions, such as SQRT(2.0*X)/Y, were first realized in Fortran, invented in 1953… … So, we may conclude that in roughly 40 years, the concept has become widely adopted.
The “map/reduce” concept was pioneered in the LISP language around 1960… … Google famously used map/reduce at scale in early 2000s.
The paradigm of object-oriented programming began with the Simula language in 1967… … By mid-2000s, C++, Java and OOP became established industry practices.
Communicating sequential processes was an obscure theory developed in 1978 by Tony Hoare… …The first industry-strength implementation of this theory had to wait until 2009 when Google created the Go language. The adoption of Go outside Google started gaining momentum around 2013-2015.
Lambda-functions (or “anonymous functions“) were first clearly described in the 1967 lectures by Christopher Strachey and later implemented in a number of experimental programming languages… …In 2009, lambda-functions were added to Delphi and PHP, in 2011 to C++, in 2012 to Ada, and in 2014 to Java.