Alright then, what if the architectural style one wants is type-level metaprogramming? Or even just having a rich type system with inference, like Haskell? Can objective-S do that? What about monads, typeclasses, etc. which are arguably pretty extensible and DSL-y too (see Xmonad for example)?
If not, maybe this whole definition of "general purpose" is just meaningless.
If not, maybe this whole definition of "general purpose" is just meaningless.