The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Hare 0.26"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск языка программирования Hare 0.26"  +/
Сообщение от opennews (??), 13-Фев-26, 23:34 
Дрю ДеВолт (Drew DeVault), автор пользовательского окружения Sway, почтового клиента Aerc и платформы совместной разработки SourceHut, опубликовал выпуск языка программирования Hare 0.26.0. Hare преподносится как язык системного программирования, близкий к языку Си, но проще, чем Си. Исходный код компилятора и инструментария распространяются под лицензией GPLv3, а код стандартной библиотеки под лицензией MPL (Mozilla Public License)...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=64794

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. Скрыто модератором  +3 +/
Сообщение от Аноним (1), 13-Фев-26, 23:34 
Ответить | Правка | Наверх | Cообщить модератору

2. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аркагоблин (?), 13-Фев-26, 23:44 
Лицензия отвратительная для стандартных либов. Для них принято что-то пермиссивное ставить. И желательно без атрибуции, потому что никто нормальный не будет специально выискивать что там под какой лицензией и писать "Hello world написан на Hare. Hare под MPL и его написал Имя Автора". Люди воспринимают системные библиотеки как нечто базовое и фундаментальное, а не как произведение.
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск языка программирования Hare 0.26"  +3 +/
Сообщение от Аноним (12), 14-Фев-26, 01:26 
Ну вот стандартная GLibc как-то не пермиссивная.
Ответить | Правка | Наверх | Cообщить модератору

37. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от kusb (?), 14-Фев-26, 11:47 
Она обычно динамически подключается. Или я не разбираюсь, просто так кажется...
Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск языка программирования Hare 0.26"  +1 +/
Сообщение от Аноним (32), 14-Фев-26, 10:39 
MPL - это не вирусная лицензия. Копилефтная, но не вирусная - код, использующий библиотеку под MPL, не обязан быть лицензирован под MPL. И Дрюша ещё тот копираст, у него в блоге высер есть на эту тему, что он теперь не дурачок, как раньше, и теперь объявляет всем конкурентам копирайтную войну.
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

35. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от мелстрой (?), 14-Фев-26, 11:17 
Ну пусть тогда сам на своем зайце работает
Ответить | Правка | Наверх | Cообщить модератору

98. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (98), 16-Фев-26, 09:43 
В этом вся суть Дрюши. По сути всё, что он создал, годится почти исключительно для его личного пользования.
Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (45), 14-Фев-26, 14:30 
Hare, лучший язык программирования.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

46. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аркагоблин (?), 14-Фев-26, 14:41 
Она то конечно не вирусная, но всё равно заставляет давать ссылки на исходный код языка. Будто каждый кто пишет на языке, модифицирует сам язык. Язык напротив практически никогда не модифицируется сторонними людьми, но копилефт стоит, и выглядит это как стрельба из пушки по воробьям.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

75. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (75), 15-Фев-26, 20:08 
А тебе какое дело до этого?
Ответить | Правка | Наверх | Cообщить модератору

83. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аркагоблин (?), 16-Фев-26, 00:51 
Что значит "какое"? Она заставляет давать ссылку на исходный код и следить за его доступностью, даже если я ничего там не изменял, а если зеркало станет нерабочим - я стану нарушителем
Ответить | Правка | Наверх | Cообщить модератору

96. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (75), 16-Фев-26, 09:21 
Каким образом ты станешь нарушителем, если не работает официальный репозиторий с кодом?
Ответить | Правка | Наверх | Cообщить модератору

101. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аркагоблин (?), 16-Фев-26, 10:45 
Нарушится обязанность предоставлять рабочую ссылку на исходный код. И не тыкай мне
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск языка программирования Hare 0.26"  –2 +/
Сообщение от Аноним (9), 14-Фев-26, 01:00 
> Добавлена возможность использования присвоения значению "_" для игнорирования обработки ошибок

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

Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Смузихлеб забывший пароль (?), 14-Фев-26, 07:17 
Какими-то там ошибками отвлекать уважаемых программистов от написания ПО!
Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск языка программирования Hare 0.26"  +1 +/
Сообщение от пэпэ (?), 14-Фев-26, 11:12 
Слышал звон? _ используется для игнорирования значения, лучше мусорные переменные что ли плодить? К тому же в "современных языках" это тыщу лет есть.
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

48. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (48), 14-Фев-26, 15:08 
В hare есть '?' и '!', можно ими пользоваться, какая великая разница?
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

13. "Выпуск языка программирования Hare 0.26"  –3 +/
Сообщение от Аноним (13), 14-Фев-26, 01:37 
> ручное управление памятью

А УБ? УБ есть? Если УБ нет, опеннетовские анонимы будут страдать! Надо в стандарте УБ прописать!!!11

Ответить | Правка | Наверх | Cообщить модератору

20. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Аноним (20), 14-Фев-26, 07:15 
Усли UB в стандарте, то это уже не UB.
Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (30), 14-Фев-26, 09:29 
Отсюда делаем вывод шта, в чыстой сишке нет UB.
Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск языка программирования Hare 0.26"  +4 +/
Сообщение от Аноним (16), 14-Фев-26, 03:22 
Написано ж что он должен быть проще сей, а он по описанию сложнее сей.
Ответить | Правка | Наверх | Cообщить модератору

31. Скрыто модератором  +/
Сообщение от Аноним (30), 14-Фев-26, 09:31 
Ответить | Правка | Наверх | Cообщить модератору

56. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (56), 14-Фев-26, 20:33 
Смесь Go и Rust (по синтаксису) разве может быть простой?
Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

17. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Имя (?), 14-Фев-26, 03:58 
нет в списке godbolt.org
Ответить | Правка | Наверх | Cообщить модератору

23. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Смузихлеб забывший пароль (?), 14-Фев-26, 07:26 
>  возможность явного оставления переменных и полей в структурах
> в неинициализированном состоянии,
> через присвоения им значения "@undefined"

Это однако перебор. Т.е в доработки изначально заложено что теперь в переменных может оказаться любой мусор вместо предполагаемых иными товарищами нулей

Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (24), 14-Фев-26, 07:53 
Да, абсурд для новых языков
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от nc (ok), 14-Фев-26, 15:59 
Почему абсурд? Наличие возможности всегда лучше чем ее отсутствие, мало ли для каких Хакерских целей это может пригодиться. Например если переменная каким-то образом отображена на регистр микроконтроллера, запись в который нулей приводит к какой-то аппаратной активности, которая просто при инициализации не нужна. Или например мы пишем некий код, в котором нужно экономить каждый байт кода, выделение памяти на стеке это одна команда, а обнуление - уже другая, которая возможно по логике кода и не нужна.
Ответить | Правка | Наверх | Cообщить модератору

51. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Аноним (51), 14-Фев-26, 16:36 
>Почему абсурд?

Потому, что кроме возможности писать undefined, нужно каким-то образом предотвращать чтение такого значения, иначе язык преращается в типичную сишку, с порчей памяти. А для этого нужен специальный тип, и каждое взаимодействие с этой переменной будет происходить через этот тип.
>Наличие возможности всегда лучше чем ее отсутствие

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

Ответить | Правка | Наверх | Cообщить модератору

59. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от nc (ok), 14-Фев-26, 21:19 
В отличие от сишечки, здесь опасный код (отказ от инициализации) требуется написать ЯВНО (и кстати достаточно многословно, я бы на месте разработчиков языка вместо @undefined использовал бы всё тот же подчерк)
Для нормального программиста этого достаточно.
Ответить | Правка | Наверх | Cообщить модератору

65. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 14-Фев-26, 23:54 
Нет абсолютно никакой разницы, написан отказ от инициализации явно или неявно. Проблемы возникают, когда требуется состыковать один сишный код с другим сишным кодом. Никто не будет читать исходник от первой строки до последней, чтобы увидеть, где что инициализировано, а где - нет, на буквально каждую правку.
Ответить | Правка | Наверх | Cообщить модератору

68. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Аноним (68), 15-Фев-26, 00:54 
> Например если переменная каким-то образом отображена на регистр микроконтроллера, запись в который нулей приводит к какой-то аппаратной активности, которая просто при инициализации не нужна.

Пха-ха-ха.... Сам же и подтвердил абсурдность такой возможности. А ну как "случайное", "неинциализированное" значение таки окажется нулем и "произойдет какая-то аппаратная активность" из-за того что ты ничего не предпринял чтобы там не оказалось начального нуля? Или активность произойдет от инициализированного значения 15496843548, которое отвечало за уровень температуры нагревания в аппаратуре? Наверное именно в микроконтроллерах особенно важно чтобы не было никаких манипуляций с неинициализированныи переменными, а то реактор взорвется или андроид (не ОС, а человекоподобный робот) в бошку зарядит.

Ответить | Правка | К родителю #49 | Наверх | Cообщить модератору

70. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (70), 15-Фев-26, 10:16 
Отображенные в память регистры устройств зачем обнулять? Это имелось ввиду.
Ответить | Правка | Наверх | Cообщить модератору

89. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Александр (??), 16-Фев-26, 07:09 
Почитай для начала про аппаратную часть разных архитектур, особенно про маппинг регистров и перестань нести откровенную чушь
Ответить | Правка | К родителю #68 | Наверх | Cообщить модератору

25. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (25), 14-Фев-26, 08:39 
> может быть возвращено при прерывании цикла выражением "break значение" или через указание "yield значение_по_умолчанию" в прикреплённом к циклу блоке "else{...}", который вызывается, если цикл не был прерван через break.

И это всё, чтобы поизображать ограничения из функциональных языков (обойтись одним присваиванием), где нельзя написать лучше, если императивщины не хватает? Только там было бы ноль ключевых слов для return'а, а здесь уже три.

Непонятно, откуда ещё item.key взялся.

Чем-то похоже на изобретание новых циклов в 70-е, когда придумывали ключевые слова, чтобы от if в середине блока избавиться.
https://en.wikipedia.org/wiki/Control_flow#Middle_test

Ответить | Правка | Наверх | Cообщить модератору

27. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (27), 14-Фев-26, 09:05 
>Hare преподносится как язык системного программирования, близкий к языку Си, но проще, чем Си.

Ц когда то тоже был простым, но это исправили ;)
И Харю исправят ;)

Ответить | Правка | Наверх | Cообщить модератору

38. "Выпуск языка программирования Hare 0.26"  +3 +/
Сообщение от LaunchWiskey (ok), 14-Фев-26, 12:03 
> Hare преподносится как язык системного программирования, близкий к языку Си, но проще, чем Си.

Куда ж проще, чем классический C? Того, кто C освоить не может, и близко к программированию подпускать нельзя, а не упрощенные языки для него делать.

Ответить | Правка | Наверх | Cообщить модератору

40. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 14-Фев-26, 12:56 
> Того, кто C освоить не может

Он может, достаточно его проекты посмотреть.

Ответить | Правка | Наверх | Cообщить модератору

50. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от LaunchWiskey (ok), 14-Фев-26, 16:04 
Я не про создателя Зайца, а про среднестатистического современного программиста, для которых создают Зайцев, Расты и прочие инструменты, понижающие планку входа и превратившие индустрию в индус-трию..
Ответить | Правка | Наверх | Cообщить модератору

54. "Выпуск языка программирования Hare 0.26"  +1 +/
Сообщение от Аноним (51), 14-Фев-26, 16:50 
>Расты
>понижающие планку входа

В каком месте раст понижает планку входа?

Ответить | Правка | Наверх | Cообщить модератору

