Something NEW?.....Naaa...Not much.

↑ Grab this Headline Animator

Thursday 1 November 2007

F#...!

Do u think that I wrongly typed F#, instead of C#?

No... I'm right.

See here what is F#.

F#

F# is a typed functional programming language for the .NET Framework. It
combines the succinctness, expressivity, and compositionality of typed
functional programming with the runtime support, libraries, interoperability,
tools and object model of .NET.

F# steps from the ML family(Markup
Language family) of languages and has a core language compatible with that of OCaml(Object Caml Language), though also draws
from C# and Haskell. F#
designed from the ground up to be a first-citizen of .NET, giving smooth
interoperability with other .NET languages. For ex, C# and F# can call each
other directly, i.e., F# has immediate access to all the .NET Framework APIs.
Similarly, F# may be used from other .NET languages.

As F# and OCaml
share a similar core language, some OCaml libraries and applications can
cross-compile either directly or with minor conditionally-compiled changes,
giving a path to cross-compile and/or port existing OCaml code to .NET

A
major focus of the project has been to extend the reach of OCaml-like languages
into arenas where they have not traditionally been used.

F# for
Developers:
- Can be used with tools from .NET FW, MS Visual Studio and many
other .NET dev tools.
- F# Interactive environment fsi.exe, supports
top-level development of dynamics of code
- Command line compiler fsc.exe
supports seperate compilation, debug info and optimization.
- F# comes with
an ML Compatibility library that approximates that OCaml 3.06 libraries.

F# includes support for
- features of functionaly programming
including tuples, lists, options, function
values, local function
definitions, pattern matching and sequencing expressions.
- Computation
expressions can be used to express data queries and client/server modalities in
AJAX-style web programming, enabling programmers to write succinct and robust
reactive agents through the use of Asynchronous workflows.
- Embraces OOPs
and includes support for type-inferred, succinct descriptions of object types.
- Includes support for a form of meta-programming, inspired by LINQ.
-
Fully supports .NET generics and the language was designed partly with this in
mind. Along these, it supports advanced language and runtime features such as
Unicode strings, dynamic linking, preemptive multithreading and SMP Support.

So, developers... how do you feel
now...? A lot of things to learn.... Isn't it...? Get
ready...


What to know
more on F#...? Purchase this book @ Apress.com

No comments: