one of the largest directories of the web

Valid XHTML 1.0!

Home : Computers : Programming : Languages : Functional

Functional

Functional programming is a style of programming emphasizing evaluating expressions, rather than executing commands. In these languages, expressions are formed by using functions to combine basic values. Functional languages are those supporting and encouraging programming in a functional style.

On this page, languages are arranged in three groups and levels: 1) Top group: issues spanning multiple unrelated languages. 2) Middle group: types or classes of languages. 3) Bottom group: specific languages, with their own directory category.

Sites in Functional

ICFP 2002
The 2002 International Conference on Functional Programming covers the entire spectrum of functional programming, from practice to theory, and from established functional programming languages (Scheme, ML, Haskell) to novel language designs and to the functional aspects of object-oriented or concurrent languages. October 4-6, 2002 Pittsburgh, PA, USA.
Why Functional Programming Matters
John Hughes paper, dates from 1984, circulated as a Chalmers memo.
The Abyss of Functional Language
a collection of links relating to FP
Alcool-90 (FTP)
Alcool-90 is an experimental extension of ML with run-time overloading and a type-based notion of modules, functors and inheritance.
The Unlambda Programming Language
A functional language designed for obscurity
NESL: A Parallel Programming Language
NESL is a parallel language with functional flavor developed at Carnegie Mellon by the SCandAL project.
Tutorial Papers in Functional Programming
John Hughes' list of FP-related tutorials and courses.
Cayenne
A Haskell-like language with a powerful type system based on dependent types.
Aldor
Functional language in which types are first class values. Normal functions returning types reproduce the features of template classes of other languages. Links to many projects around the world based on Aldor.
Pizza
an extension of Java with functional features: parametric polymorphism, first-class (higher-order) functions, algebraic datatypes and pattern-matching.
Joy: AAA+ Software
Makes Joy, and free fully enabled evaluation version of Joy Developer: product descriptions, support, mail lists, FAQ, documentation, downloads, store.
Mondrian
A simple functional scripting language for Internet applications.
OPAL Project
Researches programming environment where advanced language concepts and formal development methods are used to make production-quality software. Strongly typed, higher-order, strict, pure FL; so can be classed with ML, Haskell, and other modern FLs. But also has unique algebraic flavor in the tradition of languages such as CIP-L, and Obj.
Readscheme.org - Resources for Functional Programming
A variety of research resources on functional programming languages, implementation, and applications of functional programming languages.
Rita Loogen
Member of Eden team. Articles.
Joy
Pure functional language based on function composition rather than application; concatenative language, very like Forth, inputs and outputs stacks, but with higher-level data types and sound mathematical foundation. [Open Source, BSD]
Charity
Functional, categorical language, by University of Calgary, Canada. Innovative organization: based on theory of strong categorical datatypes divided into 2 subclasses: inductive (built up by constructors in the familiar way), and coinductive (broken down by destructors).
FAQ for comp.lang.functional
Offers documentation as a frequently asked questions list. Also provides links to general topic, technical and other resources.
HOP
A functional language with "name-based" interaction between software components.
PLAN: A Packet Language for Active Networks
A resource-bounded functional programming language that uses a form of remote procedure call to realize active networking.
Lemon
Functional language with inductive and coinductive types. Based on simply-typed lambda calculus augmented with sums, products, and mu and nu constructors for least (inductive) and greatest (coinductive) solutions to recursive type equations.
Scala
A general purpose programming language with a special focus on web services. It combines object-oriented, functional and concurrent elements. It is a successor of Funnel. Java-based implementation.
HAL
A strongly typed, weakly moded, constraint logic/functional language designed to support the construction and extension and use of new constraint solvers.
Eden
A functional language that aims at the programming of reactive systems and parallel algorithms on distributed memory systems.
Extended ML
EML is a framework for specification and formal development of Standard ML programs.
Hope
A small functional programming language, with polymorphic typing, algebraic types, pattern matching and higher-order functions.
Q Equational Programming Language
An extensible functional programming language based on the term rewriting calculus.
What the hell are Monads?
A basic introduction to monads, monadic programming and IO.
Functional Programming
Claus Reinke's extensive, well organized bookmarks on FP.
FISh
A novel functional language that claims to be faster than C in some cases.
Functional Programming in the Real World
Lists functional programs written primarily to perform to real-world tasks. Has pure programs (no side effects) and impure (some use of side effects). Languages: Caml, Clean, Erlang, Haskell, Miranda, Scheme, Standard ML.
Wadler: Monads
Information on monads and functional programming
Functional Programming Languages in Education
A collection of information on the use of functional programming in teaching.