60. "Выпуск языка программирования Hare 0.26"  +1 +/
Сообщение от Сладкая булочка (?), 14-Фев-26, 21:43 
> Я не про создателя Зайца, а про среднестатистического современного программиста, для которых
> создают Зайцев, Расты и прочие инструменты, понижающие планку входа и превратившие
> индустрию в индус-трию..

Создают армию послушных хомячков, еще ИИ сюда со школ внедрять, чтобы совсем думать разучились.

Ответить | Правка | К родителю #50 | Наверх | Cообщить модератору

42. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Facemakeremail (?), 14-Фев-26, 13:37 
Освоить Си надо (хотя бы чтоб Скиену читать), но программировать на нём уже не надо.
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

43. "Выпуск языка программирования Hare 0.26"  +2 +/
Сообщение от Аноним (43), 14-Фев-26, 13:45 
Как раз наоборот. Осваивать можно, что нравится, а программировать на С.
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 14-Фев-26, 14:30 
> Освоить Си надо (хотя бы чтоб Скиену читать)

Есть мнение, что Скиену не надо как раз читать.

Ответить | Правка | К родителю #42 | Наверх | Cообщить модератору

52. "Выпуск языка программирования Hare 0.26"  –5 +/
Сообщение от Аноним (51), 14-Фев-26, 16:39 
>Куда ж проще, чем классический C?

В каком месте си прост? В порче памяти? В уродовании алгоритма в угоду UB? В негигиенических макросах? Вот ни разу ни один сишник не объяснил, зачем ему нужно 100500 способов попортить память.

Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

58. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (56), 14-Фев-26, 20:36 
Плохому танцору партнёрша мешает.
Ответить | Правка | Наверх | Cообщить модератору

61. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 14-Фев-26, 21:45 
>>Куда ж проще, чем классический C?
> В каком месте си прост?

Можно просто сравнить по кол-ву страниц стандарт Си и Раста (которого нет).

Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

63. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 14-Фев-26, 23:51 
Любая тьюринговая трясина, вроде brainfuck будет проще чем си, по вашему же критерию.
Ответить | Правка | Наверх | Cообщить модератору

67. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 15-Фев-26, 00:54 
> Любая тьюринговая трясина, вроде brainfuck будет проще чем си, по вашему же
> критерию.
> вроде brainfuck

Но у него нет стандарта)


Ответить | Правка | Наверх | Cообщить модератору

76. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Аноним (51), 15-Фев-26, 20:15 
Во-первых, я говорю не про конкретный язык, а про подмножество языков. Во-вторых, а у си что, стандарт есть, настоящий, полноценный стандарт, а не фикция, дающая только игрушечный язык? А это тогда что?
https://www.opennet.me/opennews/art.shtml?num=58500 - Реализована возможность сборки Glibc при помощи инструментария LLVM - 2023
https://www.opennet.me/opennews/art.shtml?num=64670 -  Выпуск стандартных Си-библиотек Glibc 2.43 и newlib 4.6.0 - 2026
>Добавлена экспериментальная возможность сборки компилятором Clang, которая пока доступна только для платформ aarch64-linux-gnu и x86_64-linux-gnu при использовании runtime, совместимого с libgcc. Для сборки Glibc требуется как минимум версия Clang 18.

Это просто замечательно, что возможность сборки clang-ом добавлялась дважды, и не смотря на это по прежнему остаётся экспериментальной и далеко не под все архитектуры.

Ответить | Правка | Наверх | Cообщить модератору

78. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 15-Фев-26, 21:58 
> Во-вторых, а у си что, стандарт есть, настоящий, полноценный стандарт, а не фикция, дающая только игрушечный язык?

Да, полноценный стандарт.

> Это просто замечательно, что возможность сборки clang-ом добавлялась дважды, и не смотря
> на это по прежнему остаётся экспериментальной и далеко не под все
> архитектуры.

clang - это конкретная реализация, ничего удивительного, что одна реализация не может собрать софт, который собирается другой.

Проблема, когда есть только одна реализация, которая и определяет поведение.

