Mon 24 Aug 2009
Mersenne Twister in Clojure
Posted by Steve Knight under lisp
No Comments
The Mersenne Twiser is a random number generator that has a lot of applications, particularly in finance. After discovering that there was no Clojure implementation at Wikipedia I decided to give it a try as my first attempt at something useful in Clojure. As it turns out it’s problably not a good candidate to be implemented in a functional language because the whole thing requires modifying a mutable array for every call to (genrand).
I’m not very excited by the solution because it doesn’t seem very lispy. It much more resembles the reference implementation, and gives the same results as it for all the tests I tried.
I’m sure it could be better though.
If it’s of any use to anyone you can find it here.
No Responses to “ Mersenne Twister in Clojure ”