def method_missing(name, *args) puts "<#{name}>#{args[0]}" yield if block_given? puts "" end html do body do h1 "My internal DSL" div do span "HTML generation engine in 4 lines" ul do li "take a look at Markaby" li "at least once" li "for some more ideas" end end end end