Scala, Kotlin, Ceylon... let's start by being honest [Rant]
ochsenreither.posterous.com1 pointsby smcj-1 comments
val mass: Mass[Double] = 4.0 kg
val longMass: Mass[Long] = mass asLong
val length: Length[Int] = (5 m) * 3
val time: Time[Int] = 1 s
val doubleTime: Time[Int] = time + time
val temp: Temperature[BigDecimal] = BigDecimal("22.22") k
val speed: Speed[Int] = length / time
val area: Area[Int] = length * length
val volume: Volume[Int] = (23 m) * (1 m) * (1 m)
val smallVolume: Volume[Double] = (volume asDouble) / 12.0
val area2: Area[Int] = volume / (23 m)
val accel: Acceleration[Double] = (10.0 m) / ((2.0 s) * (1.0 s))
val accelNum: Double = accel toDouble
The type annotations are not needed, but helps undestanding the design.