Ответить | Правка | Наверх | Cообщить модератору

79. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 15-Фев-26, 22:15 
>Да, полноценный стандарт.

Полноценный мнимый стандарт? Для того, чтобы стандарт был полноценным, нужна возможность практического использования данного стандарта, что по какой-то причине не наблюдается.
>clang - это конкретная реализация, ничего удивительного, что одна реализация не может собрать софт, который собирается другой.

Это значит, что ни gcc, ни clang, ни glibc не удовлетворяют стандарту. Стандарт нужен для прозрачной замены, а не переписывании всей кодовой базы. Если бы у си был настоящий, а не мнимый стандарт, то во-первых можно было бы сказать, что именно из этой тройки стандарту не соответствует, а во-вторых, новость бы выглядела иначе. Не clang может собирать glibc, а glibc может собирать любой сишный компилятор.
>Проблема, когда есть только одна реализация, которая и определяет поведение.

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

Ответить | Правка | Наверх | Cообщить модератору

80. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 15-Фев-26, 22:30 
>>Да, полноценный стандарт.
> Полноценный мнимый стандарт? Для того, чтобы стандарт был полноценным, нужна возможность
> практического использования данного стандарта, что по какой-то причине не наблюдается.

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

>>clang - это конкретная реализация, ничего удивительного, что одна реализация не может собрать софт, который собирается другой.
> Это значит, что ни gcc, ни clang, ни glibc не удовлетворяют стандарту.
> Стандарт нужен для прозрачной замены, а не переписывании всей кодовой базы.
> Если бы у си был настоящий, а не мнимый стандарт, то
> во-первых можно было бы сказать, что именно из этой тройки стандарту
> не соответствует, а во-вторых, новость бы выглядела иначе. Не clang может
> собирать glibc, а glibc может собирать любой сишный компилятор.

Если компилятор заявляет, что он поддерживает фичу стандарта, то так и должно быть. Если она как-то не так поддерживается (не так как описано в стандарте), то заводите баг.

Также компиляторы реализуют различные расширения, чем и осложняется портирование, если код на них завязан. К примеру cproc может собрать binutils, gcc 4.7, zstd.

>>Проблема, когда есть только одна реализация, которая и определяет поведение.
> Вы забыли привести доказательства. У вас уже есть два взаимонесовместимых компилятора,
> но вы продолжате притворяться, что всё хорошо. Та ситуация, которая может
> быть возникнет, а может быть и не возникнет для другого языка,
> уже гарантированно возникла для си.

Какое доказательство вам нужно?

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

Приведите пример код *по стандарту* (без расширений), который не могут собрать gcc и clang.

Ответить | Правка | Наверх | Cообщить модератору

81. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Аноним (51), 15-Фев-26, 23:33 
>Что значит мнимый?

Это значит - не сущетсвующий, эфимерный. Как мираж в пустыне.
>Реализации компиляторов его используют для разработки, чтобы понять какое должно быть поведение.

Вот когда у вас будет glibc по стандарту, тогда и поговорим.
>Также компиляторы реализуют различные расширения, чем и осложняется портирование, если код на них завязан.

Нестандартные расширения, вы хотели сказать. Как только появляется хотя бы одно расширение, про стандарт можно забыть.
>К примеру cproc может собрать binutils, gcc 4.7, zstd.

Очень интересно.
>C11 compiler

Вы хотите доказать, что всё не так плохо, но доказываете что всё ещё хуже. Мало того, что эта альтернатива не поддерживает поддерживает все те расширения, которые делают код минимально пригодным для использования, так она не поддерживает не только последний, стандарт C23, она не поддерживает даже C17.
>gcc 4.7

Какая у gcc актуальная версия - 15? Куда делись все остальные версии за более чем 10 лет?
>Какое доказательство вам нужно?

Как минимум обоснованное и убедительное. Зачем вам стандарт нужен - вы его на зиму солить будете? Или рыбу в него заворачивать?
>без расширений

