colah/ImplicitCAD — pull request #75 by bgamari (2012-11-24 05:23:13+00:00)
Title: Revamp vector representation

Here is the change to `vector-space` we discussed earlier (along with the mirror patches). The change comes in two parts: first I drop `SaneOperators` and move instead to `vector-space`. The second patch draws a distinction between points (living in a space with affine structure) and vectors (living in a `VectorSpace`). This adds a bit of noise but allows for some very nice, safe combinators. On the whole, I think this distinction is well worth the minimal cost. I hope you will agree.

Unfortunately, collectively the set is pretty intrusive, as can be expected. For this reason, it would be nice if we could discuss this soon as maintenance will quickly become difficult. Given that you and @matthewSorensen have been responsible for most of the commits recently, I hope there won't be too many conflicts in outstanding changes. I do wish it were possible to do this a bit more incrementally, but sadly I think the pain is least if we just run with a clean break.