ChanServ changed the topic of #zig to: zig programming language | https://ziglang.org | be excellent to each other | channel logs: https://irclog.whitequark.org/zig/
radgeRayden_ has quit [Ping timeout: 272 seconds]
jjsullivan1 has quit [Quit: Leaving]
jjsullivan1 has joined #zig
radgeRayden has joined #zig
nvmd has quit [Ping timeout: 260 seconds]
nvmd has joined #zig
radgeRayden has quit [Ping timeout: 272 seconds]
frett27_ has quit [Ping timeout: 272 seconds]
xackus__ has joined #zig
xackus has joined #zig
xackus_ has quit [Ping timeout: 272 seconds]
xackus__ has quit [Ping timeout: 260 seconds]
nvmd has quit [Quit: Later nerds.]
msingle has joined #zig
a92 has joined #zig
radgeRayden has joined #zig
radgeRayden has quit [Remote host closed the connection]
KIMI has quit [Remote host closed the connection]
filpAM has quit [Quit: leaving]
xackus_ has joined #zig
xackus has quit [Ping timeout: 246 seconds]
reductum has quit [Quit: WeeChat 2.9]
voidshine has joined #zig
filpAM has joined #zig
msingle has quit [Ping timeout: 240 seconds]
msingle has joined #zig
a92 has quit [Quit: My presence will now cease]
frmdstryr has quit [Ping timeout: 240 seconds]
kristoff_it has quit [Ping timeout: 240 seconds]
ur5us has quit [Ping timeout: 264 seconds]
ur5us has joined #zig
filpAM has quit [Quit: Lost terminal]
xackus has joined #zig
xackus_ has quit [Ping timeout: 260 seconds]
ur5us has quit [Ping timeout: 264 seconds]
msingle has quit [Quit: No Ping reply in 180 seconds.]
msingle has joined #zig
<voidshine> Hello and Happy Thanksgiving! First thing I want to say is, thanks for making Zig -- it looks like a fun and productive language. I am excited enough about it that I put my usual projects on hold so I can dig in and learn Zig over my holiday vacation. :)
<voidshine> I came here to see if someone can help me get started, as I seem to have misunderstood something about Zig's semantics. I was expecting copy/value semantics in the style of C, but there's something I'm missing in my first little experiment.
a_chou has joined #zig
a_chou has quit [Remote host closed the connection]
<voidshine> I thought an Allocator was a simple struct with a couple of function pointers...a plain data object I could copy and use just as a source of raw pointers, but it seems like maybe there's some magic in the GeneralPurposeAllocator; not sure.
<voidshine> Specifically, my question is: why can't I copy an allocator struct to the local stack frame and then pass its address to ArrayList.init? I get undefined behavior/crashes when I do this.
<daurnimator> voidshine: depending on the allocator, it may have its own state
<daurnimator> e.g. if the allocator tracks number of allocations: the allocator would have an integer that gets incremented/decremented
<daurnimator> voidshine: usually you end up passing around a pointer to an allocator.
<voidshine> But isn't the Allocator struct just a plain data struct with a couple of function pointers?
<voidshine> Or maybe it's interpreted by the allocator implementation as more than that?
<g-w1> those function pointers call stuff in the upper struct that has state
<voidshine> upper struct?
<g-w1> an allocator is a sub struct of GeneralP... for example. then u use @fieldParentPtr
<daurnimator> voidshine: most allocator implementations are intrusive structs inside of another struct.
<daurnimator> voidshine: are you familiar with the `containerof` macro in C?
<voidshine> No, it has been about 20 years since I used C, ha
<daurnimator> voidshine: do you know the term "intrusive"?
<voidshine> I think I have an idea of what you're saying -- it's like surrounding context of a struct
<g-w1> search for fieldparentptr example in this https://ziglang.org/documentation/master/#toc-fieldParentPtr
<voidshine> I'm interested if you can point me to some reading material about this topic!
<voidshine> Perfect, thanks, I'll check it out. :)
<daurnimator> voidshine: if you google "intrusive data structures" I'm sure you'll find all sorts of material from the last 3 decades :)
<g-w1> oh, thanks. didn't know what that was called :)
<voidshine> Awesome, thanks for the quick help! I am just getting back down to the metal after a long time in high-level land. It's good to be back in the jungle. :)
<voidshine> Aha yes, so the allocator struct is embedded within a larger struct -- and the implementation looks for data around the allocator instance, assuming that larger structure to be in place.... that makes sense.
<daurnimator> voidshine: you got it :)
<g-w1> check out lib/std/heap/general_purpose_allocator.zig:579 for a direct example of this. the standard library is very readable and is super useful for learning
<voidshine> Cool, I appreciate the help. I'm going to have a lot of fun tinkering with Zig over the next 10 days.
ur5us has joined #zig
<voidshine> If things go well, I might try to contribute a game math library or some such. Will see where things take me. Happy Thanksgiving, everyone, I'll check in from time to time. :)
<pixelherodev> That's an unusually specific number - is the world ending in ten days or something? :P
<voidshine> Practically, haha. I have an intense job and two families; I'm like not enough butter spread over too much bread. But I love coding when I can!
<pixelherodev> Good luck :)
<voidshine> Thanks
msingle has quit [Ping timeout: 272 seconds]
shynoob has joined #zig
earnestly has quit [Ping timeout: 246 seconds]
waleee-cl has quit [Quit: Connection closed for inactivity]
lucid_0x80 has joined #zig
KIMI has joined #zig
<KIMI> hi, i feel like i am doing something very very bad..
<KIMI> var spaceGlyph = &self.glyphs[spaceChar];
<KIMI> someone told me i should do that because glyphs is array of optional
<KIMI> in C i just need to do spaceGlyph->width if i checked before if it is NULL
<KIMI> how can i do similar in zig?
l0rd_hex has joined #zig
<l0rd_hex> amk: why the _fuck_ do my hands smell like chicken!?
<daurnimator> KIMI: I'm confused why you're taking the address of it?
<KIMI> daurnimator to not make a copy
<daurnimator> why not?
<KIMI> so it is faster xD
<KIMI> Glyph is big
<daurnimator> let zig figure that out
<KIMI> and i make change to it
<KIMI> so i need pointer
<daurnimator> don't do that....
<KIMI> but i need edit it how can i do that witrhout pointer?
<daurnimator> if you tell it to take the address, it *has* to take the address. if you don't tell it to, it *might*: and it will if it expects it to be faster
<daurnimator> okay that's a better reason
<l0rd_hex> I installed zig on my personal computer and now my hands smell like chicken, wtf?
<karchnu> l0rd_hex: yeah, just a regular zig side-effect. Don't worry.
<l0rd_hex> karchnu: it's real chickeny though
<KIMI> daurnimator: how can i do like in C do i need to use .?.* everytime??
<l0rd_hex> last time I was this chickeny I was hiking with Andy and his pep-pep
<daurnimator> KIMI: usually you'd unwrap once and do everything there: if (some_optional) |not_optional| {foo(not_optional);bar(not_optional);}`
<KIMI> can i store it on a variable directly? in here var spaceGlyph = &self.glyphs[spaceChar];
<daurnimator> that question doesn't make sense to me
<KIMI> i tried .! but it doesnt work
<KIMI> i mean on one line directly so i don't need to do if() |] everywhere
<dominikh> of course you can do const y = x.?
<l0rd_hex> "And on the 5th day Andy invented chicken hands" Zig 4:20
<KIMI> dominikh thanks
<KIMI> it doesn't work
<KIMI> var spaceGlyph = &self.glyphs[spaceChar];
<daurnimator> stop pasting the same snippet..... it doesn't help explain anything
<daurnimator> if anything share the whole function you're doing this in
<KIMI> i explained
<KIMI> glyphs is array of ?Glyph
<dominikh> you're pasting a single line of code that has nothing to do with the question at this point
<l0rd_hex> var chicken = &self.chicken[chicken];
<KIMI> i don't know how to do what i want to do this is why i ask question
<KIMI> i can't know what u need
<dominikh> and pasting the same line of code repeatedly won't answer your question
<l0rd_hex> KIMI: I tried washing my hands but it still smells like chicken
<dominikh> also what the fuck is l0rd_hex's problem
<KIMI> l0rd_hex wtf xD
<l0rd_hex> CHICKEN is my problem
<l0rd_hex> chicken hands specifically
<l0rd_hex> Step 1) Install Zig
<l0rd_hex> Step 2) Get chicken hands
<mla> anyone have a good ex of serial port usage in zig
<daurnimator> mla: what OS/hardware?
<mla> linux, x86_64; been trying to use C code translated but getting issues citing #1481 when trying to set F_SETFL
<l0rd_hex> mla: I've connected to a roast chicken at 9600 baud
<l0rd_hex> the problem is with ZMODEM because the chicken overflows into the hands array
<l0rd_hex> the "Z" is for zest
<l0rd_hex> ... (lemon)
<mla> hmm, ill give you props for creativity, but i doubt your connecting to a chicken regardless of baudrate
<l0rd_hex> most modern chickens have UARTS
<KIMI> https://bpa.st/Q6DA a paste that with minimal example
<l0rd_hex> KIMI: your pointer doesn't specify dark or white meat
<l0rd_hex> don't listen to meeeeeee
<KIMI> l0rd_hex pls stop with chicken, i'm not interested
<l0rd_hex> KIMI: how rude.
<l0rd_hex> chicken is a vital link in nature's chain
<daurnimator> mla: can you share the error message you get with F_SETFL?
<l0rd_hex> So I spoke with Andy and his ex-landlord and they recommended washing my hands becuase I might not "get what you want" but if I "try sometimes" I might remove chicken-flavor molecules from my epidermus -- but, sadly, my hands _still_ smell like chicken after 3 washes. I'm going to try huffing some paint as Andy also suggested.
cole-h has quit [Ping timeout: 265 seconds]
<l0rd_hex> Good news: Hulu just contacted me about filming an episode of "Chicken Hands: Smelly _and_ persistent"
<l0rd_hex> at _my_ domicile
<l0rd_hex> (which is where I live)
shynoob has quit [Quit: Leaving]
tdeo has quit [Ping timeout: 260 seconds]
voidshine has quit [Quit: Leaving]
tdeo has joined #zig
ur5us has quit [Ping timeout: 264 seconds]
<daurnimator> mla: use the standard library instead of including C headers....
<daurnimator> mla: you should be able to use `try std.os.fcntl(file.handle, os.F_SETFL, your_value);`
<mla> daurnimator: yeah thats where im headed atm, just was trying to be lazy w c import ;)
<mla> oh neat - will check out fnctl in stdlib, will be essential for nonblocking io
* l0rd_hex doesn't recommend #include <chicken.h>
<l0rd_hex> or linking with -lchicken for that matter
lucid_0x80 is now known as babayarisi
l0rd_hex was banned on #zig by ChanServ [*!*@upperbound.ca]
l0rd_hex was kicked from #zig by ChanServ [Banned: unclear whether you are a troll but tbh it doesn't matter either way]
marnix has joined #zig
marnix has quit [Read error: Connection reset by peer]
marnix has joined #zig
sord937 has joined #zig
notzmv has quit [Ping timeout: 246 seconds]
notzmv has joined #zig
<notzmv> g
<notzmv> oops, sorry.
rzezeski has quit [Quit: Connection closed for inactivity]
delhanty has joined #zig
maringuu has joined #zig
FireFox317 has quit [Quit: Leaving]
<maringuu> Does anyone know how to use c `FILE`s in zig? I found std.c.fopen but it does complain when I put the returned file in a function from c which accepts a `FILE`
hnOsmium0001 has quit [Quit: Connection closed for inactivity]
delhanty has quit [Remote host closed the connection]
<maringuu> I guess I can just import `stdio.h` and use FILE from there. Thanks anyway!
hlolli__ has joined #zig
KIMI has quit [Ping timeout: 245 seconds]
xackus has quit [Ping timeout: 240 seconds]
xackus has joined #zig
earnestly has joined #zig
maringuu has quit [Ping timeout: 245 seconds]
marnix has quit [Ping timeout: 256 seconds]
marnix has joined #zig
kristoff_it has joined #zig
marnix has quit [Read error: Connection reset by peer]
marnix has joined #zig
marnix has quit [Read error: Connection reset by peer]
marnix has joined #zig
msingle has joined #zig
msingle has quit [Ping timeout: 240 seconds]
frmdstryr has joined #zig
Biolunar has quit [Quit: leaving]
Biolunar has joined #zig
waleee-cl has joined #zig
mokafolio has quit [Quit: Bye Bye!]
mokafolio has joined #zig
mokafolio has quit [Client Quit]
mokafolio has joined #zig
mokafolio has quit [Client Quit]
mokafolio has joined #zig
shynoob has joined #zig
<shynoob> oh tab key isnt allowed?
donniewest has joined #zig
<shynoob> hm
<shynoob> where can I find list of example codes written in zig?
<shynoob> maybe I'd better get a look at the format of a zig program
<dutchie> the std library is a good place to start https://github.com/ziglang/zig/tree/master/lib/std
<ifreund> shynoob: you can run `zig fmt` to format your code if you're not aware
<shynoob> didnt know
<shynoob> thanks
babayarisi has quit [Ping timeout: 264 seconds]
lucid_0x80 has joined #zig
cren has joined #zig
wootehfoot has joined #zig
KIMI has joined #zig
<KIMI> hi
<KIMI> i am a design that i want to improve
<KIMI> line 11
<KIMI> have* sorry
<KIMI> but i am not sure how exactly, should i drop optional glyph, but then how will i do quick lookup for glyph? right now i convert char to u8 to do lookup
<KIMI> @as(u8, 'K') this way
<KIMI> what confuse me is pointer cant be NULL
<KIMI> and optional can be NULL
frmdstryr has quit [Ping timeout: 256 seconds]
Akuli has joined #zig
skuzzymiglet has joined #zig
cole-h has joined #zig
Jeanne-Kamikaze has joined #zig
<marler8997_> my first question would be why you are creating an array of the Glyph structs, who's only field is a usize named "width"? Do you need it to be usize?
TheLemonMan has joined #zig
<TheLemonMan> yo marler8997_, are you on windows?
<marler8997_> yeah
<TheLemonMan> are you up for some quick troubleshooting?
<marler8997_> sure
marnix has quit [Ping timeout: 264 seconds]
marnix has joined #zig
benjamin-l has joined #zig
<KIMI> marler8997_ the little struct is so i can send you guys a paste so you can check with minimal noise in my code :D
marnix has quit [Read error: Connection reset by peer]
<KIMI> i can send u all the code if u prefer?
<marler8997_> yes please
<marler8997_> I'm the code monster, feed me code
marnix has joined #zig
<TheLemonMan> the off-brand cookie monster!
<marler8997_> yes, the older brother whose matured past his days of unending treats
frmdstryr has joined #zig
rzezeski has joined #zig
hnOsmium0001 has joined #zig
<pixelherodev> into his days of unending pain and debugging?
<pixelherodev> and indigestion, probably
<pixelherodev> I don't think "puberty" explains a digestive system that can process abstractions
reductum has joined #zig
nvmd has joined #zig
<g-w1> do static binaries work on windows? does it have to link to kernel32.dll because the syscall abi is unstable? this is just out of curiousity
KIMI has quit [Ping timeout: 245 seconds]
osa1 has quit [Quit: osa1]
osa1 has joined #zig
lucid_0x80 has quit [Ping timeout: 265 seconds]
xackus has quit [Ping timeout: 246 seconds]
moo has joined #zig
<marler8997_> so, zig is borked on Windows 7, the FileNormalizedNameInformation class that we use when calling NtQueryInformationFile during a "zig build" doesn't exist on Windows 7. However, it seems we don't support Windows 7? But it looks like Windows 7 still has 23% desktop market share (one user incldues me)....can we reconsider this decision not to support Windows 7?
<marler8997_> it looks like there are more Windows 7 uers than all mac users combined...so if we drop support for Windows 7, then should we also drop support for all Mac users?
<TheLemonMan> I vote yes
<andrewrk> microsoft stopped supporting windows 7 years ago
<marler8997_> right, but 23% desktop market share
<andrewrk> hmm that is a good point
<marler8997_> actually, I think it's 23% share of all windows machines, which is 80% of total I think. so actualy share is around 18% I think
<andrewrk> we are also pre-1.0 though, so by the time we hit 1.0 that number may be very different
<marler8997_> you're putting me in a tight spot here
shynoob has left #zig ["Leaving"]
<andrewrk> how's that?
<fengb> Does Wine work on Windows? 🙃
<marler8997_> My work uses Windows 7 for example, means I can no longer use Zig on my work machines
<andrewrk> huh your work uses an OS without security updates?
<marler8997_> yeah, updates break our old legacy builds
<andrewrk> oof
<marler8997_> only developers can do this
<TheLemonMan> plot twist, he works at Microsoft
<marler8997_> lol
<ericonr> I'm not sure enabling software to work on windows 7 is a good thing to do
<ericonr> but what do I know, I'm here to test multi-libc binaries only :P
<andrewrk> what's the argument there?
<marler8997_> at some point support for all OS's can be dropped, but 18% market share seems way too soon for me
<ericonr> andrewrk: were you asking me?
<TheLemonMan> did it fall from 23% to 18% in the meanwhile?
<marler8997_> lol
<TheLemonMan> you'd be an awful lawyer heh
<marler8997_> nah, I realized the 23% number was Windows Market Share not Total Market Share
<marler8997_> and windows has around 80% Total
<andrewrk> ericonr, yes
<marler8997_> so 23% * .8 = 18% total
<ericonr> andrewrk: imo you're being irresposinble if you make it easier / more comfortable for people to keep using an outdated and insecure OS
<ericonr> *irresponsible
<andrewrk> ericonr, I gotta do some work fixing bugs / merging PRs today but after hours hope to have some time to tinker with getting musl-based void linux support for the static window app
<marler8997_> lol
<marler8997_> so, people who work on retro hardware are irresponsible? That's a first for me
<ericonr> not if they run a linux distro :P
<TheLemonMan> people who work are irresponsible
<ericonr> and there's a difference between working on that hardware yourself and having a whole language support the insecure OS
<marler8997_> this has nothing to do with the Zig language, it's the standard library
<ericonr> andrewrk: heh, good luck :D
<ericonr> I might be able to test something or another
<TheLemonMan> that's a really shitty argument, should we only support the lastest and greatest linux kernel version then?
<andrewrk> I want to make things Just Work for people, but there is an element where I don't want to bear the burden of Microsoft's shitty decisions. If they had made Windows 10 Really Good And Not Shitty then we wouldn't have a 18% market share on Windows 7 and being pressured to increase the scope of the project
<marler8997_> andrewrk, completely agree
<andrewrk> idk though, to some extent that is the purpose of zig, to bear the burden for other people so they can take the easy street to writing great software
<GrooveStomp> The Zig 0.6.0 release notes say it makes sense to suport hobby OSes; I would assume supporting Windows 7 would be an extension of that philosophy?
<andrewrk> yeah that's another good question
<andrewrk> I don't feel like I have a solid grounds on how to make a decision on what exactly to support
<GrooveStomp> That's a very reasonable assertion to make!
<ericonr> TheLemonMan: deployments with linux 2.6 are still supported
<ericonr> not for long, but they aren't
<ericonr> s/aren't/are/
<marler8997_> whether or not a company supports their own closed source OS is a very important factor, however, when they drop support but it stil has 18% market share of all desktops in the world, I think the market share would take precedence
<marler8997_> and the problem here is not that I choose to use Windows 7, it's that some software only works (or only works well) on windows 7, and that's because of its market share
kristoff_it1 has joined #zig
<andrewrk> there's another factor here which is that we also have this target version range thing which actually kind of encourages a wide range of supported versions in the std lib since comptime logic has access to the target version range
<andrewrk> but.... increasing scope can be dangerous
<marler8997_> right, I'm not saying let's support everything here
<andrewrk> I think it makes sense to keep the policy status quo until 1.0 and then we can consider widening the supported version range
<marler8997_> if a platform has 18 market share, you're signing up for at most 6 platforms :)
<andrewrk> until 1.0 is imminent, I mean
<andrewrk> idea being we need to keep the scope small until certain key milestones are complete
<marler8997_> so you're saying I can't use zig anymore on these machines that have to use Windows 7?
<ericonr> do browsers even work on windows 7?
<marler8997_> also going to have to reconsider what to do about my audio program I'm developing on Windows 7
<marler8997_> this really is a downer for me
kristoff_it has quit [Ping timeout: 260 seconds]
<andrewrk> yeah, I'm saying that until 1.0 is coming soon, issues with zig running on or std lib support for windows 7 won't be viable for the issue tracker. However I want to note that non-invasive patches to support older versions are welcome
radgeRayden has joined #zig
<ericonr> marler8997_: if you have software that needs to run on an unsupported OS, that doesn't get most security updates, you really shouldn't use said insecure OS for anything else but said software
<marler8997_> erconer, I don't know where you're getting these rules from
<andrewrk> marler8997_, I'm sorry :( one of the hardest things I have to do in this job is say "no" to people to avoid scope creep
<ericonr> marler8997_: do you connect windows 7 to the internet?
<marler8997_> if Zig doesn't support windows 7, I can't spend all my time constantly fixing it and fighting people with whether or not my changes would be considered "invasive"
<marler8997_> that's a steep uphill battle I wouldn't win
<andrewrk> understood
<marler8997_> What criteria are you using to determine what platforms to support?
<andrewrk> for proprietary OS's it's the same support as the company. Microsoft ended LTS for Windows 7 on jan 14, 2020: https://docs.microsoft.com/en-us/lifecycle/products/windows-7
<marler8997_> so if an OS has 90% market share, but the company doesn't support it, neither will Zig std?
moinstar has quit [Quit: Leaving.]
<andrewrk> I think your market share argument is compelling and I would like to revisit it later - my reasoning right now is mainly based around keeping the scope manageable so we can make swift progress towards 1.0
<marler8997_> you don't think supporting platforms with high market shares is manegeable?
<novaskell> ericonr: Considering there are still several running windows 7 on "isolated" units and are unlikely to change for a number of years (heck, have seen XP)... it's not as simple as "shouldn't". I've probably had to deal with 5 in the last few weeks.
<marler8997_> by definition, there are only so many of them :)
<marler8997_> you're not going to get 20 platforms with 15% market share :)
<andrewrk> it's entirely likely that number will be different when zig tags 1.0. and yes, supporting older OS versions is taking away efforts from, for example, getting stage2 done
<marler8997_> I'm not sure the argument of "taking work away" is valid here, you can use that arguemnt against literally anything
<marler8997_> You said you want to keep the work mangeable (so it doesn't get out of hand)
<ericonr> novaskell: I know they are common; my point is that they should be left to the tighest scope possible
<ericonr> if you want to run new software, get another machine to run a more modern OS
<marler8997_> I'm saying that using market share keep the scope limited, manageable
<andrewrk> marler8997_, I mean what's the difference really between saying "revisit this later" and having an open bug report that is so low priority that it doesn't get addressed for years?
<ericonr> specially since connecting windows 7 to the internet, which at least half of the modern applications require, is risky
plakband has joined #zig
<ericonr> same for XP! we know enterprise software is a mess, but I don't think other languages should 1) pay for that; 2) encourage people to keep running on old stuff
jaredmm_ is now known as jaredmm
<marler8997_> no difference, what I need from you is to say yes, we will support Windows 7 if someone wants to do the work, in which case I can work on fixing it and potentially add testing for it
<novaskell> ericonr: if I said that I'd be out of business
<marler8997_> and not to qualify it with "non-invasive" support
<ericonr> novaskell: :/
<marler8997_> looks like XP is less than 2% market share, please stay in the real world here
<marler8997_> 18% market share means Windows 7 is one of the highest use Operating systems in the world
<marler8997_> I have multiple machines which run it, some of which can't run linux because of drivers and some of which can't run Windows 10 beacuse it's performance is unusable
<marler8997_> I write alot of tools in Zig, with this decision you're saying I can't run my code on those machines
<andrewrk> marler8997_, honestly you are involved enough in the zig project that the bare fact that you want windows 7 support is an important factor
moo has quit [Read error: Connection reset by peer]
<andrewrk> maybe the policy can be amended with, "and we also support Windows 7 thanks to marler8997_"
<marler8997_> lol
<marler8997_> I would probably ammend it with, platforms that share 10% of the desktop market...
<andrewrk> idk then we have to get into how that's measured
<marler8997_> Windows 7 is such an odd duck because of Microsoft's bullshit
<marler8997_> sure, but we don't have to be precise here
<marler8997_> although, I wonder if there are nother OS's in the same boat? Older mac versions?
msingle has joined #zig
<andrewrk> yeah we've had some requests like that
<andrewrk> the thing I am concerned about re: the word "invasive" is what if there is a clean, cross-platform abstraction that works if you assume certain OS minimum versions, but if you want to support this older one, then the entire API has to be made more complicated
<andrewrk> maybe that's not actually something we need to worry about with windows 7 specifically
<marler8997_> andrewrk, yes that's why it would probably be impossible to support an older OS without community buy in
<marler8997_> I anticipate at least some changes would probably have to be invasive
<marler8997_> unfortunately
<marler8997_> and again, I'm fine with dropping support, I'm just making the argument here that I think it's way to soon for Windows 7
<andrewrk> zig is still an upcoming language-
<andrewrk> years away from 1.0
<marler8997_> like, my guess is it will have over 10% for another 3 or 4 years
* andrewrk breaks for lunch
<marler8997_> we should take a poll, what Operating Systems do yall use here?
* TheLemonMan uses Windows ME
<TheLemonMan> millennium edition => it's good 'till year 3000 rolls around
<g-w1> chromeos for school, linux, macos (im not upgrading to big sur because last time i upgraded it broke my libc)
<marler8997_> nixos, windows 7, windows 10, ubuntu are the main ones
<marler8997_> well after 11 years of using windows 7 on my main gaming rig, it looks like if I want to keep using Zig I'm going to have to upgrade to 10....wish me luck
<wilsonk> Win10, Ubuntu 20.04, Debian buster, OLD Scientific linux 6.1 and Catalina here (and I have a Win7 vm for testing...but I don't use it daily). I can also load any number of other OS's in vm's
<novaskell> guix, debian jessie, windows 10 where interaction with 7 is external
<pixelherodev> In order of favorite to least, Plan9, KnightOS (z80 calculator), Gentoo-musl, Alpine, Gentoo-glibc, a Windows VM for school (which is a pretty compelling reason to drop out and start job hunting, not going to lie), LineageOS (and yes I readily admit I actually prefer Win10 over Lineage or any other Android-based OS)
wilsonk_ has joined #zig
<marler8997_> novaskell, have you compared guix with nixos? I haven't looked into guix but heard they have similarities
<pixelherodev> lol, isn't guix the FSF/GNU one (core ideal is, in fact, an ideal), while nixos is "the distro based on Nix" (core ideal is a technology)?
<fengb> macOS Catalina, High Sierra, Archlinux
<marler8997_> pixelherodev, yeah I think I remember hearing they only support "free" software
wilsonk has quit [Ping timeout: 240 seconds]
wilsonk__ has joined #zig
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
osa1 has quit [Quit: osa1]
osa1 has joined #zig
wilsonk_ has quit [Ping timeout: 272 seconds]
<novaskell> marler8997_: guix is a lot cleaner in the package definitions (everything must be build from source) and all* tooling for guix exists as guile modules making it easier to automate. Less packages overall though that hasn't been much of an issue and non-free packages exist in separate repositories which can be added as channels.
wilsonk__ is now known as wilsonk
ur5us has joined #zig
<g-w1> could someone tell me why gdb just blatantly changes the type of an ArrayListUnmanaged to Compilation.ErrorMsg and Decl to Scope? This is also not only gdb, weird memory stuff is happening too (segfaults because the structure gets messed up)? https://share.olind.xyz/f.php?h=0nmX9gmp&p=1 on the bottom you can see the definition of compile_log_decls which is definently not what gdb is saying it is ...
ur5us has quit [Client Quit]
<marler8997_> novaskell yeah that syntax looks pretty clean, reminds me of lisp
<novaskell> It's scheme so not far from it
marnix has quit [Ping timeout: 246 seconds]
<g-w1> im inclined to say that this is a bug in stage1 if anyone doesn't see anything im doing wrong
msingle has quit [Ping timeout: 264 seconds]
<pixelherodev> g-w1: optimized?
<g-w1> its a debug stage2 build
<pixelherodev> ... what did you link?
<pixelherodev> Not a text file?
<g-w1> a screenshot of the gdb with my editor
<pixelherodev> ohh image lol
* pixelherodev facepalm
* pixelherodev tried curling it :P
<marler8997_> curl > myfile; file myfile ?
<novaskell> The build scripts are also guile and there's a project to have a bootstrap scheme connected to M2-planet such that the binary seed can be reduced past the current which stands at 60MiB
marnix has joined #zig
<pixelherodev> marler8997_: no
<pixelherodev> just curl
<pixelherodev> :P
<marler8997_> I mean, can you use the "file" command to tell what it is?
<pixelherodev> Then a few idiotic attempts to curl | file lol
<pixelherodev> g-w1: what editor is that?
moinstar has joined #zig
<g-w1> neovim with 2 splits showing the definition and where it is going wrong
jjsullivan1 has quit [Ping timeout: 264 seconds]
wootehfoot has quit [Ping timeout: 240 seconds]
skuzzymiglet has quit [Read error: Connection reset by peer]
<pixelherodev> My initial guess is either stage1 is producing bad DWARF or GDB is parsing it incorrectly
<pixelherodev> g-w1: is your GDB up to date?
<g-w1> 10.1 and I would think that but its also segfaulting so I think its something deeper
marler8997_ has quit [Quit: Leaving]
marnix has quit [Read error: Connection reset by peer]
<pixelherodev> g-w1: open an issue, worst case Lemon closes it a minute later linking you to the solution :P
marnix has joined #zig
<g-w1> ok. ill push my code and then link it in the issue, thanks
wootehfoot has joined #zig
taman has joined #zig
<waleee-cl> novaskell: I'm guessing chrome & firefox is best run through flatpak? To build them from source per the nonguix-repo seems unpractical
skuzzymiglet has joined #zig
<novaskell> ungoogled-chromium is packaged so unless there's a specific feature of chrome you want that's enough for most things. Firefox is a bit impractical though
<waleee-cl> novaskell: yeah, went to chech if ungoogled was available on the substitution server
<waleee-cl> *check
skuz has joined #zig
skuz has quit [Remote host closed the connection]
skuz has joined #zig
skuz has quit [Remote host closed the connection]
<novaskell> and using iwlwifi requires waiting for the kernel to build when it's updated but that can always be offloaded to another machine and setting a fixed version of guix in channels.scm is generally a good thing to do anyway.
<torque> the upside of supporting a deprecated operating system is at least it isn't a moving target
<pixelherodev> I mean, that's true of a few non-deprecated OSes as well
<pixelherodev> I have a static Linux binary that's ~12 years old on my PC :P
<pixelherodev> Most Linuxes don't make that easy though :(
skuzzymiglet has quit [Read error: Connection reset by peer]
skuzzymiglet1 has joined #zig
plakband has quit [Quit: WeeChat 2.9]
knebulae has quit [Read error: Connection reset by peer]
nebulaek has joined #zig
nickster6 has joined #zig
signop has quit [Ping timeout: 256 seconds]
nickster6 is now known as nickster
nickster has quit [Ping timeout: 256 seconds]
terinjokes has quit [Ping timeout: 256 seconds]
marler8997 has joined #zig
signop has joined #zig
<marler8997> I'm back...new shiny Windows 10
benaiah` has joined #zig
benaiah has quit [Ping timeout: 256 seconds]
benaiah` is now known as benaiah
voidshine has joined #zig
taman has left #zig ["WeeChat 3.0"]
marler8997 has quit [Quit: Leaving]
terinjokes has joined #zig
marler8997 has joined #zig
dddddd has quit [Ping timeout: 256 seconds]
dddddd has joined #zig
<marler8997> TheLemonMan, with my new Windows 10 and your branch, "test-std" didn't crash for me...I'm running the full test suite now
<g-w1> pixelherodev: it turns out I was returning a dangling pointer (why it segfaulted) but the wrong gdb is an actual bug https://github.com/ziglang/zig/issues/7239
Akuli has quit [Quit: Leaving]
Enrico204 has quit [Quit: Ping timeout (120 seconds)]
Enrico204 has joined #zig
Snetry has quit [Quit: left Freenode]
Snetry has joined #zig
skuzzymiglet1 has quit [Ping timeout: 240 seconds]
sord937 has quit [Quit: sord937]
donniewest has quit [Quit: WeeChat 3.0]
radgeRayden_ has joined #zig
radgeRayden has quit [Ping timeout: 272 seconds]
benjamin-l has quit [Ping timeout: 240 seconds]
skuzzymiglet has joined #zig
skuzzymiglet has quit [Read error: No route to host]
skuzzymiglet has joined #zig
<hlolli__> Does ArrayList.deinit() deinitialize the data and pointers within the list too? When passing an array around alot without copying the data, would it make more sense to handle Arrays like this: *ArrayList(*Struct) or this: *ArrayList(Struct) ?
frmdstryr has quit [Ping timeout: 260 seconds]
<andrewrk> ericonr, not sure how much zig coding you do but here's my proposal to add official compiler / std lib support for libc-agnostic binaries: https://github.com/ziglang/zig/issues/7240
<andrewrk> I expect a little bit of push back, we'll see
<ericonr> andrewrk: well, I fixed an error message in gurl, but that was all the zig coding I did :D
<ericonr> does a proposal mean the binary is working already?
<fengb> Gotta add more yaks
<andrewrk> I still don't have it working on any musl-based distro yet
<ericonr> ok
kristoff_it1 has quit [Ping timeout: 265 seconds]
<andrewrk> fengb is right tho I gotta focus on getting 0.7.1 done
<ericonr> :D
benjamin-l has joined #zig
skuzzymiglet has quit [Ping timeout: 246 seconds]
<pixelherodev> Fix all da bugs!
marler8997_ has joined #zig
marnix has quit [Ping timeout: 240 seconds]
marler8997 has quit [Ping timeout: 260 seconds]