jhass[m] has quit [Remote host closed the connection]
jhass[m] has joined #ruby
erb has joined #ruby
lfalcao has joined #ruby
<Aighearach>
It takes a long time to think in terms of mixins if you're used to OOP from other languages.
_axx9 has joined #ruby
rhe1 has joined #ruby
josephl_ has joined #ruby
Liothen_ has joined #ruby
KramerC_ has joined #ruby
KramerC has quit [Ping timeout: 264 seconds]
motherr_ has quit [Ping timeout: 264 seconds]
dorian has quit [Ping timeout: 264 seconds]
ule has quit [Ping timeout: 264 seconds]
josephl has quit [Ping timeout: 264 seconds]
ansimita has quit [Ping timeout: 264 seconds]
yosafbridge has quit [Read error: Connection reset by peer]
rhe has quit [Ping timeout: 264 seconds]
_axx has quit [Ping timeout: 264 seconds]
Liothen has quit [Ping timeout: 264 seconds]
_axx9 is now known as _axx
KramerC_ is now known as KramerC
josephl_ is now known as josephl
rhe1 is now known as rhe
Liothen_ is now known as Liothen
motherr has joined #ruby
ule has joined #ruby
dorian has joined #ruby
yosafbridge has joined #ruby
lfalcao has quit [Ping timeout: 264 seconds]
<nakilon>
isn't it basically just about the multiple inheritance?
<nakilon>
what's complex in ruby is all that mess with eugenclasses
<nakilon>
and 3149234 syntax to do the same thing about them
<nakilon>
*syntaxes
<Aighearach>
They may all start the same, but once you reassign a few methods they may do different things. They're each expected to do the Right Thing for the intended use case of that syntax. That's the beauty and power of Ruby; there is an expected use case, but it isn't enforced.
<Aighearach>
The important thing is, don't learn any of that stuff. You might use it. You don't need it.
<nakilon>
most of the use cases of metaprogramming are about to consufe the user and make it undebuggable
<Aighearach>
I believe in my mixins, I trust the user of my classes and modules. Usually it is me, after all.