top | item 8959012

(no title)

hrvbr | 11 years ago

Just yesterday there was this article illustrating how C# fundamentally can't catch-up with F# on some important characteristics:

http://fsharpforfunandprofit.com/posts/is-your-language-unre...

discuss

order

Someone1234|11 years ago

> Comparing objects of different types is a compile-time error.

Then use C. In OOP comparing objects of different types is key to inheritance. The reason their example works is because everything in C# inherits from object, so you'll always find some commonality to compare.

You could have the compiler generate a warning when object.equals is used (rather than overridden) but getting rid of comparisons between different object types completely is backwards and will reduce efficiency.

achr2|11 years ago

What a poor article.. let me just cherry pick a number of benefits of functional languages and call them requirements for a 'reasonable' language.

organsnyder|11 years ago

That article could be summed up as: "Look at all of the ways that the language doesn't protect you from yourself (or the creator of the library you're using)!"

It's possible to write shitty code in every programming language. Of course, the specific methods of doing so differ, but I've yet to see a Turing-complete language that makes it impossible to write buggy code.