When functional language purists talk about how a language can completely lack of side effects, they tend to shrink back when you ask them about I/O. Yes, there are ways of dealing with it (monads, which are beyond my current understanding, and so will only mention them for completeness), but there is no getting around the fact that I/O is a side effect.
Update: One grammour mistake fixed. 1.56 * 107 more to go.
----
send money to your kernel via the boot loader.. This and more wisdom available from Markov Hardburn.