С чего это вдруг? Прямо сейчас, куча разработчиков gcc, glibc, linux взяли и отказались от стандарта, завязавшись на предельно конкретный компилятор, но вы ходите и рассказываете про важность стандарта. Вы пойдите и все эти проекты перепишите, а потом про стандарты рассказывайте.

Ответить | Правка | Наверх | Cообщить модератору

82. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 16-Фев-26, 00:15 
>>без расширений
> С чего это вдруг? Прямо сейчас, куча разработчиков gcc, glibc, linux взяли
> и отказались от стандарта, завязавшись на предельно конкретный компилятор, но вы
> ходите и рассказываете про важность стандарта.

Есть много других программ. Стандарт важен и почему выше уже ответ есть.

> Вы пойдите и все эти проекты перепишите, а потом про стандарты рассказывайте.

Зачем что-то переписывать? Есть один язык (пока без стандарта), в котором все любят переписывать... Кстати, как в нем понять, что поведение компилятора баг, а не намеренное поведение?

Ответить | Правка | Наверх | Cообщить модератору

84. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 16-Фев-26, 01:29 
>Есть много других программ.

Например, hello world-ов. Вы компилятором, соответствующим стандарту не сможете собрать актуальное окружение. Совсем, совсем не сможете.
>Стандарт важен и почему выше уже ответ есть.

Ответа нет. Вы так и не ответили, чем плохо отсутствие стандарта и наличие только одной реализации.
>Зачем что-то переписывать?

Затем, что на данный момент код на си завязан на однин или два компилятора.
>Есть один язык (пока без стандарта), в котором все любят переписывать...

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

Ваш вопрос предельно странный. Стандарт на это никак не поможет ответить. Вот вам простейшая задача, сколько будет:
int i = 5; i = ++i + ++i;
Если авторы стандарта не потрудились определить семантику языка, то это никак никому не поможет. А если авторы вместо определения стандарта решили определить семантику, то всё будет хорошо. А для определения семантики хватит просто документации, лежащей где-то рядом с компилятором.

Ответить | Правка | Наверх | Cообщить модератору

85. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 16-Фев-26, 02:28 
>>Есть много других программ.
> Например, hello world-ов. Вы компилятором, соответствующим стандарту не сможете собрать
> актуальное окружение. Совсем, совсем не сможете.

Это неверное утверждение. В нем содержится логическое противоречие. gcc соответсвует стандарту. То, что код ему не соотвествует, уже другой вопрос. Есть много проектов, которые не используют расширений, если они не доступны.

>>Стандарт важен и почему выше уже ответ есть.
> Ответа нет. Вы так и не ответили, чем плохо отсутствие стандарта и
> наличие только одной реализации.

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

>>Зачем что-то переписывать?
> Затем, что на данный момент код на си завязан на однин или
> два компилятора.

Ответ не получен. Зачем переписывать на язык Р? Чтобы он был завязан на 1 конкретную реализацию языка?

>>Кстати, как в нем понять, что поведение компилятора баг, а не намеренное поведение?
> Ваш вопрос предельно странный. Стандарт на это никак не поможет ответить. Вот
> вам простейшая задача, сколько будет:
> int i = 5; i = ++i + ++i;

Неправда. Стандарт говорит, что это ub. С вашей стороны - это попытка манипуляции.

Ответить | Правка | Наверх | Cообщить модератору

86. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 16-Фев-26, 04:02 
>Это неверное утверждение. В нем содержится логическое противоречие. gcc соответсвует стандарту. То, что код ему не соотвествует, уже другой вопрос.

Для того, чтобы соответствовать стандарту, нельзя добавлять ничего сверху.
>Есть много проектов, которые не используют расширений, если они не доступны.

Если чего-то нет в стандарте, то его в принципе не должно быть в коде. Совсем, не должно быть. Без проверки на наличие или отсутствие расширений.
>Где вы будете искать ожидаемое поведение при разработке компилятора? В другом компиляторе?

