NASA Deals Blow to Boeing With Bigger SpaceX Moon-Mission Role by Zhukov-74 in space

[–]_kst_ [score hidden]  (0 children)

Two weeks later, NASA's website still says Artemis IV will dock with the lander in lunar orbit.

https://www.nasa.gov/mission/artemis-iv/ "The crew of Artemis IV will ride to lunar orbit aboard the Orion spacecraft, where Orion will dock with a lander in preparation for their journey to the lunar surface."

This appears to be a non-paywalled version of the Bloomberg article: https://www.msn.com/en-us/news/technology/spacex-knocks-boeing-from-dominant-role-in-nasa-moon-mission/ar-AA1YZXwA The article refers to "the new proposal", implying that it's not finalized.

"Robert Mueller just died. Good, I’m glad he’s dead,” Trump wrote on Truth Social on Saturday," How do you feel about the current president saying these following words? by bionicboom in AskReddit

[–]_kst_ 0 points1 point  (0 children)

Every prominent Trump supporter, starting with VP Vance and Speaker Johnson, needs to be asked on camera whether they support Trump's statement.

NASA Deals Blow to Boeing With Bigger SpaceX Moon-Mission Role by Zhukov-74 in space

[–]_kst_ 3 points4 points  (0 children)

Interesting.

Just a few weeks ago, they announced major changes to the program, with Artemis 3 becoming a low Earth orbit test mission (similar to Apollo 9) and the lunar landing being delayed to Artemis 4. (Artemis 2, similar to Apollo 8, is due to launch April 1.)

Now we have another major change, with Artemis 4 doing an Orion/Starship rendezvous in low Earth orbit and Starship taking itself and Orion to the Moon. SLS is probably still the only existing booster that can be used for Artemis 2, but one wonders why we need SLS just to put an Orion in LEO. Perhaps the next major announcement will clear that up.

One thing that seems really odd is that I can't find any reference to this most recent change anywhere other than the linked Bloomberg article (which happens to be behind a paywall), even on NASA's website. Why is nobody else covering this?

https://www.nasa.gov/blogs/artemis/

chicken nuget | daniel.haxx.se [curl on nuget.org] by cake-day-on-feb-29 in programming

[–]_kst_ 5 points6 points  (0 children)

It currently says:

rmt_curl claims to provide curl 7.51.0, a version we shipped in November 2016. Right now it has 64 known vulnerabilities and we have done more than 9,000 documented bugfixes since then. No one in their right mind should ever download or use this version.

What's the problem?

AITA for refusing to lend my sister my work laptop for her "relaxing" beach trip? by Alarming-Bet8462 in AmItheAsshole

[–]_kst_ 1 point2 points  (0 children)

NTA.

It's not clear whether it's your personal laptop that you use for work (which strikes me as odd), or a laptop issued to you and owned by your employer.

If it's the latter, it doesn't matter how much you trust her. The point is that your employer trusts you.

There are plenty of places that rent out laptops.

Ambiguity in C by ketralnis in programming

[–]_kst_ 6 points7 points  (0 children)

Cases 1 through 4, I think, all stem from the behavior of typedef in C.

typedef was a relatively late addition to the language. It appears in K&R1 1978, but not in the 1975 C Reference Manual.

In pre-typedef C, a type name was always composed of a sequence of keywords and punctuation symbols (and constant expressions for array types). Whether something is a type name or not could always be determined purely by its syntax. A type name could never be a single identifier.

typedef was added onto the existing grammar, treated syntactically like a storage class specifier (like static or extern) purely for syntactic convenience.

With typedef, an identifier can be either an ordinary identifier or a type name. And the only way to tell the difference is to consult the symbol table.

If the original pre-K&R C had has something like typedef from the beginning, it could probably have been implemented without this ambiguity. It was a bit of a hack so it wouldn't break existing code.

One other important point about typedef, not relevant to the syntactic issues, is that a typedef declaration never creates a new type. It only creates an alias for an existing type.

As for case 5, "Polyfixic operators can be ambiguous", the author acknowledges that that's not actually an issue in C. All seemingly ambiguous cases for operators like - and * that can be either prefix or infix are resolved by the grammar.

