Refinements

Ciao a tutti,
dopo l’uscita di Ruby 2.0 mi sono finalmente riuscito ad avvicinare ai
refinements.
Dopo essermi letto gli articoli di Katz e il rebuttal di Nutter,
confermo i miei dubbi iniziali.

Faccio una domanda un po’ naive e poi ci lavoro sopra: a cosa servono i
refinements? I moduli non erano simpatici abbastanza?

Il problema principale (che coinvolge per una minima parte della
community) che i refinement sono inutili in situazione di concorrenza,
se non addirittura deleteri. La possibilit, di fatto, di cambiare un
blocco a runtime che rendono disponibile l’esatto contrario di una
architettura concorrente sensata.

La gestione del loro scoping inoltre oltremodo confusa, piuttosto
facile creare situazioni in cui il metodo refined non funziona o altera
funzionalit core.

A me sembra che si sia semplicemente cercato di codificare il
monkey-patching, che comunque una pratica pessima da adottare a meno
che non si sia costretti.
Che ne dite?

PS. non un post da “old geezer”, non sono il tipo, che proprio non
capisco.


Luca P.
[email protected]

Il 11 marzo 2013 11:26, Luca P. [email protected] ha
scritto:

Ciao a tutti,
dopo l’uscita di Ruby 2.0 mi sono finalmente riuscito ad avvicinare ai
refinements.
Dopo essermi letto gli articoli di Katz e il rebuttal di Nutter, confermo i miei
dubbi iniziali.

[…]

PS. non un post da “old geezer”, non sono il tipo, che proprio non capisco.

non credo che fugher tutti i tuoi dubbi, ma questo a me ha chiarito
parecchio le idee:
http://confreaks.com/videos/1275-rubyconf2012-ruby-2-0-on-rails

michele.

On Mar 11, 2013, at 11:26 AM, Luca P. wrote:

A me sembra che si sia semplicemente cercato di codificare il monkey-patching,
che comunque una pratica pessima da adottare a meno che non si sia costretti.
Che ne dite?

Come dici tu, a volte si e’ costretti. in questi casi, poter confinare
ill mio patch in un modulo non e’ cosa bella?

Ciao

D