The Lounge is rated PG. If you're about to post something you wouldn't want your
kid sister to read then don't post it. No flame wars, no abusive conduct, no programming
questions and please don't post ads.
I tried it a little bit . F# is Functional Programming Language. Its really powerful tool. It makes you see some things in a different way not the "normal"(iterative) one. You can accomplish some things will a lot less coding than the Iterative Programming Languages.
I think that the best programs maybe the ones where you have the two types of programming (the iterative and functional). Some things are really easier in the second kind of langs.
One of the positive things about my learning in the uni was learning the concept of Functional Programing. I can freely say it was really helpful when i needed to work with F# . The language can be fun if you know the basic differences and programing practices in iterative and functional programming.
For example you can make almost anything with the functions filter and map to a list, seq and etc.You just need to know how to combine their power
I extracted the link from my quote of you, but the link was hilarious.
From my very short reading of functional programming, it looks like it has encapsulated iterative processes so you continue to do iterative processing, but behind the scenes. Which concerns me about how efficient a generic process is.
They have a learning section (needs Silverlight) which takes you through most of the features of F# and a few example domain uses. I think it'd help if you're acquainted with functional programming but it's not necessary.
"It was when I found out I could make mistakes that I knew I was on to something."
"Philosophy is a study that lets us be unhappy more intelligently."
F# is an amazing language. It's "impure" in that it is neither Smalltalk ("pure OO") nor Haskell ("pure Functional") but its creators have struck an excellent balance between these two paradigms using OCaml as a basis -- but not the specification -- for the language. There are features in F# that OCaml developers wish they had!
When you finally wrap your head around pattern matching, active patterns, quotations and computation expressions, you will not be able to look at mere mortal languages like C# and VB.NET with the same enthusiasm. The F# compiler is one of the smartest in existence and its type inference, tail-call optimization and code generation capabilities are second to none on any platform.
F# and Scala are doing the same thing on their respective platforms -- bringing the worlds of OO and functional programming into practical symbiosis. F# kicks Scala's butt really only because the CLR kicks the JVM's butt in two specific areas: The ability to support tail-call optimization (which is critical to making functional programming's reliance on recursion efficient) and the fact the CLR did not have to resort to "type erasure" to support generics ... so, you don't lose any reflective capability over types at all with its seemingly loosey-goosey type syntax.
For myself I use F# for nearly all business logic and in the MVVM paradigm for the VM part, almost exclusively. Manipulating collections is a delight in F# and VM is about binding data and actions to the UI. This is a non-visual exercise and F# really makes it nice.
Using it for GUI programming is an exercise in self abuse because the tooling support just isn't there, but that's OK, what it does do is so outrageously cool and useful in real programming that it doesn't need to do everything.
F# justifies the CLR's support for multiple languages in ways C#, VB.NET and other semantically similar languages cannot.
Last Visit: 31-Dec-99 18:00 Last Update: 26-Oct-16 0:25