Hmm #RiverWM has updated to using #Zig 0.11.0 but #VoidLinux doesn't seem like it's going to get the Zig update anytime soon. As much as I love Void I've hit a few barriers which to be fair are probably my own doing because sometimes I want to run the latest from git. Not sure what the answer is? Do I suck it up and try another approach or do I head back to my roots aka Arch ?
I wish I could just cross compile my game to the 4 places from Windows. #zig makes this trivial but getting the OS SDK's and dependencies to link up right just feels really impenetrable.
Gone back to #RiverWM for a while as Qtile under #Wayland is really not that stable at the moment and what with the latest Python release things got worse under #Void so I'm going to give River another shot but I am tied between it and #Sway as a fallback to Qtile. Hyprland just doesn't interest me, Been there got the t-shirt thanks but no thanks. Fingers crossed development picks up soon on River and they move to Zig 0.11.0 . Might even tempt me to start learning #Zig ? 🤔
@pkw spending a weekend with go has reminded me of @pjotrprins's talk at Fosdem about Zig, where he was commenting on Rust being too much when you just want to get into a bit-bucket soas to wrap something up to program with scheme. and while Go is about as high level as scheme and thus not what you would reach for, its made me think I should try #zig, because now I'm less convinced that trying to improve C is a matter of putting lipstick on a pig.
Now that I have proven that I can hack on #ScarletDME with zig....it's time to actually learn #zig
It looks like the best resources are still ziglings and learnzig. I did do ziglings ages ago but never got around to actually using zig so I don't know if I really learned anything.
This time I'll take some notes while doing the ziglings. The big things I want to learn is wtf is the @ symbol doing. What does ?* mean? What is .{}? I think I saw a .&{} as well. How do strings work?
My week (other than a small amount of remote $dayjob) has mostly been spent watching YouTube videos in one comfy chair, windows open to maintain fresh air.
I think it's about time for another #introduction, because it's been a while and a bit has changed.
Hi, I'm Chris. I'm a software engineer of about 13 years, with most of that being in both front end and back end web development. In a lot of circles I'm known as the #crystal guy, because for a long time that was my favorite programming language. I wouldn't say I have a favorite anymore, but I use #crystallang, #zig, #ruby, #python, #typescript, and a ton of other languages.
I am also a father of 2 beautiful children. Both of them were born prematurely, so that number will not be increasing.
@mrnugget Who knows how these social clusters form 🤷♂️
I joined twitter in 2008, but over the past couple of years it seemed as if the old crowd just up and left for other things.
Feels a bit like Conway's Game of Life where with some clusters just become stable and others dissipate. If you have a good thing going in Twitter, hang in there.
A few people in the thread did mention hashtags, which have a completely different dynamic in Mastodon, since you can follow them like a regular account – I follow things that interest me like #rustlang and #zig and #ocaml. They're a great way to discover good content outside my network; and conversely, a great way to get posts picked up more broadly
🧀 Bounties Damage Open Source Projects
➥ ziglang.org
「 Instead of scouting for a suitable candidate, you’re letting battle royale dynamics pick a winner for you, at the expense of everybody who’s going to lose the competition.
Instead of creating a clear contract where you take on some of the risk, you implicitly put the entirety of the risk on the contestants (eg partial solutions don’t get any payout) 」
#HowToThing#010 — Creating a basic web app with declarative UI/DOM creation via Zig/WebAssembly and the super extensible https://thi.ng/wasm-api and its https://thi.ng/wasm-api-dom add-on module, both hybrid TypeScript/Zig libraries. See alt text of images for details.
@ambihelical Languages #Nim, #V, #zig all do have varying degrees and flavors of compile time safety checks. E.g. in nim you can catch an out of bounds array access, while rust crashes.
There is a lot I love about rust, but there are serious problems (not: tradeoffs) that would need a complete redesign. It was released way too soon, and should have evolved while being used to rewrite FF.
C++ has been around for 38 years, we can wait a little longer.
Early notes on #zig: ability to cross compile C code seems cool. The notion of using the language as a build system seems cool, but calling Makefiles "esoteric" as compared to build.zig files seems comically out of place. Especially since the structure of std.Build seems to have changed with 0.11, and many examples on the web no longer even work. Zig itself has syntax which seems overly verbose and not at all intuitive to this C programmer.
@lhp Just getting back to this. I started to fix the #zig#cairo bindings which use deprecated zig methods, but havn't really be able to make it work. Maybe I should start looking for more maintained alternatives?
Trying out Zig, mainly for its cross-compilation options, is on my todo list, but in the meantime I think these are some of the most comprehensive and detailed release notes I've ever seen:
The more I look into Hare the more I'm convinced it honestly may be the language I've been looking for.
Easy to grasp syntax, namespaces, proper strings, no header files.. It's "boring" and I find that really good.
I think I am joining the #Hare club. #Zig and #Odin of course interest me too, but the first one I'll go with will be Hare when making something new from scratch.
In the end languages are tools and I just want C but with quality of life features. Hare seems to nail that.
The Ada GPL UXB is something I’m unwilling to poke any further as I can’t get the GNU #Ada compiler tool chain to be recognised in VScode for nothing (GNU software and Windows, a match made in hell), only the GNAT tool chain which is GPLv3 only without a commercial licence. I’ve opted to use Lua for now as the simplest language with the smallest cross-platform runtime to distribute (no, Python, isn’t viable). I may look at #Zig next
Going through #ziglings
When it comes to minimal languages, I feel that Zig has much greater potential than Go. But tooling-wise, Go has the edge for now.
Honestly, the consistency and elegance of Zig is blowing my mind. #zig#go#ziglang#golang