What is Fable?
Contents
What is Fable?#
Fable is a compiler that lets you use F# to build applications that run in the Python ecosystem.
type Shape =
| Square of side: double
| Rectangle of width: double * length: double
let getArea shape =
match shape with
| Square side -> side * side
| Rectangle (width, length) -> width * length
let square = Square 2.0
printfn $"The area of the square is {getArea square}"
What is F#?#
F# (pronounced f-sharp) is a strongly typed Functional programming language which offers many great features to build robust and maintable code such as:
Lightweight syntax
Immutability baked into the language by default
Rich types which let you represent easily your data or your domain
Powerful pattern matching to define complex behaviors
And so much more…
F# is already used on the server for web and cloud apps, and it’s also used quite a lot for data science and machine learning. It’s a great general-purpose language, and also a great fit for building beautiful UIs that run in the browser.
Why use F# for your next Python project?#
F# is a great choice to build beautiful apps that run in the browser. F# is:
Succinct with lightweight syntax
Robust with a great type system and pattern matching
Safe with immutability baked into the language
Supported by large companies (such as Microsoft and Jetbrains) and comes with commercial tooling support
When compared with Python, F# is safer, more robust, and more pleasant to read and write.
F# is a mature language with functional programming and object programming capabilities, but it doesn’t sacrifice readability or simplicity to offer these things. Because of that, we think it’s a great choice for your next Python application.