apply DSL to extension block differently in Opal