Live data from Hacker News

File for divorce from LLVM

github.com

141–150 of 167 posts

Re: File for divorce from LLVM

#141

Andrew is super sharp so I imagine he and the team will get there now that it's declared as a goal. But man, it seems to me (uneducated on the challenges zig faces w/LLVM) that this shifts the team's capacity away from zig and towards things like binutils. When I read the headline I assumed that they were throwing out the compiler (IIRC they had mostly/totally excised it already). But for a project like zig it just s…

> now that it's declared as a goal

No. It's an unaccepted proposal.

Re: File for divorce from LLVM

#142
post #111

Earlier quoted context omitted.

Having the choice for advanced users is a plus but I think having to choose is a big negative.

Ironically, when there was only one choice that was described as a big negative. Our experience with the troika has been a clear positive.

15 years later it's negative. The user experience of having to download and switch compilers (or even think about it at all) is terrible, especially given that (after performance) one of the main motivators of switching to ldc (i.e. all serious use of D to make money) is either a bug or lack of platform support in dmd.

Re: File for divorce from LLVM

#143

Andrew is super sharp so I imagine he and the team will get there now that it's declared as a goal. But man, it seems to me (uneducated on the challenges zig faces w/LLVM) that this shifts the team's capacity away from zig and towards things like binutils. When I read the headline I assumed that they were throwing out the compiler (IIRC they had mostly/totally excised it already). But for a project like zig it just s…

> now that it's declared as a goal No. It's an unaccepted proposal.

By the creator and benevolent dictator of the Zig language.

I think it's same to assume it's an official goal, now.

Re: File for divorce from LLVM

#144

Earlier quoted context omitted.

> unless we have a new C++ front made in zig Writing a C++ compiler is several order of magnitude more complicated than writing a C, Java, Go or Zig compiler. There's a very good reason there are only 3 in existence despite how ubiquitous C++ is (and even then, it takes years for them to keep up with the latest standards). C++'s grammar is type 0, there's isn't even an EBNF definition of it because it's pratically im…

Out of curiosity, does Intel's icc compiler see much use? It looks like it uses LLVM these days, but its frontend presumably still needs to handle all of C++'s complexity.

ICC is deprecated and will no longer see a release, but it uses the EDG front-end. Its replacement, ICX (the oneAPI compiler), uses clang as its front-end.

There are essentially only four extant C++ front-end implementations: GCC, Clang, MSVC, and EDG. All other C++ compilers are based on one of these four implementations, or have since gone extinct. (Except maybe Green Hills, but I can't recall anymore if their front-end is still in-house.)

Re: File for divorce from LLVM

#145
post #45
post #30

Earlier quoted context omitted.

I thought it was funny. They had an experience that amused them and they shared it. Not everything has to be to your personal tastes. If you think that's one of the worst kind of internet comments, you might want to recalibrate a bit. I have a variety of things from my anti-abuse work that I'd be happy to send you.

If you do anti-abuse work, maybe you're the one with a wonky calibration. No offense intended, I appreciate your work. I live on an Internet where I mainly don't have to see any abuse, thanks to moderation and algorithms and probably good folks like yourself. Anyway, I think you're missing my point. Look around, here in situ on HN, and compare it to even an average quality comment.

Your theory is that because I have seen abusive content, my sense of humor is now so broken that the things I find funny are objectively bad? That makes no sense at all.

Also, it's wild to see that somebody who's been using this site about 4% of the time I have telling me that I just don't get the context.

Sure, bub. Your personal preferences just happen to be objectively correct, and mine are due to my ignorance and brokenness. Whatever you say.

Re: File for divorce from LLVM

#146
post #144

Earlier quoted context omitted.

Out of curiosity, does Intel's icc compiler see much use? It looks like it uses LLVM these days, but its frontend presumably still needs to handle all of C++'s complexity.

ICC is deprecated and will no longer see a release, but it uses the EDG front-end. Its replacement, ICX (the oneAPI compiler), uses clang as its front-end. There are essentially only four extant C++ front-end implementations: GCC, Clang, MSVC, and EDG. All other C++ compilers are based on one of these four implementations, or have since gone extinct. (Except maybe Green Hills, but I can't recall anymore if their fron…

Got it, thanks! I knew that Intel had a compiler for C and C++ from reading blogs about compiler research, but I didn't know any details about its current architecture.

Re: File for divorce from LLVM

#147
post #40
post #12

Earlier quoted context omitted.

The "problem" with the LLVM project is its massive success, coupled with its incredibly difficult problem domain. Turns out it's actually really hard to write modular compiler infrastructure that serves as the optimizer and code generator for N different arbitrary programming languages. The fact that it works in this capacity at all, and still manages to be competitive with GCC in its original use-case (being a C/C++…

You got pro tips for working with LLVM types after parsing LLVM IR? I can't for the life of me figure out where in the class hierarchy I am, and the doxygen is... interesting. Language wrangling is much nicer in a language with proper ADTs like Haskell, but I also feel like there's probably that bit of LLVM documentation that I haven't read.

I'm also interested in this. I tried using the Node bindings from https://github.com/ApsarasX/llvm-bindings in Typescript, its types look like they map pretty closely to the original LLVM types; figuring out even a basic example was a bit tricky with LLVM's documentation.

Re: File for divorce from LLVM

#148
post #135

Approaching this from the lens of an interested observer with experience with other projects working on non-LLVM backends for their languages, I'm just struck by the amount of hubris in the linked proposal. If it weren't for the author, I'd have dismissed the whole thing as a low-effort GitHub issue by a Zig newbie. The underestimation of the work involved, the backhanded dismissal of all the work that has gone into…

I know nothing about LLVM backends, but it’s pretty common that libraries aiming to solve 100% of users problems eventually become unwieldy and slow compared to a more optimized alternative. Web Pack vs. esbuild is an example of this.

I get what you are trying to say but I have experience with both web and native tooling. This isn’t a valid comparison. Moreover, llvm isn’t one tool, it’s modular, fairly well-architectured, and can be compiled with or without any of a million different features.

Re: File for divorce from LLVM

#149
post #45

Earlier quoted context omitted.

If you do anti-abuse work, maybe you're the one with a wonky calibration. No offense intended, I appreciate your work. I live on an Internet where I mainly don't have to see any abuse, thanks to moderation and algorithms and probably good folks like yourself. Anyway, I think you're missing my point. Look around, here in situ on HN, and compare it to even an average quality comment.

Your theory is that because I have seen abusive content, my sense of humor is now so broken that the things I find funny are objectively bad? That makes no sense at all. Also, it's wild to see that somebody who's been using this site about 4% of the time I have telling me that I just don't get the context. Sure, bub. Your personal preferences just happen to be objectively correct, and mine are due to my ignorance and…

> Your theory is that because I have seen abusive content, my sense of humor is now so broken that the things I find funny are objectively bad?

No, I did not present this theory, in my actual comment or any implication it made.

My theory is that if your job is dealing with abusive comments, perhaps you aren't judging the non-abusive comments properly in terms of what constitutes a bad comment. All kinds of bad comments can be funny. Jokes are generally considered bad comments here on HN, for instance.

I'll pass on the snark, have a good day my man.

Re: File for divorce from LLVM

#150
post #118

Earlier quoted context omitted.

Apple, of course, dropped LLVM at some point after it didn’t meet their latency needs.

Apple’s entire ecosystem is based on clang. How does that mean they dropped LLVM? They’re one of the primary maintainers.

For WebKit.
Post reply on HN