General-purpose programming language providing support for functional programming and a strong static type system