The OpenNET Project / Index page

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



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

"Проект Solod развивает подмножество языка Go, транслируемое в язык Си"  +/
Сообщение от opennews (ok), 07-Апр-26, 12:41 
Представлен язык программирования Solod (So), предоставляющий подмножество языка Go, транскомпилируемое в представление на языке Си (C11), пригодное для сборки компиляторами GCC, Clang и zig cc. Ключевым отличием Solod от Go и Tinygo является использование ручного управления памятью, работающего без применения сборщика мусора, без автоматического выделения памяти и без подсчёта ссылок. Транспайлер для Solod написан на языке Go и распространяется под лицензией BSD...

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

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

Оглавление

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

1. Сообщение от Axonic (ok), 07-Апр-26, 12:41   +11 +/
Изобрели Nim и Vala
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #36

5. Сообщение от Аноним83 (?), 07-Апр-26, 13:02   +/
> Из ключевых областей применения отмечается системное программирование с близкими к Си возможностями

Да да, все такие важные.
На вижал бейские тоже можно было писать системные приложения, да и на перле можно.

Да и зачем оно надо, когда есть LUA и Vala.

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

7. Сообщение от Жироватт (ok), 07-Апр-26, 13:11   +18 +/
Нужно изобрести язык Golod. Который будет как Git Crab, подъедать исходники при транспиляции в С, а затем в JS.
И преобразователь текста УНИТАЗ.

> не поддерживаются каналы, сопрограммы и замыкания

Горутины - то, ради чего стоит в принципе if err!=nil терпеть

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #10, #15, #26, #29

8. Сообщение от Аноним (8), 07-Апр-26, 13:25   –1 +/
Solod - хорошее программистское название ;)
Надеюсь, эти без телеметрии обходятся.
Ответить | Правка | Наверх | Cообщить модератору

9. Сообщение от крокодил (?), 07-Апр-26, 13:25   –1 +/
а зачем? какая цель? just for fun? что бы был?

Можно же сделать что-то принципиально новое. Зачем еще один велосипед?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12, #14, #74

10. Сообщение от Аноним (10), 07-Апр-26, 13:26   –2 +/
>Горутины - то, ради чего стоит в принципе if err!=nil терпеть

Терпеть if err!=nil стоит разве что за деньги, желательно немаленькие. А многопоточность есть не только в голанге, но и в куче других языков.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #61

12. Сообщение от Аноним (12), 07-Апр-26, 13:37   –2 +/
> Можно же сделать что-то принципиально новое

Принципиально новое уже сделано: раст.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #86

13. Сообщение от Аноним (13), 07-Апр-26, 13:41   +/
Наконец-то и на Go можно выстрелить себе в ногу)
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #52

14. Сообщение от Аноним (14), 07-Апр-26, 13:45   +1 +/
Вы очень внимательно прочитали последний абзац новости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #22

15. Сообщение от Аноним (15), 07-Апр-26, 13:46    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

16. Сообщение от Hack3r (?), 07-Апр-26, 13:57   +/
Trademark!
https://dlang.org/spec/betterc.html
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #125

18. Сообщение от Аноним (-), 07-Апр-26, 14:25   –2 +/
> Представлен язык программирования Solod (So), предоставляющий подмножество языка Go,
> транскомпилируемое в представление на языке Си (C11), пригодное для сборки компиляторами GCC, Clang и zig cc

Идея прикольная. Но ему как я понимаю нужен - go :\. Без этого сие как я понимаю не операбельно, это FAIL я считаю. Могли бы сделать транспилируемыми сам себя, и собираться собой. Без требования гуглокрапа.

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

21. Сообщение от Аноним (22), 07-Апр-26, 14:48   +8 +/
То есть они открутили горутины, замыкания и тп и сборщик мусора. Получили на выходе покоцанный Си с другим синтаксисом. Чтобы что?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #23

22. Сообщение от Аноним (22), 07-Апр-26, 14:51   +/
В последнем абзаце не сказано зачем. Если я напишу, что я быстро бегаю - из этого никак не следует, что мне надо ехать на олимпиаду.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

23. Сообщение от Аноним (23), 07-Апр-26, 14:56   +/
в си нет женериков, в си нет слайсов и строк с длиной
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #24, #45

24. Сообщение от Аноним (23), 07-Апр-26, 14:56   +/
и точно и дефер будет только в с29..
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #34

25. Сообщение от th3m3 (ok), 07-Апр-26, 14:58   +4 +/
В итоге, результат - сомнительный. Лучше сразу тогда на C писать.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #33, #46

26. Сообщение от Аноним (26), 07-Апр-26, 15:03   +3 +/
>преобразователь текста УНИТАЗ

