Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

F# has this concept of allowing units on numbers (http://msdn.microsoft.com/en-us/library/dd233243.aspx). So instead of just having "5" you could have "5 meters" or "5 dollars". It doesn't fundamentally change the number type, it just gives you some metadata to work with.

Making a subclass for every string type strikes me as being a bit heavy, since usually you don't necessarily want new string behavior, you just want to classify it and define conversions.

I think it would be neat if (with language support obviously) instead of overloading the class, you could instead just specify "units" for a string, and conversions between those units.



>Making a subclass for every string type strikes me as being a bit heavy, since usually you don't necessarily want new string behavior, you just want to classify it and define conversions.

Many languages can optimize such a construct away so that it only exists at compile time, or have another construct that declares "represented as type X, but treat it as a different type at compile time" (e.g. Haskell's newtype)




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: