User Tools

Site Tools


projects:fsharp_workshop

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
projects:fsharp_workshop [2015/03/13 23:35] mkuciaprojects:fsharp_workshop [2015/04/17 21:35] mkucia
Line 3: Line 3:
  
   * f(x) = Hello_Word   * f(x) = Hello_Word
-  * On Testing and +  * Type providers (strongly typed) 
 +  * Matching 
 +  * Options 
 + 
 +===== How to use? Where to get? ===== 
 +Try F# in browser: 
 +http://www.tryfsharp.org/Create 
 + 
 +Want to get a full distribution?  
 +http://fsharp.org/ → Use F# 
 + 
 +===== [Hello] ===== 
 +<code fsharp> 
 +let hello = printf "Hello World" 
 +</code> 
 + 
 +===== Why? ===== 
  
  
-<wrap hi>highlighted</wrap> 
  
 <WRAP group> <WRAP group>
Line 13: Line 29:
   * Open Source   * Open Source
   * Multi platform (Mono, .NET core)   * Multi platform (Mono, .NET core)
-  * Modern, rising usage+  * Modern, rising popularity
   * Lazy evaluation   * Lazy evaluation
   * Reusable   * Reusable
Line 22: Line 38:
 <WRAP half column box> <WRAP half column box>
 Cons: Cons:
-  * Not suitable for real time +  * Not suitable for real time (unpredictable performance) 
-  * requires different thinking+  * Different thinking process (you need to re-learn)
 </WRAP> </WRAP>
 </WRAP> </WRAP>
Line 29: Line 45:
 <hidden ↘ C# equivalent>Since you want to know more, here is an explanation with more details […]</hidden> <hidden ↘ C# equivalent>Since you want to know more, here is an explanation with more details […]</hidden>
  
 +===== Pitfalls and drawbacks =====
 +Functional languages fundamentally don't model how your computer works.
 +Harder to optimize.
 +
 +===== References =====
 +  * http://fsharp.org/
 +  * http://fsharp3sample.codeplex.com/wikipage?Title=MicroSamples
 +  * http://en.wikibooks.org/wiki/F_Sharp_Programming
 +  * http://fsharp.org/specs/language-spec/3.0/FSharpSpec-3.0-final.pdf
 +  * http://www.mindscapehq.com/blog/index.php/2012/03/27/5-12-f-features-every-c-programmer-should-lust-after/
 +  * [[https://msdn.microsoft.com/en-us/library/dd233228.aspx|MSDN Symbol and Operator Reference (F#)]]
 +  * https://github.com/rookboom/SharpShaders/wiki/Why-write-shaders-in-F%23%3F
 +  * http://www.quora.com/What-are-some-limitations-disadvantages-of-functional-programming
 +  * http://fsharpforfunandprofit.com/site-contents/
 +  * http://research.microsoft.com/en-us/projects/kiwi/
 +  * [[https://www.youtube.com/watch?v=hMjv8m--W28|Ten things F# can do, and C# can't - Liam McLennan @ DDD Brisbane 2013]]
projects/fsharp_workshop.txt · Last modified: 2015/05/02 12:45 by mkucia