I confess I don't know what to make of this. Without seeing the reasons why these are banned, what is the point? Would be like lamenting how you can't use asbestos. Sure, but is that necessarily a bad thing?
Yeah, I don't think that is generally viewed as a good thing, though? And I would not be surprised to learn California has some stricter rules on it. (Would honestly not be surprised to find out some of these "banned" items are due to asbestos level concerns.)
The PSP version of this game was a lot of fun, if frustrating in how the "random spawn" of enemies really cut against some of the difficulty. In particular, it would really suck to have a random spawn come in where your jump was taking you.
Read differently, the United States needs more of a forcing function to get people to take the bus and less focus on convenience.
You can maybe frame it as this story does that it is the time cost of the stops. This somewhat completely ignores the extra time people would have to walk between the stops, though?
It also completely ignores that Atlanta's metro does target about this distance for bus stops? Which would be a compelling argument against it driving adoption, to be honest.
It is literally a platform's responsibility to make sure they are being used responsibly, as well?
Imagine a gun range that was well aware that their grounds were being used in nefarious ways. We'd shut it down. A hospital that just blindly gave out pain killers to anyone that asked. We'd shut it down.
Does this mean that a zero tolerance policy is what should be used to shut things down? I don't think so. We have some agency to control things, though.
I confess I like Common Lisp's TAGBODY far more than I feel like I should. Having constrained GOTO semantics to a short section of the codebase is surprisingly useful.
Following the recommendations of Knuth, the language Mesa, which was implemented at Xerox during the seventies, and which was a source of inspiration for various later languages, including Modula, Ada and Python, included a form of "restricted GOTO" which is the most useful kind of GOTO in my opinion.
The Mesa restricted GOTO allowed jumping forwards, but not backwards, and it allowed jumping towards an outer block, but not towards an inner block.
These 2 restrictions eliminate all the "harmful" features of the traditional GOTO, while retaining its advantages for handling exceptional conditions or for terminating multiple levels of nested program structures.
The Common Lisp TAGBODY appears to be only partially restricted, by allowing backward jumps, so it does not prevent the kind of hard-to-understand program structures for which GOTO was criticized.
GOTOs in random directions may be used to implement state machines, but such state machines can still be implemented in a language with restricted GOTO by not using GOTO, but by using mutually recursive procedures, if tail-call optimization is guaranteed.
In Common Lisp's tagbody, labels must be immediate children of the form; they cannot be anywhere in the enclosed syntax.
The go form identifies the tagbody which is the immediate parent of the selected label. It then performs a control transfer which selects that form as the exit point; every form in between is abandoned with all the unwinding. Then that tagbody passes control to the selected label.
We can imagine every tabody to be a kind of case statement which selects the first case on entry, and subsequent cases are selected by go forms; each go says "break up to the top of the tagbody, and then go to this case".
So for instance you can't have shenanigans like two loops or conditionals buried in the same tagbody, where one jumps into the middle of the other.
Jumping out of a lambda /is/ possible, but only if the tagbody within which the lambda was captured has not yet terminated. (In other words, the lambda isn't an escapee from the tagbody it's trying to use.)
I'm not clear that jumping backwards is that tough to reason with. Notably, Knuth's algorithms do that quite commonly, right?
I do think they need to be somewhat constrained to not jump to places that need new things initialized. Which, it is truly mind blowing to know folks used to just jump straight into other functions. Mid function. Because why not.
Knuth's algorithms do that because they are written in assembly language.
In assembly language you must use backwards jumps to implement loops.
However, good assembly language programmers do not use arbitrary backwards jumps, but they use only a certain number of patterns, which correspond to the various kinds of loops that are also encountered in high-level programming languages.
Many programming languages are somewhat incomplete, because they do not have all the kinds of loops that exist in other programming languages. When programming in an assembly language, a good programmer will not restrict the loops to only the kinds of loops that are available in C/C++, but the non-nested loops that are possible with arbitrary GOTO will not be used.
The best practice in assembly programming is to not use explicit backwards jumps, but to define macros for different kinds of loops, then use the macros, which make the code look exactly like in a high-level programming language.
Knuth's algorithms do not use macros, like in real assembly programming, because their purpose is to show you an actual implementation, not a higher-level abstraction.
I am not talking about the implementations in assembly, I'm talking about the way he lists them in prose.
I can accept that he lists them the way he does because of familiarity to a style of assembly, but that doesn't change the fact that his prose can be easier to read than some of the alternative schemes people have used. In particular, I have found them to be far more illuminating to what is happening. With some odd challenges on finding ways to convert them to the standard control structure of modern languages.
You don't have to make a larger explanation of the argument for the more common control structures we use today. I am largely bought off on them and I am not trying to argue for a return to "only using jumps."
Fair that it can create some. But just allowing of nested loops already creates some of these. And, I know folks have tried to disallow loops, but that feels extreme.
Again, I would point to many of Knuth's descriptions as already allowing jumps forward and backward in steps as evidence that they can be useful.
When backward jumps are allowed you can create loops that are much more tangled and incomprehensible than when you are nesting the loop structures of modern languages.
With backward jumps, you can make multiple loops that are not nested, but you could visualize them as a complex graph that has sequences of instructions in the nodes and which has multiple cycles through which the execution may or may not pass and which intersect each other. Good luck to understand how the code works, because you cannot separate parts of it that can be understood independently, like when using the "structured programming" that is ubiquitous in modern programming languages.
Such indecomposable complex multiple loops were not uncommon before 1970 in languages like FORTRAN or COBOL, and precisely this kind of control structures were the reason why the use of GOTO was criticized and considered harmful.
I said that that was a fair claim. My only point on loops is you can already get some hairy explosions with "easy" to understand loops. Since those are effectively backwards jumps already.
That said, I disagree with your idea that you can't reason about it. You are just describing a flowchart that has several arrows going in different directions. Is it as easy as a flow chart that only has arrows in one direction? Of course not. But it is doable. In fact, if you allow jumping forward out of a loop, you already have most of this.
Now, can you make one that is so complicated that it can't be understood that well? Of course you can.
I agree with your point that you can already get some hairy explosions with "easy" to understand loops.
I also agree with you that even if have not use the word "flowchart" that was what I meant, i.e. the use of unrestricted GOTO results in the most general kind of flowchart, without any constraints. I also agree that with more or less effort any flowchart, i.e. any program can be understood, but the goal of a programmer is to never make a program harder to understand than strictly necessary for solving the given problem.
My main point however, is that allowing backwards GOTO and allowing loops is not the same thing, which is the reason why Knuth in his recommendations of how to combine GOTO with structured programming and the language MESA allowed loops, but not backwards GOTO.
A loop is terminated by a backwards GOTO, but the pairs formed by the implicit label from the beginning of a loop and the backwards GOTO from the end of a loop behave like pairs of parentheses, i.e. they may only be nested and they may not be interleaved.
An arbitrary backwards GOTO does not have this restriction, i.e. it can jump in the middle of an earlier loop, which is why it can create much more complex flowcharts.
On the other hand, unlike with backwards GOTO the use of forwards GOTO makes a program more clear than any alternatives that have been proposed. For example, several languages use loop labels to enable the termination of multiple nested loops.
This is worse than with GOTO. The loop termination statement must include the label of the loop that must be terminated, e.g. it must look like "break LABEL_7" or "exit LABEL_7. This is no improvement over "goto LABEL_7".
Moreover when you try to follow the flow of control in such a program, from the loop terminating instruction you must go back, frequently to another page, because you have several levels of loops, and then from the label you must scan forward for a matching end of loop. This is significantly slower than just going from the loop terminating instruction to the point where it actually transfers the control.
My only point was that in some cases it can be easier to reason with the structured steps that go to each other. Specifically, it was far easier than I expected when I started playing with that style later in life.
It was funny, as I originally put in some labeled breaks in a tight java event loop at a big company. Every wave of new employees would try to refactor into something that didn't need that. Every wave introduced a crap ton of bugs before reverting to the labeled break.
At least in that case, I granted that it was a slightly difficult part of the program to reason about. Was doable, but still difficult. What was a huge surprise to me was how much easier it was to put together a set of steps if I wasn't trying to bend them into the control structures of most programming languages.
I suspect the big thing that made this easier for me, was that you are encouraged to have the steps such that they don't jump from the middle of the step. You have what you are going to do, then you have a choice of what to do next. If you find that you wanted to jump out from the middle of a step, you break that into two steps.
TAGBODY doesn't actually require continuations, delimited or undelimited, just proper tail calling. A macro can rewrite each section of the TAGBODY into a procedure nested within a `let` that tail-calls its successor, and the body of the `let` tail-calls the first procedure. (GO tag) is then equivalent to just (tag). This is a great way of doing state machines. Chicken has a tagbody egg, I think.
Constrained GOTO semantics sounds a lot like delimited continuations. Indeed I think Scheme continuations are a little too powerful for regular use by having the possibility of global effect (like longjmp). Delimited continuations make the effect more local.
Delimited continuations always bounced off of me. In theory, they should be a lot like coroutines? I think, in practice, I just never really internalized all that goes into managing the current "environment" for a piece of code that is managed by the call state.
Like, I have a few partial mental models for everything that they pull together. I haven't really tried to build on that, though. Should put some time to that.
It uses an experimental compiler plugin for the Scala compiler. It's typesafe at compile time. At runtime unfortunately it relies on exceptions for control flow.
I haven't used it much at all, to be clear. I just found it surprisingly fun the last few times I played with it.
The specific thing it made a lot easier was implementing algorithms the way that Knuth writes them down. Which is very much a set of steps with specific calls on what step to go to next.
I think the reason I found it fun to play with was that I found that style of laying out what needed to be done was easier to work with than the standard breakdown that making everything a function or an object seems to require. For me, it was a lot easier.
Edit: I have one of the times I used this here: https://taeric.github.io/many_sums.html I did not put any effort into cleaning up that code, though. So it can probably work as an argument in either direction. :D
I find it somewhat pleasant, but by far the best thing I did to help my eye strain was greatly lower the brightness. Basically, I was told to make it so that my phone's camera could see something on the screen and my desk at the same time without washing out.
After doing that, I have found that the "temperature" of the screen doesn't really matter to me that heavily.
> Basically, I was told to make it so that my phone's camera could see something on the screen and my desk at the same time without washing out
+1. The low-tech version of this I've heard and I've been doing is:
Hold a printed white paper sheet right next to your monitor, and adjust the amount of brightness in monitor so the monitor matches that sheet.
This of course requires good overall room lightning where the printed paper would be pleasant to read in first place, whether it's daytime or evening/night
I think this was what I was told the first time. The advantage of taking a picture with my phone's camera is it kind of made it obvious just how much brighter the screen was then the paper.
Which, fair that it may be obvious to others to just scan their eyes from screen to paper. I've been surprised with how much people will just accept the time their eyes have to adjust to a super bright screen. Almost like it doesn't register with them.
There's some overlap with bias lighting here - good overall room lighting works if you've got good daylight, but it's much easier to get bright bias lighting at night than to light up the entire room.
If whoever runs in 2028 does not have a concrete plan for investigating & prosecuting every single person who worked under this admin from top to bottom, they are wasting everyone's time. We need to see hundreds of life-in-prison sentences by the end of 2029.
If a dem wins in 2028, the big push will be one of reconciliation and acceptance. Let bygones be bygones. And it'll happen. And then for the next 4 years conservative media will absolutely pound that person's backside over made up and/or exaggerated corruption claims. Then in 2032 the GOP candidate will claim they're going to look into these claims.
Yep. Remember when people were expecting Obama to prosecute Bush for war crimes? He should have, but chickened out and decided he would instead carry on Bush's transgressions as the new status quo.
> He should have, but chickened out and decided he would instead carry on Bush's transgressions as the new status quo.
With hindsight, it's pretty hard to believe that wasn't always the plan.
It was a pretty clever plan too, because everyone calling Obama out for [mass surveillance, illegal wars, promoting the '08 crash bankers, torture, funding ICE, bombing a wedding/s, assassinating US citizens without trial, attacking whistleblowers, using his supermajority to implement a Heritage Foundation healthcare plan, etc] was dismissed as a racist.
To this day I see people talk about the tan suit and the dijon mustard thing as if those fake outrage stories were the worst things he did. 'Wasn't it nice to have a President who could talk in complete sentences'.
To be fair, it was nice to have a president that could speak in complete sentences. But yes, I agree that people go way too easy on Obama and present fake controversies as his worst. It should be possible to simultaneously recognize a president's strengths while also being critical of his flaws, but unfortunately American culture seems to have a growing personality cult problem, and it's generally just assumed that if you're not glazing a politician, you're an extremist from the other side doing false flag rhetoric or something inane like that.
Your scepticism is well warranted. That's exactly the playbook Biden chose to follow, and I agree the most likely outcome is the next admin will follow it again.
However, I am unfortunately an incurable optimist, and sometimes we Americans really do pull off amazing feats. I live in the Twin Cities and we actually defeated DHS/CBP/ICE here. It was an amazing thing to witness, and maybe there is enough outrage at this admin's looting of the US that we can build the support nationally to do that kind of thing again.
"Defeated" is an interesting way to look at it. My perception is that the administration was just using the Twin Cities as a distraction, like they do for basically everything. In the mean time, the higher ups get their business deals done while the commoners are busy wasting energy cleaning up the mess. In which case, they succeeded. Now, onto the next distraction, and then the next one, and so on and so forth.
Minnesota has a very high probability of sending 2 Democrat senators and all their electoral votes to the Democrat presidential candidate. Minnesota and the Twin Cities are of zero consequence to this administration, so why not use them as a distraction?
The primary goal of the administration, sweeping tax cuts, was already accomplished in Jul 2025, so even Congress is of limited value now until after the next presidential election.
They certainly liked the distraction, but the invasion of MN allowed them to 1) catch some illegal immigrants, 2) intimidate legal immigrants, encouraging them to "self deport", 3) flex their power and demonstrate the ability to cause pain and harm to political enemies, and 4) give agents practice and training for the next city they invade. So far they have had these "surges" in Los Angeles, Chicago, Portland, and Minneapolis. There are plenty more cities in blue states and plenty of money left in their budget, and almost 3 years left in this administration.
I blame Garland for much of the mess we are in. If the DOJ had done their job regarding the Jan 6 insurrection we wouldn't be here talking about stupid tarrifs that caused a year of turbulence for US businesses and contributed to inflation, for no good reason (and this might be the least of the problems caused by the Trump admin).
It seemed like the Democrats selected Garland just so they could poke the Republicans in the eye. "You blocked him from SCOTUS so now we're going to make him Attorney General, how you like them apples?" Without really considering whether he'd actually do a good job.
I agree; but different times called for different measures. There was also too much of a feeling of "whew, that was close, but now we can get back to normal" instead of "let's make sure that never happens again".
If you care to read a bit more about it [0], then the Garland pick looks a lot more sinister.
That's Sarah Kendzior, one of the few journalists who was talking about Epstein long before all that started to became well known.
'Fun' fact: The Attorney General is able to unseal court documents at will. And for four years Garland didn't do that with the Epstein files. It was beyond clear that the SC were slow rolling Ghislaine Maxwell's appeal, and still nothing even leaked.
We’ll be dependent on New York for that, as potus will pardon everyone save for a few suckers at the end, assuming he leaves office in an orderly manner.
The purge of DOJ (They can’t even find confirmable US Attorneys at this point.) and the military officer corps makes that not a certainty.
He didn't pardon anyone involved with January 6th until he was re-elected. There is a documentary where Roger Stone acts psychotic with anger because Trump refused to issue a pardon for him or anyone else after Jan. 6. Trump is a selfish person, and if he thinks he is going to be vulnerable, he isn't going to protect anyone else for no other than reason than he thinks they should go down with him.
Nationalize the entire trump family fortune with RICO. Impoverishment is the perfect moral hazard to reign in hubristic and corrupt business practices.
Whoever takes over DOJ has to come in with a ready-to-go team they already know; a state AG who can draft their whole staff or something. They'll be entering a deliberately fucked, hollowed-out, booby-trapped organization they have to rebuild from the ground up. Speed will matter enormously.
Presidential pardon immunity is unreversable. There could potentially be a constitutional amendment on this, which is a super high bar, but even then the prohibition on ex post facto laws would only affect pardons going forward. It will be up to the states.
Well, no, it’s in the US Constitution. So I suppose congress could add a constitutional amendment to remove the prohibition on ex post facto laws. But that’s so unthinkable it might as well be a fantasy. Far from “plainly wrong,” which seems unnecessarily aggressive verbiage.
Why couldn't the amendment just say, "The presidential power pardon is revoked, and all prior pardons are null and void"? You have to amend the Constitution to remove the pardon power regardless, why would it be so difficult to put in a clause saying that it's retroactive?
But presidents are also immune against prosecution for official acts. Could a president just disregard pardons from a prior administration? Immovable object, irresistible force kinda situation right?
It’s racist to call out the anti-white hatred that is prevalent with leftists who claim to be patriots (while they generally claim that the US is illegitimate)?
All the internet brigading in the world won’t absolve you from what you’re part of.
Again, the left are not patriots by any stretch of the word. MAGA is a patriotic movement. You can’t hate nationalism and be a patriot.
We've let criminal administrations get away with too much for too long. Nixon, Reagan, Bush Jr., and Trump 1 were all allowed to disregard the law and it got worse every time. We cannot move forward without purging crime and corruption from our system. Everyone from the top down to Billy-Bod ICE agent.
No more Merrick Garlands. No hand-wringing over appearances of weaponizing the DoJ. The next president needs to appoint an AG who enforces the law, and if they don't do it, they need be fired and replaced by someone who will.
I feel very strongly that's what should happen, and equally strongly that there's zero chance a democratic president will actually do that in a meaningful way. Dems sometimes talk a big game when they're out of power but when they're in power they actually quite enjoy the expanded powers and reduced accountability that's come about. That plus their usual ineffectual bumbling will combine to mean they basically doing nothing.
At this point I think I'm most scared of the next fascist president. Trump has opened up a lot of avenues for blatant corruption and tyranny. His greed and stupidity have so far saved us from the worst outcomes but someone with his psychopathy but more savviness will mean the true end of our freedoms.
The last time Dems had power was before Jan 2015. And even then it was tenuous, because the Dems have had a few Senators that do not vote lockstep with the Dems (Manchin, Lieberman, Sinema, etc), but the Repubs maybe have had 1 defector (McCain?).
Maybe Dems only don't have power because they don't want too much of it. It fucks with the plausible deniability.
Like, they could easily have taken down Trump, either over Jan 6th or the Epstein files. They didn't.
They could have easily gained _millions_ of votes in the 2024 election just by promising not to keep helping murder tens of thousands of children. They didn't. They could have kicked up a fuss about some rather obvious election fraud; they didn't.
They could have fought harder for SC picks on multiple occasions. They could have leaked choice Epstein files at key times. They could have held proper primaries, instead of ramming a demented roomba warmonger and then his wildly unpopular warmonger sidekick down our throats (for like the third election in a row). They didn't.
At some point you need to realize that Dems have lots of power; and they choose to use it in very curious ways. Arming genocide and protecting billionaire blackmail pedo-rings aren't things that I'm willing to look past. Yes the Republicans are even worse, but at every point where Dems had all the power needed to hold them accountable they've gone to rather extreme lengths not to do that. For decades.
Unfortunately, we have a two party system, and neither side is going to do anything about it. One side is complicit and actively participating in the fraud and grift. The other side is all talk and no action. If they win, they'll spend four years making excuses about why they can't actually do anything. They had four years to prosecute and imprison Trump 1.0 and just... talked and sat on their hands doing performance art.
I 100% agree. I will never forgive Biden for not putting these traitors behind bars in his first 6 months. He failed at one of his most important sworn duties, protecting the US from its enemies.
But, sometimes a groundswell movement really can build momentum and drive the conversation regardless of what the leaders think about it. Write to your state & national representatives demanding that they publicly support prosecution for the incredible crimes we're seeing committed by this admin. Try to make it a policy platform for your state party. Maybe we can build enough support from the bottom up to get popular momentum behind it. Holding criminals accountable for their crimes is not really a controversial position, we have to demand that they actually do it.
Yep. Biden's "well I bet he will just go away naturally" approach to Trump's crimes will be a historic error. It remains to be seen if this is quite at the level of walking back Reconstruction, but if the US descends further into fascism then it will be up there.
Biden is gone, but Schumer and Jeffries aren't exactly looking any different.
I'm currently livid at the dem leadership that doesn't have the guts to do anything hard. Dem leadership needs to go and we need a serious response here. South Korea just jailed their criminal president for life. Just imagine.
"The Biden Pardon immunizes everyone from future prosecution"
He pardoned specific individuals that had already been targeted and attacked by Trump and conservative media, who were extremely likely to be persecuted by a potential (and now realized) 2nd Trump term. There's a big difference between investigating January 6th and, you know, doing January 6th.
You're making an argument for why its use is defensible. I find it not unconvincing, especially since it's pretty much just Analects 13:18. But Trump can use the Biden Pardon (shorthand for broad large-period pre-emptive pardon) too, and he's pioneered the use of the Trump Pardon (shorthand for plausibly deniable pay-to-pardon). The combination of the two pardon techniques signals the end of Rule of Law for sufficiently well-connected individuals in the US. Plausibly Jeffrey Epstein was just caught a decade early. He wouldn't be in trouble today.
I find the notion that Trump would have used discretion if not for Biden’s pardons pretty curious. At no point has precedence or decorum stopped Trump. Biden’s actions had zero effect on how Trump uses his pardon power.
He had the same ability the first time and didn’t do it. But certainly one cannot live the counterfactual. Perhaps this technique had already struck him and he just hadn’t used it yet. Hard to tell.
I don’t see him or his administration as all knowing even if I think they have great disregard for the law.
Internet brigading is all the fascistic left has atp, so I’m not surprised. All my comments that push back against the dwindling and irrational far left movement are always mass flagged. It’s expected but I don’t really mind.
> A plurality vote (in North American English) or relative majority (in British English) describes the circumstance when a party, candidate, or proposition polls more votes than any other but does not receive a majority or more than half of all votes cast.
Hunter Biden and the Biden family were investigated for years by Congress. They came up with tax and gun form charges. Why would that stop Dems from prosecuting all the corruption and treason happening under this administration?
I'm not following the reasoning in your comment. So because fishing expeditions are possible we shouldn't ever go after political opponents for actual crimes?
Maybe you have to say "everything is corrupt" in order to not be morally required to condemn the current administration.
Yes, other administrations were corrupt, going back at least to Andrew Jackson. No, from what I can tell, they weren't this corrupt (with the possible exception of Grant).
What was Hunter Bidens official job and what corrupt official acts did he commit?
Some private third party hires some washed up relative of someone in power is looking decidedly quaint if you look at the brazenness and dimensions of the current administration.
I'm completely lost on what your position is here. You think the fishing expedition against the Bidens was actually kinda good but the Republicans were secretly positioning to only charge him with a gun-form thing that almost no one gets charged for standalone and for taxes that he paid back?
What crime did you want him found guilty of exactly?
The DNC had nothing to do with it. Trump was convicted on 34 felony counts--that was the justice system working. He was then gifted complete freedom from consequences--that was the justice system not working.
There are other falsehoods in your comment as well.
reply