-
seekdalooper
thanks ofrnxmr!
-
selsta
we need more builds for v0.18.4.4
-
m-relay
<ofrnxmr:xmr.mx> Cc [@monero.arbo:matrix.org](https://matrix.to/#/@monero.arbo:matrix.org) [@jeffro256:monero.social](https://matrix.to/#/@jeffro256:monero.social)
-
m-relay
<jeffro256:monero.social> On it, thanks for the ping
-
m-relay
<jeffro256:monero.social> Rn I'm building Monero on my host machine, in a Docker container on my host, and in a Docker container in a virtual machine on my host all at the same time
-
m-relay
<jeffro256:monero.social> Man I love waiting for C++ compilation
-
m-relay
<rbrunner7:monero.social> Say what you want about Microsoft, but if I compile my C# project at may dayjob it takes a few seconds, and then off it goes
-
m-relay
<rbrunner7:monero.social> Maybe 30 seconds from scratch, without any caching
-
m-relay
<ofrnxmr:xmr.mx> Well, if youre only compiling one of the 20 monero programs, its much less time
-
m-relay
<ofrnxmr:xmr.mx> but youre compiling wallet cli&rpc, blockchain import&export, daemon, unit tests, so on and so forth
-
m-relay
<rbrunner7:monero.social> In fact, I wonder about the relative slowness of C++ compilers. They are written themselves in C++, a quite fast language.
-
m-relay
<ofrnxmr:xmr.mx> And then cross compiling 10 more times
-
m-relay
<rbrunner7:monero.social> Yes, I know, apples and oranges up to a part, but it's still striking how compile time never ever even enters my mind with our C# codebase. Visual Studio just "starts" my app a bit slower sometimes.
-
m-relay
<rbrunner7:monero.social> I guess with Go it's similar.
-
m-relay
<rbrunner7:monero.social> Anyway, it is like it is, right? :)
-
m-relay
<jeffro256:monero.social> The C++ language is really, really complicated compared to most languages which adds huge complexity to the compilers. And most of the time, until C, C++ cannot be compiled in one pass because of templating, constexpr, etc. It also has to compile directly into machine code or LLVM IR in practice, where c# is compiled into IL
-
m-relay
<jeffro256:monero.social> So c# isn't really "compiled" until the executable is run for the first time
-
m-relay
<rbrunner7:monero.social> Yeah, the closer you look, the clearer the differences and their reasons become. But as I said, it's striking: Start to compile Monero, wait 5 minutes or even 10. Press "Run" in Visual Studio, wait at most 30 seconds. Not for exactly the same stuff that gets processed, but still.
-
m-relay
<syntheticbird:monero.social> I still love there are still C++ devs complaining about rust compile time but really that just gives out that they never used templates in their life.
-
m-relay
<syntheticbird:monero.social> which is ironic, since that's now one of the most major feature of C++
-
m-relay
<syntheticbird:monero.social> among many others
-
m-relay
<syntheticbird:monero.social> also number 1 compiler bug source since its introduction
-
m-relay
<rbrunner7:monero.social> C++ without templates would be like C# without generics, almost unusable for any heavy-duty stuff.
-
m-relay
<syntheticbird:monero.social> you can't really escape it. templates are everywhere in the std lib