5 ms·
F# is a general purpose language. It can do anything Java/C# can do, only shorter and safer. Here is an example of a simple language tool not in Java/C# that m
by JackMorgan 12y ago
F# is a general purpose language. It can do anything Java/C# can do, only shorter and safer.
Here is an example of a simple language tool not in Java/C# that makes it easier to write, read, and is safer. http://deliberate-software.com/function-pattern-matching/ http://deliberate-software.com/function-pattern-matching/
F# can also call anything written in .NET, so it's easy to start using it right away.
The biggest complaint people have is that it is a totally new language, and the parts that make it simpler and safer take effort to learn. In all honesty, several developers I know don't want to learn it, mostly because they only know C#, and do not believe the claims of speed and safety. They cannot imagine what could be different, so a day or two in, they just think of it as "syntax wankery", and never get past that point.
Really, the different syntax just makes it about a third the size of the equivalent C#. That alone is fine, and usually is the reason people prefer languages like Ruby/Python. But the real power comes from deeply understanding computation expressions, the LINQ equivalent, and F# data structures. Those three allow code that is much safer and easier to write, without sacrificing any functionality.
At my work, (Winforms app and an MVC4 web site) I use it anywhere I'd use C#.