УНИверсальный Текстовый АналиЗатор?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #60

29. Сообщение от Аноним (29), 07-Апр-26, 15:21   –1 +/
без горутин он получается односолодовый
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #59

30. Сообщение от Аноним (30), 07-Апр-26, 15:21   –4 +/
> C целью упрощения в языке не поддерживаются каналы, сопрограммы и замыкания

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

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

32. Сообщение от Аноним (36), 07-Апр-26, 15:25   +2 +/
Напишите язык с синтаксисом Go и неотключаемым боров чекером. И получится Раст с нормальным синтаксисом.  

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42, #48

33. Сообщение от Аноним (36), 07-Апр-26, 15:25   +/
И выйти за границу буфера.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #37, #53, #62

34. Сообщение от Аноним (36), 07-Апр-26, 15:26   +/
Ты путаешь си и си++
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #40

36. Сообщение от Аноним (36), 07-Апр-26, 15:28   –2 +/
Модно теперь их друг в друга транслировать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #70

37. Сообщение от Аноним (37), 07-Апр-26, 15:29   +/
проверки надо делать, assert'ы и всё такое
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #44

40. Сообщение от Аноним (-), 07-Апр-26, 15:34   +1 +/
>  Ты путаешь си и си++

Не, таки в C2Y грозились - defer запилить. Вот прям так.

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

42. Сообщение от Аноним (12), 07-Апр-26, 15:43   +1 +/
"Раст с нормальным синтаксисом" - это С++
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #43

43. Сообщение от Аноним (36), 07-Апр-26, 15:45   –1 +/
> "Раст с нормальным синтаксисом" - это С++

Там борова подключить сложно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42 Ответы: #47

44. Сообщение от Аноним (36), 07-Апр-26, 15:46   +3 +/
Зачем это делать самому это должен делать язык, иначе зачем он нужен?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #54, #55, #67, #100

45. Сообщение от Аноним (8), 07-Апр-26, 15:50   –2 +/
Всё это можно съэмулировать человеконечитаемым лапшекодом, но зато успешно компилируемым. Так а цель сгенериванного кода же не для чтения человеком.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

46. Сообщение от Аноним (8), 07-Апр-26, 15:53   +/
Вот нет, всё-таки Go позволяет несколько большую высокоуровневость, чем C. Точнее, больший диапазон от низко- до более высокоуровневости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

47. Сообщение от Аноним (8), 07-Апр-26, 15:58   +/
Это потому, что Комитет этим ещё не озадачился.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43

48. Сообщение от Аноним (29), 07-Апр-26, 16:00   +2 +/
если бы ты заглянул в самые последние стандарты С++ и Java и заценил читаемость, то они попали бы в одну компанию с Растом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #51

49. Сообщение от sage (??), 07-Апр-26, 16:00   +2 +/
> не требует прикрепления runtime

Что, даже glibc? Или ваша рантайм - это не рантайм?

> C целью упрощения в языке не поддерживаются каналы, сопрограммы и замыкания

Давайте выкинем go из go, чтобы получить си на несишном синтаксисе!

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

51. Сообщение от sage (??), 07-Апр-26, 16:02   +/
Как что-то плохое. Плохой танцор просто не умеет грамотно отступы и переносы строк расставлять.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #63

52. Сообщение от Аноним (8), 07-Апр-26, 16:04   +/
Тогда назвать этот диалект Goo.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

53. Сообщение от Аноним (53), 07-Апр-26, 16:05   –2 +/
В Си нету буферов, вас обманули. Используйте библиотеки, если сами не можете писать код, который не будет убегать за установленные границы. Внутри буфера скорее всего есть и другие границы, например того что туда написали. Будете теперь на каждый чих создавать новый буфер и потом делать join() с копированием всех данных по 100 раз?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #57

54. Сообщение от Аноним (14), 07-Апр-26, 16:07   –1 +/
Кому должен? Почему? С каких пор? Сколько и в какой валюте?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #92

55. Сообщение от Аноним (55), 07-Апр-26, 16:10   +/
>> проверки надо делать, assert'ы и всё такое
> Зачем это делать самому это должен делать язык, иначе зачем он нужен?

Это такая мантра у местных сишочников: не страдал - не эксперт! "Здесь мерилом работы считают усталость".

Ты еще скажи, что задачу нужно решать нажатием пары кнопок, а не многочасовым сношением с консолью и манами - тут такой вой подымется!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #80, #136

56. Сообщение от Аноним (53), 07-Апр-26, 16:13   +/
> glibc Или ваша рантайм - это не рантайм?

