obviouslynotme
You call into C or assembly to reserve memory and return an out-of-bounds index to a global one member array. That index is generated from the pointer to the new memory as an offset.
You may have had trouble finding it since I misspelled DYNOSOR (no U).
The best part is that the code was originally punched onto cards, so most of the early code's comments and documentation were on paper in filing cabinets, if you could find them.
My first project there was removing all of the Hollerith from the code. Since Fortran predated strings, you had to manipulate them as integers. When you tied that to the original Fortran dynamic memory system, Dynosour, which used equivalenced arrays as pointers, it was a disaster.
It also gave me an appreciation for JavaBeanFactoryFactory. The original Fortran limited identifiers to six characters, the first of which indicated whether the variable was an integer, logical (bool), or real (float). I will take a 100 character name over ILBNK1 every single time.
GOTOs were surprisingly not a big problem, but structured code is definitely a bit easier to read, especially since it brought the practice of indentation with it.
Overall, it was a great experience but I wouldn't want to do it again, even if the work was interesting.
The US Military doesn't win through stealth or secrets either. Their advantage from the beginning until now has always been funding and logistics. With the Internet, satellites, and now AI, OPSEC is a fool's errand outside of very specific operations anyhow.
In infrastructure where speed and reliability are highly valued? Absolutely. The gains obtained from proper memory layout and specialized use are massive. As long as you have the reason to do it, it's an easy win. I believe that the Zig standard library has different specialized allocators, so you don't even have to write your own buggy implementation.
That being said, there is important literature, both fiction and non-fiction, that should be introduced early, even if they won't really grasp it for decades. Most would be early philosophy and mythology, along with their best refutations. Learning how to read, think, and discuss them is the skill you're really looking to impart on the students to prepare them for real reading as adults.
Unfortunately, the education system is designed to train children to the minimum requirements of their predestined jobs and no further. It's no surprise that schools have made reading and thinking so unpleasant that most people are too traumatized to do it on their own.
It should default to the mainstream opinion in general, but if you specifically ask about the shape of Earth, I do think it should mention the different theories as well as their pluses, minuses, and consensus. Avoiding bad or outdated ideas is bad in both theory and practice. If we don't speak about it, then that leaves the microphone solely to the kooks. I want an AI that gives me all relevant positions. Otherwise, it's a waste of my time. I don't want to go to my AI priest for quick answers. I want to be informed.
Most things won't fall onto such easily decidable lines as well. In politics, which encompass far more than people realize, there will be many opinions that are not falsifiable. As an example, if someone asks, "What country is Kashmire in?" Would it be more informative to give one side of the story or both? Which one is "correct?"
>trained to ignore structured argument
AI is not rational (yet), although some would argue that it's getting close. It is complex retrieval of highly curated, unstructured data. So yes, there is enormous bias in the information, some of it good, some of it bad.
This supports multiple positions. AIs do not think. They do not reason. Their best use is summarizing subjects while giving multiple citations that I can read myself. The AI user motto must be, "Trust but verify."
On a side note, neither of the mainstream parties are internally coherent. This is the nature of big-tent, two-party politics. You can only find coherence in the smaller sects within.
Additionally, the SAT is a shitty IQ test that is constantly crammed for and cheated on. I remember my SAT test. I was the only person in the room not openly cheating. The teacher proctor didn't care. Higher scores mean better students, more funds, higher home prices, bonuses, and a litany of secondary effects. That's not even including people that pay professional test-takers to do it for them.
The software industry needs to let go of their obsession with finding 10X ROCKSTAR L33T programmers. They never will though. It has gotten worse every few years for decades, and the problems are almost entirely managerial.
You have two jobs as a parent: create a safe environment for your children and prepare them for the adult world that is wildly unsafe. Unfortunately, these two goals are both required and contradictory. A line must be walked. Too much deviation to one side or the other will cause severe problems.
That line cannot be prescribed. It's different for each child, but there's a big problem with how you put your point. You aren't trying to prepare the child for a dangerous and difficult world, you are trying to protect them in a different way, minimizing the other dangers. I completely understand. It hurts to see your child hurt. All you want to do is make the pain go away.
Instead of helping them avoid the pain of learning about relationships, you should guide them. Help them understand. They won't at first. Like a toddler throwing a tantrum that you won't let them stick objects in wall outlets, parents have to be the "bad guy" from time to time. Eventually, the toddler will grow up enough so that you can explain dangers to them and you won't have to do it for that thing anymore. The same applies here. They won't understand at first. Help them understand the dangers. When they do, you can teach them how to safely use the metaphorical wall outlet. Then you don't have to be the bad guy anymore.
Today, the tech is even worse for children. Playing too much Nintendo might isolate you and hurt your schoolwork, but iPad toddlers are fundamentally damaged.
Most humans cannot distinguish AI from actual intelligence. When you combine that with bureaucrats innate tendency to say, "Computer said so," you end up with bizarre situations like this. If a person had made this facial match, another human would have relentlessly jeered him. Since a computer running AI did it, no one even cared to think about it.
Computers are wildly dangerous, not because of anything innate but because of how humans act around them.
That's why replication has to be required and standard. It will hurt to tear off the bandaid, but once the culture shifts, people will hesitate to publish mediocre research in the first place. Without mediocre research flooding the zone, real numbers will dominate and inflated expectations will wither.
Replications don't have to be in the journals either. As long as money flows, someone will do them, and that is what matters. The randomization will help prevent coordination between authors and replicators.
In a better world, negative studies and replications would count towards tenure, but that is unlikely to occur. At least half of the problem is the pressure to continuously publish positive results.
1. Sociopaths don't recruit. They build fiefdoms and leverage social ties. How many times have you seen a random guy making minimum wage become senior management? Almost never. The exception to this is people who are hired to be in the running for senior management who are moved all over the company at a fast pace to get the lay of the land.
2. Losers are sociopaths who do not have the birthright to be sociopaths. Put the other way around, sociopaths are losers born into valuable social ties. Their natures are the same. Power corrupts. Most people never learn what they become with power. The clueless are the strange ones, the glue that holds everyone together and keeps the lights on.
3. As the author says, gametalk is obtuse discussion distinguished by the stakes involved. That is normal human social patterns, only distinguished by the stakes. If direct, straightforward discussion was the norm, we wouldn't need to use adjectives for it. The clueless are once again the outliers of the organization. The stakes and who gets to use them are the dividing line once again.
It's hard to think that most people are so selfish they would throw their group and others under the bus for benefits, but if you look for it, you will see it everywhere. Most people do not have the ability to exercise enough power to make it obvious.
Think about Resume Driven Development. Half of it is clueless people genuinely excited for Brand New Thing, but what about the rest? They know that in five years, companies will demand ten years of experience in Brand New Thing. So what do they do? They push for Brand New Thing wherever they can. This lets them accumulate leverage for their next job. Who does this hurt? Their company and everyone who has to deal with their Ball of Mud when they leave. This is the moral equivalent of some senior manager taking short-term gains at long-term loss to grab a fat bonus and fail upwards into another company.
I really enjoyed the series, but it has the same problems as other realpolitik subjects. Clueless will grab onto it thinking they can become the next Alexander the Great or Jeff Bezos and make a fool of themselves. The essential ingredients are never spoken out loud, and topics like this are always gross oversimplifications by their very nature.
There will be small niches leftover:
* Embedded - This will always be C. No memory allocation means no Rust benefits. Rust is also too complex for smaller systems to write compilers.
* OS / Kernel - Nearly all of the relevant code is unsafe. There aren't many real benefits. It will happen anyways due to grant funding requirements. This will take decades, maybe a century. A better alternative would be a verified kernel with formal methods and a Linux compatibility layer, but that is pie in the sky.
* Game Engines - Rust screwed up its standard library by not putting custom allocation at the center of it. Until we get a Rust version of the EASTL, adoption will be slow at best.
* High Frequency Traders - They would care about the standard library except they are moving on from C++ to VHDL for their time-sensitive stuff. I would bet they move to a garbage-collected language for everything else, either Java or Go.
* Browsers - Despite being born in a browser, Rust is unlikely to make any inroads. Mozilla lost their ability to make effective change and already killed their Rust project once. Google has probably the largest C++ codebase in the world. Migrating to Rust would be so expensive that the board would squash it.
* High-Throughput Services - This is where I see the bulk of Rust adoption. I would be surprised if major rewrites aren't already underway.
Rust is the small, beautiful language hiding inside of Modern C++. Ownership isn't new. It's the core tenet of RAII. Rust just pulls it out of the backwards-compatible kitchen sink and builds it into the type system. Rust is worth learning just so that you can fully experience that lens of software development.
Zig is Modern C development encapsulated in a new language. Most importantly, it dodges Rust and C++'s biggest mistake, not passing allocators into containers and functions. All realtime development has to rewrite their entire standard libraries, like with the EASTL.
On top of the great standard library design, you get comptime, native build scripts, (err)defer, error sets, builtin simd, and tons of other small but important ideas. It's just a really good language that knows exactly what it is and who its audience is.
On the plus side, once cash is de facto outlawed, the US Supreme Court will be forced to finally step in on the subject. The removal of cash will force banks to authorize bank cards and accounts, no matter who. A bit later after that, they will be forced to give access everyone access to payment terminals and gateways.
Short-run programs are even easier. You just never deallocate and then exit(0).
Pretending that identifying stakeholders' needs, communicating the solutions, and delivering them are the keys to succeeding in corporate politics is a joke. It's our parent's telling us that we need to be good for Santa Claus. Human politics is an enormously deep subject, and a newbie will get trampled every single time. If you are sitting at a poker table and don't know who the sucker is within five minutes, congratulations, you are that sucker.
The social will for having real accountability and professional ethics just isn't there. If you license software, large companies will just outsource the stamps to small contractors who will legally assume responsibility while nothing else changes. All real accountability will be so sparse and random that all ethical complaints will be ignored. If this liability becomes large enough to effect anything, all tech companies will band together to bribe politicians to limit legal remedies in the laws themselves.
In the end, the only thing that will happen is that large companies will use these regulations to bludgeon smaller competition like they already do.
Outside of this, you can unify the types. You would take every interface used to access the object and create a new type that has all of the members of both. You can then either create vtables or monomorphize where it is used in calls.
At any point that analysis cannot determine the actual underlying shape, you drop to the default any.