From: Mathieu Bouchard Date: 2003-06-25T09:33:06+09:00 Subject: Re: Copying RVALUE On Sun, 22 Jun 2003, ts wrote: > >>>>> "M" == Mathieu Bouchard writes: > M> 1. what does "dangerous" means to you, and how would i tell between such > It was easy to crash any script written in ruby It's already easy to crash anything. Quite every powerful feature can be misused. > M> danger and the most "dangerous" features of ruby; and > What is the most dangerous features of ruby, for you ? The most misuse-able features of Ruby seem to be things like redefining every damn functionality of the system by mere use of class/def. Then there is also instance_eval{} that violates encapsulation, and then there is eval"" that parses code at runtime. Usage of such features is also frowned upon as bad design, or Wrong, by several religions. "eval is evil". Then Module#include is dangerous because it's multiple-inheritance in disguise, and multiple-inheritance is a deadly sin according to Javaism, as carved into the stone tablets that Gosling brought down from mount Sun-ai. And then calling super from a module that has no supermodule was what prompted the deluge in the first place. Then I've been told recently that use of MetaRuby's abstract containers is bad design (as it is too reminescent of PERL), so that must be a dangerous capability, ... Thou Shalt Not Carve Classes In The Shape Of The Built-In Ones. This is not in Ruby per se, but Ruby's operator overloading is what tempted me, so it must be a sinful feature by itself. We Will All Burn In Hell (TM) ________________________________________________________________ Mathieu Bouchard http://artengine.ca/matju