Глыбаси - это набор библиотечных функций, они сами по себе ничего не делают внутри твоего кода. Го-корутины, каналы и прочие штуки спавнят параллельные потоки (процессы), которыми кто-то должен рулить и это точно не программист на Go, который не отличает мультипоточность от кооперативной мультизадачности.

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

57. Сообщение от Аноним (55), 07-Апр-26, 16:13   +/
> В Си нету буферов, вас обманули.

А разве buffer overflow - это не классическая ошибка из С?

> Используйте библиотеки, если сами не можете писать код, который не будет убегать за установленные границы.

Проще просто взять нормальный язык.

> Будете теперь на каждый чих создавать новый буфер и потом делать join() с копированием всех данных по 100 раз?

Приведи конкретный пример, а то непонятно, о каких конкретно join() и копированиях идет речь.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53 Ответы: #71

59. Сообщение от Жироватт (ok), 07-Апр-26, 16:17   +1 +/
Светлый и фильтрованный.
Можно сказать даже - нулёвка, где из солода - только запах
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #69

60. Сообщение от Жироватт (ok), 07-Апр-26, 16:24   +2 +/
Он самый. Автор <имперский_импорт> умеет в названия
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

61. Сообщение от Жироватт (ok), 07-Апр-26, 16:26   +2 +/
В и-ГО-go с ними работать куда как проще. Так что постоянное if err!=nil +- компенсируется. Но язык, в котором осталось только это?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

62. Сообщение от Аноним (62), 07-Апр-26, 16:28   +/
Это единственное, что смогли бы на C адепты Раста.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33

63. Сообщение от Аноним (62), 07-Апр-26, 16:30   +/
А кто умеет в отступы, тому и Раст ненужон. Тому Питончик впору.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #68

66. Сообщение от Аноним (66), 07-Апр-26, 16:50   +/
Нужен язык с прямой трансляцией из АИ
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #79

67. Сообщение от Аноним83 (?), 07-Апр-26, 16:57   +/
Тогда С вам не подходит.
С такими требованиями вам нужно что то другое, для других целей с другим результатом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #93

68. Сообщение от Аноним (29), 07-Апр-26, 17:00   +/
спасибо, на фортране наелся ещё
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #82

69. Сообщение от Аноним (29), 07-Апр-26, 17:02   +/
ты не сравнивай односолодовый вискарь и пиво, это разные весовые категории
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59 Ответы: #121

70. Сообщение от Bottle (?), 07-Апр-26, 17:04   –2 +/
Жду не дождусь технического стека:
Kotlin (JVM) -> WebAssembly -> LLVM IR -> нативные бинарники (с GPU-ускорением).
Есть идеи, как усложнить цепочку?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #77, #78, #95, #101

71. Сообщение от Аноним (71), 07-Апр-26, 17:05   +/
buffer overflow это классическая ошибка прокладок между креслом и монитором
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #76, #90

72. Сообщение от Сладкая булочка (?), 07-Апр-26, 17:12   +/
> C целью упрощения в языке не поддерживаются каналы, сопрограммы и замыкания

То есть убрали то, в чем смысл go. А defer и в новом стандарте си есть, даже в clang уже работает.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #96, #123

73. Сообщение от Сладкая булочка (?), 07-Апр-26, 17:13   +/
> При этом проверки на возвращение висячих указателей (dangling pointer) и отсутствие освобождения памяти не производятся. В качестве основного способа выявления проблем при работе с памятью упоминается использование AddressSanitizer (-fsanitize=address) в современных компиляторах.

Что мешает в си его использовать?

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

74. Сообщение от аролп5 (?), 07-Апр-26, 17:17   +1 +/
Для пункта в портфолио у "Anton Zhiyanov", чтобы взяли работать в гугл
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #81

76. Сообщение от Аноним (55), 07-Апр-26, 17:38   +1 +/
>> А разве buffer overflow - это не классическая ошибка из С?
> buffer overflow это классическая ошибка прокладок между креслом и монитором

Я этого вроде и не отрицал. Но какое решение ты предлагаешь?

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

77. Сообщение от topin89 (ok), 07-Апр-26, 17:51   +2 +/
Легко
Kotlin (JVM) -> Nim -> C -> WebAssembly -> LLVM IR -> нативные бинарники (с GPU-ускорением).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

78. Сообщение от Аноним (78), 07-Апр-26, 17:53   –4 +/
> Есть идеи, как усложнить цепочку?

конечно, Rust :)

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

79. Сообщение от Аноним (62), 07-Апр-26, 17:56   +1 +/
В мозг программиста?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66

