
proc fib() {

  a = 0
  b = 1

  while( b < $1 ) {

    print b

    c = b
    b = a + b
    a = c
  }

  print "\n"

  return
}


func f() {

  return $1 + PI

}

func fac() {

  if( $1 <= 0 ) {
    return 1
  } else {
    return $1 * fac( $1 - 1 )
  }
}


fib( 1000 )

z = f( 1 )

print "z = ", z

q = fac( 7 )

print "q = ", q
