Skip to content
Category

Functional languages

page 1
Q2005
JavaScript (JS) is a programming language and core technology of the Web, alongside HTML and CSS. It was created by Brendan Eich in 1995. As of 2025, the overwhelming majority of websites (98.9%) uses JavaScript for client side webpage behavior.
Q2370
multi-paradigm (object-oriented) programming language
Q161053
general-purpose programming language
Lisp
functional programming language based on the lambda calculus
R
programming language for statistical analysis
Q34010
Haskell () is a general-purpose, statically typed, purely functional programming language with type inference and lazy evaluation. Haskell pioneered several programming language features including type classes for type-safe operator overloading and monadic input/output (IO). It is named after logician Haskell Curry. Haskell's main implementation is the Glasgow Haskell Compiler (GHC).
Q575650
memory-safe programming language without garbage collection
Q17118377
general-purpose, multi-paradigm, compiled programming language
Scala
general-purpose programming language
Logo
computer programming language
APL
functional, symbolic programming language for operating on multidimensional arrays
XSLT
XSLT (Extensible Stylesheet Language Transformations) is a language originally designed for transforming XML documents into other XML documents, or other formats such as HTML for web pages, plain text, or XSL Formatting Objects. These formats can be subsequently converted to formats such as PDF, PostScript, and PNG. Support for JSON and plain-text transformation was added in later updates to the XSLT 1.0 specification.
OCaml
OCaml ( , formerly Objective Caml) is a general-purpose, high-level, multi-paradigm programming language which extends the Caml dialect of ML with object-oriented features. OCaml was created in 1996 by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy, Ascánder Suárez, and others.
Clojure
Clojure (, like closure) is a dynamic and functional dialect of the programming language Lisp on the Java platform.
Q334879
programming language
F#
Microsoft programming language
Common Lisp
ANSI-standardized dialect of Lisp
Maple
computer algebra system
Julia
high-performance dynamic programming language
XQuery
XQuery (XML Query) is a query language and functional programming language designed to query and transform collections of structured and unstructured data, primarily in the form of XML. It also supports text data and, through implementation-specific extensions, other formats like binary and relational data.
ML
functional programming language
Elixir
programming language
Standard ML
programming language
REBOL
Rebol ( ; historically REBOL) is a cross-platform data exchange language and a multi-paradigm dynamic programming language designed by Carl Sassenrath for network communications and distributed computing. It introduces the concept of dialecting: small, optimized, domain-specific languages for code and data, which is also the most notable property of the language according to its designer Carl Sassenrath:
Haxe
Haxe is a high-level cross-platform programming language and compiler that can produce applications and source code for many different computing platforms from one code-base. It is free and open-source software, released under an MIT License. The compiler is written in OCaml. It can be run in server-mode to provide code completion for integrated development environments (IDEs).
Miranda
programming language
Racket
functional and contractual programming language, with strong, dynamic and reflective typing, derived from Scheme
Elm
functional reactive programming language
J
programming language
Nim
programming language
Wolfram Language
programming language and environment
Caml
Caml (originally an acronym for Categorical Abstract Machine Language) is a multi-paradigm, general-purpose, high-level, functional programming language which is a dialect of the ML programming language family. Caml was developed in France at French Institute for Research in Computer Science and Automation (INRIA) and École normale supérieure (Paris) (ENS).
Clean
programming language
Lean
software for interactive and automated theorem proving
Rocq prover
thumb|300x300px|An interactive proof session in CoqIDE, showing the proof script on the left and the proof state on the right.
Curl
programming language
Agda
dependently typed, purely functional programming language and proof assistant
Idris
purely functional programming language
Unlambda
Unlambda is a minimal, "nearly pure" functional programming language invented by David Madore. It is based on combinatory logic, an expression system without the lambda operator or free variables. It relies mainly on two built-in functions (s and k) and an apply operator (written `, the backquote character). These alone make it Turing-complete, but there are also some input/output (I/O) functions to enable interacting with the user, some shortcut functions, and a lazy evaluation function. Variables are unsupported.
Arc
dialect of the Lisp programming language.
ISWIM
ISWIM (If you See What I Mean) is an abstract computer programming language (or a family of languages) devised by Peter Landin and first described in his article "The Next 700 Programming Languages", published in the Communications of the ACM in 1966.
Magma
computer algebra system designed to solve problems in algebra, number theory, geometry and combinatorics
Opa
programming language
F*
functional programming language inspired by ML and aimed at program verification
V
General-purpose programming language inspired by Go, Kotlin, Oberon, Python, Rust, and Swift
Nemerle
Nemerle is a general-purpose, high-level, statically typed programming language designed for platforms using the Common Language Infrastructure (.NET/Mono). It supports multiple paradigms, including functional, object-oriented, aspect-oriented, reflective, and imperative programming. The language features a simple C#-like syntax and a powerful metaprogramming system. In June 2012, the core Nemerle developers were hired by the Czech software company JetBrains. The team focused on developing Nitra, a framework for implementing existing and new programming languages. Both Nemerle and Nitra appear
PureScript
PureScript is a strongly typed, purely functional programming language that transpiles to JavaScript and, with alternate backends, to C++11, Erlang, and Go. It can be used to develop web applications, server side apps, and also desktop applications with use of Electron or via C++11 and Go compilers with suitable libraries. Its syntax is mostly comparable to that of Haskell. Also, it introduces row polymorphism and extensible records. Also, contrary to Haskell, the PureScript language is defined as having a strict evaluation strategy, although there are non-conforming back-ends which implement
Red
programming language
newLISP
newLISP is a scripting language, a dialect of the Lisp family of programming languages. It was designed and developed by Lutz Mueller. Because of its small resource requirements, newLISP can be used for embedded systems applications. Many functions are built in, including networking functions, support for distributed and multicore processing, and Bayesian statistics. newLISP is free and open-source software released under the GNU General Public License, version 3 or later.
Joy
programming language
Refal
Refal ("Recursive functions algorithmic language"; ) "is a functional programming language oriented toward symbolic computations", including "string processing, language translation, [and] artificial intelligence". It is one of the oldest members of this family, first conceived of in 1966 as a theoretical tool, with the first implementation appearing in 1968. Refal was intended to combine mathematical simplicity with practicality for writing large and sophisticated programs.
Qalb
programming language with Arabic keywords
Interlisp
Interlisp (also seen with a variety of capitalizations) is a programming environment built around a version of the programming language Lisp. Interlisp development began in 1966 at Bolt, Beranek and Newman (renamed BBN Technologies) in Cambridge, Massachusetts with Lisp implemented for the Digital Equipment Corporation (DEC) PDP-1 computer by Danny Bobrow and D. L. Murphy. In 1970, Alice K. Hartley implemented BBN LISP, which ran on PDP-10 machines running the operating system TENEX (renamed TOPS-20). In 1973, when Danny Bobrow, Warren Teitelman and Ronald Kaplan moved from BBN to the Xerox Pa
Reason
syntax extension and toolchain for OCaml
Kent Recursive Calculator
programming language
A♯
programming language
ATS
programming language
Hope
functional programming language