Вы сейчас про разработку второго компилятора? А не хотите баги в шланге поправить, чтоб под него костыли в glibc вставлять не нужно было?
>А если там баг? А если их несколько?

У языка есть спецификации, плюс документация. Полагаться на недокументированное поведение в целом не логично.
>Ответ не получен. Зачем переписывать на язык Р?

Вам мерещится некий язык "Р". Перепишите glibc так, чтобы любой компилятор реализовавший стандарт мог её собрать. С "си без стандарта" на "си по стандарту". И gcc, и linux, и так далее.
>Чтобы он был завязан на 1 конкретную реализацию языка?

Постойте, но ведь прямо сейчас glibc завязан на реализацию одного единственного gcc, и стандарты вам в этом никак не помогают.
>Неправда. Стандарт говорит, что это ub.

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

Вы говорите про стандарт только тогда, когда вам это удобно. Нужно похвастаться наличием нескольких компиляторов - вот стандарт. Нужно собрать один и тот же код - ну это не стандарт, а расширение. А зачем вам собственно несколько компиляторов? Чтобы что? Сама возможность существования нескольких компиляторов имеет определённую цену. Либо есть один флагман, а остальные его догоняют, и в этом случае нет никакой разницы, есть стандарт или нет, либо язык замораживается на долгие годы, а то и на десятилетия и все дружно ждут стандартов. Поскольку вначале нужно согласовать стандарт, а потом уже пытаться его реализовать, что тоже время. В этом случае, скорее всего развите языка не будет успевать за актуальными потребносями. При этом, что во втором случае, никто не мешает клепать левые расширения, ибо стандарт это хорошо, но жить надо сейчас.

Ответить | Правка | К родителю #85 | Наверх | Cообщить модератору

97. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 16-Фев-26, 09:43 
Кстати да, почему у всех языков, у которых есть стандарт, со временем появляются какие-то несовместимые расширения?
Ответить | Правка | К родителю #86 | Наверх | Cообщить модератору

73. "Выпуск языка программирования Hare 0.26"  –2 +/
Сообщение от Аноним (73), 15-Фев-26, 17:55 
> по кол-ву страниц стандарт Си

Вы про тот кусок Г, в котором UB в несколько раз больше чем зарезервированных слов?
В котором не определись как складывать два числа без UB?
В котором даже нет строк, а для того чтобы добавить значения true и false без костылей в виде макросни понадобилось 50 лет?

Отличный стандарт!
Слава богу у раста такого нет)))

Ответить | Правка | К родителю #61 | Наверх | Cообщить модератору

91. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Sm0ke85 (ok), 16-Фев-26, 07:29 
>В каком месте си прост? В порче памяти? В уродовании алгоритма в угоду UB? В негигиенических макросах? Вот ни разу ни один сишник не объяснил, зачем ему нужно 100500 способов попортить память.

Потому что Си-шник пишет для железки, а не пытается написать поэму/стихи для компилятора и надеяться, что эта повесть/поэзия таки будет работать как задумано....

Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

99. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 16-Фев-26, 09:48 
>а не пытается написать поэму/стихи для компилятора

Опять фантазии. Во-первых, сишный код не отображается на ассемблер напрямую, как минимум из-за UB, которая может в любой момент его исказить до неузнаваемости. Во-вторых, откуда вы придумали про поэму? Вы опять не понимаете, как раст с абстракиями работает?

Ответить | Правка | Наверх | Cообщить модератору

53. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 14-Фев-26, 16:49 
>Язык оптимизирован для решения низкоуровневых задач, таких как разработка операционных систем, компиляторов, сетевых приложений и системных утилит, для которых требуется достижение максимальной производительности и полный контроль над выполнением.

Разработка компиляторов низоуровневой задачей не является, для неё куда лучше подойдёт Ocaml или Haskell. Сетевые приложения или системные утилиты на них тоже можно писать. Хотя сейчас стало модно сетевые/системные приложения на голанге писать, со сборщиком мусора.
>В языке применяется ручное управление памятью

