Hacker Newsnew | past | comments | ask | show | jobs | submit | whoiskevin's commentslogin

Declaring a highly successful language as having the basics wrong means that you are not correct about the basics that were needed.

Something can be highly succesful in spite of having glaring design flaws. Nobody is claiming go isn't wildly succesful, but it's _in spite_ of these issues. It was clear over a decade ago that iota, gopath, and lack of generics were massive kneecaps to the language; go changing it's mind on those things isn't progress it's just getting the fundamentals wrong.

A good example of where they're kind of stuck is date formatting - it's stupid, unclear, and likely a mistake, but it's not a fundamental flaw; it's just a quirk.


Why is iota a massive kneecap to the language? It is semantically identical to enum in C and Typescript.

The trouble is that Rust is older than Go and it was already confusing people into thinking enums and sum types are the same thing, so by using slightly different syntax, iota, Go avoided the whole confusion of users thinking that enums would behave like sum types instead of actual enums.

Is your attempt at making a point that not having sum types is the massive flaw? Sum types are a useful construct, to be sure, but there are plenty of good languages without them. That's more on the design quirk end, realistically.


> Why is iota a massive kneecap to the language? It is semantically identical to enum in C and Typescript.

iota is a massive kneecap _because_ it's semantically identical to enum in C and Typescript.

> Is your argument actually that not having sum types is the massive flaw? Sum types are a useful construct, to be sure, but there are plenty of good languages without them. That's more on the design quirk end, realistically.

In a dream world sure we'd have full blown sum types (and that would give a result type which would also solve a lot of the nil-interface-combined-with-error-handling issues that I've ran into when working with go), but I can forgive that. The problem is this - https://www.zarl.dev/posts/enums


> The problem is this - https://www.zarl.dev/posts/enums

The only case I see made in there is that it doesn't like how Go implicitly converts consts. While that may be a reasonable criticism, it doesn't have anything to do with iota. It is related to the type system and applies in general. Consider the same problem exhibited here:

    type Email string
    func Send(email Email)
    func() { Send("invalid") } // Converted string const does not satisfy Email type expectations
Perhaps you accidentally offered the wrong link?

It was made abundantly clear when Go was released that it was intended to "feel like a dynamically-typed language". Being able to pass arbitrary values is perfectly in line with a dynamically-typed language. Realistically, the type system in Go is there to give the compiler optimization hints, not to offer type safety. Go was targeted at those wanting to use Python, without the programs being painfully slow to run. How much of a kneecap is implicit type conversion, really, when it is already in line with what the target audience is accustomed to? It is a quirk at best.


Rust is technically older than Go, but who was actually using it when Go 1.0 came out in 2012? Rust 1.0 wasn’t until 2015.

The social landscape doesn't depend on anyone actually using it. However, 1.0 isn't a significant milestone like you suggest either. For a current example, Zig is relatively popular today despite not yet reaching 1.0.

By that logic Windows would be the best operating system ever and perfect in every way, and anyone who disagrees must be wrong about how an OS should be.

And Javascript and Python the best languages.

It's a highly successful language because (1) it was backed by Google, and (2) created by Robert Griesemer, Rob Pike, and Ken Thompson.

If it came out of anywhere else, it might have struggled even to hit the homepage here.


This logic is easily shown to not hold. Why isn't Carbon, Dart, etc. not really popular then?

I can't speak about Dart, but Carbon had just barely started development when it was first announced 4 years ago, and is currently presented as an experimental language that is not yet ready for use [0].

0: https://github.com/carbon-language/carbon-lang#project-statu...


Its just bitter dorks bitter their pet language with cutting edge programming abstractions didnt make it to the big leagues.

So you mean to say that PHP5 and Js from 2007 had a well-founded design?

The basics of a programming language were wrong. The basics of marketing were very right. Those are not the same.

An engineer, of course, understands that there is no such thing as "wrong", only different tradeoffs, but with the rise of "vibe coding" you don't need to be an engineer to play in the world of programming anymore.

cough JavaScript cough

