<pixelherodev>
Personally, I'd appreciate raw links in the future (instead of html ones), but that doesn't detract from the actual kernel :)
<ronsor>
I'm not sure how much I've abused `comptime` in making the wasm interpreter bindings
<pixelherodev>
ronsor: does it build in under sixty seconds on reasonable hardware? :P
<ronsor>
yes
<pixelherodev>
Then it's within an acceptable amount lol
<ronsor>
exactly 54 seconds actually
<ronsor>
that includes userspace too tho
<ronsor>
and the C dependencies
waleee-cl has quit [Quit: Connection closed for inactivity]
[rg] has quit [Quit: Konversation terminated!]
LER0ever has joined #zig
cole-h has joined #zig
tughi has joined #zig
marnix has joined #zig
tughi has quit [Quit: Leaving]
marnix has quit [Read error: Connection reset by peer]
marnix has joined #zig
frett27 has joined #zig
a_chou has joined #zig
a_chou has quit [Remote host closed the connection]
st4ll11 has quit [Quit: WeeChat 2.9]
frett27_ has joined #zig
frett27 has quit [Ping timeout: 240 seconds]
tsujp has quit [Ping timeout: 240 seconds]
tsujp has joined #zig
cr1901_modern has joined #zig
marnix has quit [Ping timeout: 240 seconds]
cole-h has quit [Ping timeout: 240 seconds]
LakeByTheWoods has quit [Ping timeout: 245 seconds]
<bgiannan>
does any of you has some experience using Qt with Zig? I'm looking for a lib with some high level text display features and I'm not finding anything else.
<daurnimator>
bgiannan: I don't know of anyone doing that off the top of my head. there would need to be some zig<>qt layer.
<daurnimator>
Qt code isn't even normal C++: you have to use the special Qt compiler wrapper thing
wootehfoot has joined #zig
_Vi has joined #zig
drewr has quit [Ping timeout: 260 seconds]
drewr has joined #zig
<bgiannan>
right, i know nothing about qt
<bgiannan>
just saw QML
<bgiannan>
seems like a whole lot to get into
<bgiannan>
but don't know anything else than can display formatted text easily, or i'd have to go the low level route with Cairo or Skia
<daurnimator>
what do you mean by "formatted text"
<daurnimator>
(like, you have a string you want to render? or you have a pixel buffer?)
<daurnimator>
and also... what do you mean by "display"... render to the screen? cross platfomly?
<daurnimator>
and for the latter: I thought you were using SDL?
<daurnimator>
or are you talking about font shaping? in which case you need e.g. harfbuzz
swills has quit [Ping timeout: 240 seconds]
swills has joined #zig
KoljaKube has joined #zig
wootehfoot has quit [Read error: Connection reset by peer]
wootehfoot has joined #zig
knebulae has quit [Read error: Connection reset by peer]
isolier has quit [Quit: Ping timeout (120 seconds)]
isolier has joined #zig
retropikzel has joined #zig
Stephanie has quit [Ping timeout: 265 seconds]
procnto has quit [Ping timeout: 265 seconds]
Nilium has quit [Ping timeout: 264 seconds]
pixelherodev has quit [Quit: ZNC 1.6.2 - http://znc.in]
isolier has quit [Ping timeout: 246 seconds]
procnto has joined #zig
swills has quit [Quit: No Ping reply in 180 seconds.]
Stephanie has joined #zig
ofelas has quit [Ping timeout: 240 seconds]
hanetzer has quit [Ping timeout: 260 seconds]
teqwve has quit [Ping timeout: 260 seconds]
tracernz has quit [Ping timeout: 244 seconds]
ovf has quit [Ping timeout: 244 seconds]
eddyb[legacy] has quit [Ping timeout: 244 seconds]
l1x has quit [Ping timeout: 244 seconds]
strmpnk has quit [Ping timeout: 244 seconds]
Nilium has joined #zig
swills has joined #zig
shakesoda has quit [Ping timeout: 244 seconds]
kushalp_ has quit [Ping timeout: 244 seconds]
utzig_ has quit [Ping timeout: 244 seconds]
JimRM has quit [Ping timeout: 244 seconds]
karrick has quit [Ping timeout: 244 seconds]
wjlroe has quit [Ping timeout: 244 seconds]
Cynthia has quit [Read error: Connection reset by peer]
rzezeski has quit [Read error: Connection reset by peer]
teqwve has joined #zig
nycex- has joined #zig
karrick has joined #zig
rzezeski has joined #zig
Cynthia has joined #zig
eddyb[legacy] has joined #zig
wjlroe has joined #zig
JimRM has joined #zig
nycex has quit [Ping timeout: 240 seconds]
shakesoda has joined #zig
ovf has joined #zig
procnto has quit [Ping timeout: 246 seconds]
tracernz has joined #zig
blueberrypie0 has joined #zig
isolier has joined #zig
ronsor has quit [Ping timeout: 256 seconds]
isolier has quit [Remote host closed the connection]
blueberrypie has quit [Ping timeout: 272 seconds]
blueberrypie0 is now known as blueberrypie
shakesoda has quit [Ping timeout: 240 seconds]
nycex- has quit [Remote host closed the connection]
nycex has joined #zig
shakesoda has joined #zig
ofelas has joined #zig
marnix has joined #zig
procnto has joined #zig
isolier has joined #zig
procnto has quit [Ping timeout: 240 seconds]
marnix has quit [Ping timeout: 244 seconds]
marnix has joined #zig
ronsor has joined #zig
strmpnk has joined #zig
isolier has quit [Client Quit]
cren has joined #zig
isolier has joined #zig
isolier has quit [Remote host closed the connection]
ronsor has quit [Ping timeout: 264 seconds]
procnto has joined #zig
l1x has joined #zig
ronsor has joined #zig
ronsor has quit [Ping timeout: 258 seconds]
ronsor has joined #zig
ronsor has quit [Ping timeout: 240 seconds]
Ristovski has quit [Remote host closed the connection]
[Ristovski] has joined #zig
[Ristovski] is now known as Ristovski
ronsor has joined #zig
chivay has joined #zig
ronsor has quit [Ping timeout: 240 seconds]
ronsor has joined #zig
wootehfoot has quit [Read error: Connection reset by peer]
strmpnk has quit [Ping timeout: 244 seconds]
procnto has quit [Read error: Connection reset by peer]
l1x has quit [Read error: Connection reset by peer]
jicksaw has quit [Ping timeout: 240 seconds]
strmpnk has joined #zig
procnto has joined #zig
l1x has joined #zig
ronsor has quit [Ping timeout: 264 seconds]
jicksaw has joined #zig
ronsor has joined #zig
strmpnk has quit [Read error: Connection reset by peer]
strmpnk has joined #zig
shakesoda has quit [Ping timeout: 256 seconds]
euantorano has quit [Ping timeout: 256 seconds]
euantorano has joined #zig
shakesoda has joined #zig
euantorano has quit [Ping timeout: 240 seconds]
strmpnk has quit [Read error: Connection reset by peer]
strmpnk has joined #zig
l1x has quit [Read error: Connection reset by peer]
shakesoda has quit [Read error: Connection reset by peer]
euantorano has joined #zig
shakesoda has joined #zig
procnto has quit [Ping timeout: 244 seconds]
l1x has joined #zig
procnto has joined #zig
xackus has joined #zig
procnto has quit [Read error: Connection reset by peer]
euantorano has quit [Read error: Connection reset by peer]
shakesoda has quit [Read error: Connection reset by peer]
retropikzel_ has joined #zig
<mkchan>
so zig source files are implicitly structs with pub "global" variables and functions being the instantiated type's member variables and functions?
euantorano has joined #zig
procnto has joined #zig
shakesoda has joined #zig
frett27_ has quit [Ping timeout: 258 seconds]
<mkchan>
in the stdlib i've only seen files used as namespaces although most of it seems to be because they are type-returning functions so i'm not sure if this style is used much
<alexnask[m]>
example usage: src-self-hosted/link/Elf.zig
<mkchan>
ah it's like an actual struct definition instead of pub variables, thanks for the clarification and example
cr1901_modern has quit [Quit: Leaving.]
strmpnk has quit [Read error: Connection reset by peer]
cr1901_modern has joined #zig
strmpnk has joined #zig
retropikzel_ has quit [Quit: Leaving]
retropikzel_ has joined #zig
retropikzel_ has quit [Quit: Leaving]
KoljaKube has quit [Ping timeout: 240 seconds]
marnix has quit [Read error: Connection reset by peer]
marnix has joined #zig
cr1901_modern has quit [Quit: Leaving.]
cr1901_modern has joined #zig
cren has quit [Ping timeout: 264 seconds]
klltkr has joined #zig
ofelas has quit [Ping timeout: 265 seconds]
ofelas has joined #zig
companion_cube has quit [Quit: WeeChat 2.3]
<ifreund>
yeah there's nothing special about files, they're just like any other struct
<mkchan>
so that means compilation kind works like a tree where leaves are the independent struct-files
frett27_ has joined #zig
companion_cube has joined #zig
<ifreund>
in that there is a single root source file sure. There's no semantic difference between declaring a struct in-line or using @import() though
wootehfoot has joined #zig
rzezeski has quit [Quit: Connection closed for inactivity]
cr1901_modern has quit [Ping timeout: 240 seconds]
cr1901_modern has joined #zig
<frett27_>
hi, i would like to create a struct union, with additional fields depending on a common field, like discriminant records in Ada, or some object oriented in C ? i think this is possible in zig, but look for some idiomatic patterns for this
<frett27_>
are there some examples ?
<frett27_>
in std ? or other place ?
<fengb>
Discriminated records = tagged unions
<frett27_>
fengb, from my understanding, it change the whole structure,i wish to extend the fields if a field = something
<frett27_>
Oh, i see .. , embed the tagged union into the struct ? does that make sense ?
<frett27_>
like struct { commonfields: types, type: union(discriminent) { my additional fields } }
<fengb>
Yeah, keep the shared data in the struct and separate values in the union
<fengb>
This is for known types ahead of time, not extensible
<fengb>
For an extensible type / interfaces, we’ve been using @fieldParentPtr like Allocator
<frett27_>
fengb, thank's for your feedback, but in my case i really want to have a statically known structure and force the implementation of both. I don't have much sub types and in a system process.
<ifreund>
the other pattern you can use here is to put the common fields in a "base" struct and create specialized structs containing this base struct as a member
<ifreund>
then pass the base struct around and acces the specialized version with @fieldParentPtr()
<ifreund>
this is fairly commonly used in the self hosted compiler
<ifreund>
I'll admit that I don't understand exactly what you're looking for though, I also don't know ada
<Nypsie[m]>
^ Can see this in action in std/zig/ast.zig
<alexnask[m]>
Afaict that Ada example is defining a struct field dependng on a comptime value
<alexnask[m]>
this is easy with a switch statement in zig if you want the field to have the same name, otherwise youd need some @Tyape(.Struct) trickery
Akuli has joined #zig
cren has joined #zig
_Vi has quit [Ping timeout: 272 seconds]
wootehfoot has joined #zig
metabulation has joined #zig
cole-h has joined #zig
adamkowalski has joined #zig
<klltkr>
I'm looking to use the std lib JSON parser to parse into a union (of structs). The JSON in question has a field called "type" with different values (e.g. "number", "string") that I want to use to switch which particular union value gets created. It looks like what I want is a comptime struct field, e.g. `comptime @"type": []const u8 = "number",` in each struct that the union can contain. However, the parser gets upset here https://github.com/ziglang/zig
<klltkr>
/blob/master/lib/std/json.zig#L1486 and https://github.com/ziglang/zig/blob/master/lib/std/json.zig#L1500 with `error: cannot assign to constant` which makes sense as I don't see it taking into consideration that the field would be const. I also can't see anything in the TypeInfo union that would allow some additional logic to skip comptime fields.
_Vi has joined #zig
<bgiannan>
daurnimator, i want something that can handle work wrapping, margins, line heights, fonts etc. https://pango.gnome.org/ seems like what i want?
retropikzel has quit [Quit: Leaving]
<ifreund>
pango provides that level of abstraction, should do what you want
ronsor has quit [Ping timeout: 244 seconds]
ronsor has joined #zig
cr1901_modern has quit [Quit: Leaving.]
cr1901_modern has joined #zig
Patrice_ has joined #zig
yunree has joined #zig
frett27_ has quit [Ping timeout: 240 seconds]
<Patrice_>
ifreund, fengb , alexnask for your perspectives and help