Со всеми вытекающими из этого ошибками.
>статическая система типов, при которой каждой переменной явно должен быть присвоен определённый тип.

Вывод типов по Хиндли-Милнеру уже изорбетён. Flow-типизация - тоже. При этом никаких причин отказа от них, вроде использования высокого ранга полиморфизма, не указано.

Ответить | Правка | Наверх | Cообщить модератору

62. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Сладкая булочка (?), 14-Фев-26, 21:46 
> для неё куда лучше подойдёт Ocaml или Haskell

Они подходят для прототипов, потом их обычно переписывают.

Ответить | Правка | Наверх | Cообщить модератору

64. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 14-Фев-26, 23:51 
Переписывают ради раскрутки компилятора. Будб оригинал написан на си, его точно также переписали бы.
Ответить | Правка | Наверх | Cообщить модератору

71. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (71), 15-Фев-26, 13:08 
>Разработка компиляторов низоуровневой задачей не является,

Тупой вброс. Тот кто разрабатывает компиляторы обязан знать апаратную начинку.

Ответить | Правка | К родителю #53 | Наверх | Cообщить модератору

72. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 15-Фев-26, 14:30 
Зачем вам в коде компилятора нужны указатели и ручное управление памятью?
Ответить | Правка | Наверх | Cообщить модератору

103. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Анонимemail (103), 16-Фев-26, 11:47 
Указатели и ручное управление памятью в контексте компиляторов - это довольно высокоуровневые абстракции
Ответить | Правка | Наверх | Cообщить модератору

104. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (51), 16-Фев-26, 12:39 
Ни разу. Чем больше ручного жонглирования с указателями, тем сложнее получить требуемый результат.
Ответить | Правка | Наверх | Cообщить модератору

57. "Выпуск языка программирования Hare 0.26"  +1 +/
Сообщение от Аноним (56), 14-Фев-26, 20:35 
На главной странице проекта пример helloworld, предлагаю всем взглянуть.
Ответить | Правка | Наверх | Cообщить модератору

74. "Выпуск языка программирования Hare 0.26"  –1 +/
Сообщение от Facemakeremail (?), 15-Фев-26, 18:32 
Что там особенного? Код похож на растовский ☺.
Ответить | Правка | Наверх | Cообщить модератору

95. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Проходил мимо (?), 16-Фев-26, 08:28 
Там заменили строку на русском на строку на мове.
Это очень характерный звоночек в плане диагностирования кривой прошивки в мозгах написавшего.
Ответить | Правка | Наверх | Cообщить модератору

87. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (87), 16-Фев-26, 04:50 
И сравнить с версией из веб-архива? https://web.archive.org/web/20220814005514/https://harelang.org/
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

100. Скрыто модератором  +/
Сообщение от 6омжанимemail (ok), 16-Фев-26, 10:04 
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

66. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (66), 15-Фев-26, 00:27 
Когда хотят си упростить, все время джаваскрипт или перл получается ))
Ответить | Правка | Наверх | Cообщить модератору

94. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от mos87 (ok), 16-Фев-26, 07:37 
Вот именно что Perl уже давно получился.
Ответить | Правка | Наверх | Cообщить модератору

88. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (87), 16-Фев-26, 04:56 
> Drew DeVault

И автор блога... смотрите сами - https://drewdevault.com/

Ответить | Правка | Наверх | Cообщить модератору

93. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от mos87 (ok), 16-Фев-26, 07:36 
>Дрю ДеВолт (Drew DeVault), автор

и очень интересная_личность

Ответить | Правка | Наверх | Cообщить модератору

102. "Выпуск языка программирования Hare 0.26"  +/
Сообщение от Аноним (102), 16-Фев-26, 11:07 
пока не вернут пример HelloWorld на русском языке - харе - не язык! :-Е
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2026 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру