Re[15]: Кому ваще этот С++ нужен?
От: Evgeny.Panasyuk Россия  
Дата: 01.06.15 12:17
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>Дополнения должны вызываться точно так же, как и основные методы, что бы не было никакой разницы с тз. синтаксиса.

EP>>1. Чем плоха эта разница?
I>Ломает полиморфизм.

Да, согласен, это главный аргумент за унификацию синтаксиса (только не обязательно в сторону "вызова через точку").

EP>>2. Почему внешние функции должны вызываться как внутренние, а не наоборот?

I>Смотри внимательно пример кода, там оба варианта.

Там оба варианта инфиксные, и нет синтаксиса вызова метода как обычной внешней функции — method(obj, x).

EP>>3. Extension методы работают только по первому параметру, в то время когда автодополнение возможно по любому — и в этом случае синтаксис "через точку" пролетает.

I>"через точку" это специальный случай

Я о том и говорю — что для общего случая оно не подходит.

EP>>P.S. Вот статья
Автор: Qbit86
Дата: 21.10.14
от Страуструпа на эту тему и обсуждение.

I>Так себе идея и здесь вроде как нет ничего про "автодополнение возможно по любому".

Синтаксис вызова ортогонален возможности дополнения. Разве что "точка" может служить триггером дополнения, а без неё будет специальный хоткей или таймер.

I>Гораздо полезнее сделать чтото навроде x `f` y


Это мало чем отличается от x.f(y). Да и как например расширить этот синтаксис на мультиметоды, или просто методы с несколькими параметрами?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.