Hacker News new | ask | show | jobs
by valcron1000 1298 days ago
Haskell is also a 30 year old language and I think it has a lot more to say about the future of programming than Python
1 comments

What is that?
From the top of my head:

  - First class functions (pretty much all languages)
  - First class null values through Option/Maybe (several languages use nullable types like Typescript but it's an approximation to the real thing)
  - Unit type instead of hacks like 'void' (Kotlin, Rust)
  - Expressions over statements (ex. if..then..else is an expression, and you don't rely on hacks like ternary expressions) (Kotlin, Rust, Scala)
  - Statically typed with full type inference (Kotlin, Rust, Scala)
  - Pattern matching (Java and C# are continuously extending this feature)
  - Green threads as default (Go, soon Java)
  - Decouple data from interfaces through Type Classes/Traits (Rust, C#'s static virtual members in interfaces is a start)
  - Generic programming. Do not confuse this with parametric polymorphism (I think Rust has an approximation through macros)
  - Effects (like IO) as first class values (Scala's ecosystem tries to mimic this)
Haskell was released in 1990 and feels more modern than most "modern" languages.