C must have exactly one parameter, which is marked with val and which has public accessibility. The type of that parameter (e.g. U above) is called the underlying type of
(docs.scala-lang.org/sips/pending/value-classes.html)
Es gibt ja noch das Typsystem über das zusätzliche Informationen modelliert werden können. Wobei ich mit der momentanen Umsetzung von Value-Typen in Scala auch nicht sonderlich zufrieden bin.Geld hat für mich 2 Parameter und zwar den Wert und eine Währung und trotzdem ist Geld ein Value-Type. Eine Sprache muss nicht selbst alles abbilden können, sie muss Mittel bieten um alle Dinge abbilden zu können.
Value-Typen lassen sich schlecht über eine Bibliothek modellieren. Vllt. wären Annotations eine Alternative gewesen, wobei die auch nicht generalisiert und somit nur über Compiler-Magic statt mit Sprachfeatures zu realisieren sind. Meine Hoffnungen beruhen mehr auf Makros, mit denen es irgendwann vllt. möglich ist viele Dinge zu generalisieren.Das Gefühl, was Sprache sein sollte, Kern-API oder zusätzliche Bibliothek verlieren die Scala-Entwickler meiner Meinung nach.