Other softwares seem to support a lot more penalties such as sparse group lasso (l1 + l2), MCP, SCAD. Think about how to abstract out penalty and constraints. This is tricky because a constraint class currently dictates how to perform the block-update, but it hard-codes the penalty to be elastic net.
Nice to haves:
[ ] The constraint classes should not be so tied to the penalty type.
Other softwares seem to support a lot more penalties such as sparse group lasso (l1 + l2), MCP, SCAD. Think about how to abstract out penalty and constraints. This is tricky because a constraint class currently dictates how to perform the block-update, but it hard-codes the penalty to be elastic net.
Nice to haves:
API:
penalty
and aconstraint
whether there exists a block-update function given these two.