80. Сообщение от Bottle (?), 07-Апр-26, 18:02   –1 +/
А когда напоминаешь, что гениальные юникс-диды (которые воевaли за ручное управление памятью) пожалели каких-то 32 бит для юникс-тайма, пару буков для copy (вместо cp) и одну для create (creat), весь флёр гениев-академиков как-то слетает быстро.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55 Ответы: #84, #109, #137

81. Сообщение от пох. (?), 07-Апр-26, 18:04   +/
но с таким фамилием возьмут только в яндекс.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #74 Ответы: #87

82. Сообщение от пох. (?), 07-Апр-26, 18:06   +/
там от лишнего пробела ничего не портилось. Не умели диды нормально пакостить.

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

83. Сообщение от TsodingFan (?), 07-Апр-26, 18:25   +/
Чем-то похоже на PyPy, точнее на rpython внутри. И ещё на Cython похоже, конечно. Наверное, может быть полезно для раскручивания компилятора Go.
Ждём спидран по raylib от Тсодинга. Хотя, с сишным FFI это задача очень простая.
Ответить | Правка | Наверх | Cообщить модератору

84. Сообщение от Аноним (55), 07-Апр-26, 18:25   –1 +/
> А когда напоминаешь, что гениальные юникс-диды (которые воевaли за ручное управление памятью) пожалели каких-то 32 бит для юникс-тайма

Гениальные юникс-деды пожалели даже нормальные массивы добавить в свой язык, лол. А ты о лишних 32 битах и 2 нажатиях клавиш. Ребятам просто некогда было: "тяп-ляп - и в продакшн" в те времена, очевидно, не сильно отличался от того, что есть сейчас.

Зато сколько лулзов было, когда при попытках обернуть в "стандарт" этот состряпанный впопыхах недоязык им пришлось писать "undefined behavior" на каждый чих! XD

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #80 Ответы: #102, #110

86. Сообщение от aname (ok), 07-Апр-26, 18:40   +1 +/
Написано же: ПРИНЦИПИАЛЬНО
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

87. Сообщение от aname (ok), 07-Апр-26, 18:41   +/
В эпоху ИИ, хоть бы взяли.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81 Ответы: #89

89. Сообщение от пох. (?), 07-Апр-26, 19:14   +/
ну кто-то ж должен за тем ЫЫ горшок выносить?!

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

90. Сообщение от Аноним (90), 07-Апр-26, 19:15   +3 +/
> buffer overflow это классическая ошибка прокладок между креслом и монитором

Учитывая, что buffer overflow делают практически сугубо на С, есть два варианта: либо проблема в языке, либо на С по большей части пишут какие-то особо неумелые программисты.

Ты, как я понял, намекаешь на второе?

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

92. Сообщение от Аноним (36), 07-Апр-26, 20:43   +1 +/
Должен тем кто его будет использовать иначе язык не будет существовать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

93. Сообщение от Аноним (36), 07-Апр-26, 20:45   +2 +/
Чел ты новость читал? Уже все придумано пишешь на новом языке.  Получаешь безопасный код на си без страданий.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #97, #106

95. Сообщение от Dzen Python (ok), 07-Апр-26, 21:56   +1 +/
> Есть идеи, как усложнить цепочку?

Kotlin (JVM) -> Java 11 (JVM) -> C# (.NET IR) -> VB.Net (IR) -> F# (.NET IR) -> Haskell -> Erlang (свежий) -> TCL (без TK) -> Python 2 -> Python 3 -> Perl (c древнеримским синтаксисом) -> Common Lisp -> Scala (JVM) -> Groovy (JVM) -> Kotlin (JVM) -> Java 11 (JVM) -> 1С (8.3.25+) -> JS (V8/IonMonkey) -> C (C98) -> ASM (MASM/FASM) -> бинарный файл.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70 Ответы: #139

96. Сообщение от Аноним (102), 07-Апр-26, 21:58   +/
Людям нравится синтаксис Go наверное
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #124

97. Сообщение от Аноним (55), 07-Апр-26, 21:59   –1 +/
> Получаешь безопасный код на си без страданий.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93 Ответы: #107

98. Сообщение от Аноним (102), 07-Апр-26, 22:00   +/
Утечки и в Go тоже бывают, поэтому в нём тоже есть sanitizer.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

100. Сообщение от Аноним (102), 07-Апр-26, 22:14   +/
>>Зачем это делать самому это должен делать язык, иначе зачем он нужен?

"Из ключевых областей применения отмечается системное программирование с близкими к Си возможностями, но с синтаксисом в стиле Go и обеспечением проверки типов"

