Earlier quoted context omitted.
I've heard that MSVC does (did?) that, but if so that's an MSVC problem. gcc and clang don't do that. https://godbolt.org/z/nasoWeq5M
WDYM? Vector is an abstraction over dynamically sized arrays so sure it does use heap to store its elements.
The C++ standard for the F-35 Fighter Jet [video]
441–450 of 451 posts
Re: The C++ standard for the F-35 Fighter Jet [video]
#442Earlier quoted context omitted.
In many regards, the F-35 was the first aircraft explicitly engineered for the requirements of drone-centric warfare. Its limitations are that this capability was grafted onto an older (by US standards) 5th generation tech stack that wasn't designed for this role from first principles. I think this is what ultimately limited production of the F-22, which is not upgradeable even to the standard of the F-35 for drone-c…
This is simply not what happened historically. Drones were not discussed much when the requirements for the F-35 were formed. The F-22 was considered very open and upgradable for it's era. It's just that freakin' old where FireWire was the unproven new hotness. Current AF efforts do focus on drone and loyal wingman concepts, but these don't have much material impact on avionics. There everything the AF is talking abo…
Operating in a drone threat environment, which is what I was talking about primarily, is mostly unrelated to loyal wingman and related technologies.
Re: The C++ standard for the F-35 Fighter Jet [video]
#443She said it could be estimated how many cycles it takes to complete a calculation, but there are a lot of different paths which take different cycles. How does the code work with timing? It counts cycles?
Major commercial airliners have system controllers where the measuring is done as follows: Write into the code some instruction which flips some output bit, hook the system up to a test rig and then get an oscilloscope. With the oscilloscope measure how long it takes between bit flips. The instructions for the measurements get commented out for the final release. Yes, I have done this. By the way, these measurements…
Does it have an upper limit for the longest run, or all branches have to have the same duration? I'm asking because I am curious if the function execution time being a constant is part of the program working correctly (scheduling). Somewhat related to how early programs worked correctly for 4.77 MHz and faster clock on CPU would break the program https://en.wikipedia.org/wiki/Turbo_button
I am working in free time on code for a controller that has to do time sensitive operations (actuate a solenoid/injector for a couple milliseconds) and I am thinking on how to correctly trigger the code so that the timing is accurate.
Re: The C++ standard for the F-35 Fighter Jet [video]
#444Earlier quoted context omitted.
No they won't. DoD is small compared to the rest of the software market. You get better quality and lower cost with COTS than with custom solutions, unless you spend a crap ton . The labor market for software's no different. Everyone likes to crap on C++ because it's (a) popular and (b) tries to make everyone happy with a ton of different paradigms built-in. But you can program nearly any system with it more scalably…
> more scalably than anything else That's quite debatable. C++ is well known to scale poorly.
Re: The C++ standard for the F-35 Fighter Jet [video]
#445Earlier quoted context omitted.
> more scalably than anything else That's quite debatable. C++ is well known to scale poorly.
Yet the largest codebases I know of are either C, Fortran, or C++. Who's doing anything really big (in terms of LOC) in another language?
I think people who write complex applications in more sane languages end up not having to write millions of lines of code that no one actually understands. The sane languages are more concise and don't require massive hurdles to try and bake in saftey into the codebase. Safety is baked into the language itself.
Re: The C++ standard for the F-35 Fighter Jet [video]
#446Earlier quoted context omitted.
I agree. First of all I don't think Ada is a difficult language to learn. Hire C++ programmers and let them learn Ada. Secondly, when companies say "we can't hire enough X" what they really mean is "X are too expensive". They probably have some strict salary bands and nobody had the power to change them. In other words there are plenty of expensive good Ada and C++ programmers, but there are only cheap crap C++ progr…
I agree - Ada is very similar to Pascal, and much faster to pick up than, say, C++.
Re: The C++ standard for the F-35 Fighter Jet [video]
#447Earlier quoted context omitted.
Yes but like a certification, that clearance is yours, not the companies. You take it with you. It lasts a good while. There are plenty of government companies that would love you if you had one. Northrop, Lockheed, Boeing, etc.
An Engineering degree and a TS is basically a guaranteed job. They might not be the flashiest FAANG jobs, but it is job security. In this downturn where people talk about being unable to find jobs for years in big cities, I look around my local area and Lockheed, BAE, Booze Allen, etc they have openings.
Re: The C++ standard for the F-35 Fighter Jet [video]
#448Earlier quoted context omitted.
Go was built because C++ does not scale. Anybody that's ever used a source based distro knows that if you're installing/building a large C++ codebase, better forget your PC for the day because you will not be using it. Rust also applies here, but at least multiplatform support is easier, so I don't fault it for slow build times
Go was made because Rob Pike didn't want to do Java.
Re: The C++ standard for the F-35 Fighter Jet [video]
#449Earlier quoted context omitted.
Go was built because C++ does not scale. Anybody that's ever used a source based distro knows that if you're installing/building a large C++ codebase, better forget your PC for the day because you will not be using it. Rust also applies here, but at least multiplatform support is easier, so I don't fault it for slow build times
Go was created because Rob Pike hates C++, notice Plan 9 and Inferno don't have C++ compilers, even though C++ was born on UNIX at Bell Labs. As for compilation times, yes that is an issue, they could have switched to Java as other Google departments were doing, with some JNI if needed. As sidenote, Kubernetes was started in Java and only switching to Go after some Go folks joined the team and advocated for the rewri…
I do not know why they did not go with java, I imagine building a java competitor (limbo) and then being forced to use it is kind of demeaning. but again, this would all be conjecture.
Re: The C++ standard for the F-35 Fighter Jet [video]
#450Earlier quoted context omitted.
I worked on a pure C system early in my career. They implemented multiple inheritance (a bit like Perl/Python MRO style) in pure C. It was nuts, but they didn't abuse it, so it worked OK. Also, serious question: Are they any GUI toolkits that do not use multiple inheritance? Even Java Swing uses multiple inheritance through interfaces. (I guess DotNet does something similar.) Qt has it all over the place.
One could say toolkits done in C++ use multiple inheritance because C++ doesn't have interfaces though.