Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
strager
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
1.
▲
by
strager
3y ago
> Ideally type-checking, linting, highlighting and formatting would run in one language service doing incremental parsing and updates to a shared AST on every keystroke. I think this is the reason Biome (originally called Rome) started.
2.
▲
by
strager
3y ago
Here is the answer I got from vjeux: > There's a lot of fast web tooling being written in rust those days. https://twitter.com/Vjeux/status/1722769322299609565 I don't buy it. I think vjeux is riding
3.
▲
by
strager
3y ago
Sean Baxter is doing a decent job with his Circle compiler, so I hear. https://www.circle-lang.org/
4.
▲
by
strager
4y ago
Unfortunately, we live in the real world where compilers do not do the things that you suggest that they ought to.
5.
▲
by
strager
4y ago
I'm not sure what you mean. Are you talking about the benchmarks? I run `cargo clean` before each benchmark. That should clean up changes to third-party crates, right?
6.
▲
by
strager
4y ago
I'd love to try Zig and Jai for this purpose, but they are not stable yet. If either becomes stable, I'll happily re-run this experiment. Nim doesn't look like the language for me.
7.
▲
by
strager
4y ago
> Definitely check [Val and Carbon] out if you're looking for a C++ replacement! I don't want to base my project on an experimental language like Carbon or Val. I want a C++ replacement which compiles quickly. Do Carbon or Val
8.
▲
by
strager
4y ago
> If your main conclusion is based on full builds, i would urge you to re-evaluate. It's not. I show several charts comparing incremental builds too.
9.
▲
by
strager
4y ago
Good question. The author of Zig claims that dev build times will be amazing. One technique is to avoid LLVM. Another technique is to integrate the linker. But all of that is a work-in-progress project.
10.
▲
by
strager
4y ago
> I don't know enough C++ or Rust to judge but is it possible that they are optimized around Rust that isn't C++ style? I know I have seen articles about other languages where some very minor changes make a huge difference beca
11.
▲
by
strager
4y ago
I have found Clang's -ftime-trace flag helpful in finding bloated #include-s and templates. Also, I have analyzed the .ninja_log file (for CMake+Ninja) to find slow-to-compile .cpp files.
12.
▲
by
strager
4y ago
> They seem to have chosen to use mold for C++ and not for Rust after seeing that it gave little benefit for small projects, but I would expect that to change as the project scales. The benchmarks show Mold for both Rust and C++. This wa
13.
▲
by
strager
4y ago
> I’m very confident that Rust would fare considerably better with 24 17.1k-line crates (410k lines, larger due to duplicating the entire thing rather than just the lexer) than with the one 104.4k-line crate apparently tested. I didn
14.
▲
by
strager
4y ago
> if I want faster development (among other things), I use an interpreted scripting language. If I want a fast end product (among other things) I compile and optimize to machine code beforehand I want both. I was hoping Rust would give m
15.
▲
by
strager
4y ago
> I assume it also reduces size of created object-files? Normal template instantiations are deduplicated by the linker. Total object file size is smaller with explicit template instantiations, but the size of the final executable is the
16.
▲
by
strager
4y ago
Current settings according to BIOS: Target CPU Speed: 3400MHz Target DRAM Frequency: 800MHz Target FCLK Frequency: 1800MHz DRAM timings: 19/20-19-19-19-39 (The DRAM CAS# Latency setting is set to 19, but "CHA" and "CHB&q
17.
▲
by
strager
4y ago
> I would expect an idiomatic implementation to drastically go down in lines of code Can you give an example of where something in the project could be, say, 20 lines of code instead of 30? https://github.com/quick-lint&#
18.
▲
by
strager
4y ago
> Raise the FCLK (Fabric Clock) to 1900. Hmm, I think I did this, or something like this. I'llcheck tomorrow. (If I did, then my comment about not overclocking the CPU is misleading!)
19.
▲
by
strager
4y ago
> I just randomly looked at one part: linked vector. How would Rust LinkedVector's implementation have fewer lines than C++'s linked_vector? > It would be a great experiment to use lots of external libraries. You might find
20.
▲
by
strager
4y ago
> A recent change[0] on nightly rustc might help with incremental builds. I tested with rustc Git commit c7572670a1302f5c7e245d069200e22da9df0316, which (I think) includes that change. > And for repeated clean + full build cycles ther
21.
▲
by
strager
4y ago
>> Someone has to implement them. Note that they're also implemented in the C++ code, so the comparison is fair. > > I'm not sure I buy this argument in code like yours which almost invariably should just use the stand
22.
▲
by
strager
4y ago
No, I'll stay far away from them, thanks. ;P
23.
▲
by
strager
4y ago
> Of course it exists in C++, and has done since before Rust even existed. Not in C++'s standard library until C++20.
24.
▲
by
strager
4y ago
It is a beast. I love my MacBook Pro!
25.
▲
by
strager
4y ago
I'd wager that the C++ compiler does more work churning through #include-s than the Rust compiler does tracking borrows.
26.
▲
by
strager
4y ago
> Importing binary packages is a terrible idea, and a source of huge problems. Importing binary packages is a tradeoff .
27.
▲
by
strager
4y ago
I have heard talk of compiling proc macro crates with different rustc flags than other code. But I didn't go down this rabbit hole.
28.
▲
by
strager
4y ago
I actually pointed it out in the article when I compared GNU ld with Mold. =] And I was actually wrong in my comment; run_linker took 129 ms, not under 100 ms. https://quick-lint-js.com/blog/cpp-vs-rust-build-times&#x
29.
▲
by
strager
4y ago
Why would a project need to become "idiomatic Rust" for a Rust port to be useful?
30.
▲
by
strager
4y ago
Note: I wouldn't draw any conclusions from the -Zself-profile data in the article. It looks at just one rustc invocation, and is one sample.
More ›