ChanServ changed the topic of #zig to: zig programming language | ziglang.org | be excellent to each other | channel logs: https://irclog.whitequark.org/zig/
<pupppp>
there was a site called wasm back in the day, now this word has a different meaning
<pupppp>
I want to throw a wall of text about exceptions on github issues, wanna read?
<andrewrk>
yes
<andrewrk>
definitely
<ltr_>
yes webassembly
<ltr_>
and it runs in a stack machine
<dimenus>
andrewrk: how did you get the idea for zig?
pupppp has quit [Read error: Connection reset by peer]
pupppp has joined #zig
hoppetosse has quit [Ping timeout: 248 seconds]
hoppetosse has joined #zig
arBmind has quit [Quit: Leaving.]
<andrewrk>
dimenus, when I coded C, zig is the language I wish it was instead
<andrewrk>
zig is just incremental improvements on C
<dimenus>
i've been watching jblow off and on since he started his language
<dimenus>
so i was just curious
<andrewrk>
I watched some of his videos
<andrewrk>
I'm impressed with the performance
<andrewrk>
I want to try to match his performance with the self-hosted rewrite
<andrewrk>
but we also have planned to support mega large codebases while jblow has said that a codebase > 80,000 ish lines is not really a use case he cares about
<dimenus>
I don't think that last statement is true
<dimenus>
Maybe you're missing an extra 0
<dimenus>
but I think the witness is about half a million lines
<pupppp>
Tried to figure out if just rearranging code by hand will be enough. Still haven't figured out.
<pupppp>
Okay, I'll forget about exceptions, I'll go for goto instead. Goto and giant functions.
<pupppp>
Need to write the actual code now.
<pupppp>
EASTL is a cool library, it could be a good reference.
<andrewrk>
pupppp, if you just use zig normally and functions whenever you want, and then use --release-fast, LLVM turns your code into giant functions with goto
<andrewrk>
you might be doing unnecessary work
<pupppp>
ok, I'll try
<dimenus>
andrewrk: what are your thoughts on having multiple backends?
<dimenus>
(another idea borrowed from jblow)
<dimenus>
i know we have a lot more important things to do first
<dimenus>
just curious
<andrewrk>
I think it could make sense if we could get something out of it
<andrewrk>
jblow's main reason for doing it is speed
<andrewrk>
I want to explore an advanced caching strategy before resorting to writing a custom backend
<andrewrk>
also, jai doesn't have debug symbols
<andrewrk>
if we had our own backend, we could distribute zig as a 100% static binary that does not depend on libc. that's pretty neat
<andrewrk>
but it wouldn't have all the advanced optimizations LLVM offers
<dimenus>
i'm on jblow's end as far as iteration speed goes
<dimenus>
but that does sound interesting
<andrewrk>
I think we can compete with jai's speed. that's one of the things I want to prove in 0.2.0
<dimenus>
his demo game is ~ 50k lines i think and compiles in about half a second on x64
<andrewrk>
if you look at --enable-timing-info, 10% of time is spent generating compiler-rt.o and builtin.o. these objects are (almost) always exactly the same. we can eliminate that 10%
<dimenus>
probably slower on llvm
<dimenus>
i haven't had a chance yet, lots more busy work to do today
<dimenus>
earlier this week i had a lot more conference calls
<dimenus>
i did compile llvm master in the background though
<dimenus>
:D
<andrewrk>
nice
<andrewrk>
I made progress on the assertion
<andrewrk>
I'll file an issue so you can follow along
<andrewrk>
I was referring to the self hosted compiler
<dtzWill>
oh, right, okay. So statically linked libc wouldn't help, you mean avoiding libc specifically altogether?
* dtzWill
builds LLVM and LLVM-based tools into fully-static executables regularly
<dtzWill>
(musl, and I go .... a roundabout way to it that's an important part of my research O:))
<dtzWill>
(among other things working to free the world from shared/static SNAFU)
<andrewrk>
dtzWill, yes
<dtzWill>
anyway I'm sure you're plenty aware of those sorts of issues given how magically zig handles them (well, in my limited experience it does, but even taht is an impressive claim...)
<dtzWill>
I wish I had more time ATM so I could work on that and how what our ideas could be mutually beneficial. Bah.. Well for now just know this is good stuff and I think you're really on to something ^_^
<andrewrk>
if you ever get time, let me know. I could use a hand
<dtzWill>
sure thing o7
pupppp has quit [Ping timeout: 240 seconds]
hoppetosse has quit [Remote host closed the connection]