Системное программирование - это работа с ресурсами системы (память, процессы, псевдотерминалы, сокеты и т.д.), и желательно на максимальной скорости, поэтому язык должен уметь поддерживать низкоуровневое программирование, без всяких там автоматических run-time проверок.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #108

101. Сообщение от ПомидорИзДолины (?), 07-Апр-26, 22:24   +/
Для JVM был ProjectGraal, емнип.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

102. Сообщение от Аноним (102), 07-Апр-26, 22:33   –1 +/
Нормальный массив - это какой? Напомню: язык C задуман как переносимый язык ассемблера, поэтому массивы в нём точно такие же как в языке ассемблера.
Например,
char buffer[1024];

это то же самое что

section .bss
    buffer resb 1024

Низкоуровневые массивы на языках ассемблера для того и задуманы чтобы работать с ними на низком уровне.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #84 Ответы: #105

105. Сообщение от Аноним (55), 08-Апр-26, 00:48   +/
> Нормальный массив - это какой?

Это который, ну, массив, а не голый указатель на кусок данных. Который можно предать в функцию. У которого можно взять количество элементов. Который можно скопировать / присвоить через =. Который можно сравнить через ==. Для которого можно дать компилятору хинты для автоматической проверки выхода за пределы границ. Который информацией о своем типе/размере дает компилятору возможность без проблем векторизовать операции над собой без маразма типа restrict.

В общем, массив, понимаешь?

> Низкоуровневые массивы на языках ассемблера для того и задуманы чтобы работать с ними на низком уровне.

Что конкретно из перечисленного мной выше (которое, заметь, существует в момент компиляции) мешает тебе работать с массивом на "низком уровне"?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #102 Ответы: #111

106. Сообщение от Аноним83 (?), 08-Апр-26, 00:56   –1 +/
Ох, да, щас всё брошу и побегу делать curl | sh чтобы безопасно поставить безопасный язык, который потом мне лефтпады бочками сам докачает откуда то.
Сразу после этого попрошу ИИ болванчика на гитхубе переписать мой С код на этот самый новый и правильный в мире язык.


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

Я то нашёл прекрасный выход: у меня куча прекрасного С кода, я просто дописываю LUA биндинги к нему и получаю все прелести и от С и от LUA.
А заодно я точно знаю что они оба никуда не денутся и через 20 лет, в отличии от браинфаков.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93 Ответы: #116

107. Сообщение от Аноним83 (?), 08-Апр-26, 01:00   +/
От части так и есть, только нюанс в том, что смузи языки базируются на С фундаменте.
Начиная с биоса, ядра ОС, дров, системных библиотек и заканчивая компиляторами, которые на платформе бутстрапятся начиная с того, что кто то пишет руками на асме примитивный С компилятор, которым потом собирают наормальный С компилятор, которым собирают уже всё остальное.

Поэтому все эти набросы: а давайте выкинем С они как: "а давайте выкинем фундамент из под дома, какой то он никрасивый и не понятно зачем нужен".

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #97 Ответы: #132

108. Сообщение от Аноним83 (?), 08-Апр-26, 01:03   +/
Да вы сами это всё придумали.
Под ваше определение подходят и мои программы на вижал беские которые я писал в студентчестве.

Скорость вы тоже выдумали: инит системы - самый системный из системного софт и многие на шелл скрипте написаны - куда уж медленее.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100 Ответы: #133

109. Сообщение от Аноним83 (?), 08-Апр-26, 01:39   +/
Когда пожалели то?
В начале 1970 года, когда юникс кодили?
А зачем тогда был нужен time_t на 64 бита?
До 2030+ года было 60+ лет, а память и вычисления были очень дорогими, и эти 32 быта собственно 60+ лет и хранили бы всегда 0 и тратили циклы проца на его обработку.
Какой в этом смысл!?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #80 Ответы: #115, #131

110. Сообщение от Аноним83 (?), 08-Апр-26, 01:42   –1 +/
Да я даже не знаю что вам сказать на такое.
Наверное этот язык не для вас, так бывает, нужно это признать и жить дальше не мешая окружающим.

С собственным классом для массивов на с++ я игрался в самом начале освоения языка.
Через некоторое время мне стало понятно что это всё не нужно то что я написал и достаточно того что есть в языке.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #84 Ответы: #112

111. Сообщение от Аноним83 (?), 08-Апр-26, 01:46   +1 +/
Так вам другой просто язык нужен, в С это реализуется не так как вы хотите.

То что вы перечислили - считается синтаксическим сахаром в С и это любой желающий может получить в 100500 готовых либ либо написать сам.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105 Ответы: #114

112. Сообщение от Аноним (55), 08-Апр-26, 04:03   +/
>> пожалели даже нормальные массивы добавить в свой язык
> Да я даже не знаю что вам сказать на такое.

