Mathematica has completely blown me away with its power; both in the environment and the programming language. I am, however, slightly disconcerted by the separation of interpreter level Mathematica code and the compiled C code that it links to. The description on the internal implementation given in <a href="http://reference.wolfram.com/mathematica/note/SomeNotesOnInternalImplementation.html" rel="nofollow">http://reference.wolfram.com/mathematica/note/SomeNotesOnInt...</a> leave me questioning whether a language with pattern matching at its core can ever be made to be fast enough. Perhaps that's not necessary -- a compiler is incorporated and it does give quite a boost, but I would like, perhaps just aesthetically, that a language just be that language all the way down.