Здравствуйте, _nn_, Вы писали:
__>Компилятор разрешает в первом указании типа не писать ".", однако во втором и в третьем случае обязывает.
Можно. Заставить писать точку всегда.
__>Можно ли улучшить эту ситуацию?
__>Например, введя дополнительные эвристики:
__>__>В выражении A[B](...), ежели A и B типы, и A обобщенный тип, то это выражение трактуется как A.[B](...).
__>
Какая это эвристика? Это попытка разрешения неоднозначности за счет типизации.
ЗЫ
Главное что все это фиг не нужно никому. Просто не нужно явно указывать параметры типов и все. Компилятор и так все отлично выводит.
Тратить время на эту фигню просто не целесообразно.