Eu não sei de nada que possa fazer o que você quer e seria muito trabalhoso construir algo. Para começar, você teria que construir um compilador, usando yacc ou algo assim, para analisar seus comandos e então passá-los para outro código para realmente fazer as transformações.
XLST pode funcionar, mas duvido. Ele está no topo do XML e HTML é uma linguagem de marcação muito irregular para caber dentro dessa sintaxe rígida: especialmente se você começar a colocar o CSS em cima dele.
Eu usaria a biblioteca Perl HTML :: Parser (ou talvez um de seus amigos na árvore de módulos HTML se eles tem uma ferramenta especializada para uma tarefa comum sua). Ele analisa documentos HTML em uma pequena árvore de banco de dados interna e, em seguida, você pode manipulá-los e descartá-los. Eu uso o tempo todo para fazer coisas como: livrar-se de todas as tags e conteúdos do iframe ; livrar-se de todas tags HTML, mas imprima algo próximo da formatação pretendida em texto simples; e realmente complexos screen scraper engines.
É muito simples de usar e faz todo o trabalho pesado para você. Veja a página do CPAN para exemplos. A distribuição também vem com mais exemplos para fazer coisas como remover certas tags / elementos e / ou atributos.
Lembre-se que na época da Idade da Pedra Perl dominava a Web e estava mais preocupado em lançar HTML para que os Perl Monks estivessem aperfeiçoando suas ferramentas de HTML por décadas.