Enhanced C#
Language of your choice: library documentation

This interface exists to work around a limitation of C#; use IPoint<T> instead. More...
This interface exists to work around a limitation of C#; use IPoint<T> instead.
C# cannot combine a getter property and a setter property from two interfaces, so this interface cannot inherit its getters from IPointReader<T>. The workaround is to define another getter in the readwrite interface for each getter in the readonly interface. As far as the CLR is concerned, the two getters are unrelated, but you won't notice that unless you need to explicitly implement this interface.
Properties  
new T  X [get, set] 
Horizontal coordinate of a point or vector. More...  
new T  Y [get, set] 
Vertical coordinate of a point or vector. More...  
Properties inherited from Loyc.Geometry.IPointReader< T >  
T  X [get] 
T  Y [get] 

getset 
Horizontal coordinate of a point or vector.
In geographic points, X represents the longitude.
Referenced by Loyc.Geometry.PointExt.Divide< T, M >(), Loyc.Geometry.PointExt.MulDiv< T, M >(), Loyc.Geometry.PointExt.Multiply< T, M >(), Loyc.Geometry.PointExt.Rot90< T, M >(), Loyc.Geometry.PointExt.ShiftLeft< T, M >(), Loyc.Geometry.PointExt.ShiftRight< T, M >(), and Loyc.Geometry.PointExt.Subtract< T, M >().

getset 
Vertical coordinate of a point or vector.
In 3D spaces, Y is sometimes used as a depth coordinate instead. In geographic points, Y represents the latitude.
Referenced by Loyc.Geometry.PointExt.Divide< T, M >(), Loyc.Geometry.PointExt.MulDiv< T, M >(), Loyc.Geometry.PointExt.Multiply< T, M >(), Loyc.Geometry.PointExt.ShiftLeft< T, M >(), Loyc.Geometry.PointExt.ShiftRight< T, M >(), and Loyc.Geometry.PointExt.Subtract< T, M >().