La programación a nivel funcional es uno de los dos paradigmas contrastantes identificados por John Backus en su trabajo sobre los programas como objetos matemáticos, siendo el otro la programación a nivel de valores.