ChatsYapsForumsTopicsWatchFeedsDecksChartsChatsYapsForumsTopicsWatchFeedsDecksCharts
Log inRegister

Log in to follow channels.

Log in to follow topics.

Log in to see your friends.

elixirlang

Forum post

Properly defining Erlang lists

·55m

arXiv.org

Properly defining Erlang lists

We define list types, distinguishing proper lists, which end in the empty list, from improper lists, which may end in any value. Both are encoded as recursive types of cons cells, implemented in etylizer. This work found one OTP compiler bug. We propose a one-line sound improvement to Dialyzer's list handling that finds six instances of dead code in the OTP code base. We compare BEAM VM type checkers and catalogue how other languages design lists and cons cells.

1

0 comments