To me, Flexibility in a languages approach are the most fun. I wrote a lot of PHP in my profession, and what I like about it is there is always something new about the language to discover. Whether it's a complete paradigm shift or just a minute change that rocks your world, PHP is the reeses peanut butter cup of programming languages: there's no 'wrong way'.
I don't like something that in of itself IS the framework, I want to write in a language that can CREATE frameworks. Getting close to the metal is a thrill.
But ultimately I just like something thats clean and makes sense to read. Growing up I've gotten very used to ECMA Syntax through Javascript and Actionscript2; Java syntax and style through Java, Actionscript 3, and C#; and C like syntax through .. well C and C++ and the tones of C style scripting languages out there.
Python hasn't been very good at making me look at it and think "man that's beautiful I should use that" even though that's it's primary goal. Ruby as well just doesn't make a lot of sense to me on the surface. But that style of language just isn't MY style is all heh
agreed.
I am not much of a fan of Python, Ruby, or Lua syntax either.
of these, Lua seems to be the less bad option though...
I prefer C mostly for its power, and C++ has some nice features to add onto this.
Java has a nice syntax in some ways, albeit it is at times a bit verbose and cumbersome, and its ability to interface with native code is notably not-so-good.
C# is also pretty good, but its tool support isn't quite so great on non-Windows targets.
a few times I am also wishing that either it would support a few more of the missing C features, or provide operator overloading to make them easier to fake. for example, I like being able to fill array members via "*t++=...;", however, in C# it is necessary to either wrap it and use a method call, or to use real pointers and need to mark the code as unsafe.
well, and the ability to call static methods via an object instance (like with virtual methods) would be nice.
a drawback of C, C++, Java, and C#, is the general absence of implementations providing the ability to compile them dynamically at runtime.
I suspect this is likely one of the major motivators for the use of both a compiled language and a scripting language in the same project.
there is some difficulty though (in a language design and implementation sense) in trying to make a language that works equally well as both an implementation language and a scripting language.