Ну да: что тут скажешь если массивов-то тупо нет. Но вообще, если сказать нечего, то можно ничего не говорить.

> С собственным классом для массивов на с++ я игрался в самом начале освоения языка.
> мне стало понятно что это всё не нужно [...] достаточно того что есть в языке.

Твои выводы по личным хэллоуворлдам - это, безусловно, очень ценная информация и вообще веский аргумент. Но вот, например, авторам компиляторов, которыми ты эти хэллоуворлды собираешь, оказалось недостаточно - поэтому компиляторы Сишечки написаны на C++.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #110 Ответы: #113, #128

113. Сообщение от _ (??), 08-Апр-26, 04:11   +/
> Но вообще, если сказать нечего, то можно ничего не говорить.

но ты не воспользовался таким шикарным шансом и вывалил свой сок моска сюда :(

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

114. Сообщение от Аноним (55), 08-Апр-26, 04:12   +1 +/
> в С это реализуется не так как вы хотите.

"Как я хочу" оно в С никак не реализуется, потому что требует поддержки компилятора. Максимум, что можно сделать - это эмулировать эти фичи убогими самописными велосапедами.

> То что вы перечислили - считается синтаксическим сахаром в С

То, что я перечислил, в С физически отсутствует.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111 Ответы: #127

115. Сообщение от _ (??), 08-Апр-26, 04:15   +/
"Ты говоришь с ними ним языке, смысла которого он не понимает!(С) почти К-Д-Д
эмоджу какую нибудь запость - вот это оне поймут :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109

116. Сообщение от _ (??), 08-Апр-26, 04:17   +2 +/
> А заодно я точно знаю что они оба никуда не денутся и через 20 лет, в отличии от браинфаков.

... мне-БЪ твою уверенность :-\

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #134, #143

118. Сообщение от Аноним (118), 08-Апр-26, 08:51   +/
Если go не легковесный, то мы живём в век тотальной умственной дистрофии.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #135

121. Сообщение от Жироватт (ok), 08-Апр-26, 10:26   +/
Солод есть и там, и там.
А сотворённое автором есть ни что иное как пивас, а не виски
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

122. Сообщение от qrKot (?), 08-Апр-26, 10:41   +/
>> C целью упрощения в языке не поддерживаются каналы, сопрограммы и замыкания

Т.е. это "какбы Go, но без горутин и каналов"? Эталонное ненужно)

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

123. Сообщение от qrKot (?), 08-Апр-26, 10:42   +/
Да нафига эти горутины с каналами нужны. Одни ошибки и баги от них, и дебажить тяжело. То канал закрыть забудешь, то горутина утечет - головняк один)))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72

124. Сообщение от qrKot (?), 08-Апр-26, 10:56   +/
Go - это такой молоток.
Головка молотка (собственно, смысл самого инструмента) - асинхронная модель, как раз эти самые горутины, каналы, планировщик и т.д. Рукоятка - все остальное (синтаксис, дженерики, утиная типизация и вот это вот все), сделанное строго с оглядкой на головку, чтобы это как-то работало с асинхронной моделью.
Ну, короче, молоток достаточно необычный получается. С охренительным навершием и рукояткой в форме фалоимитатора - пользоваться можно, и ладушки.
Авторы solod'а, получается, оставили от этого молотка строго рукоятку)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

125. Сообщение от Аноним (125), 08-Апр-26, 11:19   +1 +/
Да практически всё, что приподносится как новое уже есть в D, но к сожалению об этом никто не знает. Очень жаль. Язык мог бы стать лекарством от многих болезней
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

126. Сообщение от Аноним (126), 08-Апр-26, 12:00   +/
> C целью упрощения в языке не поддерживаются каналы, сопрограммы и замыкания

А зачем такой Go вообще нужен? В этом же весь смысл.

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

127. Сообщение от Аноним83 (?), 08-Апр-26, 12:29   +/
С это не про общение с копмилятором, это про коненый результат в виде программы.

Поэтому и говорю - вам к другим ЯП.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114 Ответы: #129

128. Сообщение от Аноним83 (?), 08-Апр-26, 12:31   +/
Если вас то что есть не устраивает - ищите другие ЯП.
Вас же не принуждают использовать С.

Меня вполне устраивает, как и многих других.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #112 Ответы: #130

129. Сообщение от Аноним (55), 08-Апр-26, 13:17   +/
> С это не про общение с копмилятором, это про коненый результат в виде

...в виде наслоений UB, выходов за пределы буфера и double-free.

> Поэтому и говорю - вам к другим ЯП.

