Ага, а если как на Роквеллах, где катушка не просто включается выключается, а ее можно в любом месте установить в 1 а в любом другом скинуть. Плюс еще прямое управление ,по классике. И какой нибудь дебил, решивший, что а удобно же! и дрочит этот сраный коил из десятка модулей с кучи разных мест.
Комментарии: 22
Aleksandr
Из бесячего вспомнил на линиях американских для металлообработки, построенных на Rockwell мне не понравилось использование JMP/LBL. Вся программа ими утыкана, добавляешь свою строчку, а она не работает, потому что чуть выше стоит jmp. Но тут больше к программисту вопросов, чем к оборудованию.
Anonim
Хороший язык такую ересь не должен вообще допускать. На уровне синтаксиса. Или ошибку давать.
Anton
Безусловные переходы есть везде. Даже в графических языках. Тут проблема не в яп, а в прокладке между сиденьем и пк
Andrey
В яве специально их убрали, например
Anton
Не специально, а за "ненадобностью" и в байткоде, который генерится используются безусловные переходы. Если мы говорим о энтерпрайз реди языках, то в том же C# goto есть. И в целом при правильном использовании оно повышает читаемость.
Andrey
Недавно мучал свои исходники Езернет шлюза, основу слямзил у Туксграфикса. С двумя goto как-то работало, на третьем компилятор начал чудить. 2 дня протупил с шарком, снифферами по 485-му, пока вышел на это чудо. Сделал на ифах, всё залетало.
Fedor
Для этого и придумали графические языки. Там видно логику работу и вставить исправления в неправильное место сложнее.
Aleksandr
Почти все языки допускают jmp/lbl. Но считаю это допустимым, только там где иной путь невозможен. Да, я про LD и говорю, но все равно это раздражало. Ну и думаю когда совсем время исполнения ужать хочется, отсекая ненужные участки, то применимо тоже, но у меня таких ситуаций ещё не возникало.
Fedor
Case и switch вам вообще не понравятся)
Aleksandr
Так switch case не размазаны по всей программе. Поправьте, если не прав.
Fedor
Там тоже нет гарантий что последующая строчка будет исполняться за предыдущей. Но это при условии невнимательности и непонимания кода.
Andrey
Кейс плох тем, что не дает параллельности, конструкции с иф гибче
Anton
Switch case даёт параллельность с использованием оператора break, кстати является основой SFC, т. е. используется под капотом.
Anonim
Вот в роквеле даже на лд можно один коил дёргать с кучи разных мест. Причём не просто как реле, а каа сраный тумблер. Что-то где то моргнуло и включило. И сидишь тупишь пытаясть понять какая из десятка ссылок это сделала.
Fedor
У многих так, а где не так, то там программисты стонут, что ограничения языка не дают развернуться. Вопрос к программистам и тому как они творят.
Anonim
Так свел в одну цепь и сделал по людски. А так только быдлокод плодить. Вседозволенность это в первую очередь лишний шанс выстрелить себе в ногу, а потом уже удобства
Fedor
А вот это было сейчас обидно для нашего маскота -Виталика) Но не могу не согласиться
Anton
Опять тут проблема к людям кто это писал
Yagudron
Тогда Inverter надр писать как YingWeiRengTengYengReng Так много где можно дёргать. У некоторых (например Омрон) настраивается варнинг на такое, который говорит айяяяй код написан нехорошо
Kirill
Ну не знаю. Хочешь однозначности пиши на фбд А мне в лд как раз нравится, ч о я бит могу из разных мест дергать.
Serg
+ Супер резиновый промышленность мотор крутилка
Anonim
лучше использовать call