A DSL enabling programmatic cascading style sheet generation for Pharo Smalltalk