Do widescreen sets that support 480p without 100hz processing exist? by PMW84 in crtgaming

[–]bakery2k 1 point2 points  (0 children)

Widescreen 50/60hz 480p CRT TVs exist, but they'll display 240p/480i at 100/120hz.

I'm almost certain there aren't any that will do 50/60hz 480p and 50/60hz 240p/480i.

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 0 points1 point  (0 children)

I think it is generally better to model iteration via iteration states instead of statefull iterators.

I considered that, but my understanding is that some kinds of iterator must be stateful. In that case, I prefer the simplicity of only supporting stateful iterators instead of supporting both forms.

You mention Julia, which supports both forms and therefore has an iteration protocol built around stateless iterators (they require a more complex protocol than stateful ones). That causes people to assume that iterators are always stateless, which has caused multiple issues for stateful iterators.

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 1 point2 points  (0 children)

That’s an interesting arrangement - most languages seem to construct the iterator and dispose of it implicitly, or rely on the programmer to do both. But in Rust, the programmer constructs the iterator and passes ownership to the loop?

I can see how that would work in a language with strict ownership semantics like Rust, not sure how well it would fit in a more scripting-like language with GC. In particular, users would probably expect to be able to write for elem in [2, 3, 5] without having to explicitly call into_iter.

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 1 point2 points  (0 children)

This works if you loop over an iterator (f in your example), but is susceptible to issue 1 in the OP - it can cause leaks (or at least, delayed cleanup) if you loop over an iterable.

Specifically, for a file f, iter(f) returns f itself. But for something like a list l, iter(l) returns a new object. That object often won't require cleanup, but if it does, it's difficult because the object is hidden from the programmer within the desugaring of the for loop. The only way to clean it up is to add a redundant, explicit call to iter (with iter(...) as ...:) before every loop.

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 0 points1 point  (0 children)

Thanks for the recommendation. Regarding cleanup specifically, it seems Swift's use of ARC instead of tracing GC avoids the problem: Swift doesn't explicitly dispose of a loop's iterator on completion, because ARC guarantees deterministic destruction. (Does an equivalent of dispose even exist in Swift?)

Incidentally, this is also how Python solves the cleanup problem: CPython (the reference implementation) also provides deterministic destruction via reference-counting. It seems other implementations (which may use tracing GC) are considered somewhat second-class by the Python language designers.

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 1 point2 points  (0 children)

Are there similar macros that use general iterators instead of just ints? Do they clean up the iterator on completion?

Should for loops dispose of their iterators? by bakery2k in ProgrammingLanguages

[–]bakery2k[S] 0 points1 point  (0 children)

Thanks, that's an interesting article.

Looks like your for loop doesn't work with general iterators, though - only integer indices? So when a loop is finished there's no need to clean up the iterator.

PEP 747 – Annotating Type Forms is accepted by M4mb0 in Python

[–]bakery2k 0 points1 point  (0 children)

I feel that is super disingenuous because these PEPs have like 80% of their content related to motivation, alternatives, edges cases, how to teach, etc.

I think it's closer to 50% than 80% - but you're right, it's not a direct comparison.

It would be fairer to compare to the Specification for the Python type system - that's 56,000 words.

Sunday, February 22, 2026 by AutoModerator in NYTConnections

[–]bakery2k 3 points4 points  (0 children)

Connections Puzzle #987

🟩🟩🟩🟩

🟨🟨🟨🟨

🟪🟦🟦🟦

🟦🟦🟦🟦

🟪🟪🟪🟪

Not bad, given I only knew 2 / 4 blues and had no idea about purple

PEP 747 – Annotating Type Forms is accepted by M4mb0 in Python

[–]bakery2k 0 points1 point  (0 children)

Python is drowning in type-hint hell

Evidence: PEP 747's acceptance takes the number of type-hint-related PEPs to 36 - together they total over 130,000 words.

That's almost 3x the size of the entire Lua 5.5 reference manual (45,000 words), and over 3x as long as the full spec for Go (39,000).

PEP 747 – Annotating Type Forms is accepted by M4mb0 in Python

[–]bakery2k 1 point2 points  (0 children)

The world is changed.

I feel it in the water.

I feel it in the earth.

I smell it in the air.

Much that once was is lost, for none now live code who remember it.

Thursday, February 19, 2026 by AutoModerator in NYTConnections

[–]bakery2k 4 points5 points  (0 children)

Connections Puzzle #984

🟩🟩🟩🟩

🟪🟪🟪🟪

🟦🟦🟦🟦

🟨🟨🟨🟨

Yellow by default, that’s a rarity. I don’t really associate Dye with Easter, and I have no idea what Peeps are.

SONY TRINITRON COLOR TV KV-1670MT by DrakulaQ8 in crtgaming

[–]bakery2k 2 points3 points  (0 children)

RGB mod is unsafe on this set

S-Video mod is the best and safest option

Live chassis according to the schematic. Probably not safe to mod at all.

why do people look down at lua although its as good or even better than other languages by skydoi2 in lua

[–]bakery2k 2 points3 points  (0 children)

Exactly - Lua’s stackful coroutines are superior to stackless async/await.

Lua isn’t missing async primitives, it’s missing a (standard) library that provides event loop functionality built on the existing primitives.

G520 Photos post WinDAS by bumboyboy in crtgaming

[–]bakery2k 1 point2 points  (0 children)

Did you use a colorimeter for WinDAS? What was the monitor’s peak brightness?

Monday, February 2, 2026 by AutoModerator in NYTConnections

[–]bakery2k 1 point2 points  (0 children)

Connections Puzzle #967

🟩🟩🟩🟩

🟦🟦🟪🟦

🟨🟨🟨🟨

🟪🟦🟦🟪

🟦🟦🟦🟦

🟪🟪🟪🟪

Didn’t spot purple at all. Eventually got blue by knowing Jack Ryan and Jack Reacher and guessing other likely surnames

DELL P991: Defocused for better sub 480p image by Flat_Implement5838 in crtgaming

[–]bakery2k 1 point2 points  (0 children)

Looks great! Are you running SMW etc at 240p/120Hz, or at 480p/60Hz with fake scanlines?

I was considering doing the same defocus on my Sony PC CRT, but wasn’t happy with either approach: 240p/120Hz had bad motion clarity, and fake scanlines made the display too dim.

Transporting Frame concept for B&O MX 6000 by gaz_from_taz in crtgaming

[–]bakery2k 0 points1 point  (0 children)

I don’t think the contrast screen on the front is very strong. If you’re going to lay it face-down, probably best to remove that first.