id:bleis-tift / @bleis
id:bleis-tift / @bleis
id:bleis-tift / @bleis

                   C#
id:bleis-tift / @bleis

                   C#
F#       Scala
id:bleis-tift / @bleis

                   C#
F#       Scala
Git      Hudson          Jenkins
F#
F#
F#
F#
F#
F#
F#
F#
F#
     F#
F#
F#
F#
     F#

          F#
F#
F#

Microsoft
F#

Microsoft

OCaml
F#

Microsoft

OCaml

         .NET Framework
 C#     VB
F#

Microsoft

OCaml

         .NET Framework
 C#     VB

.NET
LISP
    etc...


C
LISP
    etc...


C
C# VB
LINQ
C# VB
LINQ
C# VB
LINQ


C#
C# VB
LINQ


C#
C#   VB
C#   VB
C#   VB
C#   VB
C#   VB




C#   VB
F#
F#
F#
F#




F#
0   ”hoge”
0   ”hoge”
0   ”hoge”
0   ”hoge”
0   ”hoge”
0   ”hoge”
Func
F#
F#




F#
F#
F#
F#
F#
F#
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
fsi
fsi



F#
fsi



F#

VS
fsi



F#

VS
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
C#   VB
C#   VB
C#    VB


                      vs. switch Select
     option vs. null Nothing
C#    VB


                      vs. switch Select
     option vs. null Nothing
vs.
vs.




     1    ”one” 2   ”two”
”other”
C# VB
F#
F#




function
F#




function
F#




function
’0’
’0’
FizzBuzz
FizzBuzz

FizzBuzz(1)    1
FizzBuzz(2)    2
FizzBuzz(3)    Fizz
FizzBuzz(4)    4
FizzBuzz(5)    Buzz

FizzBuzz(14)   14
FizzBuzz(15)   Fizz Buzz
FizzBuzz(16)   16
FizzBuzz

FizzBuzz(1)    1
FizzBuzz(2)    2
FizzBuzz(3)    Fizz     3        Fizz
FizzBuzz(4)    4
FizzBuzz(5)    Buzz

FizzBuzz(14)   14
FizzBuzz(15)   Fizz Buzz
FizzBuzz(16)   16
FizzBuzz

FizzBuzz(1)    1
FizzBuzz(2)    2
FizzBuzz(3)    Fizz     3        Fizz
FizzBuzz(4)    4
FizzBuzz(5)    Buzz     5        Buzz

FizzBuzz(14)   14
FizzBuzz(15)   Fizz Buzz
FizzBuzz(16)   16
FizzBuzz

FizzBuzz(1)    1
FizzBuzz(2)    2
FizzBuzz(3)    Fizz     3            Fizz
FizzBuzz(4)    4
FizzBuzz(5)    Buzz     5            Buzz

FizzBuzz(14)   14
FizzBuzz(15)   Fizz Buzz         FizzBuzz
FizzBuzz(16)   16
FizzBuzz

FizzBuzz(1)    1
FizzBuzz(2)    2
FizzBuzz(3)    Fizz     3            Fizz
FizzBuzz(4)    4
FizzBuzz(5)    Buzz     5            Buzz

FizzBuzz(14)   14
FizzBuzz(15)   Fizz Buzz         FizzBuzz
FizzBuzz(16)   16
FizzBuzz C# VB
FizzBuzz F#
FizzBuzz F#




  | 0, 0 -> "Fizz Buzz"
----^^^^
FizzBuzz F#




  | 0, 0 -> "Fizz Buzz"
----^^^^
FizzBuzz F#




  | 0, 0 -> "Fizz Buzz"
----^^^^
option vs. null




option   null
option vs. null




option   null
null
null
null
null




API
null



null
null



null
null



null

              NullReferenceException
null



null

              NullReferenceException
option
option
option
option
option
option
mzp
 F#                   Maybe

http://d.hatena.ne.jp/mzp/20110205/monad
option
option
option


A option   A
option


A option   A

               NullReferenceException
option


A option   A

               NullReferenceException
option


A option   A

               NullReferenceException


    None
option


A option   A

               NullReferenceException


    None
option


A option   A

                  NullReferenceException


    None




           null
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
C#   VB
C#
VB
UML
UML
F#
F#
F#
UML
UML
Equals   GetHashCode
UML
Equals   GetHashCode

                       type   of   2
UML
Equals   GetHashCode

                       type   of   2



   F#     C#     VB
C#   VB

          Visitor
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
Schedule
C#
C#
C#
C#
C#
C#




F#
F#


    1        fsi
.   2


    3


.   4


    5              F#
.

.

.
F#
F#




F#
 F#        C#   VB
F#




F#
 F#        C#   VB
|>




F#
|>




F#

     F#   F#
                |>
|>




|>
|>




|>
|>
|>




|>
|>




|>
|>
|>
|>
|>
|>
using

C#   VB
          using
using

C#   VB
           using
      F#
using

C#   VB
           using
      F#
using

C#   VB
           using
      F#
using

C#   VB
           using
      F#
use
use
use




      let
use
F#
F#




    1   IDE
    2         Express Edition
.   3




.

.
F#




    1   IDE
    2         Express Edition
.   3




.

.
IDE
IDE
F#Depth Colorizer
F#Project Extender
F#Depth Colorizer
    F#Project Extender
2
F#Depth Colorizer
F#Depth Colorizer




F#
F#Depth Colorizer




F#
F#Project Extender
F#Project Extender



F#
F#Project Extender



F#
F#Project Extender



F#
F#




    1   IDE
    2         Express Edition
.   3




.

.
Express Edition
Express Edition
Express Edition




Win   F#CTP   Visual Studio 2010 Shell
Express Edition




Win   F#CTP    Visual Studio 2010 Shell


Mac   mono
Express Edition




Win   F#CTP     Visual Studio 2010 Shell


Mac   mono
      Mac
      MBA13
F#




    1   IDE
    2         Express Edition
.   3




.

.
Twitter   F# User Group
Twitter F# User Group
Visual Studio F#
   1
Twitter F# User Group
Visual Studio F#
   1
2
F#
F#

     F#
F#

     F#
F#
F#
F#




VS        C#   VB
F#




VS        C#   VB
     F#
F#




VS         C#   VB
      F#
F#   F#
F#




VS                C#   VB
        F#
F#     F#
     NUnit
F#




VS                                 C#   VB
                F#
F#             F#
             NUnit
     NUnit                FsUnit
F# .NET
F# .NET
F#
F# .NET
F#
F#
F# .NET
F#
F#
          F#
F# .NET
F#
F#
       F#
      F#
special thanks
PowerShell sort
          @mzp
            @otf
        @rf0444
        @RKTM
  @wof moriguchi

C#(VB)プログラマのためのF#入門