Öğrenme deneyimi olarak basit ve statik olarak yazılmış işlevsel bir programlama dili tasarlıyorum.
Şimdiye kadar uyguladığım tip sisteminin, (biraz fazladan bir çalışma ile) kesişme ve sendika tipleri içerebileceği anlaşılıyor, örneğin:
<Union String Integer><Union Integer Foo>- Yukarıdaki iki türün kesişimi düz olacaktır
Integer - İki tür birliği olurdu
<Union String Integer Foo>
Bunun mümkün olması elbette gerekli değil, iyi bir tasarım fikri olduğu anlamına gelmez. Özellikle, türleri birbirinden ayırma ve / veya çakışmalarla ilgilenme konusundaki uygulama zorlukları konusunda biraz endişeliyim.
Bu özelliklerin tip sistemine dahil edilmesinin artıları / eksileri nelerdir?