Pull to refresh

Comments 8

Я всегда думал что malloc выделяет память в куче. "Когда мы вызываем malloc, мы просто надеемся, что для неё будет достаточно пространства в стеке, и почти никогда этого не проверяем"

Вы всю статью прочтите - это бессмысленный набор слов.

Можно несколько примеров? По моему, достаточно приятная статья и это при том, что я "топлю за раст".

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

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

На самом деле преимущества Zig перед C видны, если писать на C довольно долго и ненавидеть его за то, что он банально устаревает, как язык. Хотя сам C ещё о-го-го какой с точки зрения возможностей. Более 50 лет в строю, это ли не показатель.

Если коротко, Zig упрощает код на C за счёт своих нововведений. Zig именно позиционируют как замену C. Именно поэтому у этого языка очень тесная связь с C. Можно импортировать заголовочные файлы .h из C, вызывать функции C. Даже компилятор Zig компилирует код на C сам. Всё прям сквозит очевидными выводами.

Для меня лично очень не хватает в C вложенных методов в структуры. Меня лично бесит постоянно повторять одни и те же слова для названий функций, когда они выполняют определённую работу над данными в структуре, которую я передаю в эту функцию, как параметр. И я очень рад появлению такого языка, как Zig, так как для меня лично он решает ряд проблем с архаичностью языка C. И при этом я не теряю возможностей самого языка C

Zig пока один из четырёх условно новых языков за которымя я наблюдаю, кроме него это Nim, Odin и V - автору рекомендую посмотреть в их сторону, возможно что-то приглянется.
Пока личного фаворита выбрать не получилось но все четыре невероятно интересные проекты способные лично для меня стать альтернативой C. Как говорится будем наблюдать.

Поэтому мы передаём аллокатор методу init, но не передаём его циклу событий.

Что мешает методу init сохранить аллокатор в объекте?

Sign up to leave a comment.

Articles