Index: libcfa/src/vector.hfa
===================================================================
--- libcfa/src/vector.hfa	(revision 9a83ccd6ddb602af37aa354436dcee1ac6731ccb)
+++ libcfa/src/vector.hfa	(revision 44f41997f4700a1ebb0f2d4e4d0805fe222483da)
@@ -29,4 +29,10 @@
     return [u.x - v.x, u.y - v.y];
 }
+vec2 ?*?(const vec2& v, float scalar) with (v) {
+    return [x * scalar, y * scalar];
+}
+vec2 ?/?(const vec2& v, float scalar) with (v) {
+    return [x / scalar, y / scalar];
+}
 
 /* //---------------------- Geometric Functions ---------------------- */
@@ -40,2 +46,14 @@
    return sqrt(dot(v, v));
 }
+
+// Returns the distance betwwen v1 and v2, i.e., length(p0 - p1).
+static inline float distance(const vec2& v1, const vec2& v2) {
+    return length(v1 - v2);
+}
+
+static inline vec2 normalize(const vec2& v) {
+    // TODO(dkobets) -- show them inversesqrt
+    // https://github.com/g-truc/glm/blob/269ae641283426f7f84116f2fe333472b9c914c9/glm/detail/func_exponential.inl
+    /* return v * inversesqrt(dot(v, v)); */
+    return v / sqrt(dot(v, v));
+}