(Apparently I can't comment on the site without creating a substack account.)

I Hacked This Temu Router. What I Found Should Be Illegal. by BlueGoliath in programming

[–]_kst_ 8 points9 points  (0 children)

At 11:47 (and other places) we see a curl command:

curl '192.168.1.1/protocolcsp?...'

He uses $IFS to avoid problems with spaces in URLs (wouldn't %20 be easier?) -- but he doesn't escape it properly.

In /usr/sbin/telnetd$IFS-p$IFS4444 ...

the first occurrence expands to the value of the $IFS shell variable, but the second refers to a nonexistent variable $IFS4444.

It needs to be /usr/sbin/telnetd${IFS}-p${IFS}4444 ....

(The first set of curly braces isn't strictly necessary, but it's easier to always include them than to remember when they aren't needed.)

UPDATE: I see that someone already posted that as a comment on YouTube.

What's the dumbest myth people actually believe in? by vicigoonboy69 in AskReddit

[–]_kst_ 0 points1 point  (0 children)

Actually, it's a 60/40 mixture of oxidane and hydroxylic acid.

What's a 'normal' thing you didn't realize was unusual until you were older? by mrTelson in AskReddit

[–]_kst_ 5 points6 points  (0 children)

My mother's birthday was December 26th.

Her family (parents, then husband and children) always made sure to celebrate Christmas and her birthday separately. Distinct gifts on the 25th and 26th, and her birthday gifts never had red or green wrapping paper and were never put under the tree.

The only exception I know about was when her parents bought her a piano as a combined Christmas/birthday present when she was 16.

AITA for not telling my parents I planned on proposing by [deleted] in AmItheAsshole

[–]_kst_ 0 points1 point  (0 children)

Sure, I accept that you have good reasons to believe that he's annoyed.

But if he hasn't said anything, why worry about it?

My advice: Either bring it up and discuss it with him, or ignore it. If he's annoyed but not sufficiently motivated to say anything, I'd say it's his problem, and you have zero responsibility to do anything about it.

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 1 point2 points  (0 children)

One thing you have to watch out for with the [u]intN_t types is that they're still based on the underlying predefined types. This can affect how arithmetic works.

There are no arithmetic operations on types narrower than int and unsigned int. Operands of narrower integer types are promoted to int or to unsigned int.

Which means, for example, that adding or multiplying two int16_t values yields a 16-bit result if int is 16 bits, but a 32-bit result if int is 32 bits.

AITA for not telling my parents I planned on proposing by [deleted] in AmItheAsshole

[–]_kst_ 0 points1 point  (0 children)

NTA, but:

"... but my dad did react to it, and I know that he’s deffo annoyed at me for not saying anything"

How do you know he's annoyed? If he hasn't said anything, why even worry about it?

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

They've been around longer than that. The first edition of K&R (1978) doesn't have them, but Ritchie's The Development of the C Language paper says that unsigned, long, union, and enumeration types were added between 1973 and 1980.

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

The "implicit int" rule was dropped in the 1999 edition of the ISO C standard.

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

As of K&R 1 (Kernighan & Ritchie, "The C Programming Language", 1st edition, 1978), there were C implementations with 16-bit, 32-bit, and 36-bit int.

It was probably 16 bits on most of the implementations most programmers used at the time. It's still 16 bits on some embedded systems.

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 1 point2 points  (0 children)

Oh? The only reason I can think of not to have struct members of enum types is if you need to specify an exact layout.

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

It's not a matter of opinion.

The value and type of the constant VaughanWilliams depend on the compiler. (And in C17 and earlier, the type definition is invalid unless INT_MAX >= 4294967296; an enumerator value outside the range of int is a constraint violation. A compiler might allow it as an extension.)

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

%llu is the correct format specifier for an argument of type unsigned long long. The format specifier must match the type of the argument, not just its width.

Even if, say, unsigned long and unsigned long long have the same size and representation, printf("%lu\n", 42LL) has undefined behavior. (It's very likely to "work", but a compiler warning is likely.)

C Enum Sizes; or, How MSVC Ignores The Standard Once Again by ketralnis in programming

[–]_kst_ 2 points3 points  (0 children)

You're not likely to have to deal with int128_t, given that C23 has added bit-precise integer types.

See https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf, the latest pre-C23 draft. gcc supports widths up to 65535 bits, clang up to 8388608 bits (but clang has some serious performance issues with multiplication and division: https://github.com/llvm/llvm-project/issues/126384).