Информация об изменениях

Сообщение Re[5]: Двоеточие от 25.12.2019 22:04

Изменено 25.12.2019 22:15 alexzzzz

Re[5]: Двоеточие
Здравствуйте, Qbit86, Вы писали:

Q>Такая нотация принята везде (кроме нескольких Си-подобных языков), включая теоретическую информатику. Она вполне естественная. Это не «из Паскаля».


Этот стиль мне кажется противоестественным.

Вот в этом
var someVariable, someOtherVariable, oneMoreVariable: SomeType;

против
SomeType someVariable, someOtherVariable, oneMoreVariable;

1) Var лишнее, не сообщает дополнительной информации. Не припомню, чтобы в Си-подобных объявления переменных приходилось путать с чем-то другим.
2) Переменных потенциально может быть много, а что они из себя представляют, указывается в самом в конце перечисления.
3) Двоеточие — а) визуальный мусор; б) лишний символ, который надо набирать с шифтом; в) непонятно, зачем отделять переменную (или несколько) от их неотъемлемого свойства — типа. Ощущение, будто переменные через запятую сами по себе, а тип сам по себе, друг к другу не имеют отношения. Двоеточие — "более разделительный" символ, чем запятая.

Если в языке так объявляются переменные, то объявления функций тоже обычно стрёмные (условный пример):
function GetLength(x: float, y: float, z: float): float

1) Не несущее полезной нагрузки слово function (или его аналог) ставят на самом видном месте и оно обязательно.
2) А возвращаемый тип, который как раз полезен, задвинут куда-то подальше от имени функции, а то и вовсе опционален — иди сам ищи, что она возвращает.

Я не вижу логики, зачем так делают.
Re[5]: Двоеточие
Здравствуйте, Qbit86, Вы писали:

Q>Такая нотация принята везде (кроме нескольких Си-подобных языков), включая теоретическую информатику. Она вполне естественная. Это не «из Паскаля».


Этот стиль мне кажется противоестественным.

Вот в этом
var someVariable, someOtherVariable, oneMoreVariable: SomeType;

против
SomeType someVariable, someOtherVariable, oneMoreVariable;

1) Var лишнее, не сообщает дополнительной информации. Не припомню, чтобы в Си-подобных объявления переменных приходилось путать с чем-то другим.
2) Переменных потенциально может быть много, а что они из себя представляют, указывается в самом в конце перечисления.
3) Двоеточие — а) визуальный мусор; б) лишний символ, который надо набирать с шифтом; в) непонятно, зачем отделять переменную (или несколько) от их неотъемлемого свойства — типа. Ощущение, будто переменные через запятую сами по себе, а тип сам по себе, друг к другу не имеют отношения. Двоеточие — "более разделительный" символ, чем запятая.

Если в языке так объявляются переменные, то объявления функций тоже обычно стрёмные (условный пример):
function GetLength(x: float, y: float, z: float): float

1) Не несущее полезной нагрузки слово function (или его аналог) ставят на самом видном месте и оно обязательно.
2) А возвращаемый тип, который как раз полезен, задвинут куда-то подальше от имени функции, а то и вовсе опционален — иди сам ищи, что она возвращает.

Я не вижу логики, зачем так делают.

Предполагаю, что только лишь затем, чтобы типы можно было не писать вообще. В результате, без типов оно выглядит нормально, а с типами страшненько и неудобно. Для слаботипизированных языков сойдёт, но например Расту подобный синтаксис нафига?