I always knew that one day Smalltalk would replace Java.Если совсем вкратце, суть языка Smalltalk состоит в том, что:
I just didn't know it would be called Ruby.
—Kent Beck
- всё, что ни есть — объект, числа и строки в том числе;
- объектам можно посылать произвольные сообщения, а уж что эти объекты будут с ними делать — на их усмотрение. Сообщение, как нетрудно догадаться, — тоже объект.
-5.send :abs => 5 51.send :gcd, 34 => 17 7.send :send, :+, 24 => 33Сообщение — это объект класса Symbol; в коде он начинается с двоеточия. В качестве аргументов send посылаются сообщение и необходимые аргументы. Заметьте, что в последнем примере отсылается сам :send, и, вообще говоря, цепочка :send-ов перед параметрами может быть любой длины :-)
Однако как эти свойства можно применить на практике?