Re:Announcing a pre-release of F# 3.1 and the Visual F# tool...
by Associat0r on Thursday June 27, 2013 @10:36PM
(#5955876)
F# is general purpose and multi-paradigm, it even has OO classes and imperative for and while loops and I get the same perf as C# and even more in some cases.
I for one got into .NET because of F# and to me .NET is just like any other language runtime.
It's not just tied to MS, it runs on every major platform thanks to Mono see the left bar on this site http://fsharp.org/
Re:Announcing a pre-release of F# 3.1 and the Visual F# tool...
by 7manr82h on Thursday June 27, 2013 @10:30PM
(#5955860)
i would like to point out that i am using F# with emacs on linux with mono, i made this transition recently from windows and i have no complaints yet.
Re:Announcing a pre-release of F# 3.1 and the Visual F# tool...
by virtualwhys on Thursday June 27, 2013 @11:06PM
(#5955962)
What's the latest and greatest in terms of M$ feature availability on Mono these days?
A couple of years ago whatever the successor to LINQ to SQL was at the time, was not available/not implemented (maybe Entity Framework?)
Anyway, curious about doing equivalent of Scala + Play + Slick on Mono, which I assume is F# + .NET + Type Providers/LINQ to SQL.
Re:Announcing a pre-release of F# 3.1 and the Visual F# tool...
by 7manr82h on Friday June 28, 2013 @12:08AM
(#5956173)
i think i just haven't had anything that hasn't worked yet, and by this i mean, i wrote my codebase for various projects in .net in vs2012, copying them over to linux and just fsharpc, and it just works (although i confess i have not touched linq\sql things), my advice, git clone and try. edit:spell
.NET is a good technology if you don't mind being somewhat tied to the Mircrosoft stack: it's well designed, reasonably performant, strongly supported and relatively stable. It has good integration with other Microsoft products, good tooling with Visual Studio and an extensive set of libraries. (The libraries are what would probably tie you the most strongly to Microsoft.)
Functional programming is a much deeper topic, so I'll give my condensed and unabashedly biased summary: functional languages tend to be more expressive (and, transitively, more productive) while producing code that's easier to support--F# has a good type system, and functional programming leads to much lower coupling than OO much less procedural programming. This happens without sacrificing performance too much. Sure, you won't get C speed (or even C# speed), but it's more than good enough for most tasks. I'm pretty sure F# is at most a couple of times slower than C#--much faster than the popular dynamically typed languages! I'm really only familiar with OCaml and Haskell, both similar languages, and they can certainly produce fast code.
So if you're convinced by functional programming and somehow tied to .NET, F# is the perfect choice. If you're not tied to .NET, I would recommend Haskell or maybe OCaml instead.