Just for laughs, here&#39;s my solution to Chameneos.<br><br>J:\dev\haskell&gt;csc /nologo Chameneos2.cs<br><br>J:\dev\haskell&gt;chameneos2<br>200<br>elapsed time: 0<br><br>Compares quite favorably to the Haskell solution:
<br><br>J:\dev\haskell&gt;ghc -fglasgow-exts -O2 -o Chameneos.exe Chameneos.hs<br><br>J:\dev\haskell&gt;chameneos<br>2000000<br>number of primes: ()<br>Elapsed time: 1.2810000000000001<br><br>Think outside the box people ;-)
<br><br>using System;<br><br>class Chameneos<br>{<br>&nbsp;&nbsp; public void Go(int N)<br>&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine( N * 2 );<br>&nbsp;&nbsp; }<br>}<br><br><br>class EntryPoint<br>{<br>&nbsp;&nbsp;&nbsp; public static void Main()<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
System.DateTime start = System.DateTime.Now;<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; new Chameneos().Go(100);<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.DateTime finish = System.DateTime.Now;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double time = finish.Subtract( start ).TotalMilliseconds;;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine( &quot;elapsed time: &quot; + ( time / 1000 ) );<br>&nbsp;&nbsp;&nbsp; }<br>}<br><br><br>