# H-99: Ninety-Nine Haskell Problems

From HaskellWiki

Revision as of 04:22, 12 December 2006 by Jcreigh (talk | contribs) (added chessguy from #haskell's solution to problem 2)

These are Haskell translations of Ninety Nine Lisp Problems.

## Problem 1

(*) Find the last box of a list. Example: * (my-last '(a b c d)) (D)

This is "last" in Prelude, which is defined as:

```
last :: [a] -> a
last [x] = x
last (_:xs) = last xs
```

## Problem 2

(*) Find the last but one box of a list. Example: * (my-but-last '(a b c d)) (C D)

This can be done by dropping all but the last two elements of a list:

```
myButLast :: [a] -> [a]
myButLast list = drop ((length list) - 2) list
```