Please critique my implementation of a tail-recursive method for generating the Fibonacci sequence:
def fib(n: Int): Option[Int] = {
@tailrec
def go(count: Int, prev: Int, acc: Int): Option[Int] = {
if (count == n) Some( acc )
else go(count+1, acc, acc + prev)
}
if ( n < 0) None
else if ( n == 0 ) Some( 0 )
else if ( n == 1) Some ( 1 )
else go(2, 1, 1)
}