Less code, little to no C# like source bloat because of:
- Type inference
- Automatic generics
- Functions instead of methods
- seqs and tuples + unpacking (a'la python)
- pattern matching ("switch case" that matches types & unpacks)
- modern, tasteful syntax (esp. vs C# / Java / JS): Indentation based blocks, no semicolons, less (braces)
- |> operator (no need for "extension methods", code reads left to right)
- Connect to mssql db with type provider
- Get groups
- Get users + associated groups
- Display stuff + refactor
- Show records + type inference
- Show automatic generics
- show seq {} + pattern matching
Some additional ideas:
The mention of the Option type could be part of the "Why". by the way, some other small "why" reason why i like F#: Currying, Partial Application, Unit type (no void), everything is an expression.
Type-safety could be a small demo on it's own. Like some calculation with money, weights and so on.
Async + Type providers could be a demo that downloads a JSON/CSV file from a website and do some basic calculation with it.