sub categories in Functional

Research Research

cross references

Computers : Programming : Languages : APL Computers : Programming : Languages : APL
Computers : Programming : Languages : Dataflow Computers : Programming : Languages : Dataflow
Computers : Programming : Languages : Declarative Computers : Programming : Languages : Declarative
Computers : Programming : Languages : Garbage Collected Computers : Programming : Languages : Garbage Collected
Computers : Programming : Languages : Logic-based Computers : Programming : Languages : Logic-based
Computers : Programming : Languages : Multiparadigm Computers : Programming : Languages : Multiparadigm

other references

Computers : Programming : Compilers : Functional Computers : Programming : Compilers : Functional
Computers : Programming : Languages : Aleph Computers : Programming : Languages : Aleph
Computers : Programming : Languages : BETA Computers : Programming : Languages : BETA
Computers : Programming : Languages : Clean Computers : Programming : Languages : Clean
Computers : Programming : Languages : Compiled : Functional Computers : Programming : Languages : Compiled : Functional
Computers : Programming : Languages : Dylan Computers : Programming : Languages : Dylan
Computers : Programming : Languages : Erlang Computers : Programming : Languages : Erlang
Computers : Programming : Languages : FP Computers : Programming : Languages : FP
Computers : Programming : Languages : Haskell Computers : Programming : Languages : Haskell
Computers : Programming : Languages : Interpreted : Functional Computers : Programming : Languages : Interpreted : Functional
Computers : Programming : Languages : Leda Computers : Programming : Languages : Leda
Computers : Programming : Languages : Lisp Computers : Programming : Languages : Lisp
Computers : Programming : Languages : Lisp : CLOS Computers : Programming : Languages : Lisp : CLOS
Computers : Programming : Languages : Lisp : Logo Computers : Programming : Languages : Lisp : Logo
Computers : Programming : Languages : Lisp : Scheme Computers : Programming : Languages : Lisp : Scheme
Computers : Programming : Languages : Logic-based : Functional Logic Computers : Programming : Languages : Logic-based : Functional Logic
Computers : Programming : Languages : Lua Computers : Programming : Languages : Lua
Computers : Programming : Languages : Mercury Computers : Programming : Languages : Mercury
Computers : Programming : Languages : Miranda Computers : Programming : Languages : Miranda
Computers : Programming : Languages : ML Computers : Programming : Languages : ML
Computers : Programming : Languages : ML : Caml Computers : Programming : Languages : ML : Caml
Computers : Programming : Languages : ML : Objective Caml Computers : Programming : Languages : ML : Objective Caml
Computers : Programming : Languages : Oz Computers : Programming : Languages : Oz
Computers : Programming : Languages : Pliant Computers : Programming : Languages : Pliant
Computers : Programming : Languages : POP-11 Computers : Programming : Languages : POP-11
Computers : Programming : Languages : REBOL Computers : Programming : Languages : REBOL
Computers : Programming : Languages : Sisal Computers : Programming : Languages : Sisal
Computers : Software : Spreadsheets Computers : Software : Spreadsheets

this category in other languages

Funktional German : Funktional
Functional  -  Directory Functional  -  Directory Functional  -  Directory Functional  -  Directory