This is my all-time favorite paper. It's so easy to read, and there's so much to think about, so much that still applies to everyday programming and language dedign.
Also there's Knuth admitting he avoids GO TO because he is afraid of being scolded by Edsger Dijkstra.
"It is clearly better to write programs in a language that reveals the control structure, even if we are intimately conscious of the hardware at each step; and therefore I will be discussing a structured assembly language called PL/MIX in the fifth volume of The art of computer programming"
Yeah, it's one of my favourites as well. And it weirds me out that the "premature optimization" bit is the most quoted piece of that paper — arguably, that's the least interesting part of it, compared to the musings on the language design and (semi)automatic transformation of algorithms!
I personally find that "break/continue" with (optionally labelled) loops cover about 95% of GOTO's use cases today (including "one-and-a-half" loops), although e.g. Rust and Zig, with their expression-oriented design (and support for sum types) offer an option to experiment with Zahn's event mechanism... but usually factoring an inner loop body into a separate function is a more clear-to-read approach (as for efficiency? Hopefully you have a decent inliner idk).
The only thing I truly miss, occasionally, is a way to concisely write an one-and-a-half range/FOR loop. Something like this:
for key, value in enumerate(obj):
emit(f'{key}={value}')
between:
emit(',')
When you have a generic "while True:" loop, conditional "break" works fine enough, but here? Ugh.
I might be missing something, but how would `goto` improve matters on that for-loop? It seems to me that the fundamental problem here is rather than there's no easy way to check whether this is the last iteration or not, but that is orthogonal to goto vs break.
This statement in the introduction applies to so many things in CS:
I have the
uncomfortable feeling that others are making
a religion out of it, as if the conceptual
problems of programming could be solved by
a single trick, by a simple form of coding
discipline!
Yeah discussing honesty seems pointless in real life considering a much lower bar… avoiding writing provable factual lies on the record… is often not even satisfied by large swathes on the population. Who often get away without any noticeable punishment too.
In comparison even a deceiver that says a dozen half truths an hour, without any outright factual lies, seems like a paragon of virtue.
Try going outside and attempt to honestly express your opinion of the current President or Israel or immigrants or ${current_political_thing}. Maybe you live in a political monoculture, but most places are not.
Are the majority of people who make these types of complaints thin-skinned right-wingers? Also yes.
In my experience, people who actually experience intimidation for their views, like you know, the view that being gay is fine actually, don't go around making these types of complaints. They're out protesting and fighting.
Well, there's currently this little conflict going on that had the president call on the National Guard. And a certain governor apparently sided with the rioters and decided to... sue?
... and reading this probably just made steam come out of your ears and think I'm an enemy? Well, there's your war zone ;)
I think that's true of most marketing. The bigger the lie the more shouting has to be done. Peter Thiel mentions that monopoly companies often have the most 'sales' in order to seem competitive. And conversely small competitive companies want to seem large and stable. A bag of lettuce won't have 'healthy' all over the packaging because that's self evident but a bottle or can sugary drink will have all sorts of claims about vitamins there is even a brand called Vitamin Water.
To briefly summarize (and sanitize), just because someone puts a guarantee on the box doesn't mean they'll stand by it. The guarantee on the box makes you feel warm and toasty, and that's what you bought -- the warm feelings. But if you have a quality product, you don't need to advertise the guarantee... the product is good enough on it's own.
Similarly the -refund, no questions asked- even if its honored by merchants plays on a psychological effect where most people wont ask for a refund (even if they dont use the product) unless its really broken/whatever
My father has been a Leatherman guy for as long as I can remember. We were at a gun show or trade fair many years ago, and leatherman had a stall there. They had a guy manning a service station, and the idea was you bring you multitool and they'll oil it, sharpen the blades, tighten screws etc. All free of course.
So my dad sends me with his leatherman to stand in the queue at this stall, while he goes to enjoy the rest of the expo. Eventually my turn comes up, I hand over my dad's multitool and the gentleman gets to work servicing it. He beckons to the person behind me, to find out what he wants. This guy walks up and dumps a heap of parts on the bench. His multitool was in literal pieces. It fell off his belt while at speed on a motorcycle or something.
The Leatherman Man put down my dad's tool, scraped the heap of scrap off the bench into a bin, reached for a shelf behind him and pulled off a brand new multitool and gave it to this guy, and waved him off.
This to me was the most powerful expression of "we got u" I've ever seen from a company, and they don't even put "no questions asked" on the box!
there was a time when apple wasnt a big shot where going to a genius bar felt like this, like your mac could be out of warranty technically but some guy could go above and beyond to try and fix it.
great customer service is a great hack for retention
Actually, no. It's incredibly rare in the Nordics, which are way more secular. Claiming to be religious there gains you practically nothing, and might lose you some.
that is also true in wide, but unpredictably located, swaths of America, i can attest.
I grew up in a very famously religious suburb of Chicago, and the proudly super church-y family nearby ended up with the father convicted of embezzling from the church.
consistent with your nordic point, it seemed to surprise no one (perhaps because most of the area was northwest european recently derived families).
I'm trying to think of a famously religious suburb of Chicago besides Skokie, which I would not describe as "church-y". Wheaton? I had to look that up.
In general, one's own words are the cheapest, and thus least reliable, form of signaling. If you call yourself "Honest Ed", it's pretty suspicious; if others unironically give you a moniker "Honest Ed", it's high praise.
Understatement is something only the renowned can afford; those who suck (or swindle) have to resort to overstatement and seek gullible audience.
> I’m suspicious whenever someone says, “I’m an (adjective) (noun).” Why did you need to say, “I’m a great tennis player,” “I’m a deep thinker,” or “I’m a generous person”? Instead, why not simply play tennis, regardless of how great you are? Or think as deeply as you want? Or be generous?
Which is why the whole "identification" fad is bullshit. Why bother identifying as a singer if you cannot sing?
Just a continuation of this postmodern delusion that puts the cart before the horse and elevates language and symbols about reality over reality itself.
Most of the time, you don't have to walk the walk though. With the sports example, you can drop being great at it while talking to people at a bar or dinner party or online as you can't be asked to prove it right then and there. If you claim to be a good singer, you can pretty much do that at any time so that's a bit harder.
Sure, just as soon as you show me the proof of existence of "thoughts" and that you exist as something other than an illusion in my mind.
How about the existence of numbers? The proof of 1+1=2? We humans have words for lots of things that only exist as abstract concepts without a physical embodiment.
Identity is one more of those and it's trivial to understand its application to real people.
> semantic drift and inaccurate (or even lacking) definitions for the word "god," which is probably better understood in modern English as "mind" or "mental construct" or "the abstract" (as contrasted with the "concrete" or physical body a la Descartes, in a similar fashion to the distinction between the rarefied air of mathematical models, and the hard reality of physical law). [0]
Right. We have that thoughts exist only if identities exist; identities exist only if gods exist; and that gods are made out of the same mind-stuff as mathematics, thought, and abstraction.
In fact it sounds like your position is tantamount to saying that gods exist if and only if identities exist, which was to be demonstrated.
One wonders why one regards such viewpoints as "secular" (or even, scientific!) when they still bear the hallmarks of what was once regarded as "spiritual" or metaphysical thought.
> If you want to define "god" as a definition for abstract concepts, I can't stop you, although I doubt many would agree.
This is extremely ignorant. God has been likened to an intellect since the days of the Neoplatonists and Aristotle himself as a "nous" or universal mind. Cosmological arguments necessitating the existence of this god as a "first cause" to avoid fallacies of infinite regress ended up rooting much of medieval theology and mainstream religious scholarship.
> The difference is that things like mathematics and identities are useful.
Civilizations have centered around the mental and social construct of gods since the era of Mesopotamian god-kings that built and organized society.
Some of the worst behavior ive seen in my life has been done by devout catholics. who themselves cant see the consequences of their actions. and im not knocking religion, i just had to live alot of life to start being alarmed by outspoken moralists.
> Some of the worst behavior ive seen in my life has been done by devout catholics.
Those same "devout Catholics" can also be found identifying as secular "progressives" or whatever other word is trendy and evokes implications of moral superiority and righteousness. The religions and pantheons may differ but the core psychological mechanisms are the same.
The devout Catholic knows all the canned responses and hymns by rote, but only when the priest is there to prompt him; he forgets his moral code the second he has stood up from the pews.
Analogously the secular progressive will eagerly output all the tokens expected of a "good person" when adequately prompted with contemporary inclusive language; yet they don't appear to be able to keep to their principles in other environments when they aren't being supplied with the exact same context and tokens.
> What a wildly random series of sentences that never bother making an actual point.
What a dismissive and lazy thought terminating cliche with literally zero informational content whatsoever.
> Personally, while I'd rather people be good, I'll settle for them pretending really hard.
The point is people don't even pretend. They receive a prompt then parrot the response by rote which is never understood and then immediately forgotten; by the time all the lip service has been paid and all the tokens emitted they don't even know what it is they're supposed to pretend to do.
You'll noticed I already addressed that. There are a number of virtuous actions you can perform. One of those is "emitting the right tokens" in the right context. Can we argue that other things are more virtuous? Easily. Does the existence of more virtuous actions make these actions nonvirtuous? Of course not.
⁵And when thou prayest, thou shalt not be as the
hypocrites are: for they love to pray standing in the
synagogues and in the corners of the streets,
that they may be seen of men. Verily I say unto you,
They have their reward. [...] ⁷But when ye pray, use
not vain repetitions, as the heathen do: for they think
that they shall be heard for their much speaking. [0]
> Does the existence of more virtuous actions make these actions nonvirtuous? Of course not.
It's less to do with there being more virtuous actions than "vain repetitions" and the parroting of empty words, more to do with the fact that such signaling in the "corners of the streets" is already completely devoid of any virtue other than the immediate (and only) "reward" of merely being seen as virtuous.
> Saying the right thing is a good start.
So this is an argument in favor of calling one's self a "deep thinker" or "a good person" or "authentic" as mentioned in TFA? I mean, these are probably among the "right things" one can say about themselves, so why not start there?
No, calling yourself a "deep thinker" obviously has no virtue. Expressing sympathy, empathy or respect often is. The point is that words are actions just as much as bodily movements and there are good ones and bad ones.
Beyond that however, how we act is, to some degree, dependent on how we think we should behave, and consistently using certain types of self definition will affect that. Someone who consistently identifies themself in a certain way is, at least ever so slightly, more likely to behave that way.
> Someone who consistently identifies themself in a certain way is, at least ever so slightly, more likely to behave that way.
Do you ever extend such benefit of the doubt to bible thumping creationists? Because the typical progressive characterization of such types is that they play up just how much they walk in Christ's footsteps while simultaneously being utterly bereft of virtue; yet based on what you've said I would think identification with Christ should have imbued them with a moral compass.
That is, in fact, essentially the assertion made by the comment that started this entire thread [0]:
> Some of the worst behavior ive seen in my life has been done by devout catholics. who themselves cant see the consequences of their actions. and im not knocking religion, i just had to live alot of life to start being alarmed by outspoken moralists.
I find often with progressives not that those people are constantly trying to "signal" they support or stand with some people, but rather that they themselves are of some minority and therefore want to surround themselves in places where they're actively accepted.
Like, gay people aren't going to gay bars and drag shows to signal how woke and cool they are. They're going there because that's where they can be them, and that's where they're gonna have fun.
Or, when it comes to identity groups that they're not a part of, there's usually some overlap. Like a lot of the sort of underground gay scene and the black communities go hand and hand, and you'll see the adoption and flow of things like language and culture between them.
I think most people get taken advantage of at a car dealership because they don't understand that they must do their homework on what the value is of the vehicle they're interested in, understand the financing, knowing what the extended warranty is worth and always walk away from pressure salesmanship.
If something is confusing, have them print out an offer on the vehicle and take it to someone for help. If they don't want to do that, walk! If the buyer remembers the dealership wants to make as much money as they can, then it's you against them. Since this is a given, what's on paper counts.
They do, seriously it is very common with male interactions. I have seen it first hand with tennis, golf, chess, and bowling. With golf easily being the most common
I find it helpful to tell people who I know only dabble in eg chess that I am "pretty good at chess" when they do not have enough context on things like Elo and FIDE ratings to be able to understand comparisons like that. Of course, if someone knows what Elo is or is an active chess player then I will more humbly just tell them I am only like 1600 on lichess.
I don't think this is necessarily bad. Compared to people who only dabble in things, someone who spends a decent amount of time on something actually is "pretty good" at it even though they might not be top tier to people within that same culture.
I think there is some popular (dan luu?) blog about this. You can actually pretty easily be in the top 1% of skill or knowledge on something, and while that doesn't make you a world expert by any means, it does kinda make you an expert to an average person. My 1600 rating is very good within the pool of people who know what chess is and can play it, even though it's not impressive at all for people who actively play chess.
Chess? Can't you just ask for their ELO? Or some proxy like chess.com rating? If you're good you must have played a lot of games. If you did, you got some number to back it up.
Tennis is competitive though and unlike golf there’s no form of handicap. When it comes to pick up tennis, it’s not fun playing against someone way below or way above your level. I refer to myself as mediocre at tennis so I can play against people who are around my level. People who are good refer to themselves as being good so that everyone enjoys themselves (and improves) on a court.
The difference between good and mediocre is significant. To the point that I cannot return a good tennis player’s serves. The difference between mediocre and post beginner is just as significant.
Having played both tennis and golf, I agree. It's a lot harder to play social tennis than social golf.
Two nice things about golf - the handicap system let's two players of different level engage in fun competition. (Yes, handicaps can be manipulated, but for the most part aren't. )
Second a very good player can play with a bad player, and both can have fun. The social factor is more important to the fun, and I've enjoyed tight games with people with hugely disparate handicaps.
With tennis I always want to play either someone just a little bit better than me. Someone who can help me get a bit better all the time. My enjoyment of the game depends a lot on their performance.
How do you overcome a wrong observation of a local maximum though (e.g. in your club maybe)?
I only experienced something like this once, late 90s. We thought of ourselves as pretty ok StarCraft players until we got some visitor to a lan party who basically demolished everyone. This was pre-ladder iirc so you only played a handful of games online.
In golf the handicap system is "global". Each player has a handicap index, which then translates into a course handicap. It's not perfect (different players have different strengths and weaknesses, which means some courses "suit" a game more than others) but generally the system is at least reasonably accurate.
Tennis of course is harder. You can only be as good as the people you are playing with.
I had a similar experience with Bekins a few years ago. A sales rep came to my house to look at my stuff; he promised a crew of six. On moving day, two broken-down subcontractors arrived with a rented truck.
Also there's Knuth admitting he avoids GO TO because he is afraid of being scolded by Edsger Dijkstra.
https://pic.plover.com/knuth-GOTO.pdf
reply