Haskell Functional Programming Language

1489 Words6 Pages

HASKELL What is Haskell? Haskell is a non-strict or a lazy language, and also, a purely- functional programming language named after logician Haskell Brooks Curry. Haskell Brooks Curry is an American Mathematician and logician known for his contribution on functional languages, aside from Haskell, the Brooks and Curry programming languages are also named after him. The Haskell language is built around functions, useful blocks of code that do specific tasks. They are called and used only when needed. Why Haskell is lazy? No, it doesn’t spend most of its time sleeping and sitting on a couch and eating a donut like what policemen in movies do. Haskell won’t execute functions and calculate things until its result is strictly necessary. Haskell …show more content…

Then David Turner, developed SASL - a pure higher-order functional language with lexically scoped variables— a sugared lambda calculus derived from Landin’s ISWIM (If You See What I Mean - is an abstract computer programming language) that incorporated ideas on pattern matching into an executable programming language. Followed by the development of SCHEME - a dialect of Lisp that adhered more closely to the lambda calculus by implementing lexical scoping. At more or less the same time, ML was invented as a meta-language for the theorem prover. Both Scheme and ML were strict (call-by-value) languages. Scheme and ML did much to promote the functional programming style and in particular the use of higher-order …show more content…

The most important Haskell library that contains the most common functions. Such as Sorting, Computations, Default, Overload and other basic functions o Haskell 2010 Libraries. Defines a set of library with basic functionality and specification that all implementations should support. Such as Control.Monad, Data.List and System I.O – within GHC, these are mostly grouped into the base package. For example Data.Array is in the array package. o Haskell Platform Library. These are libraries that come with platform installation o Hackage Database. Hackage is the final layer of the Haskell library collections. It is a community-driven database of libraries. Hackage aims to provide a comprehensive collection of released Haskell packages • Debuggers o GHCi (Glasgow Haskell Compiler interpreter) The GHCi Debugger project extends ghci with basic debugging capabilities in which you can stop a running computation in order to determine or examine the values of variables. It is turned on by defaults, no flags are required to enable the debugging facilities. Debugger provides the ability to set a breakpoint on a function definition, execution can be single-stepped, execution can take place in tracing mode and exceptions can be treated as

Open Document