Еще (ужасно) потестил в браузере онлайн ИИшки простым вопросом (поиск и thinking помечал как optional или врубал, но в идеале без него или сам должен был догадаться включить их):
Рандомы:
GLM 4.6: ❌
GLM 4.7: ❌
Mistral: ❌
Что я обычно юзаю:
ChatGPT: ❌
Gemini 3 Thinking: ✅
DeepSeek: ❌
Claude Sonnet 4.5: ✅
Kimi K2: ✅
For porting Zig 0.14 code to Zig 0.15: what is the correct replacement for `readByte()` on a file/reader, and where is it called from?
Рандомы:
GLM 4.6: ❌
GLM 4.7: ❌
Mistral: ❌
Что я обычно юзаю:
ChatGPT: ❌
Gemini 3 Thinking: ✅
DeepSeek: ❌
Claude Sonnet 4.5: ✅
Kimi K2: ✅
🔥1
Язык Zig (канал)
Еще (ужасно) потестил в браузере онлайн ИИшки простым вопросом (поиск и thinking помечал как optional или врубал, но в идеале без него или сам должен был догадаться включить их): For porting Zig 0.14 code to Zig 0.15: what is the correct replacement for `readByte()`…
Из тех, кто "не угадал", только DeepSeek был ближе всех к правде.
Он почему-то думал, что в новом API:
*
*
И предложил второе. А на деле там:
*
*
ChatGPT и прочие вообще далеко ушли, какие то allocByte и ownByte стали придумывать.
Он почему-то думал, что в новом API:
*
takeByte: i8*
takeByteUnsigned: u8И предложил второе. А на деле там:
*
takeByte: u8*
takeByteSigned: i8ChatGPT и прочие вообще далеко ушли, какие то allocByte и ownByte стали придумывать.
Язык Zig (канал)
https://bun.com/blog/bun-joins-anthropic
Мейби после этой покупки они натренируют еще больше. Если я правильно все помню у bun был самый большой репозиторий Zig кода, больше чем даже сам ziglang/zig. После покупки плюс люди знающие этот язык, и вуаля!
Forwarded from mak
Codeberg.org
frontend: rewrite `switch` logic
Supersedes [#24720](https://github.com/ziglang/zig/pull/24720)
Supersedes [#25467](https://github.com/ziglang/zig/pull/25467)
Resolves #30660
Resolves #30606
Resolves #30157
Resolves #30154
Resolves #30153
Resolves [#25644](https://github.com/ziglang/zig/issues/25644)…
Supersedes [#25467](https://github.com/ziglang/zig/pull/25467)
Resolves #30660
Resolves #30606
Resolves #30157
Resolves #30154
Resolves #30153
Resolves [#25644](https://github.com/ziglang/zig/issues/25644)…
👍3
mak
https://codeberg.org/ziglang/zig/pulls/30776
Куча фиксов и немного фич:
* switch с void и другими пустыми типами теперь работает нормально
* Теперь можно ловить теги без inline switch:
* Result type теперь нормально передается:
Для функций по типу
* switch с void и другими пустыми типами теперь работает нормально
* Теперь можно ловить теги без inline switch:
* Result type теперь нормально передается:
Для функций по типу
@intCast или @enumFromInt:const a: u16 = 0;
const b: u32 = 0;
switch (a) {
@intCast(b) => ..., // теперь работает
}
const Enum = enum(u8) { ... };
const c: Enum = ...;
switch (c) {
@enumFromInt(0) => ..., // теперь работает
}
❤2👍1
Язык Zig (канал)
Куча фиксов и немного фич: * switch с void и другими пустыми типами теперь работает нормально * Теперь можно ловить теги без inline switch: * Result type теперь нормально передается: Для функций по типу @intCast или @enumFromInt: const a: u16 = 0; const b:…
Или Decl literals:
const Tot = enum {
a,
b,
pub const c: Tot = .a;
}
switch (...) {
.b => ...,
.c => ...
}🔥2
Язык Zig (канал)
Или Decl literals: const Tot = enum { a, b, pub const c: Tot = .a; } switch (...) { .b => ..., .c => ... }
switch (...) {
.a => |_, tag| {} // теперь можно теги ловить в обычной ветке, не только inline
}👍2
Finding and Fixing Ghostty's Largest Memory Leak
Интересный трюк для macOS аллокаторов:
И помечают свою память для отладчиков и прочих вещей на MacOS. Жалко только скриншотов в посте нет.
Интересный трюк для macOS аллокаторов:
inline fn pageAllocator() Allocator {
// In tests we use our testing allocator so we can detect leaks.
if (builtin.is_test) return std.testing.allocator;
// On non-macOS we use our standard Zig page allocator.
if (!builtin.target.os.tag.isDarwin()) return std.heap.page_allocator;
// On macOS we want to tag our memory so we can assign it to our
// core terminal usage.
const mach = @import("../os/mach.zig");
return mach.taggedPageAllocator(.application_specific_1);
}И помечают свою память для отладчиков и прочих вещей на MacOS. Жалко только скриншотов в посте нет.
🔥4
from zig-gamedev discrod server:
https://github.com/Srekel/tides-of-revival
И мотивация:
https://github.com/Srekel/tides-of-revival
hey, not sure if you have heard or not but we've decided to move the next version of Tides from Zig to Jai. Our current release should happen in January I hope, or maybe if I cram it in before the end of the year (mostly a matter of how much polish I want to give it). I can still maintain zflecs, at least for a while (we'll be using flecs in the future as well and I have an interest in keeping tabs on making sure there are no weird language-spanning binding issues 🙂 )
We are still on Zig 0.14.1 though and an older version of zflecs, so I'm not able to actually update zflecs or test PRs anymore, such as this one.
https://github.com/zig-gamedev/zflecs/pull/31
We are using a number of libraries from zig-gamedev so hopefully the Tides repo will remain a useful "how do I actually use zaudio in practice" reference for a good while 🙂
И мотивация:
and we have basically come to the realization that Zig isn't great for game development. I mean it's definitely better than C and C++ in various ways, but also not in other ways. At the start it looked like it was going to be more suited for gamedev but it has aligned more with lowlevel/systems programming. So maybe fine for lower level engine programming or libraries, but less so for the more artistic and iterative parts of game development. And now there are two C++ replacement languages that are basically designed for game development - Odin and Jai - and of those Jai speaks more to us. So long term we think it's a choice that will bring us more speed and more joy.
GitHub
GitHub - Srekel/tides-of-revival
Contribute to Srekel/tides-of-revival development by creating an account on GitHub.
❤1
GitHub
RFC: Improved State Machine Codegen by folkertdev · Pull Request #3720 · rust-lang/rfcs
View all comments
Rendered
This RFC adds loop match:
a loop and match can be fused into a loop match <scrutinee> { /* ... */ }
a loop match can be targeted by a continue <valu...
Rendered
This RFC adds loop match:
a loop and match can be fused into a loop match <scrutinee> { /* ... */ }
a loop match can be targeted by a continue <valu...
RFC: Improved State Machine Codegen
Не знал, но в Rust тоже могут добавить
Не знал, но в Rust тоже могут добавить
labeled switch:Prior art
This idea is taken fairly directly from zig.
👍1🤔1👀1😨1
refAllDeclsRecursive удалён (после стольких лет нелюбви от Эндрю)
https://codeberg.org/ziglang/zig/commit/790d28d6cd9029805af857d56645a6ce191bfe91
#upstream
https://codeberg.org/ziglang/zig/commit/790d28d6cd9029805af857d56645a6ce191bfe91
#upstream
🫡3👨💻1
Furthermore, when this work is combined with the recent std.Io changes, there is potential for users to seamlessly control how libc performs I/O - for example forcing all calls toreadandwriteto participate in an io_uring event loop, even though that code was not written with such use case in mind. Or, resource leak detection could be enabled for third-party C code. For now this is only a vaporware idea which has not been experimented with, but the idea intrigues me.
https://ziglang.org/devlog/2026/#2026-01-31
#upstream
👍3
Язык Zig (канал)
Furthermore, when this work is combined with the recent std.Io changes, there is potential for users to seamlessly control how libc performs I/O - for example forcing all calls to read and write to participate in an io_uring event loop, even though that code…
The immediate goal is to replace all the C code we bundle from musl, wasi-libc, and MinGW-w64 with Zig code. So if you cross-compile for those libcs with static linking, you get Zig's libc which is API/ABI-compatible. In the future, it's entirely possible that we could expand the scope of Zig's libc to also be API/ABI-compatible with the statically-linked libcs from FreeBSD, NetBSD, etc. (We don't currently bundle the static C code for those.)
https://lobste.rs/s/pfhei9/zig_libc#c_pl9sub
👍4🔥1
Forwarded from Zig reporter
❤2🤔1
👍12