Author: Dan Andersson
Date: 15:41:38 07/31/03
Go up one level in this thread
The basic idea in functional programming is that a program is expressed as a function. Some languages are *very* strictly typed and can be reasoned on to prove correctness. While some have no type system. Computations can be lazy and be executed when neccesary. Memoization can be transparent. Order of execution might be undefined in some. Pattern matching and list comprehension is usually a part of the syntax. ML FAQ: http://www.faqs.org/faqs/meta-lang-faq/ A paper implementing alpha-beta in a functional language: http://www.math.chalmers.se/~rjmh/Papers/whyfp.html Here's a factorial function in FP pseudocode using pattern matching: factorial 0 = 1 factorial x = x * factorial (n - 1) Loops are replaced by recursion. To reduce time complexity in programs you can use the nifty Continuation Passing Style transformation. Here is a CPS form factorial: factorial' 0 s = s factorial' x s = factorial (x - 1) (s * x) factorial x = factorial' x 1 MvH Dan Andersson
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.