What languages are available that promote both object-oriented and functional programming? I know that any language that supports first-class functions can be considered fun
The best known are OCaml and F# (which can be vaguely described as OCaml for .NET).
There are many other multi-paradigm languages, like Oz, but they have mostly pedagogical value. By contrast, OCaml is very practical. It's almost as fast as C and almost as beautiful as Haskell :)
The popular scripting languages like Python and Ruby let you program in functional style as well. However, they don't provide one of the strongest facilities that "classical" functional languages (as well as OCaml) have: pattern matching (don't mistake it for regexp).