A major drawback of Ruby and Python is that they are slow. Ruby 1.9 is much, much faster than 1.8, and Python just keeps getting faster as bytecode improves. But compared to the C family of languages, you might as well run the calculations by hand.
I've been looking into wider-audience programming, namely through Microsoft's .NET interfaces. That sounds dirty to UNIX programmers, but honestly, it's kind of handy. The excellent Banshee music program was written in C# (using the GTK# toolkit), and it generally doesn't even need the Microsoft runtime at all, thanks to the folks over at Novell that created the Mono environment.
What this means: you have a platform-agnostic set of libraries that bridge across multiple languages: C#, VB.NET, F#, ASP.NET, IronRuby, IronPython, and so on. The most interesting of the bunch, I think, is Boo.
Boo was written by a Python user in C#. All you need to know is that it writes like Python, and runs like C.
But if you wanted to know the details...
val = "string" (although val as string = "string" is acceptable too). This is because under the hood, Boo is statically typed, which gives it the speed advantage.booi interpreter compiles & runs the source code just like the python or ruby executables do.booc. And this isn't bytecode; it's flat-out compiled into ones and zeroes.In conclusion, it's worth a look. But if you're not convinced, here's a Boo answer to the second Project Euler problem: