John Fairbairn wrote:
... I can understand "function" in computer-programming terms, but in my head that has no relation to its mumbo-jumbo use in maths.
Speaking as a progammer, and not a mathematician, I have to say that t
here is far LESS mumbo jumbo when speaking of a function in math, than in programming. It is a much stricter and simpler thing than the misnamed "functions" most programmers are using (functional programmers, especially Haskellers aside).
A mathematical function has two very reliable properties, that most (non-functional) computer language "functions" will not guarantee for you:
1. It is stictly a mapping of parameters to particular results. It cannot access random values, perform IO, get current date or time, fetch data from outside its parameters, nor change anything in the world. Just return a value.
2. Due to the above property it has referential transparency, anywhere you can invoke the function with particular parameters, you can replace the function call with actual results.