LexiFi users derive important benefits from a functional programming approach, including:
More generally, quoting Don Syme of Microsoft Research:
"Mixed functional/imperative programming is a fantastic paradigm for many programming tasks. Languages such as OCaml and Standard ML provide excellent general purpose programming languages suited to medium-advanced programmers who want simple yet highly expressive tools that boost their productivity, primarily by reducing the error rate, increasing their productivity through type inference, and basically letting them focus on the difficult parts of their applications. ...
Purely functional languages like Haskell are excellent within certain niches, but while laziness and Haskell's very strict control of effects do offer substantial benefits they also pose real problems for interoperability between lazy and strict languages. Purely imperative programming languages like C or Pascal do not provide satisfying mechanisms for abstraction or data manipulation. Purely object oriented languages like Smalltalk are excellent for some dynamic applications but do not provide static guarantees. Typed class-based languages like C# and Java contain a very large number of constructs, and it can sometimes be difficult for programmers to choose how to model their problem, and sometimes result in very large amounts of code just to solve quite simple problems. In contrast, the core constructs of the ML family of languages provide a smaller number of simple, orthogonal constructs which work together to allow for succinct yet efficient solutions to programming problems, and in particular permit common patterns of coding to be abstracted very easily."