typelevel / algebra

Experimental project to lay out basic algebra type classes
https://typelevel.org/algebra/
Other
378 stars 69 forks source link

Band is specialized on too much #90

Closed johnynek closed 8 years ago

johnynek commented 8 years ago

https://github.com/non/algebra/blob/master/core/src/main/scala/algebra/Band.scala#L10

we restricted later (to avoid code bloat) to Int, Long, Float, Double. Looks like we missed it on band. What should we do?

Dropping it will break binary compatibility, so we should decide soon. It would be nice to have a way to set this in one place or an easy way to grep for the specializations. There may be others we missed.

tixxit commented 8 years ago

Is now the time to set our policy regarding versioning and breaking binary compatibility? Is it fair to say that until we are 1.0, any minor version change may break binary compatilibity? For example, this change would be accepted in 0.4.0, but not 0.3.2.

johnynek commented 8 years ago

I would agree with fixing this in 0.4.0 (semver 0 prefix is kind of anything goes).

That said, especially for core, it would be good if that could reach 1.0.0 somewhat soonish.