"дзвінка система типів" це що за термін?
soundness з англійської це чіткий, логічний, корректний. В данному випадку правильний термін скоріш корректна система типів. Випливає з її суті - корректна система типів відкидає всі некорректні (з точки зору типів) програми.
null-safety не відноситься до sound type system. Це просто елемент який підтримується на рівні системи типів. Наприклад java не null-safe не т ому що система типів не sound, вона sound. Просто java не підтримує цю фішку. Іноді кажуть sound null-safety. Але це не про sound type system.
Референси вкрали з ocaml але не докінця, ному немає розіменування референсу
let x = ref(5)
!x
--> 5