Look at what the Trump administration has done with the DOJ pursuing unwarranted indictments against anyone Trump doesn't like. All getting thrown out so far. And you lead with questioning why one of his constant targets would pardon his family? The bigger question is why this isn't more outrage at the GOP attempts to find something on Biden or Clinton. They have been wasting tax dollars while Coomer "investigates" for something that he has never been able to prove. I'd have pardoned everyone around me given that constant sustained and terrible attack. All the while the Trump grift machine continues without so much as a blink.


[flagged]


> crime family


> So two wrongs have made a right in this case?

No, it was right to consider the possibility that Trump would violate the norms here. Letting the President right unaddressed wrongs is the entire reason the pardon power exists.

His own current Chief of Staff has similar concerns, and grand juries seem to be taking the same position; that these are just revenge.

https://www.nytimes.com/2025/12/16/us/politics/trump-susie-w...

"Susie Wiles, the White House chief of staff, told an interviewer that she forged a “loose agreement” with Mr. Trump to stop focusing after three months on punishing antagonists, an effort that evidently did not succeed. While she insisted that Mr. Trump is not constantly thinking about retribution, she said that “when there’s an opportunity, he will go for it.”"


The only reason he’s not constantly thinking about retribution is because he spends most of the time with his brain idle, or thinking of his next grift.


Completely agree here. Stop anthropomorphizing these tools. Just remove the extra language. Don't say please or thank you. Just ask for the desired outcome.


The places where solutions are discussed in a way that is best long term solution may well exist in a language subspace with politeness, calmness and thoughtfulness. Getting the model to those areas of linguistic space is useful; as is preserving my own habits of kind and thoughtful speech.


Okay great, that's EASILY operatinalizable. Set up -say- 100 replications of the same question sequence (say to build a program) against some cheap model like qwen. One half of the set can be with please and thank you, and the other half without. You can vibe code it even. I'd be curious to see your results!


You can even boost its effectiveness by roleplaying with it. I’m not joking. Fully based on vibes, I haven’t done any testing. But it’s part of prompting imo.

IMO these things are like a reflection. Present what you want reflected back.


Indeed. It reminds me of Lewis’ That Hideous Strength in a way. If we take the severed head post-brain-death and pump it with blood and oxygen and feed it impulses so that the mouth moves to form the words we tell it, is the person living again? No, it’s just a head, speaking the words it’s been given.


I don’t see why you can’t use politeness. The thing is a mimic, you “treat” it badly and it mimics how a human might respond.

It’s fun to play with, as long as you’re fully cognizant that IT IS NOT A HUMAN


I'd argue with you, but there's nothing strictly wrong with your statement. I'd like to point out that it's also not a cat nor a dog, nor a parrot (dead, stochastic, or otherwise). It's a Sonnet model.


"Both sides" is the biggest cop out of the last decade.


Why should we advertise something that you have to go consume? Do you need advertising to tell you about bread, vegetables, meat?


> Do you need advertising to tell you about bread, vegetables, meat?

Looking around at the world, yes?

Less-heathy takeaway chains do advertise constantly, and concepts like the food pyramid are there to literally "tell you about bread, vegetables, meat" as an advertisement for a better alternative.

People aren't born knowing this - if they don't learn it from parents, they will either learn it from someone else, or not know it and have a poor diet out of ignorance.


Never had any problem buying from local farms. Not sure where that is illegal.


Not a "proceed" command but they can influence the accelerator. I had a dodge ram van that would constantly decelerate on cruise control due to reading road signs. The signs in some states like California for trucks towing trailers are 55 mph but the speed limit would be 65 or 70 mph. The cruise control would detect the sign and suddenly decelerate to 55.


That's an example of things working as expected - the sign recognition system is very limited, in that it can only return road sign information. So it can _ask_ cruise control system to change the speed, but it's up to cruise control to decide if it's safe to obey the request or not. For example, I am pretty sure it'll never raise the speed, no mater what sign recognition system says.


A better keyboard is a hill I will die on.


I have a fantastic keyboard, but I'm not taking pictures of it, changing the keycaps, posting about it. It's a tool, not a fetish; that's how I differentiate these things.


It's a keyboard attached to an article of clothing you put your head into so the keys drape over your shoulders. You then type, but also end up giving yourself a shoulder massage!


This assumes that these startups had good developers.


I'd like to see something that takes 50% of their revenue for 5 to 10 years.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: