Alguém está usando meta-meta-classes / meta-meta-meta-classes em Python / outras línguas?

Eu descobri recentemente metaclasses em python.

Basicamente, uma metaclasse em python é uma classe que cria uma classe. Há muitas razões úteis pelas quais você deseja fazer isso - qualquer tipo de inicialização de classe, por exemplo. Registrando aulas em fábricas, validação complexa de atributos, alterando como a herança funciona etc. Tudo isso se torna não apenas possível, mas simples.

Mas, em python, as metaclasses também são classes simples. Então, comecei a me perguntar se a abstração poderia ser útil, e parece-me que pode e que:

uma metaclasse corresponde ou implementa uma função em um padrão (como nas linguagens de padrão do GOF).uma meta-metaclasse é o próprio padrão (se permitirmos criar tuplas de classes representando papéis abstratos, em vez de apenas uma classe)uma meta-meta-metaclasse é umafábrica de padrões, que corresponde aos agrupamentos de padrões GOF, por exemplo Criador, Estrutural, Comportamental. Uma fábrica em que você poderia descrever um caso de um certo tipo de problema e forneceria um conjunto de classes que o solucionariam.uma meta-meta-meta-metaclasse (tanto quanto eu poderia ir), é umafábrica de padrão, uma fábrica para a qual você talvez possa descrever o tipo do seu problema e isso lhe daria uma fábrica de padrões para perguntar.

Eu encontrei algumas coisas sobre isso online, mas a maioria não é muito útil. Um problema é que idiomas diferentes definem as metaclasses de maneira ligeiramente diferente.

Alguém já usou metaclasses como esta em python / em outros lugares, ou viu isso ser usado em estado selvagem ou pensou nisso? Quais são os análogos em outros idiomas? Por exemplo. em C ++, qual a profundidade da recursão do modelo?

Eu gostaria muito de pesquisar mais.

questionAnswers(5)

yourAnswerToTheQuestion