42 points | by steeleduncan7 hours ago
Also, I enjoy embedding Lua in projects for extensibility, so this guy is really pulling my heart strings. :-)
I got tired of that years agao, and have used this approach with success in a few projects: https://www.lelanthran.com/chap2/content.html
I feel like Google's Carbon could be good, but it's still not ready for general use. I'm surprised they even bothered with Carbon since they had built golang for their server software development.
>Fast Compilation Iron Roads builds quickly, so I can iterate fast, and in this way C has helped my workflow a lot
I wish they'd given a number. 1s?
I dunno how much under a second because my build process only reports durations in seconds.
When using vim with the autocomplete using clang, single file compilations can finish in between keystrokes.
Is there a 0 missing? 6k lines of C is on the lower end of things, especially given how verbose vanilla C can be for basic stuff...
No zero missing. Routines for dynamic arrays/vectors, hashmaps, strings, etc (i.e. the basic stuff) are already in precompiled libraries (*.so).
The programs (there were two) consisted of an agent that sat on a remote box gathering packet traces and listening for commands to start/stop/change expression for capture, and would store+forward that capture to a server, which saved the capture in a format wireshark was able to read.
6000 lines is about right for something of that complexity.
That's the entire build process, not just the compilation. This means that things in the build (copying files, building archives, linking, etc) get counted as well.
Especially for rust and c++.
From an iteration speed perspective, you’d want to time the whole build process, not just specially compilation.
> Especially for rust and c++.
In C, certainly. A short program I wrote took under 1s to compile and about 2s to link.
In C++ this is not the case; compilation is very computationally expensive, with my experiments in Rust leaving me with the feeling that Rust was even more computationally expensive than C++.
As someone who still regularly does C for fun and for profit, I am often left feeling frustrated when trying to compile projects in languages like C++ or Rust.
As an aside, some of the Lisp compilers (SBCL comes to mind) where much faster than one would expect, even though feature-wise it is more or less complete. It's the (I feel) typing and rules checking in complex languages that slows down the compilation, not the linking after everything is compiled.