Язык Zig (канал)
174 subscribers
26 photos
3 videos
6 files
239 links
Download Telegram
In the Zig project, we closed 19% of total open issues during December this year.

This was not the work of a "stale bot", but of humans who painstakingly verified that each and every issue was resolved and had test coverage if applicable.

Finally, our technical debt is being paid off and we can reach for some ambitious goals in 2023.
https://mastodon.social/@andrewrk/109621905821062620
👍2
In about 30 minutes I'll stream working towards the Zig Package Manager.

This will be a yak-shaving stream - there is much to do before we can work on the package manager logic itself.

https://twitch.tv/andrewrok/
https://mastodon.social/@andrewrk/109627337708582296
👍1
For those who haven't followed the discusison in #berlin, March 1st we're going to have a one-off event hosted by Delivery Hero.

We're going to have 3 short talks by Adam (the organizer), Joachim (everyone's favorite german-singaporean, also core team member), and me. The talks are going to be accessible for newcomers so don't be afraid.

Delivery Hero is offering food, drinks and afterwards we're going out to a pub with those who want to spend a bit of extra time together.

https://www.meetup.com/zigberlin-meetup-group/events/290511497
👍1
Язык Zig (канал)
https://kristoff.it/blog/zig-self-hosted-now-what/ #upstream #блоги
А вот и "new for loop syntax" из поста :)
https://github.com/ziglang/zig/pull/14671
zig fmt пофиксит старый код 😋
#upstream

P.S. тут ответ на более ранний пост в канале, но в чате походу не видно

upd: Смержили 🎉🎉🎉
🎉4🤔1
Кстати, совсем забыл: я тут вместе с Gso321 (он начал, я закончил) запилили на Gentoo Wiki статью про Zig:
https://wiki.gentoo.org/wiki/Zig
https://wiki.gentoo.org/wiki/Zig/ru

Там (само собой) в основном генто-специфичная информация, но какая-то информация может быть полезна всем пользователям :)
🔥41👏1
Ещё я тут обвязал libgccjit в Zig, вроде выглядит идиоматично :)

https://git.sr.ht/~bratishkaerik/zig-libgccjit

Там осталось несколько мелочей, но библиотека уже сейчас юзабельна, в папке "examples/" есть 4 из 5 портированных примера с C на Zig, из официального сайта libgccjit (сам примеры выглядят не так идиоматично, потому чтоя пытался воссоздать примеры строка-в-строку)

для сравнения:
https://git.sr.ht/~bratishkaerik/zig-libgccjit/tree/a287291ba38cdf99ebac08b5fef745b547ef177f/item/examples/gcc_tutorial_5.zig#L24
const char_ptr_ptr_type: *GccJit.Type = ctxt.getType(.char).getPointer().getPointer();

https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/jit/docs/examples/tut05-bf.c;h=f948ede796a48dbae6e903c3b4b99cf2d5d4a103;hb=HEAD#l23
gcc_jit_type *char_ptr_ptr_type =
gcc_jit_type_get_pointer (
gcc_jit_type_get_pointer (
gcc_jit_context_get_type (ctxt, GCC_JIT_TYPE_CHAR)));

#библиотеки
x86 backend (нативный без LLVM) 82% тестов проходит
👍3
https://github.com/ziglang/zig/pull/15569
пока сравнения производительности с старой системой нет:
> Once the behavior tests are passing, I can provide at least some measurement of memory usage and perf delta against master branch.

Motivation в описании:
> ...
> Serialization and deserialization of the InternPool as part of incremental compilation
и оригинальном коммите:
https://github.com/ziglang/zig/commit/cf88cf2657d721c68055a284e8c498a18639f74c
> As a result, we have an extremely efficient encoding of types and values, represented only by three arrays, which has no pointers, and can therefore be serialized and deserialized by a single writev/readv call. The map field is denormalized data and can be computed from the other two fields.
> This is in contrast to our current Type/Value system which makes extensive use of pointers.
#upstream
4👍1
https://github.com/extism/extism
Система универсальных плагинов. Запускайте WebAssembly расширения в вашей программы. Используются идиоматические Host SDK'ы для Go, Ruby, Python, Node, Rust, C, C++, OCaml, Haskell, PHP, Elixir/Erlang, .NET, Java, Zig и других (остальные coming soon).
Наборы разработки плагинов (PDK) для создателей плагинов поддерживают Rust, AssemblyScript, Go, C/C++, Haskell и Zig.
Язык Zig (канал)
x86 backend (нативный без LLVM) 82% тестов проходит
x86 backend (нативный без LLVM) проходит 90% behaviour-тестов 🔨🔨🔨
🔥8🎉53
https://www.twitch.tv/vexu0
великий чинитель стримит
> новый translate-c на базе Arocc для Zig
🔥211