Panini's Ashtdhyayi Rules for Sanskrit and Backus-Naur forms for Functional Programming

Functional programming (FP) is of interest to many people because it describes ‘what a programmer is trying to accomplish’ without worrying about ‘how the computer will accomplish it’.   It is a paradigm where computations are based solely on mathematical function evaluations without worrying about state and changeable data.  The programming programmers like me are more used to is imperative programming which deals with  computations as changes in state.

He says that FP is based on the rules set forth by Backus-Naur or Panini-Backus form.  The Backus-Naur form is basically a "morphed form" of Panini’s rules governing the Sanskrit language – ashtadhyayi.

The Backus–Naur form (also known as BNF, the Backus–Naur formalism, Backus normal form, or Panini–Backus Form) is a metasyntax used to express context-free grammars: that is, a formal way to describe formal languages.
BNF is widely used as a notation for the grammars of computer programming languages, instruction sets and communication protocols, as well as a notation for representing parts of natural language grammars (for example, meter in Sanskrit poetry.) Most textbooks for programming language theory and/or semantics document the programming language in BNF.