[RU] Язык Zig (канал)
sizes.zig
Если вдруг кто думал, что Zig «крадёт» последний или первый бит и что
x86-windows-gnu:
x86-linux-gnu:
@sizeOf(?u63) == @sizeOf(u64), это не так:x86-windows-gnu:
========================
Type: u63
@sizeOf: 8
@bitSizeOf: 63
@alignOf: 8
========================
Type: u64
@sizeOf: 8
@bitSizeOf: 64
@alignOf: 8
========================
Type: ?u63
@sizeOf: 16
@bitSizeOf: 128
@alignOf: 8
========================
Type: ?u64
@sizeOf: 16
@bitSizeOf: 128
@alignOf: 8
x86-linux-gnu:
========================
Type: u63
@sizeOf: 8
@bitSizeOf: 63
@alignOf: 4
========================
Type: u64
@sizeOf: 8
@bitSizeOf: 64
@alignOf: 4
========================
Type: ?u63
@sizeOf: 12
@bitSizeOf: 96
@alignOf: 4
========================
Type: ?u64
@sizeOf: 12
@bitSizeOf: 96
@alignOf: 4
🤯3❤1🤔1
Pledging Another $400,000 to the Zig Software Foundation
Больше денег, можно в том числе и для core team новые контракты создать, их уже 15 человек!
https://ziglang.org/news/welcoming-new-team-members/
https://ziglang.org/zsf/#core-team (нумерацию я расставил):
#блоги #upstream
Больше денег, можно в том числе и для core team новые контракты создать, их уже 15 человек!
https://ziglang.org/news/welcoming-new-team-members/
These folks are next in line for ZSF contracts once funds are available.
https://ziglang.org/zsf/#core-team (нумерацию я расставил):
1. Andrew Kelley (andrewrk)
2. Loris Cro (kristoff)
3. Isaac Freund (ifreund)
4. Veikka Tuominen (Vexu)
5. Michael Dusan (mikdusan)
6. Jacob Young (jacobly)
7. Matthew Lugg (mlugg)
8. Alex Rønne Petersen (alexrp)
9. Mason Remaley (MasonRemaley)
10. Ryan Liptak (squeek502)
11. Frank Denis (jedisct1)
12. Ali Cheraghi (alichraghi)
13. Justus Klausecker (justusk)
14. Casey Banner (kcbanner)
15. Pavel Verigo (pavelverigo)
#блоги #upstream
Codeberg.org
Andrew Kelley
President and Lead Developer of [Zig Software Foundation](https://ziglang.org/)
@bitCast переделали и работу чисел с "нетипичными" размерами (u3, u17, u63 etc.):Devlog и запрос на слияние от mlugg:
* https://ziglang.org/devlog/2026/#2026-06-25
* https://codeberg.org/ziglang/zig/pulls/35711
Основной proposal (от jacobly):
* https://github.com/ziglang/zig/issues/19755
Чет я писал и писал, но получилось запутанно, так что на потом оставил.
#upstream #блоги
Forwarded from Denis D
YouTube
Odin 1.0 Announcement
Odin 1.0 has finally been announced! A decade in the making and will be coming in January 2027.
0:00 Intro
1:15 The Odin Roadmap
1:34 Inline Assembly
1:48 HTTP Package
2:16 iOS Support
2:36 Image and Zip Packages
2:53 Naming Convention
3:24 Release Schedule…
0:00 Intro
1:15 The Odin Roadmap
1:34 Inline Assembly
1:48 HTTP Package
2:16 iOS Support
2:36 Image and Zip Packages
2:53 Naming Convention
3:24 Release Schedule…
🕊4🔥1
Denis D
https://youtu.be/dLPAqXi9In0
Odin таки смог и дошел, впрочем и до этого у них была намного лучше история с стабильностью и обновлениями, чем у Zig…
Когда он выйдет, мы еще на 0.17 будем наверно
Когда он выйдет, мы еще на 0.17 будем наверно
🤝9
[RU] Язык Zig (канал)
Rewrite Bun in Rust the binary size shrinks by 3 MB - 8 MB, the benchmarks are between neutral and faster
Rewriting Bun in Rust
Кусок про stack size:
Ну и прочие полезные детали.
Пост с мыслями от Эндрю
Я честно скажу, для меня очень странный пост, не зашло. Тут в основном не-техническое обсуждение
#блоги
Кусок про stack size:
Rust's LLVM IR codegen emits LLVM's llvm.lifetime.start and llvm.lifetime.end intrinsics for stack variables when they are no longer in use, which lets LLVM reuse stack space slots. This lets large functions with nested scopes use significantly less stack space.
Previously, we manually worked around an open issue by refactoring particularly large functions into many smaller functions.
Ну и прочие полезные детали.
Пост с мыслями от Эндрю
Я честно скажу, для меня очень странный пост, не зашло. Тут в основном не-техническое обсуждение
#блоги
Bun
Rewriting Bun in Rust
Why & how we rewrote Bun from Zig to Rust
👍1
В "Brno University of Technology, Faculty of Information Technology" уже вторая по счету команда на дисциплине по компиляторам пишет "компилятор Zig на Си"
https://github.com/IFJ-zig/Zig-compiler
https://github.com/MarekPazur/IFJ-2024
https://github.com/IFJ-zig/Zig-compiler
https://github.com/MarekPazur/IFJ-2024
GitHub
GitHub - IFJ-zig/Zig-compiler: Zig compiler
Zig compiler. Contribute to IFJ-zig/Zig-compiler development by creating an account on GitHub.
❤2🔥1
[RU] Язык Zig (канал)
В "Brno University of Technology, Faculty of Information Technology" уже вторая по счету команда на дисциплине по компиляторам пишет "компилятор Zig на Си" https://github.com/IFJ-zig/Zig-compiler https://github.com/MarekPazur/IFJ-2024
GitHub
GitHub - matusmihaljevic/butfit-ifj: Compiler for the IFJ24 language, a subset of Zig. It performs lexical, syntax and semantic…
Compiler for the IFJ24 language, a subset of Zig. It performs lexical, syntax and semantic analysis and generates assembly-like intermediate language from source code read on standard input. - matu...
👍1🔥1
Прогресс по 0.17.0:
16 Открыто
146 Закрыто
90%
Остались в основном баги и регрессии. Плюс две фичи и один пулл-реквест:
build server protocol (самое важное, и вроде как приоритет для Эндрю. Полезно для ZLS, ZigBrains и т.д.)
introduce the concept of adding path dependencies of the build script itself
Resolve relative install directories against install prefix
#upstream
16 Открыто
146 Закрыто
90%
Остались в основном баги и регрессии. Плюс две фичи и один пулл-реквест:
build server protocol (самое важное, и вроде как приоритет для Эндрю. Полезно для ZLS, ZigBrains и т.д.)
introduce the concept of adding path dependencies of the build script itself
Resolve relative install directories against install prefix
#upstream
👍19🤡1
Ochi — база даных для хранения структурных логов.
Хранит данные на диске, не требуется S3.
Не использует
Не пишет WAL, данные идут прямиком в SSTable.
Реализуется LSM на основе time aware компакции.
https://github.com/ochi-team/ochi
#проекты
Хранит данные на диске, не требуется S3.
Не использует
mmap для управления файлоами. Не пишет WAL, данные идут прямиком в SSTable.
Реализуется LSM на основе time aware компакции.
https://github.com/ochi-team/ochi
#проекты
GitHub
GitHub - ochi-team/ochi: Ochi is a fast, cost-effective, Loki compatible database for logs.
Ochi is a fast, cost-effective, Loki compatible database for logs. - ochi-team/ochi
👍13
Автор: @blackfailer
fullaz — это низкоуровневая библиотека хранения данных и индексов, которая пишется на Zig с целью изучить Zig. Это пока не production-ready библиотека.
Сейчас в библиотеке есть:
Для библиотеки есть пара демок. Хранятся тут:
https://github.com/newenclave/fullaz/tree/master/demos
* fsx — файловая система, которая целиком хранится внутри одного файла. Директории построены на
* galaxy — небольшая ASCII-галактика, по которой можно летать. Звёзды хранятся в
Для galaxy также собрал WASM-версию, которую можно попробовать прямо в браузере:
https://newenclave.github.io/galaxy/
https://github.com/newenclave/fullaz/
#проекты #библиотеки
fullaz — это низкоуровневая библиотека хранения данных и индексов, которая пишется на Zig с целью изучить Zig. Это пока не production-ready библиотека.
Сейчас в библиотеке есть:
B+Tree, weighted B+Tree, skip list, radix table, R-tree, эксперименты с R*-tree, page cache, free-space map и простой redo-only WAL.Для библиотеки есть пара демок. Хранятся тут:
https://github.com/newenclave/fullaz/tree/master/demos
* fsx — файловая система, которая целиком хранится внутри одного файла. Директории построены на
paged B+Tree, а содержимое файлов хранится в цепочках страниц с weighted-индексом (есть ещё в планах добавить снапшоты).* galaxy — небольшая ASCII-галактика, по которой можно летать. Звёзды хранятся в
paged R*-tree, а отображение экрана является обычным spatial query по bounding box.Для galaxy также собрал WASM-версию, которую можно попробовать прямо в браузере:
https://newenclave.github.io/galaxy/
Проект всё ещё активно развивается и остаётся в первую очередь учебной площадкой для экспериментов с Zig, структурами данных и storage engine internals.
https://github.com/newenclave/fullaz/
#проекты #библиотеки
GitHub
GitHub - newenclave/fullaz: fullaz is a low-level storage and indexing library written in Zig.
fullaz is a low-level storage and indexing library written in Zig. - newenclave/fullaz
👍11
Напоминаю, что у нас есть активный чат для полноценного общения, а не только для комментариев к постам: @ziglang_ru
[RU] Язык Zig (канал) pinned «Напоминаю, что у нас есть активный чат для полноценного общения, а не только для комментариев к постам: @ziglang_ru»
Forwarded from Андрей Краевский
Codeberg.org
introduce an actually memory safe (unlike borrow checking) compilation mode inspired by Fil-C
Based on prior art: [Fil-C](https://fil-c.org/)
Currently Zig has:
```zig
pub const Optimize = enum {
/// Safety checks enabled. Optimize for bug detection, accurate debug info,
/// and compilation speed (in that order).
debug,
/// Safety…
Currently Zig has:
```zig
pub const Optimize = enum {
/// Safety checks enabled. Optimize for bug detection, accurate debug info,
/// and compilation speed (in that order).
debug,
/// Safety…
🔥5
Андрей Краевский
https://codeberg.org/ziglang/zig/issues/36237
> actually memory safe (unlike Rust)
Через сколько, интересно, он перепишет название… за 6 часов никто не упомянул внутри :)
Через сколько, интересно, он перепишет название… за 6 часов никто не упомянул внутри :)