Это и так всем очевидно уже не первый десяток лет.

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

130. Сообщение от Аноним (55), 08-Апр-26, 13:27   +/
> Если вас то что есть не устраивает - ищите другие ЯП.

Только вот если упоминать про "другие языки", то прибегаешь ты и прочие эксперты и начинаете рассказывать, какие же эти языки г*о, а С прекрасный. А в этот раз в тебя не получилось, да, потому что, как ты сам писал, сказать нечего, ибо массивов нет и не будет.

> Вас же не принуждают использовать С.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #128 Ответы: #138

131. Сообщение от Аноним (55), 08-Апр-26, 13:35   +1 +/
> В начале 1970 года, когда юникс кодили?
> А зачем тогда был нужен time_t на 64 бита?
> До 2030+ года было 60+ лет

За тем же, за чем и сейчас: чтобы все (включая ABI-совместимость)  не разломалось в 2030+ году.

Хотя, справедливости ради, вряд ли юниксовые диды могли в те годы предположить, что кто-то в здравом уме будет использовать их наколеночные поделки в 2030+ году.

> память и вычисления были очень дорогими [...] тратили циклы проца на его обработку.

Поэтому на каждый чих бежали за O(N) по char* в поисках нуля. Дорогие вычисления и циклы проца, ага.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109 Ответы: #147

132. Сообщение от Аноним (55), 08-Апр-26, 13:51   +/
> смузи языки базируются на С фундаменте.

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

> Начиная с биоса, ядра ОС, дров, системных библиотек и заканчивая компиляторами, которые на платформе бутстрапятся

Это все не имеет никакого отношения ни к собственно языкам программирования, ни тем более их фундаменту.

> Поэтому все эти набросы: а давайте выкинем С

Покажи конкретно, где в обсуждении предлагали "выкинуть С". Наоборот: говорили о возможности "получить С код без страданий", но это не помешало тебе припласти свои любимые ветряные мельницы.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107 Ответы: #142

133. Сообщение от Аноним (137), 08-Апр-26, 13:53   +/
>Да вы сами это всё придумали.

Вы мне льстите :) . Всё-таки системное программирование придумал не я, а разработчики первых компьютеров, ещё в 50-е годы.

>Под ваше определение подходят и мои программы на вижал беские которые я писал в студентчестве.

Нет. Visual Basic - прикладное программирование, из него нельзя напрямую делать системные вызовы.

>Скорость вы тоже выдумали

Не, ну это уже откровенная лесть. Всё-таки, большинство программистов используют системное программирование для повышения эффективности своих программ (скорость, использование памяти, размер образа программы). Это не я придумал.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #108 Ответы: #144

134. Сообщение от Аноним (55), 08-Апр-26, 13:54   +1 +/
>> А заодно я точно знаю что они оба никуда не денутся и через 20 лет, в отличии от браинфаков.
> ... мне-БЪ твою уверенность :-\

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

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

135. Сообщение от Аноним (137), 08-Апр-26, 13:55   +/
Вы кем бы предпочли быть - слабаком или дистрофиком?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118

136. Сообщение от Аноним (137), 08-Апр-26, 14:03   +/
>не страдал - не эксперт!

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

>задачу нужно решать нажатием пары кнопок

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

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

137. Сообщение от Аноним (137), 08-Апр-26, 14:14   +/
>весь флёр гениев-академиков как-то слетает быстро

Это кто среди создателей Unix был академиком? Керниган преподавал в университете, но он не был создателем Unix.

>гениальные юникс-диды

Если вы про создателей Unix Ритчи и Томпсона, то они, действительно, были гениями и совершили революцию. Отрицая это, вы выставляете себя полным невежей и не очень умным человеком.

>пару буков для copy (вместо cp) и одну для create (creat),

Вы, похоже, человек молодой, и с DOS'ом не работали. А я работал не только с DOS, но и с RSX-11M, и могу сказать что эти сокращения в названии команд действительно ускоряют работу в консоли.

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

138. Сообщение от Аноним (138), 08-Апр-26, 14:41   +/
Надо же тебя заткнуть как-то /s

Так-то слайсы предлагал добавить сам создатель языка, но это было уже в комитетовские времена (1990) и комитет не оценил.

https://www.bell-labs.com/usr/dmr/www/vararray.pdf (если лежит, то archive.org, если он тоже лежит - то обсуждения на forum.dlang.org и news.ycombinator.com).

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

139. Сообщение от Bottle (?), 08-Апр-26, 15:13   +/
Вот это 🔥, а не технический стек!
Нужно в эту цепочку ещё добавить кросс-компиляцию и систему сборки, генерирующую файлы сборки (прямо как CMake). Удачной, как говорится, отладки!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95

