Monday, January 30, 2006

whirlwind, this time math and programming

n one sense, basic calculus is just like 'functional programming'. You have a function(al) called 'derivative', which takes a function as an argument, and returns a function as its result... same goes for integrals... somebody needs to write a 'lisp programmers guide to calculus'... if you do print derivative(sin()), you get 'cos()' as output.. for example.. and print integral(cos()) would output 'sin() + constant' :)
I always had an easier time learning programming constructs than math constructs. Sometimes that might have been because the math was just a little more abstract... but I also think that sometimes it's due to nomenclature.
If you are forced to write mathematical concepts in a way that a computer can easily understand what you are saying, it's probably easier for a human to comprehend as well.
Part of this is implied assumptions that go along with mathematical statements. Things that just 'go without saying' to mathematicians or physicists. As one example, physicists often just make assumptions that the functions they are dealing with are 'well behaved'... as in they don't have discontinuities or go to infinity at one place or another. If you wanted to make that case in a computer language, you would have to explicitly tell the computer that (either in the language design, or the actual code)...


Post a Comment

Subscribe to Post Comments [Atom]

<< Home