I have a function that takes the number of years and salary, then recursively doubles the salary until years is exhausted. However, I keep getting this error:
You need to remove the brackets from around salary in your if condition:
(if (= years 0)
salary
(calculate-salary (- years 1) (* salary 2))
the form (f arg1 arg2 ..) attempts to call f as a function with arg1, arg2 ... as arguments. Therefore (salary) attempts to invoke salary (a long) as a function with no arguments, hence the error.