back
user profile

lerno

1,422karma·409submissions·April 1, 2014
recent activity (409 total)
comment
Ultima 4 was good story wise, but the combat was extremely tedious with each in your party only being able to take a single step per turn. This was particularly annoying when facing easy to beat foes.…
9mo ago·view thread
comment
Over 25 years ago I was doing ny final thesis on string theory for my Masters degree. The more I read, the more I went ”this could not possibly be right”. I ended up taking a break to work to get pers…
9mo ago·view thread
comment
Maybe this, where a Zig user tries out C3? https://alloc.dev/2025/05/29/learning_c3 …
9mo ago·view thread
comment
I answered above.
9mo ago·view thread
comment
If you are comparing Zig to Rust and C++, which are very well known to be difficult to learn, then that is not really saying anything about the ease of learning it. Compare it to Swift, D or Odin. Is …
9mo ago·view thread
comment
Embergen is 400kloc Odin, it compiles in about 2s. No incremental compilation or caching to speed it up. And this is with LLVM as backend.
9mo ago·view thread
comment
This is just a convenient excuse. If Zig is to be fast to compile, it doesn’t help to make excuses for it. Saying something it ”fast enough” because one is comparing with even slower languages is like…
9mo ago·view thread
comment
”Zig builds C faster than most C compilers” is a nonsense statement, which I don’t know how to answer. The fact is simply that despite Zig uses LLVM as a backend in the same way Odin and C3 does, it c…
9mo ago·view thread
comment
It uses LLVM as the backend yes.
9mo ago·view thread
comment
Odin, Jai, C3, C.
9mo ago·view thread
comment
I have never heard anyone calling Zig "famously simple" before. In fact, people tend to say it has quite the learning curve. Of course, caveats apply: it is certainly simple compared to some…
9mo ago·view thread
comment
I feel qualified to offer a guess as to why: in Zig (and Odin) reuse is mainly done through what basically is templates. This reduces the need for vtables only when true ”plugin” type of objects are t…
9mo ago·view thread
comment
I should add that there are a few candidates: 1. Zig uses three(!) frontend IRs, Odin and C3 only one. 2. Zig relies heavily on comptime to provide most of its language features. C3, which has a simil…
10mo ago·view thread
comment
While LLVM certainly is a problem, consuming over 90% of compile times both for C3 and Odin, it should be noted that both languages compile MUCH faster than Zig, achieving in general sub second compil…
10mo ago·view thread
comment
This release adds shebang support, and simple generic parameter inference (which doesn't have that much use in C3 compared to languages that have per function/type generics, rather than gene…
10mo ago·view thread
comment
It is well known that Swift set out in design without any prior knowledge of the language it was replacing (Objective-C), with only the most junior in the team having used it to any greater extent. In…
10mo ago·view thread
comment
I can't speak for Zig users, but an interesting alternative to just new/delete or malloc/free and various garbage collection strategies is pervasive use of temp allocation using arenas,…
10mo ago·view thread
comment
Unfortunately Swift is a mess of a language, trying to put as many language features in there as possible. While still not getting close to being a good replacement for Objective-C. AND it's the …
10mo ago·view thread
comment
I find some of Rust dev reactions to this article pretty embarrassing. As if memory safety was some holy grail only provided by Rust. Here is a bunch of more memory safe languages that are more popula…
10mo ago·view thread
comment
What is "incredibly dangerous"? Having contracts that can catch errors at compile time?
1y ago·view thread
comment
"Incremental compilation is fast", is something people only talk about when normal compilation speeds are abysmal. Sadly, C++ set the expectations here, which made both Rust and Swift think …
1y ago·view thread
comment
Ok then I understand what you mean (I couldn't respond directly to your answer, maybe there is a limit to nesting in HN?). Let me respond in some more detail then to at least answer why C3 doesn&…
1y ago·view thread
comment
Alloca would not allow you to pass data from the current scope up to a parent scope.
1y ago·view thread
comment
All of that is out of scope for a C-like though. Once you set the constraints around C, there will be trade-offs. Rust is a high level language.
1y ago·view thread
comment
Let me paste the introduction in the post, and let's see how much it claims that C3 has memory safety: Modern languages offer a variety of techniques to help with dynamic memory management, each …
1y ago·view thread
comment
What destructor?
1y ago·view thread
comment
*see
1y ago·view thread