Hacker News new | ask | show | jobs
by wickedshimmy 3797 days ago
Value classes serve this purpose in Scala: `case class Id(id: Long) extends AnyVal` will have long-typed values at runtime (*mostly).
1 comments

Is *mostly even true?

Given the list of restrictions here: http://docs.scala-lang.org/overviews/core/value-classes.html

It seems to me that you'd have to be fairly careful to have any confidence your not instantiating classes for them.

Do you know if there are any compiler flags or other way to know if your value classes are working as expected?