142. Сообщение от Аноним83 (?), 08-Апр-26, 19:41   –1 +/
Тема мёртвых языков обсуждается в разделе археологии.

С - это база современного программирования да и вообще всего ИТ, можете это не принимать сколько вам угодно, реальность от этого не изменится.

То что там гдето в цепочке пкомпиляции будет С - не значит ровным счётом ничего. Ты или пишешь на С или не пишешь.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132 Ответы: #145

143. Сообщение от Аноним83 (?), 08-Апр-26, 19:44   +/
А куда оно денется?

Думаешь кто то поведётся на оленей с их аргументами и будет всё переписывать с С на что то ещё?
Ну дурачки встречаются, особенно когда есть другие дурачки с деньгами это спонсировать.
А так то это индустрии и бизнесу не упёрлось.

Луа так только начал взлетать - сейчас через игры туда дети заходят.
Для них он как VBA для олдскулов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #116 Ответы: #146

144. Сообщение от Аноним83 (?), 08-Апр-26, 19:49   +/
В венде сисколы не делаются напрямую, там всё через винапи, и из вижалбейска это доступно.
Любое приложение может быть переписано на вижалбейские, с некоторыми ограничениями или повышенной трудоёмкостью. Но именно в части общения с ОС там ограничений особо то и нет - описывай винапи функцию, да дёргай её.

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

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

145. Сообщение от Аноним (55), 08-Апр-26, 20:14   +/
>> Фортран.
> Тема мёртвых языков обсуждается в разделе археологии.

Это Фортран-то мертвый? Твоя экспертиза поразительна...

Иди поинтересуйся, что используется на суперкомпьютерах для научных вычислений и моделирования. И задумайся, почему Фортрн, а не сишочка. Дам подсказку: в частности потому, что в Фортране есть те самые first-class массивы и операции над ними, которые (в т.ч. в силу отсутствия маразматических дидовых ограничений в стандарте времен PDP-11) элементарно ложатся на архитектуру современных CPU с ее параллелизмом на уровне инструкций.

Поэтому по скорости Фортран уделывает сишочку в сухую. И даже костылик restrict тут не спасает.

> С - это база современного программирования да и вообще всего ИТ

И всей вселенной, ага.

> можете это не принимать сколько вам угодно, реальность от этого не изменится.

Твоя реальность - это информационный пузырик из опенсорсных поделок и твоих личных хэллойворлдов.

> То что там гдето в цепочке пкомпиляции будет С - не значит ровным счётом ничего.

Иронично это слышать от того, кто буквально в предыдущем сообщении пел о процессе бутстрапе компиляторов, где сишочка именно что "в цепочке".

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

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

146. Сообщение от Аноним (55), 08-Апр-26, 20:21   +/
> А куда оно денется?

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

> Думаешь кто то поведётся на оленей с их аргументами и будет всё переписывать с С на что то ещё?

Ну как бы уже все что можно переписали на C++, а теперь уже и на Раст потихоньку. Даже в Linux тянут. Вот буквально компилятор, которым ты свою ненаглядную сишочку компилируешь, написан именно на C++, а не C. А в браузере, через который ты наваливаешь свою экспертизу, помимо C++ уже куча Раста. Я уж молчу про Андроид...

Ну и самое главное: новые проекты на нем не будут начинать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #143 Ответы: #148

147. Сообщение от Аноним83 (?), 08-Апр-26, 20:25   +/
50 лет хранить и гонять одни нули - это к особо одарённым и богатым буратинам.
У меня первый комп был на Z80 с 48кб озу, из которых под программы было доступно примерно 32кб.
Плевать я хотел на ваши АБИ (которых у меня и не было то), и проблемы 2030 в своём 1998 году.
Там и без этого всё не быстро работало.


Использовать str*() функции или нет - личный выбор каждого. Вы же с 64 бит time_t навязываете ваше личное мнение индустрии.

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

148. Сообщение от Аноним83 (?), 08-Апр-26, 20:31   +/
Чувачок, ты бы вытащил голову из Ж те хх, и посмотрел в линкедин чтоли.

Для прикола - есть вакансии пограмиста где вообще указан ворох языков и написано: хорошо если знаете 2-3 из списка :)
А часто вакансии вообще про технологии а не про языки, про языки как раз обычно отбитые вакансии от расбоев для растбоев, или от крестовиков для крестовиков короче людей поехавших на ЯП.

Раст как появился - так же может и исчезнуть: ничего нового или полезного он индустри не принёс.

Вы можете верить во что угодно, я вот спокойно начинаю новые проекты на С.

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


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

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




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

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