Замечания и предложения

Мы и var редко используем.

Что же касается студентов, то при обучении их C# да - рассказываем, потому что там это есть. Ещё раз скажу - хорошая штука, но не первостепенная, и на 100% я не уверен, что её надо делать в PascalABC.NET.

У нас есть много других задумок от простых до весьма сложных, совершенно разного уровня, которые я предпочел бы реализовывать в первую и вторую и даже в третью очередь. Жизнь жалко только одна.

1 лайк

Но разработчиков может быть много. :slight_smile: И Ваше дело могут продолжить.

Я это понимаю и именно поэтому написал:

Никто не обязывает Вас делать на днях. Ведь можете через месяц, год, позже. А можете и удалить Issue. Так?

Мы ждем этого момента. Тут еще не хватает сообщества дееспособных учителей-преподавателей, которые будут заказчиками и обсуждать новые идеи.

Обращу внимание, что возможность разрабатывать язык программирования и его библиотеки так как это нужно в процессе обучения - ну, я не знаю другого такого проекта. Кумир конечно, но он сильно устарел. Он застрял где-то в конце 80-х.

1 лайк

Ну и правильно, почему не сделать, если человек хочет? Мало ли, что мне, к примеру, это не неинтересно - я ведь не заказчик этого проекта, а такой же, как и все, рядовой пользователь.

2 лайка

Я вот чего не пойму. Ключевое слово out указывается в заголовке подпрограммы. Оно, как Вы пишете, призвано напомнить человеку что-то присвоить переменной. Какому человеку? Самому себе? Ведь в подпрограмме, где указывается out, больше никто не роется, кроме ее автора. Ну зачем рассчитывать, что у 0.001% программистов может оказаться болезнь Альцгеймера?

1 лайк

Почему Вы так считаете? К примеру, есть же командная разработка. Разве не может понадобиться одному программисту прочесть или подкорректировать код другого?

В этом, достаточно нетипичном случае, можно просто написать комментарий))) Ниша языка определена, как учебного. Какая командная разработка, вы о чем?

@Admin, до какого уровня программирования Вы обучаете учеников на PascalABC.Net? Под уровнем я имею ввиду саму сложную тему, которую Вы проходите с учащимися касаемо языка PascalABC.Net. (например, массивы, ООП, лямбды и т.д.).

Что же Вы так невнимательны? Лежит же тут на форуме документ

1 лайк

Благодарю. Вопрос снят.

На мой взгляд, код должен документироваться в любом случае. И делаться это должно правильно (раздел Плохие комментарии). Учеников надо приучать к этому сразу. Привыкают потом писать комментарии в стиле:

«что делается в этих строках»

, а этого быть не должно. Переучиваться сложнее.

Вот как раз правильно и будет напомнить о присваивании и заодно пометить, почему это так важно. И тогда зачем out?

Почему я хочу out я выше объяснял. Однако, так как опрос показывает отрицательные результаты - большинство не хотят введения его в язык, то я, пожалуй, не стану об этом больше напоминать, а оставлю это на желание разработчиков - они решат вводить или нет. Их право.

1 лайк

Так Вам же разработчик ответил - будет нечем больше заняться, может и сделают. Я-то спрашиваю чисто из желания понять - ЗАЧЕМ? И пока никак не могу увидеть этой надобности.

И хорошо. :slight_smile: Этот вопрос, считайте, закрыт.

procedure F() := exit;

begin
  var a := Rec(procedure() -> exit, procedure() -> exit); // (T1, T2)
  var b := Rec(F, F); // (T1, T2)
  Writeln($'a.GetType() = {a.GetType()}, b.GetType() = {b.GetType()}'); // a.GetType() = System.Tuple`2[Program5.$delegate14,Program5.$delegate15], b.GetType() = System.Tuple`2[Program5.$delegate16,Program5.$delegate17]
end.

На мой взгляд, не совсем корректно intellisence отображает типы a и b. Что, на Ваш взгляд, было бы правильно отображать на месте T1, T2?

Да, похоже это забыли реализовать как было с #983, сделайте новую issue в стиле enhancement.

Предлагаю ввести в язык внутриблочные константы такого вида:

Public Procedure My();
Begin
  Var a: Int32;
  Const Pi: Double = 3.1415;
End;

За(По сути, всё то же самое, что и во внутриблочных переменных):

  1. Нет необходимости замусоривать пространство между объявлением метода и его реализацией.
  2. Константы имеют локальное значение.

Против:

  1. Несостыковка со стандартным синтаксисом.
  • За
  • Против

0 голосов

1 лайк

Раз уж это взрослый форум, то почему бы утверждения не дополнять разумным обоснованием – “А почему именно так?”