The following issues with the implementations are known and will not be fixed, in order to keep the code simple. (1) It is currently possible to redefine variables, types, and constructors. This might lead to incorrect behaviour with pattern matching and type checking. (2) Type inference does not work for records. You have to declare the types of all record variables. (3) Type checking does not work correctly for mutable values with polymorphic type.