3 ms·
How so? Rubygems is just a distribution and packaging system; it doesn't do anything special as regards changing the APIs of Ruby's core objects. Ill-considered
by ionfish 18y ago
How so? Rubygems is just a distribution and packaging system; it doesn't do anything special as regards changing the APIs of Ruby's core objects. Ill-considered metaprogramming can be carried out in Ruby regardless of how the code gets loaded.
- delano 18y agoThe line that I was specifically referring is, Honestly, I'd probably be too afraid to ever install a gem. When you use any packaging system (rubygems, apt-get, cpan), the convenience usually comes at the price of control. In other words, it's very difficult to mix a packaging system with another packaging system or manual installations. Ill-considered metaprogramming can be carried out in Ruby regardless of how the code gets loaded. It's true, but with a packaging system you have little control over dependencies so it's difficult to understand the quality of the code you're using. When you install libraries manually, you know specifically what you have on your system and you have the option to not use a library that has a troublesome dependency. A packing system is not going to prevent ill-considered metaprogramming. But if you have the choice, why would you include an ill-considered library in to your project?