Сообщение Re: Никогда не недооценивайте силу по умолчанию от 11.09.2022 13:10
Изменено 11.09.2022 13:24 vsb
Re: Никогда не недооценивайте силу по умолчанию
Здравствуйте, Caracrist, Вы писали:
C>Однако, иногда нужны были бы модификаторы. Вопрос такой, какое поведение вы выбрали по умолчанию, а какое с модификатором из следующих категорий?
C>Константность:
C>const / mutable
const. Параметры функций не могут быть mutable вообще. А скорей я бы отказался от отдельного ключевого слова для объявления переменной, переменная объявляется сама при первом упоминании.
C>Асинхронность:
C>sync / async
В JS сделано нормально, ничего бы не стал менять. Если язык не низкоуровневый, скорей всего выбрал бы вариант с зелеными потоками и отказ от async-конструкций в принципе.
C>Виртуальность:
C>virtual / direct
Отказался бы от наследования классов, поэтому вопрос смысла не имеет.
C>Передача:
C>ref / value
value, ref в языке не нужен.
C>Видимость:
C>public / private / ...
В интерфейсах всё public, в классах всё private, менять это нельзя.
C>Однако, иногда нужны были бы модификаторы. Вопрос такой, какое поведение вы выбрали по умолчанию, а какое с модификатором из следующих категорий?
C>Константность:
C>const / mutable
const. Параметры функций не могут быть mutable вообще. А скорей я бы отказался от отдельного ключевого слова для объявления переменной, переменная объявляется сама при первом упоминании.
C>Асинхронность:
C>sync / async
В JS сделано нормально, ничего бы не стал менять. Если язык не низкоуровневый, скорей всего выбрал бы вариант с зелеными потоками и отказ от async-конструкций в принципе.
C>Виртуальность:
C>virtual / direct
Отказался бы от наследования классов, поэтому вопрос смысла не имеет.
C>Передача:
C>ref / value
value, ref в языке не нужен.
C>Видимость:
C>public / private / ...
В интерфейсах всё public, в классах всё private, менять это нельзя.
Re: Никогда не недооценивайте силу по умолчанию
Здравствуйте, Caracrist, Вы писали:
C>Однако, иногда нужны были бы модификаторы. Вопрос такой, какое поведение вы выбрали по умолчанию, а какое с модификатором из следующих категорий?
C>Константность:
C>const / mutable
const. Параметры функций не могут быть mutable вообще. А скорей я бы отказался от отдельного ключевого слова для объявления переменной, переменная объявляется сама при первом упоминании.
C>Асинхронность:
C>sync / async
В JS сделано нормально, ничего бы не стал менять. Если язык не низкоуровневый, скорей всего выбрал бы вариант с зелеными потоками и отказ от async-конструкций в принципе.
C>Виртуальность:
C>virtual / direct
Отказался бы от наследования классов, поэтому вопрос смысла не имеет.
C>Передача:
C>ref / value
value, ref в языке не нужен.
C>Видимость:
C>public / private / ...
В интерфейсах всё public, в классах всё private (точней package-private), менять это нельзя.
C>Однако, иногда нужны были бы модификаторы. Вопрос такой, какое поведение вы выбрали по умолчанию, а какое с модификатором из следующих категорий?
C>Константность:
C>const / mutable
const. Параметры функций не могут быть mutable вообще. А скорей я бы отказался от отдельного ключевого слова для объявления переменной, переменная объявляется сама при первом упоминании.
C>Асинхронность:
C>sync / async
В JS сделано нормально, ничего бы не стал менять. Если язык не низкоуровневый, скорей всего выбрал бы вариант с зелеными потоками и отказ от async-конструкций в принципе.
C>Виртуальность:
C>virtual / direct
Отказался бы от наследования классов, поэтому вопрос смысла не имеет.
C>Передача:
C>ref / value
value, ref в языке не нужен.
C>Видимость:
C>public / private / ...
В интерфейсах всё public, в классах всё private (точней package-private), менять это нельзя.