Мнимые ошибки PascalABC.NET

Здравствуйте! Это ошибка или PascalABC Net специально запускает только сам открытый проект, причем даже если активным файлом назначить и другой файл (не файл проекта)?

и что это?

Это пример неумения общаться. В частности, сваливания своих ошибок на то - что не контролируешь, потому что так проще.

Я это даже скачивать не стану. По стилю - словно тебе в почтовый ящик мимоходом какой-то пакет закинули без надписи даже.

Я уже устал переносить такое в мнимые ошибки

Заведите ветку Trash Collection - и туда )))

Некоторы особенности компилятора, которые не отражены здесь - http://pascalabc.net/downloads/pabcnethelp/index.htm?page=Common/PABCNETvsDelphi.html

Параметры по умолчанию определяются через := , а в Delphi через = Указано только “Инициализация переменных: var a: integer := 1;”

После окончания цикла for i := 1 to 10 do у Delphi будет i=11 , а в pascalabc.net будет 10. Так что глюкокод, использующий значение i работать не будет при переносе.

Глюкокод не имеет права на перенос с 1 языка на другой. Нечего плодить легаси коды! Если уже есть необходимость перейти на другой язык - всегда лучше будет сразу и переписать.

1 лайк

Ну тут можно только посочувствовать.

На FPC всё правильно:

var
    i: integer;

begin
    for i := 1 to 10 do;
    writeln('Значение i после цикла: ', i);
end.
Значение i после цикла: 10

Код, который за пределами цикла использует параметр этого цикла - это не глюкокод, это (если пользоваться эвфемизмом) дерьмокод. В лаборатории, где я работал по окончании вуза, при входе висела табличка: “Если Вам нечего делать, не занимайтесь этим у нас”. Хорошая фраза, полезно вспоминать почаще. Вот переносить программу в “правильный” PascalАВС.NЕТ из других языков, позволяющих заниматься волюнтаризмом - это тоже из разряда “нечего делать”. Ну, т.е. если Вы себе занятие ищете - Ваше право, но вряд ли Вы у нас добьетесь в этом вопросе понимания. Мы с удовольствием пытаемся отвечать на вопросы, но не такие, вроде “Доктор, я что-то съел несвежее и теперь мне плохо…”

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

Никогда не ешьте да свежее дерьмо.

Так PascalАВС.NЕТ вполне себе позволяет использовать i после окончания цикла. Так что вы вас получилась просто многословная отмазка, почему лень делать нормальную документацию отличия PascalАВС.NЕТ и почему нужно оставлять халтуру. Если это “у вас” (с какой стати вы кстати за всех посетителей форума говорите) вызывает не понимание, мне остаётся только посочувствовать. Можете и дальше думать, что PascalАВС.NЕТ набираете популярность по всему миру, а тут кто попало приходит , что что-попала говорят и мешают прогрессу.

Ну мы тут говорим об отличиях именно от Delphi и соответсветующей документации.

Документацию делает разработчик. Если Вы называете “халтурой” то, как написана документация, можете сделать лучше. Не нравится - не пользуйтесь, что за проблема?

Конкретно по поводу Вашего брюзжания, связанного с тем, что “не так, как в Дельфи и не описано” - так еще много чего вообще на описано, потому что говорить о прописных истинах практике и культуры программирования в Справке никто не будет. Для этого имеются достаточно обширные работы известных авторов. Никто не будет Вам расписывать в Справке, почему в программе плохо использовать goto и точно так же в программе плохо использовать внутреннюю переменную цикла за его пределами. Это давно уже каноны в программировании. Если семантика слова “канон” у Вас вызывает затруднения, загляните в словарик и посмотрите, чем он отличается от разрешения или прямого запрета.

Не за всех, а использовал множественное число, потому что авторы более ранних реплик фактически высказались о том же, только в иной форме.

А зачем как-то особо отмечать, чем PascalABC.NET отличается от Дельфи? Они что, близнецы? Или найдите отличия на двух картинках?

1 лайк

Позволяет. Ради совместимости.

Но: Как сказал RAlex - в справке не написано потому что это не то место. Вместо этого выдаёт предупреждение, в котором ясно говорится что правильно описывать переменную цикла прямо в цикле.

Разработчики почему то очень боятся огорчить дельфистов. А последние тем временем…

1 лайк

Дельфистов уже давно и сильно обидели. А о нашем глубочайшем сочувствии к ним они никогда и не узнают. Кто жалеет других, потом сам сильно пожалеет.