Are you sure you want to be using the view bound `<:<` here? It means that there's a conversion from M to GeneralizedLinearModel. If you just want M to be a subtype of GeneralizedLinearModel, you can just do
```
abstract class GeneralizedLinearAlgorithm[M <: GeneralizedLinearModel] {
  ...
}
```