JavaFree.org | RubyOnBr.org

metaprogramação

Acompanhar metaprogramação 7 posts, 6 participantes

Avatar excel 3 posts

Ruby tem duas coisas que melam a vida de quem quer fazer metaprogramação mais hardcode. Não existe como sobrescrever o mecanismo de resolução de nomes e tão pouco como definir escopos no qual alterações a classes acontecem.

O que é possivel para contornar tal afirmação ?

Att.
Excel

 
Avatar antonio 196 posts

Perdoe-me, eu não entendi muito bem a sua questão, poderia recoloca-la?

 
Avatar Daniel Gatis 158 posts

Perdoe-me, eu não entendi muito bem a sua questão, poderia recoloca-la?

Melhor ainda poderia da um exemplo prático dessas limitações.

 
Avatar Neves 162 posts

Quanto a resolução de nomes, acho que method_missing e const_missing da pro gasto.
Realmente o Ruby não suporta modificações com escopo limitado, mas é possível utilizar algumas técnicas para minimizar este problema.
O Matz disse que este é o sonho dele e gostaria de ver implementado no Ruby 2.0
Eu também acho que será algo mais seguro.

 
Avatar Fabio Kung 16 posts

Ruby tem duas coisas que melam a vida de quem quer fazer metaprogramação mais hardcode. Não existe como sobrescrever o mecanismo de resolução de nomes e tão pouco como definir escopos no qual alterações a classes acontecem.
Isso poderia ser afirmado ?
Att. Excel

Tenha mais criatividade ao copiar as pessoas:
http://www.guj.com.br/posts/list/82963.java#446077

Podia ao menos, citar a fonte.

 
Avatar Rodrigo Kumpera 1 post

Ruby tem duas coisas que melam a vida de quem quer fazer metaprogramação mais hardcode. Não existe como sobrescrever o mecanismo de resolução de nomes e tão pouco como definir escopos no qual alterações a classes acontecem.

Excel, qual o sentido de sair copiando aquilo que as pessoas falam as esmo? Ainda mais sem citar a fonte.

Neves, Ruby não permite metaprogramação da resolução de nomes e bindings, contra isso não tem muito o que fazer senão modificar o core da linguagem, infelizmente.

 
Avatar excel 3 posts

“A sociedade prepara o crime, o criminoso o comete”