like you think you are making a backup or something? who would do that? cmon...
in general would you make a copy and hold on to it unless you want to modify it? why?
would you write this
auto x = *it;
// modify it
if(error)
*it = x;
instead of this?
auto x = *it;
// modify x
if(ok)
*it = x;
me: noooo you can't just ignore deleted copy constructooor
#cpp: copy elision go brrrrrrrr
as promised my totally incomplete take on multidimensional iterators
"Arbitrary in this case means that the ratio of input and output sample rates can be an irrational number."
- http://libsndfile.github.io/libsamplerate/
oh sweet summer child, I'm sure that's exactly what you cute little bunny of a library actually does
now javascript is a lot like c in many ways, but this kind of thing in particular is why you can find illegible low level hand optimized javascript that is almost identical to c. People would bit twiddle in javascript because browser API is utter trash.
me: *jumps to all sorts of hoops to use browser built-in audio resampling to show respect*
browser built-in resampling: *cracks and pops*
me: *suspects everything else in the world out of continued respect for browser built-ins*
everything else in the world: *doesn't crack or pop*
me: *finally buckles under stress and hand rolls no effort linear resampling in freakin javascript*
hand rolled no effort linear resampling in freakin javascript: *sounds pristine*
I think I'm starting to slowly digest c++20 modules... it's basically pre-compiled headers done right + some language support for interface and implementation distinction.
pre c++20: logical component is a *header file* and bunch of *source files*.
post c++20: logical component is a *module interface file* and bunch of *module implementation files*.
pre: have to use an include guard to identify the *header files*, and name collisions cannot be diagnosed.
post: got a language level module name that compiler can diagnose, as there should be only one *module interface file*, identified by an export statement - two of those with the same name in a single translation unit is a conflict.
pre: no way to tell if a *header file* modification actually made a difference, changing a comment or white space can cause a massive recompilation chain reaction, as *header files* are just copied into the *source files*.
post: extra compilation step of *module interface file* allows the compiler to make a judgement about the nature of the modification, emitting a compiled interface file that other dependent modules use for compilation, instead of copying the text. This compiled interface does not change if you haven't actually meaningfully changed anything that is marked to be exported in the *module interface file*.
now what I don't get is what's going on with gcc's module mapper... why do you need an external server/file/program to map module names to files? Why don't just import the compiled interface file by name, and build up the dependency graph that way. My module files imports and depend on the compiled interface file of your module which depends on module interface file of your module... the module name to file name mapper seems like a whole lot of trouble for a minor convenience of having import and export declaration match exactly...
so what do you call a multidimensional iterator (multiple choice cause I got 2 slightly different implementations of the same thing)
the horror of software complexity
Thousands of people come together to build a skyscraper. It turns out to be this preposterous abomination, that is not my castle, and I can not change it or reshape it in any way to become my castle. Daaamn, fuck civilization, let us all crawl back into caves, so that I can be a king and a god of my cave, since, if I'm not a king and a god for another second, I'm going to cry.
people expect a professional to build their homes, everything from plumbing, electrical wiring, air conditioning to home appliances and furniture are all installed and/or maintained by professionals, on a case by case basis. But when it comes to software you just gotta poke around in it like an ape and turn in on and off until it somehow works.
error correcting coding style - naming and syntax rules to ensure that N typos can be detected and corrected mechanically
mysterious 40K bytecode blob >.>
https://github.com/OpenBW/openbw/blob/master/bwgame.h#L22059
some sort of a mix of animation data and unit behavior that depends on it, don't think the game would be playable without it... very binary, such disappoint -_-