On 26 Jul 2006 08:16:21 -0700, [EMAIL PROTECTED] wrote: >> E.g. try to extends or redefine builtin Python classes on fly. Ruby is so >> flexible that it can be used to create Domain-specific Programming >> Languages. > > This, of course, is really cool if you are working > all by yourself on a dissertation or something, > but can be completely disasterous if you are > actually working with other people who need to > know what the expressions of the programming > language mean and do.
This should not be problem in real life. Look at Ruby on Rails. This is excellent example of DSL in action. Rails uses customized Ruby to create very friendly web framework. So there is no possible to create such simple and friendly framework in other language than Ruby (and Smalltalk which has the same feature) Of course, I you like, you can freeze every object you want and nobody can be able to open and change it. You can also trace all activity for changing something to objects because Ruby has nice system hooks implemented. Ruby has nice security system (private, protected, public scopes for methods and attributes, objects freezing, system hooks). In past Python had Bastion module (http://www.python.org/doc/lib/module-Bastion.html) but it was rejected and now Python has nothing. Java guys can favor Ruby also because of its security. -- Jarosław Zabiełło http://blog.zabiello.com -- http://mail.python.org/mailman/listinfo/python-list