1.2, Аноним (-), 22:46, 25/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
Слушайте, а что с GNU Pascal случилось? Почему компилятор никак не развивается? Почему всякое непотребство типа Modula-2 (вообще кто-то слышал что то об этом языке?) или Objective-C поддерживаются, а Паскаль нет?
| |
|
2.6, Аноним (6), 23:07, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
почти все одиночки сидят на freepascal + lazarus, в некоторых корпорациях еще Delphi используется, но там лицензия от 3500 $
GNU Pascal как бы не нужен никому
| |
|
3.9, Аноним (-), 23:16, 25/04/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
Delphi много где используется в бизнес сегменте (не путать с серверами и ынтерпрайзом). А вот free pascal редкостное днище, которое даже до турбопаскаля 90-х не дотягивает даже по качеству документации, впечатление что сделано тяп-ляп неорганизованной толпой людей.
| |
|
4.11, Аноним (11), 23:18, 25/04/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Delphi — это такой же паскаль, как Visaul Basic по сравнению с изначальным бейсиком.
| |
4.33, Аноним (33), 00:44, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Дельфи и живёт в бизнесе потому что у него есть коммерческая поддержка. В гнутом виде никому не необходим.
| |
|
|
2.43, Аноним (43), 01:30, 26/04/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Слушайте, а что с GNU Pascal случилось?
Пpoтуxло, зaвoнялoсь и испортилось, как и весь Пaскaль. На нём даже в шкoлaх никто уже не пишет. Место этому языку на пoмoйкe. Даже пoкoйный Niklaus Wirth сделал ставку на Обepoн, а не на Пaскaль.
| |
2.55, Маняним (?), 03:07, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Modula-2 (вообще кто-то слышал что то об этом языке?)
Так это и есть улучшенная версия паскаля)
| |
|
1.3, Аноним (3), 23:02, 25/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> Поддержка указания диапазонов целых значений в выражениях "case"
Скоро так и Паскаль догонят!
| |
|
2.50, Маняним (?), 02:48, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Как язык паскаль возможно лучшее что создано. Но то что он ушёл в обучение сыграло злую шутку.
| |
|
1.7, Аноним (7), 23:10, 25/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Поддержка присвоения имён циклам для того, чтобы ссылаться на них в коде.
зачем, если есть goto?
| |
|
|
3.13, Аноним (7), 23:19, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
так у них с логикой проблемы, метка то после цикла должна быть :) а то у них выход из цикла означает начать его заново.
| |
3.14, Аноним (-), 23:19, 25/04/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
К хорошему всегда возвращаются. Никогда не понимал отказа от goto, ведь это крайне удобная вещь, с которой можно писать очень оптимизированный код, а не раздувать его ради простой функциональности на 100500 строк.
| |
|
4.16, Аноним (7), 23:23, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Никогда не понимал отказа от goto,
так вам не на С надо писать, а на асм. В Си чисто по религии goto (фактически асмовский jump) быть не должно.
| |
|
5.18, Аноним (-), 23:27, 25/04/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
С jmp, jnz/jne можно очень красивый код писать. А рилигия в программировании, как и любые догмы, скорее вредны. Нужно всегда отталкиваться от целесообразности и конкретных требований\пожеланий к проекту.
| |
|
6.21, Аноним (7), 23:59, 25/04/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> С jmp, jnz/jne можно очень красивый код писать.
так С создавали, чтобы абстрагироваться от асм и код был более структурным, а не jmp акробатика вверх-вниз. Но почему-то эту акробатику в виде примитивного goto оставили.
| |
6.26, Аноним (11), 00:27, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
В 8080 была такая замечательная вещь — CALL по условию/RET по условию. Количество джампов сокращало в разы.
| |
|
7.45, Аноним (45), 02:09, 26/04/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Прикинь, в ARM почти любая инструкция может быть исполнена по условию.
| |
|
8.46, Аноним (46), 02:24, 26/04/2025 [^] [^^] [^^^] [ответить] | +/– | У армов конечно, как и у ириски - очень вкусные инструкции, но лично меня всегда... текст свёрнут, показать | |
8.49, Маняним (?), 02:46, 26/04/2025 [^] [^^] [^^^] [ответить] | +2 +/– | Но почему тогда армы до сих пор годятся только для телефонов Сколько там уже пр... текст свёрнут, показать | |
|
9.56, Аноним (46), 03:33, 26/04/2025 [^] [^^] [^^^] [ответить] | +/– | Помнится были даже смарты на интеле И всякие мини планшеты, тоже на интеле, у... текст свёрнут, показать | |
|
8.54, Аноним (54), 03:00, 26/04/2025 [^] [^^] [^^^] [ответить] | +/– | Могла быть, лет 10 назад В ARMv8 биты предикации выкинули, а в Thumb их никогда... текст свёрнут, показать | |
8.60, Аноним (11), 06:15, 26/04/2025 [^] [^^] [^^^] [ответить] | +/– | Ну вы мне прямо глаза открыли Вообще это не исключительная особенность ARM А в... текст свёрнут, показать | |
|
|
|
|
4.22, Аноним (22), 00:07, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
А надёжность?
"В своей следующей работе Дейкстра обосновал тот факт, что для кода без goto намного легче проверить формальную корректность."
| |
|
5.38, Аноним (38), 01:19, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А надёжность?
> "В своей следующей работе Дейкстра обосновал тот факт, что для кода без goto намного легче проверить формальную корректность."
И сел со своей войной против goto в лужу.
Более подходящего способа для управления ресурсами в Си чем goto нет.
После такого его невозможно воспринимать всерьез.
| |
5.59, Аноним (59), 05:01, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
1. Не очень понимаю, на что он намекает. Для кода без развилок и циклов проверить формальную корректность ещё проще. Он предлагает выкинуть развилки и циклы?
2. Там, где требуется проверять формальную корректность, goto можно не использовать.
3. Сейчас бы хвастаться отсутствием goto в языке с поддержкой исключений. goto хотя бы из функции не выходит, тогда как исключения прошивают весь стек вызовов.
| |
|
|
3.15, Аноним (7), 23:21, 25/04/2025 [^] [^^] [^^^] [ответить] | +/– | конечно надо же сделать как в расте Ё тут пятиэтажный мат Named loops als... большой текст свёрнут, показать | |
|
4.53, Аноним (54), 02:53, 26/04/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Выдыхай. Эту фичу тру-UNIX деды придумали для Limbo тридцоть лет назад, оттуда ее позаимствовали в Go и Rust. Одобрено ЪUNIXЪ-Омниссией с 1995, проверено временем.
| |
|
|
2.12, Аноним (7), 23:18, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
for (int i = 0; i < n; ++ i) {
for (int j = 0; j < n; ++ j) {
if (something (i, j))
goto end;
}
}
end:
С goto куда интуитивно, чем пихать лейбл в начало оператора for (даблфейспалм). По логике меток, вы возвращаетесь и начинаете циклы заново, а не выходите из него вовсе.
тог уж так надо было так писать, куда интуитивно чем в начале.
for () { } : for-end-identifier;
| |
|
3.19, Аноним (-), 23:37, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Тут много зависит от тимлида :) Если упёртый и аргументы в пользу goto не принимает, то придётся в функцию оборачивать и делать ретёрны.
| |
|
4.20, Аноним (7), 23:56, 25/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
из таких вложенных циклов я обычно выхожу устанавливая в максимальное значение инкрементируемую переменную.
for (int i = 0; i < n; ++ i) {
for (int j = 0; j < n; ++ j) {
if (something (i, j))
i = n;
break;
}
}
| |
|
5.24, Аноним (28), 00:21, 26/04/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Красиво, но фактически это тоже костыль, может быть даже похлеще goto, потому что всё равно оно вернётся и оценит i < 0 и только потом выйдет из цикла.
| |
5.68, Аноним (68), 07:27, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
А потом узнаете про промахи кэша при таких выходах, и что вложенные циклы вообще не нужны, нисколько, никогда.
| |
|
|
|
|
1.8, Аноним (8), 23:12, 25/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
>Директива "#embed", предназначенная для встраивания в код
~/.ssh/github
| |
|
2.47, Аноним (46), 02:28, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Вот Вы смеетесь, а эмбед это вообще чуть ли не самое крутое, что ввели в язык.
Понятно что можно всякое нехорошее с ним делать, но и крутые штуки, типа встраивания ресурсов в технодемки, делать тоже можно и нужно.
| |
|
1.27, Аноним (-), 00:28, 26/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> компилятор для языка COBOL
Очень актуальное, а главное своевременно решение. П.С. А кто-то видел живьём вообще этот КОБОЛ? А то рассказывают про банки и прочий энтерпрайз, но кого не спросишь, делают выпученные глаза.
| |
|
2.32, abi (?), 00:43, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Да, видел живьём Fico Blaze Advisor в отечественном банке.
| |
2.35, Аноним (11), 01:00, 26/04/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Пойдите на работу в банк и прочий энтерпрайз, увидите… а, для этого кобол для начала надо изучить.
| |
|
1.36, cheburnator9000 (ok), 01:14, 26/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>> Возможность объявления переменных в операторе "if", например, "if (int x = get ()) {...}".
Ничего не понял это же прямо сейчас уже доступно нет??
https://godbolt.org/z/bPKqvsood в данном случае if это просто проверка либо на 0, либо можно использовать и для nulltpr.
| |
|
2.64, Аноним (64), 06:50, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Вы кинули код на C++, тогда как речь про Си.
На Си такого синтаксиса нет.
| |
2.67, Сишник (?), 07:25, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
Сейчас доступно в C++, а в статье речь о том, что это добавили в C.
| |
|
|
2.65, Аноним (64), 06:51, 26/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
В Дебиан 13 точно не попадет, потому что тулчейн для сборки, где GCC играет ключевую роль, заморожен от 15-го марта :)
Будет в Дебиан 14, или более новая версия, если до заморозки успеет выйти 16-ая версия.
| |
|
1.62, Аноним (62), 06:28, 26/04/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
□ Атрибут "unsequenced", сигнализирующий, что результат не зависит от порядка выполнения.
□ Атрибут "reproducible", указывающий, что функция всегда возвращает один и тот же результат при одинаковых входных данных, т.е. не зависит от иных факторов.
□ Возможность объявления переменных в операторе "if", например, "if (int x = get ()) {...}".
□ Поддержка присвоения имён циклам для того, чтобы ссылаться на них в коде.
Гляжу на всё это и понимаю, что видел это в Nim. Авторы языка используют все конструкции из новых стандартов Си.
| |
|