-- $Id: fibo.ghc,v 1.4 2001/06/14 23:55:06 doug Exp $
-- http://www.bagley.org/~doug/shootout/
import System(getArgs, getProgName, exitWith, ExitCode(..))
main = do
arg <- getArgs
case arg of
[number] -> putStrLn (show (fib (read number)))
_ -> do
progname <- getProgName
putStrLn ("Usage: " ++ progname ++ " number")
exitWith (ExitFailure 1)
fib :: Int -> Int
fib 0 = 1
fib 1 = 1
fib n = fib (n-2) + fib (n-1)