I did not have Trump killing the Fortran 77 compiler industry on my bingo card.

(The F77 compiler industry is entirely subsidised by the DOE, because they have a codebase written in F77 that, by law, cannot be modified unless its revalidated. It can be revalidated only by modelling a nuclear bomb exploding then actually exploding one and seeing whether they are the same. They would love to move it to F90 or newer but can't as long as the test-ban treaty is in effect.)

@david_chisnall cannot be validated against the output of the F77 tool chain?

@zygoon @david_chisnall Agreed, OP’s assertion would indicate you can’t even do maintenance releases of F77 without “revalidating”. Generally frowned upon to add a nuclear explosion to your CI

EDIT: I’m not saying OP is wrong, it just seems really odd and I’d like to see a citation or something that explains it. Quick google turned up nothing for me

@neilk @zygoon @david_chisnall
I'm curious as to how much of CI had even been published on as a concept at the time the USA last conducted a nuclear weapons test.

@llewelly @zygoon

Grady Booch proposes continuous integration in 1991
https://en.wikipedia.org/wiki/Continuous_integration#History

Last US nuclear test, 1992 https://en.wikipedia.org/wiki/List_of_United_States_nuclear_weapons_tests

Coincidence? That’s what they want you to think

Continuous integration - Wikipedia

@neilk @zygoon thank you. Interesting.

@neilk @zygoon Citation: I used to work on a F77 compiler, these people were our customer. They gave the worst bug reports:

Them: The code does not work!
Us: Can you provide a reduced test case?
Then: We will produce one and get it declassified.

Six months pass

Them: Here is the test case!
Us: The test case does not trigger the bug.
Them: Oh. Right. We had to remove that bit when we declassified it.

@iterativesec @david_chisnall @neilk @zygoon

I have the honor of finding a bug in SQLite. It was in a government data set, we were a government contractor.

We had to basically craft a “parallel construction” that triggered the bug. That was fun.

(To SQLite’s credit, it was fixed the next day and the code detected the invalid state and aborted rather than corrupt our data. Such lovely code.)

@neilk you're making the dangerous assumption of logic and consistency from a (government) bureaucracy.

@david_chisnall

@neilk @zygoon @david_chisnall no he’s saying they can’t port it to F90 without “revalidating”
Trump says U.S. will start testing nuclear weapons again | CBC News

U.S. President Donald Trump, ahead of his meeting with Chinese President Xi Jinping on Thursday, said he has instructed the Department of Defence to immediately resume testing nuclear weapons on an "equal basis" with other nuclear powers.

CBC
@zygoon It's a weird thing that they can change the compiler but not the source code, but I didn't write their policies.
@david_chisnall so the nuclear tests are a requirement to upgrade that codebase? wild...
@david_chisnall so conflicted. On one hand restarting nuclear weapons test could begin a chain reaction that ends with the destruction of all life on Earth. On the other it sure is a peeve of mine when test doubles get overused and I support occasional integration testing with real dependencies so I guess I’d be a hypocrite not to go with this
@stiv @david_chisnall the way things are going now they are definitely going to be testing nukes vibe-coded and directed with LLMs

@david_chisnall now that is one hell of an integration test!

Does GitHub Actions support that?

@josh0 @david_chisnall github should add this on April 1st.
@david_chisnall I would not be surprised to learn of the US launching nukes at another nation from a toot like this 😬

@david_chisnall

For a complete test, I would need one atomic bomb explosion for each path through the code, right?

@david_chisnall hmm you can't modify the code but you can modify the compiler, hmmmmm
@david_chisnall According to wikipedia, the US hasn't ratified the treaty. https://en.wikipedia.org/wiki/Comprehensive_Nuclear-Test-Ban_Treaty Does that change your argument?
Comprehensive Nuclear-Test-Ban Treaty - Wikipedia

Threshold Test Ban Treaty - Wikipedia

Partial Nuclear Test Ban Treaty - Wikipedia

@malwareminigun @david_chisnall No bringing facts into a conversation!

More seriously, I think we're reading pages on the partial ban treaty vs the comprehensive one. Someone could really improve those pages.

As I recall, the partial ban allowed for underground tests.

@david_chisnall I wrote some, er, killer F77 back in the day. You can make recursive function calls (not supported by the language) by passing variables in common blocks and managing them yourself.

I'm glad I haven't done that in 40 years 😕

@david_chisnall
Do you habe any urls to start digging deeper into this?
About the reasoning only nuclear explosions could validate such code.
@hubi No, I only know this from working in that space

@david_chisnall

My dad was an old Fortran hand from the 1960s on.

I recall back in 1977 there was a fuss over selling Cyber 76 computers to the USSR because they might use them to design nukes.

My dad worked with Cyber 76s, and said if we wanted to mess up the Soviets we should sell them as many as they wanted.

@david_chisnall I am looking forward to the first test of nuclear bombs designed with "AI" ... NOT

@david_chisnall ...
...
...
...
WE CAN REPLACE FORTRAN WITH AI

*Opens protective umbrella*

@david_chisnall any idea which law? I can't seem to find evidence to support this.

@david_chisnall

Computer science: weirder than you think.

@david_chisnall trump doesn't honour treaties if he doesn't like them. Expect the US to withdraw from the SALT treaties
@david_chisnall Talk about “test driven development”!
@david_chisnall did they ever consider comparing the F77 model result to the successor model result?
@david_chisnall hell of a test pipeline
@david_chisnall Oh thank God finally

@david_chisnall Given all the businesses Trump "killed", killing the Fortran 77 compiler industry would hardly be surprising.

(Added a Halloween video showing skeletons orbiting a black hole centered on Trump's head, complete with spooky music from a Gilbert & Sullivan operetta, with the skeletons representing Trump's failed businesses).

https://www.youtube.com/watch?v=1EbOqw_GstU

Midnight in America

YouTube

@david_chisnall Thanks to AI and analyzing your post I've discovered that something named "Stockpile stewardship" exists.

"Stockpile stewardship refers to the United States program of reliability testing, viability, certification, and the maintenance of its nuclear weapons without the use of nuclear testing."

https://en.wikipedia.org/wiki/Stockpile_stewardship

Stockpile stewardship - Wikipedia

@david_chisnall So, they can't just run an existing test on F77, then rerun the same test on F90 with old data? Silly.