This course will become read-only in the near future. Tell us at community.p2pu.org if that is a problem.

Preface


Preface:

 

General Assumption: This course is designed for anybody who has atleast general familarity with programming languages like, C, C++, Java, C#.

 

F# Pronounced as "F Sharp".

 

Tool you can use for F# programming study is http://www.tryfsharp.org/Tutorials.aspx# (F# Interactive) or Visual studio 2008/2010 F# interactive window. [You will need silverlight installed on your computer. If not you can download that from Microsoft site.]

We will begin with short tutorial of all concept in this language and later expand each of these topic in subsequent chapters.

 

What is F#:

 

F# is a multi paradigm programming language developed by Microsoft.

F# supports object oriented, Functional, Imperative style of programming.

 

Why F# is the best ?

 

1) Combined features of functional, object oriented, imperative style of programming in single language.

2) Less lines of code. So you can increase your productivity.

3) Parallel programming : To create parallel programs which take advantages of recent advantages in hardware technology. i.e. it can use full use of multi core processors.

4) It's cool language. It's fun !

5) It's developed by Microsoft and used for very large projects which proves it's strength.

6) Most suited for scientific/engineering/data oriented programming.

7) It's language of Artificial intelligence.

8) You got all rich and powerful library of .NET Framework.

9) You can use F# assemblies (modules or .dll) in other .NET languages like C# or Vb.net

10) Future is functional. As time passes OOP (Object oriented paradigm) is showing it's weakness.

It's quiet obvious that in future we will use combination of functional + OOP more often.

If you learn this language you will be very high in demand.

 

Roadmap of course:

  1. Crash course: General overview of all concepts. And Short examples.
  2. Elaborate each topic to it's smallest details.
  3. Real world examples and solutions to the problems.
  4. Small Projects (at least 100) (Games, Tools, Utilities, Fun..)
  5. Big Projects (at least 10) (Mobile Phone Operating system in F# etc.. )

 

What's Next…. Go and Conquer the world with your F Sharp Weapon… :)

Task Discussion