Completely agree with your points, except the extensible bit.
I believe having a DSL with strict boundaries will make it easy for new users to grok than having to go through N pages of modules(/ libs / extensions) documentation and feeling overwhelmed.
Smaller DSLs that could be mix n matched depending on the problem at task might be a better fit.
Wait, I feel like I'm describing a std lib here...
Smaller DSLs that could be mix n matched depending on the problem at task might be a better fit.
Wait, I feel like I'm describing a std lib here...