Сразу оговорюсь, что скорей всего эта тема не заинтересует поклонников квази-ооп.
Начал пилить язык, и задумался вот о какой вещи.
У нас все есть объект. Сообщение — тоже объект. Тогда зачем, выделять сообщения в отдельную сущность? Ведь мы можем считать, что объект в качестве сообщения получает другой объект, любого типа. При этом, он может в своей реализации (поведении) что-то делать с этим полученным объектом, либо делать что-то связанное с этим объектом, либо вообще что-то другое. С этой точки зрения, отдельный тип «сообщение», в каком бы то ни было виде, кажется лишним. Собственно, в качестве сообщений обычно используются различные вариации строковых данных. Тут присутствует семантика «символ - значение», где символ — это вариант типа «строка», или что-то близкое этому. Как бы имя слота — это некий мост между сообщением и поведением. Что если снять это ограничение?
Следствием такого решения как мне видится, должно стать разрешение использования в качестве ключей/имен слотов объекты произвольного типа. Могут ли возникнуть какие то трудности в подобной реализации?