00:11
mahmudov has quit [Ping timeout: 265 seconds]
00:22
<
Snektron >
Considering whether i should generate Zig code directly or through std.zig.ast
00:30
ltriant has joined #zig
00:36
return0e_ has joined #zig
00:38
return0e has quit [Ping timeout: 240 seconds]
00:46
<
mikdusan >
my brain must be fried. Is 4137 just renaming variables?
00:50
<
BaroqueLarouche >
No, when looking for executable in your $PATH on Windows, it was using $CWD + the command you passed to spawnWindow
00:51
<
mikdusan >
thanks I missed it
00:59
JX7P has joined #zig
01:07
ltriant has quit [Ping timeout: 258 seconds]
01:32
<
daurnimator >
fengb: orange on orange?
01:32
<
daurnimator >
I see orange on blue :P
01:33
<
daurnimator >
But also: "why is it blue" is a great question.
01:33
<
daurnimator >
The answer to both of them may just be: the background is transparent. Seems like different browsers render it differently?
01:35
<
fengb >
Maybe we should fix the background image for the reddit upload
01:43
ltriant has joined #zig
01:48
ltriant has quit [Ping timeout: 260 seconds]
01:59
traviss has joined #zig
02:20
dddddd has quit [Ping timeout: 240 seconds]
02:23
ltriant has joined #zig
02:24
idxu has joined #zig
02:28
ltriant has quit [Ping timeout: 265 seconds]
02:57
adamkowalski has joined #zig
03:31
adamkowalski has quit [Remote host closed the connection]
03:32
adamkowalski has joined #zig
03:57
adamkowalski has quit [Remote host closed the connection]
04:24
ltriant has joined #zig
04:25
ky0ko59 has joined #zig
04:25
ky0ko has quit [Disconnected by services]
04:25
ky0ko59 is now known as ky0ko
04:29
ltriant has quit [Ping timeout: 260 seconds]
05:08
ltriant has joined #zig
05:11
ky0ko has quit [Ping timeout: 240 seconds]
05:14
ltriant has quit [Ping timeout: 265 seconds]
05:44
knebulae has quit [Read error: Connection reset by peer]
05:59
BaroqueLarouche has quit [Quit: Connection closed for inactivity]
06:03
ltriant has joined #zig
06:11
ltriant has quit [Ping timeout: 240 seconds]
06:43
ltriant has joined #zig
06:48
ltriant has quit [Ping timeout: 268 seconds]
07:47
knebulae has joined #zig
07:48
knebulae has quit [Client Quit]
07:48
knebulae has joined #zig
08:11
Astronothing has joined #zig
08:27
schme245 has joined #zig
08:44
ltriant has joined #zig
08:49
ltriant has quit [Ping timeout: 268 seconds]
08:58
Snetry has quit [Quit: left Freenode]
09:00
Snetry has joined #zig
09:06
ur5us has joined #zig
09:08
<
daurnimator >
oooo, would be cool to have creationix on board :)
09:17
mahmudov has joined #zig
09:17
Astronothing has quit [Ping timeout: 265 seconds]
09:56
lunamn___ has joined #zig
09:59
schme245 has quit [Remote host closed the connection]
09:59
lunamn_ has quit [Ping timeout: 260 seconds]
10:16
ltriant has joined #zig
10:21
ur5us has quit [Ping timeout: 260 seconds]
10:21
ltriant has quit [Ping timeout: 268 seconds]
10:22
<
mq32 >
Semantic Analysis [971/982] /home/felix/projects/softrenderlib/src/main.zig:116:31: error: expected type 'enum:69:45', found 'enum:69:45'
10:49
schme245 has joined #zig
10:52
m4ho has joined #zig
10:57
schme245 has quit [Remote host closed the connection]
11:24
maerwald has joined #zig
11:24
dddddd has joined #zig
11:37
<
wilsonk >
mq32: I had an error like that a while back...did you figure it out?
11:38
<
mq32 >
i know how to provocate it
11:38
<
mq32 >
it's about implicitly defined enums in function parameters
11:38
<
wilsonk >
I can't remember what it was for me...but I think my case was fixed
11:38
<
wilsonk >
file an issue? Or is there an existing one?
11:45
<
mq32 >
mikdusan: you ninja'd me!
11:45
<
mikdusan >
i just saw that
11:46
<
mikdusan >
also `comptime foo(.a);`
11:48
<
mq32 >
btw, some late-night hack with zig:
11:48
<
mq32 >
software-rasterization
12:17
ltriant has joined #zig
12:22
ltriant has quit [Ping timeout: 260 seconds]
12:30
mahmudov has quit [Remote host closed the connection]
12:32
mahmudov has joined #zig
12:41
_whitelogger has joined #zig
12:52
<
mq32 >
i think i found a kinda weird bug
12:54
<
mq32 >
if you write some runtime code in @bitCast, it will fail to compile because zig tries to enforce comptime eval
13:09
_Vi has joined #zig
13:35
<
mq32 >
looks like nobody tests the http module D
13:40
<
traviss >
there are tests for http/headers but i don't see std/http imported anywhere.
13:42
<
maerwald >
wanted to use zig for a relatively simple cli program that does some file operations, downloading and extracting tarballs, as well as parsing a few config files
13:43
<
maerwald >
but no http module :o
13:47
<
scientes >
maerwald, cli is harder as there is no translation facilities in zig ATM
13:48
<
scientes >
or even a gnu-style argument parsing facility
13:57
BaroqueLarouche has joined #zig
14:12
schme245 has joined #zig
14:18
ltriant has joined #zig
14:22
ltriant has quit [Ping timeout: 258 seconds]
14:59
BaroqueLarouche has quit [Quit: Connection closed for inactivity]
15:01
<
m4ho >
Hi, I am starting with zig just now and I started with the documentation. I installed zig-0.5.0 via pacman (Distro is majaro) and compiling the hello world example throws multiple errors, the following being the second:
http://ix.io/277i Am I doing something wrong?
15:03
BaroqueLarouche has joined #zig
15:05
Astronothing has joined #zig
15:05
<
Snektron >
m4ho, std.io.getStdOut returns a so-called "error union"
15:05
<
Snektron >
so its basically an error or another type
15:05
<
Snektron >
you have to unwrap the error with the try keyword
15:07
<
Snektron >
in a single line you can write `const stdout = &(try std.io.getStdOut().outStream().stream;`
15:07
<
Snektron >
Although you might be creating a dangling reference
15:07
<
Snektron >
also i forgot a closing parenthesis after getStdOut()
15:08
<
mikdusan >
fyi, zig master both `getStdOut()` and `getStdErr()` no longer can fail, so no error union
15:13
<
m4ho >
mikdusan and Snektron: Thank you, I think I got it
15:14
<
m4ho >
And apparantly I should not start learning the language with something else than the master
15:52
schme245 has quit [Remote host closed the connection]
15:55
<
mq32 >
grah. and i ran against into the problem with packed structs :(
15:58
<
mq32 >
via, i saw that you tried to do the same approach as me on fixing the packed structs problem
16:01
<
shakesoda >
#1717 pushed back to 0.7.0 -> :(
16:02
<
mq32 >
sad, but reasonable. the 0.6 release is a under the term "stability/safety release"
16:06
<
shakesoda >
makes sense
16:07
<
shakesoda >
i just really want that particular change
16:07
<
mq32 >
hehe, i want it too, but what i really really want is that packed structs work with 3-byte-sized types :D
16:07
doublex has quit [Ping timeout: 258 seconds]
16:07
<
mq32 >
i have now 4 projects that semiish block on this
16:07
<
mq32 >
for the current project i could trivially work around it, but it's not that easy in other projects
16:09
<
shakesoda >
as in you can't define an i24/u24 that packs correctly?
16:10
<
shakesoda >
frustrating!
16:11
<
mq32 >
just spawn more projects!
16:11
<
scientes >
shakesoda, just define it with methods
16:11
<
scientes >
it isn't that hard
16:12
<
scientes >
const packed_u24 = struct { data: u24, fn get(n: usize) u24 {...}}...
16:12
<
scientes >
uggh, that isn't right
16:12
<
scientes >
but anyways, it can be done
16:13
<
scientes >
more like array_of_u24 = ...
16:13
<
scientes >
and you generate the struct with a function
16:13
<
scientes >
it is more advanced zig, but it can be done
16:13
<
mq32 >
scientes: [2]u24 is 8 byte large, not 6
16:13
<
mq32 >
that's the problem ;)
16:13
<
scientes >
yeah but you can do it
16:13
<
mq32 >
and as soon as this gets too complicated, it isn't worth the time to write horribly maintainable code just "to get it work"
16:13
<
mq32 >
at least that's my current strategy
16:14
<
scientes >
mq32, just use [6]u8
16:14
<
scientes >
and then you also have to manage endianness
16:14
<
mq32 >
nope, that is also 8 byte large :D
16:14
<
scientes >
but it really isn't that bad
16:14
<
scientes >
no it isn't
16:15
<
mq32 >
trust me on this topic, i've already tried to fix the compiler in this regard
16:16
<
scientes >
that makes no sense
16:16
<
scientes >
u8 is align 1
16:16
<
mq32 >
yes, but the array isn't ;)
16:16
<
scientes >
so it should be size 6
16:16
<
mq32 >
@sizeOf([6]u8) == 6
16:16
<
mq32 >
but not in a packed struct, because the compiler messes up alignments
16:16
<
shakesoda >
can you flip this inside out and cast parts of a byte array to your u24 type as a workaround
16:16
<
scientes >
that doesn't make any sense still
16:17
<
scientes >
the array should only be the align of the most aligned member
16:17
<
scientes >
looks like a bug
16:17
<
mq32 >
that's what i'm talking about!
16:18
<
mq32 >
and the problem get's even more complex as soo as you have something like arrays of packed structs with non-power-of-two size
16:18
<
mikdusan >
arrays don't pack
16:18
ltriant has joined #zig
16:19
<
mq32 >
yep, that's another "problem" right now, because you cannot model some stuff with that
16:19
<
mq32 >
and use funky manual casting all the way around
16:19
<
scientes >
yeah that is a bug
16:19
<
scientes >
^^^^^^ in C
16:20
doublex has joined #zig
16:21
<
scientes >
that said, I really know nothing about "packed"
16:21
<
mq32 >
it is, for packed structs
16:21
<
scientes >
only extern and "extern packed" (which doesn't seem to be working right now)
16:21
<
mq32 >
packed structs are defined as having
*no* padding between elements
16:22
<
scientes >
yeah but there is also werid bit packing stuff
16:22
<
scientes >
and it looks underspecified so i'd just avoid it
16:22
<
scientes >
as we are now finding
16:22
<
mq32 >
yeah but i need that bit packing stuff ;)
16:22
<
scientes >
but "extern packed" (which is what I always expect "packed" to be) doesn't seem to be working
16:22
<
scientes >
as C also has a packed mode
16:22
<
mq32 >
and i cannot work around that other by writing a horrible mess of bit shifts
16:22
<
scientes >
which is a ABI
16:22
<
mq32 >
C packed != Zig packed
16:22
<
scientes >
mq32, just use extern
16:23
<
scientes >
mq32, yeah but zig should also have C's packed
16:23
<
mq32 >
and then do bit shifts?
16:23
<
scientes >
its another abi to support
16:23
<
mq32 >
well, that's the point: i don't want to work around compiler bugs ;)
16:23
<
mq32 >
just for the sake of "getting something" done
16:23
<
scientes >
mq32, you have to manually handle endianness
16:23
<
scientes >
but otherwise
16:24
<
mq32 >
my point is: it isn't helpful to ignore compiler bugs and work around them
16:24
ltriant has quit [Ping timeout: 268 seconds]
16:24
<
scientes >
well zig is kinda like this these days
16:24
<
mq32 >
but i've seen that via is trying to fix the same topic right now
16:24
<
scientes >
and I also got frustrated when patches I submitted to fix "TODO" and "FIXME" were fussied over
16:24
<
mq32 >
the point is: i can just put any project that depends on new/buggy compiler features on hold
16:24
<
scientes >
when the compiler just quits over valid code, cause no-one has used it
16:24
<
mq32 >
as nothing of it is relevat anyways except for testing out the limits of the language and the compiler
16:25
<
scientes >
such as using the error set merging features
16:25
<
mq32 >
i have no benefit from doing a horrible amount of work just to reverse it two months later
16:28
<
SyrupThinker >
Well except for getting comfortable writing boilerplate
16:29
<
SyrupThinker >
I for one am writing all these bitshifts D:
16:29
<
mq32 >
SyrupThinker: that's what i want to prevent in the first plaec :D
16:29
<
mq32 >
i have made so many mistakes with those darn bitshifts
16:34
<
SyrupThinker >
Luckily some structures share layout :)
16:35
<
scientes >
mq32, just read a *u32 align(1), mask the extra byte, do an endianness flip
16:35
<
scientes >
however, llvm will now fix those bit shifts up to the above
16:35
<
scientes >
i believe
16:42
return0e has joined #zig
16:42
return0e_ has quit [Ping timeout: 258 seconds]
17:01
TheLemonMan has joined #zig
17:01
<
TheLemonMan >
mq32, have you tried using the new .Interrupt calling convention?
17:02
<
mq32 >
TheLemonMan, nope, not yet
17:03
<
TheLemonMan >
you should be able to get rid of the common_isr_handler function with that
17:04
schme245 has joined #zig
17:05
<
scientes >
where is the docs for that
17:07
<
TheLemonMan >
and it also works on AVR :D
17:07
<
mq32 >
TheLemonMan, i don't think i can get rid of my common_isr_handler ;)
17:08
<
mq32 >
it does more than just building a calling convention
17:08
<
mq32 >
it is required for multithreading for example
17:09
BaroqueLarouche has quit [Quit: Connection closed for inactivity]
17:09
<
TheLemonMan >
who needs multithreading? no one! I tell you
17:11
<
mq32 >
i also use it for context switches between different modes in my console :D
17:11
<
scientes >
why do you have to be so macho to do x86?
17:11
<
scientes >
why no do something saner, like ARM
17:12
<
TheLemonMan >
you're saving&restoring the registers clobbered by the handler, aren't you?
17:13
<
mq32 >
TheLemonMan: i do more ;)
17:13
<
mq32 >
scientes: i do x86, AVR, ARM, SPU Mk2 (#macho)
17:13
* scientes
just noticed all these comments are in german
17:14
<
scientes >
das Offset
17:14
<
mq32 >
yeah because i am a lazy and i just neer changed them after copying them :D
17:14
<
scientes >
are you sure it isn't der or die?
17:14
<
mq32 >
TheLemonMan:
17:14
<
mq32 >
\\ push %%esp
17:14
<
mq32 >
\\ call handle_interrupt
17:14
<
mq32 >
\\ mov %%eax, %%esp
17:14
<
mq32 >
that allows changing the whole stack (thus: execution context) on return of the interrupt handler
17:14
<
TheLemonMan >
that's nasty heh
17:15
<
mq32 >
also the register-saving allows modifying all registers via a struct pointer :)
17:15
* scientes
always wondered how people chose genders when picking words from english
17:15
<
scientes >
do they just roll a dice?
17:16
<
mq32 >
scientes: it's kinda a natural thing
17:16
<
mq32 >
but it's also regional which gender words do have
17:16
<
mq32 >
germany has two genders for "Butter"
17:16
<
scientes >
mq32, did it need surgery for that?
17:17
<
mq32 >
some people use "die Butter", some others use "der Butter"
17:17
<
TheLemonMan >
it's a smart way to fetch the state of the registers, I must admit
17:17
<
mq32 >
officially it's "die Butter", but we southern germans don't really care about what "Der Duden" says
17:17
<
scientes >
are there any dialects that just use the same gender for every noun?
17:18
<
mq32 >
at least not that i know f
17:18
<
mq32 >
german also has a "generic masculinum" which means that there are male words which do not actually refer to a gender
17:19
<
mq32 >
like "Bäcker" which is Baker
17:19
<
scientes >
coming from English genders are wacky, and then differnt languages have different genders
17:19
<
mq32 >
i can say "Sie ist Bäcker" (she is a baker)
17:19
<
scientes >
but aparently the same language has different genders
17:20
<
mq32 >
fun thing is that immigrants learning german is that they mess up a lot of those word genders
17:21
<
mq32 >
turkish has afaik only one gender for words, and russian has
*different* genders for pretty much everything
17:21
<
scientes >
georgian also doesn't have gender
17:21
<
scientes >
Russian is very difficult indeed
17:24
<
mq32 >
i find natural languages fascinating
17:30
BaroqueLarouche has joined #zig
17:32
Snetry has quit [Quit: left Freenode]
17:36
schme245 has quit [Remote host closed the connection]
17:37
schme245 has joined #zig
18:12
<
via >
mq32: yes, and the problem it currently has is fp load/stores, since it looks like the llvm types become single i8s
18:12
<
via >
i'm concerned what i see as two unrelated problems are getting put together -- ability to do individual field alignment, and having the right total size
18:13
<
via >
i'll admit i don't actually see the use case for individual field alignment control in a packed struct, and i think that massively complicates hte problem
18:13
<
via >
unfortunately i can't really take a look at it, i've got company for the weekend
18:19
ltriant has joined #zig
18:25
ltriant has quit [Ping timeout: 265 seconds]
18:27
rjtobin has joined #zig
18:28
<
mq32 >
via: take your time and enjoy the weekend!
18:28
<
mq32 >
i made a PCX/8bpp loader for zig :)
18:39
<
frmdstryr >
Does anyone use gdb with zig? How can I print a var from a non-global module?
18:42
mahmudov has quit [Ping timeout: 240 seconds]
18:42
rageoholic has joined #zig
18:42
<
rageoholic >
Hey I've got a question
18:43
<
rageoholic >
How can I tell zig's build system I need to put a dll (sdl in this case) and an executable in a distribution directory?
18:43
mahmudov has joined #zig
18:44
<
TheLemonMan >
frmdstryr, hm? what do you mean with non-global?
18:44
<
frmdstryr >
Not the root
18:45
<
frmdstryr >
eg "p osc.HSI_VALUE"
18:46
<
frmdstryr >
osc.zig is it's own file imported into main as const osc = @import("osc.zig")
18:46
<
frmdstryr >
even in debug mode pretty much everything seems to just say "optimized out"
18:47
<
mq32 >
rageoholic: use Builder.addSystemCommand and depend on that step
18:55
yth has joined #zig
18:55
wilsonk has quit [Ping timeout: 268 seconds]
18:57
<
frmdstryr >
also for whatever it's worth i modified zig to compile with -Og and it doesn't seem to make any difference
18:57
Akuli has joined #zig
18:57
wilsonk has joined #zig
18:59
<
mq32 >
frmdstryr: note that zig only emits what your code actually touches
18:59
<
mq32 >
and pretty much all constants get agressivly inlined
19:00
terinjokes has quit [Ping timeout: 240 seconds]
19:00
<
rageoholic >
Please help out. I really want to use SDL but I have no idea how to set it up with zig
19:00
<
frmdstryr >
Yeah it seems to just inline every register access
19:00
terinjokes has joined #zig
19:01
<
frmdstryr >
in c i can just read a register with p RCC->CR, in zig i have to print the actual address
19:01
<
frmdstryr >
it'd be helpful if there'd be some way to turn this off for debugging
19:01
<
TheLemonMan >
uh that's interesting, I wonder if it's LLVM being too aggressive or we don't emit enough debug infos
19:02
riba has joined #zig
19:03
<
mq32 >
use this, ask me questions, make improvements )
19:04
<
mq32 >
but it also contains code examples on how to use the raw C api
19:04
<
mq32 >
what's the state of the art allocator to be used in tests?
19:05
<
rageoholic >
Doesn't work on windows
19:06
<
mq32 >
hm, if you figure it out how to do SDL on windows, please make a pull request
19:06
<
mq32 >
i don't have a windows machine on my hands anymore
19:06
<
rageoholic >
In the meantime GLFW I guess
19:06
<
rageoholic >
Was hoping to use SDL instead
19:06
<
mq32 >
what's your problem with SDL?
19:06
<
mq32 >
use a prebuilt version from the website, add include path and the library and it
_should_ work
19:07
<
rageoholic >
How do I add the library?
19:07
<
rageoholic >
I tell it to link it but the exe can't find the dll
19:07
<
mq32 >
yeah, then you have to copy the SDL.dll next to your executable
19:07
<
mq32 >
same for glfw ;)
19:08
<
rageoholic >
Oh I statically link glfw
19:08
<
rageoholic >
And is there a way to copy it next to the exe with zig build?
19:08
<
rageoholic >
I want to automate this as much as possible
19:08
<
rageoholic >
Also is there a way to set the cwd of the run step?
19:10
<
mq32 >
use addSystemCommand in zig.build
19:10
<
mq32 >
and read the source code of the build.zig stuff
19:10
<
mq32 >
it really helps on knowing what it does
19:10
<
rageoholic >
Alright
19:10
ur5us has joined #zig
19:12
swoogan has joined #zig
19:12
traviss has quit [Ping timeout: 260 seconds]
19:12
<
mikdusan >
see `addInstallFile()` and a few of its specializations
19:13
<
mq32 >
mikdusan: oh neat that this exists!
19:13
<
mq32 >
we
_really_ need some docs on the builder module :D
19:13
<
mikdusan >
*everyone steps back as mq32 /steps/ forward :)
19:13
Snetry has joined #zig
19:15
<
mikdusan >
my fav command for that: `cat lib/std/build.zig | grep 'pub fn' | sort`
19:21
<
frmdstryr >
TheLemonMan: Yes that looks like it
19:21
rageoholic has quit [Read error: Connection reset by peer]
19:22
<
frmdstryr >
Also it's probably more of a issue of gdb not supporting zig than with zig itself
19:24
doublex has quit [Ping timeout: 240 seconds]
19:25
return0e has quit [Remote host closed the connection]
19:26
return0e has joined #zig
19:30
doublex has joined #zig
19:45
Snetry has quit [Quit: left Freenode]
19:47
Snetry has joined #zig
20:00
rjtobin has quit [Quit: Leaving]
20:01
<
schme245 >
is there a way to detect what vector extensions are present when building a zig library?
20:08
TheLemonMan has quit [Ping timeout: 258 seconds]
20:20
ltriant has joined #zig
20:22
scientes has joined #zig
20:25
ltriant has quit [Ping timeout: 240 seconds]
20:30
<
schme245 >
Astronothing: array have comptime known length, slices have runtime known length
20:30
<
schme245 >
so there is no way to go from slice to array
20:30
<
schme245 >
(I believe)
20:33
<
mq32 >
you could dirtily pointer-cast around
20:33
<
mq32 >
but i would make a helper function
20:34
<
schme245 >
out of curiosity, how would that pointer cast look?
20:34
<
mq32 >
fn sliceToArray(comptime T : type, input: []const T, comptime size: usize) ![size]T
20:34
<
mq32 >
@ptrCast(*[N]T, &slice[x]).*
20:35
<
mq32 >
i would go for that function
20:36
<
schme245 >
is there anything ptrCast can't do? 😁
20:36
Snetry has quit [Quit: left Freenode]
20:37
<
mq32 >
yeah, change alignment
20:37
<
Astronothing >
thank you!
20:38
Snetry has joined #zig
20:58
riba has quit [Ping timeout: 260 seconds]
21:10
Snetry has quit [Quit: left Freenode]
21:14
ur5us has quit [Ping timeout: 260 seconds]
21:16
<
andrewrk >
Astronothing, std.mem.copy
21:16
<
andrewrk >
I'm not sure why @ptrCast is being suggested
21:17
<
Astronothing >
yup, I'm struggling a bit with mem.copy at the moment
21:19
<
andrewrk >
oh now I understand mq32's suggestion, which works around this issue not being implemented yet
21:19
<
mq32 >
andrewrk, that syntax for slice-dereference is neat!
21:20
Snetry has joined #zig
21:21
* mq32
runs into wild integer overflows
21:22
traviss has joined #zig
21:23
Snetry has quit [Client Quit]
21:25
<
schme245 >
traviss: that's awesome! :D
21:25
<
traviss >
believe there is room to improve the spectralnorm solution. wip
21:25
<
schme245 >
we should try to get Zig into the official benchmarks game somehow
21:25
<
schme245 >
good exposure
21:27
<
traviss >
yeah. i'm not sure how to get new solutions accepted. i was reading and they say they only want solutions for a given lang if its missing.
21:28
<
traviss >
so should be no problem for zig i hope.
21:32
<
traviss >
thanks! i'll see what i can do.
21:34
<
schme245 >
traviss: please keep me posted! :)
21:39
wootehfoot has joined #zig
21:39
Snetry has joined #zig
21:43
Akuli has quit [Quit: Leaving]
21:44
<
traviss >
oh cool. thanks andrewrk
21:47
schme245 has quit [Remote host closed the connection]
21:51
ltriant has joined #zig
21:53
<
pixelherodev >
`cat lib/std/build.zig | grep 'pub fn' | sort` brilliant!
21:54
<
pixelherodev >
Can't believe I hadn't thought of that :)
21:57
ltriant has quit [Ping timeout: 265 seconds]
22:01
<
mikdusan >
andrewrk: if you get a chance push
www.ziglang.org ? there's a few examples that are out of date
22:01
blueberrypie has quit [Quit: leaving]
22:09
<
andrewrk >
mikdusan, yes will do
22:09
BaroqueLarouche has quit [Quit: Connection closed for inactivity]
22:17
_whitelogger has joined #zig
22:34
<
pixelherodev >
Okay, question: `const a = struct { var b: u8 = 38; };` is `b` there a global, or a namespaced member of a? Because after reading through GH Issues I no longer am sure I know :P
22:37
<
mq32 >
it's a global variable in the namespace "a"
22:37
<
pixelherodev >
Ahh, okay
22:37
<
pixelherodev >
So `global` meaning storage location?
22:37
<
mq32 >
yeah, pretty much
22:37
<
pixelherodev >
Gotcha
22:37
<
pixelherodev >
Thanks!
22:47
<
Snektron >
andrewrk, would you pick std.zig for source generation or just straight up print a source file?
22:48
<
Snektron >
also, moreover std.zig, why is as an ast tree returned as a pointer to memory owned by itself instead of as a value type?
22:48
<
Snektron >
and why are nodes implemented by a knock-off discriminated union instead of union(enum)
22:56
swoogan has quit [Ping timeout: 260 seconds]
23:12
ltriant has joined #zig
23:19
ltriant has quit [Ping timeout: 268 seconds]
23:24
schme245 has joined #zig
23:33
swoogan has joined #zig
23:43
<
mq32 >
do we have some kind of lock-free queue/channel in zig.std already?
23:58
wootehfoot has quit [Read error: Connection reset by peer]