Haskell

From Uncyclopedia, the content-free encyclopedia.

Jump to: navigation, search
Haskell game box.

Haskell is an obscure and mostly disused esoteric programming language named after the planet Haskell, a large and moving planet orbiting Aldebaran. It was developed in 1969 by Donald 'Waddler' Duck and Geo* Exception: Stack Overflow

Haskell is compiled from .hs-files which means HOMO SEXUAL

~ Oscar Wilde on Haskell

Contents

[edit] Language

Haskell is a dialect of COBOL, which it superficially resembles, and an embodiment of the Zeta-Calculus. In fact, native speakers of COBOL often describe Haskell as sounding posh and affected, with a very broad unintelligible accent. It is a non-functional language and properly belongs to the computational class Zeta-complete, known to co* Exception: Stack Overflow ntain the TP- and M-completeness categories. Owing to the monolithic nature of Haskell programs, and the undecidability of their output, even very simple programs can run to many thousands of lines of curry sauce code. The Hello Whirled program in Haskell, for example, contains some 37,000 lines of sauce, 35% of which (36,590 lines) simply increment the instruction pointer.

The nature of the Zeta-calculus creates some interesting new design possibilities for the aspiring programmer. Evaluating any data in Haskell is an error owing to the Zeta-calculus concept of 'lazy evaluation' -- the compiler can't be bo* Exception: Stack Overflow

thered looking at the data at all and throws it in the bin.

This paradigm pioneers some unusual techniques. Infinite lists, for instance, are common in Haskell. In fact, all data items are treated as infinite lists of length 1. Other infinite lists may be longer. Evaluating them is still an * Exception: Stack Overflow

error. Lazy programming is used to avoid telling the computer what to do until the program is running, saving developers from needing to code things that won't be used.

The innovative Go Notation is a syntactic sugar for the highly sophisticated mathematical construct of Gonads which are used for I/O. Gonadic I/O is practiced by very few and understood by still fewer; the Haskell expert will be adept in their handling of Gonads.

A Typical example of Haskell Bool code:

isBool::Int->Int->Bool
 |Bool=True;
 |Otherwise False
--George Boole endorsed


[edit] Implementation

One known Haskell compiler exists, called HAGS, the Highly Arbitrary Gronda System. The origins of this implementation have never been satisfactorily revealed, and even the derivation of the name remains shrouded in shadow. The philologists have traced Gronda to Old Norse, where it meant something very obscene, probably related to Thor's mother somehow.

Haskell has never been implemented in Haskell and the suggestion that it might be has been deemed impossible by Waddler.

[edit] Uses of Haskell

No one really knew why Haskell was used until intrepid university students looked in the sealed chamber beneath Imperial College's Department of Computing. They were astonished to see Alan Turing strapped to a magnet in a solenoid, spinning furiously. It has been theorised that Haskell's horrible Turing incompletableness causes him to * Exception: Stack Overflow spin in his grave at roughly 4 billion hertz, generating enough power to run the entire university.

Haskell is used as a research language, where its support for codependent types has allowed advances in the field of dysfunctional programming.

[edit] Hello world in Haskell

main = putStrLn . (++ "!!") . (>> "AA") $ "Hello world !"

An excellent application of completely pointless programming in Haskell.

Here is a more useful example of Real World Haskell programming:

fix$(<$>)<$>(:)<*>((<$>((:[{- OH MY GOD IT'S A COMMENT!!! -}])<$>))(=<<)<$>(*)<$>(*2))$1

Most real world Haskell programs look like this, since the language's infinite academic prowess had to be augmented by the best parts of Perl to actually do anything useful. The Gonadic Haskell Co-compiler even modifies its lowest level assembly using the so-called "evil mangler", written in Perl, the language of Gods. This has to be enabled with the -fvia-C option, which uses GCC to optimize the code to get program run-times without the constant factor c (the speed of light) included.

[edit] Trivia

Haskell has only one control structure. Its type signature is:

 pSwitch :: Functor col => (forall sf . (a -> col sf -> col (b, sf))) -> col (SF b c)-> SF (a, col c) (Event d) -> (col (SF b c) -> d -> SF a (col c)) -> SF a (col c)

As is usual in Haskell, what this does is obvious even to the uninitiated from the clear, elegant and concise type signature.

While it is possible to do IO in Haskell, this is only spoken of in whispers, and there is only one function to do IO: System.IO.Unsafe.Really.IMeanIt.reallyReallyAbsurdlyUnsafePerformIOShameOnYou.

The flagship Haskell application is Zetabot, a 200 line Zeta calculus interpreter that sits in #Haskell, much to the entertainment of several hundred dead-ended college stu* Exception: Stack Overflow

Personal tools
projects
In other languages