F# Introduction

Wednesday, September 25 @ 9:00 (Workshop)

Do you want to learn F# and Functional Programming? Well, you better start coding! Learning a new programming language is not easy, on top of reading a lot you need to practice even more. This workshop is designed to teach you some of the basics of F# and Functional Programming by combining theory (slides) and practice.


  • Bindings
  • Functions
  • Tuples
  • Records
  • High order functions
  • Pipelining
  • Partial application
  • Composition
  • Options
  • Pattern matching
  • Discriminated unions
  • Units of measure
  • Functional lists
  • Object-oriented programming
  • Type providers


  1. Please bring a laptop with the pre-requisites already installed.
  2. Clone this repo: Please bring a laptop with the pre-requisites already installed (see http://www.fsharpworkshop.com/#pre-requisites).
  3. Open Visual Studio Code
  4. Open the root folder (File -> Open)
  5. Open the terminal (Terminal -> New Terminal)
  6. Run “dotnet test Completed/Module1/Tests”
  7. Double check it finishes without errors
  8. Open the F# Interactive (View -> Command Palette -> FSI: Start)
  9. Write “let a = 1;;” in the terminal window and press enter
  10. Double check you see “val a : int = 1”

About Jorge Fioranelli

Jorge Fioranelli

Jorge works as Director of Engineering at Jet.com and is very passionate about F#, Domain-Driven Design and Distributed Architectures. He is a regular speaker, co-founder of the F# Sydney user group and frequently runs workshops to introduce F# to developers.