Listing posts tagged with "elixir"

Type systems are leaky abstractions: the case of Map.take!/2

Adding a type system to an existing dynamic language is a great exercise in showing all of the different ways type systems restrict the expressive power of programming languages. In this article, we will discuss one of said examples by exploring a potential `Map.take!/2` function as part of Elixir's standard library.

Data evolution with set-theoretic types

We explore how set-theoretic types could address how many statically typed languages do not allow libraries to evolve their public data definitions in a backwards compatible manner. The proposed solution aims to be automatically verified by the compiler and type safe.