No. Maybe in the last one. Since I haven’t seen it and just pretend doesn’t exist
- 0 Posts
- 750 Comments
calcopiritus@lemmy.worldto
Programming@programming.dev•Language Design: Annotations Obsolete Modifiers
11·2 days agoI’m not looking to argue about the importance of my points. I wouldn’t have listed so many in that case.
The point I’m trying to make is that this is a very incomplete article, as it doesn’t seem that much thought was put on the downsides.
A good article would’ve considered every angle. And so would probably conclude (if it had a conclusion) that the premise is incorrect, and the world of language design is more nuanced than “having both modifiers and annotations is bad language design”.
And at that point, the article would’ve probably ended up being: when should annotations be used instead of modifiers?
Many of the most popular languages have both modifiers and annotations:
- Java
- Rust
- Python *Javascript
C doesn’t have both because it doesn’t even have annotations. Idk about C++, but it either doesn’t have annotations (like C) or it should be in the list above
All of those have been heavily criticized from a language design PoV. And I’ve never seen anyone complain about this. People genuinely don’t believe this to be an issue.
The closest is
public static int main()for java. But making them annotations would not fix that, only rearrange the issue vertically.
calcopiritus@lemmy.worldto
Programming@programming.dev•Language Design: Annotations Obsolete Modifiers
2·2 days agoI did not intend to sound angry. I was trying to do an honest review of this article. Since I did not consider it good at all.
What a way to validate OP by completely misreading what he said.
calcopiritus@lemmy.worldto
Programming@programming.dev•Language Design: Annotations Obsolete Modifiers
52·2 days agoWhat is this article? There is no author, and it is written as if it were an objective truth when it is clearly subjective.
There is no conclusion, it’s just an introduction paragraph that says “do this, this is good design”, followed by a pro-con analysis, and then the article just ends. Given that it has real drawbacks, you would think it would be more nuanced than “do this, this is good design”.
Furthermore the analysis is not even complete. The only 2 drawbacks mentioned only affecting the developer of the language. And ignoring more obvious drawbacks that would affect the users of the language:
- Aesthetics. Annotations are just uglier than modifiers. Due to their special syntax instead of just a naked keyword.
- Annotations take up more space. Screen space is valuable, annotations usually are stacked vertically, which takes up a lot of vertical screen space. This is in order to mitigate their use of horizontal screen space by their syntax.
- Disorder. Annotations are not ordered, which means they are harder to parse by a human. And if there is a wall of annotations, a human might miss an important one because it is surrounded by others that are just boilerplate.
- “Downgrading” modifiers to annotations removes their perceived importance. Modifiers modify the class/function/whatever, annotations add to it. Usually, you can ignore annotations and just look at the modifiers. If modifiers are annotations, you have to read the annotations to filter which ones are important to you and which aren’t. Which is harder to do due to the previous point “Disorder”.
- If annotations were objectively better than modifiers, the logical conclusion would be “your language should not have modifiers, do annotations instead” instead of “if your language has both, remove modifiers”.
- Namespacing is not objectively better. I don’t want to import “public” in every single file. It’s just useless boilerplate at that point. And some dependency might export their own “public”. Or even worse, a non-annotation (function, class) named “public”. If reserving keywords for modifiers is a concern, you can just prepend the uncommon ones with “__”. Nobody is going to complain that they can’t use the name “__readonly” because it’s reserved.
- Variable declarations do have modifiers too (for example “const” in C). Annotations are awful for variable declarations. See the point about screen space. Same for closures or code blocks.
You have the most important part flipped.
The authority we give the government is not to provide services. The authority is to collect taxes, which are used to provide services.
Anyone can provide services, but not anyone can collect taxes. The government can only collect taxes because we gave them the power to do so.
Without taxes, the government cannot provide the services. A lazy asshole that avoids paying taxes is preventing the government from providing more services, even if he “gave them power”.
The case of the “lazy asshole” is not one in which he needs to steal food to survive. The case is of a perfectly capable person that could be doing literally anything to earn an income, but chooses not to, since stealing is easier. Even if he has an income, he may prefer spending his money on more expensive luxury goods, since he can save a lot of money by just stealing the food.
By doing so, he’s being incredibly antisocial in multiple ways:
- Stealing is done without the knowledge of the shop. Which means that it is harder for them to keep track of inventory. Requiring more effort means that the price will go up (for the people that don’t steal).
- Shops don’t just suffer the loss. If an item is often stolen, they’ll just increase the price to make up for it. For everyone that doesn’t steal.
- If a shop chooses to suffer the loss instead, the thief is directly stealing from the shop (as opposed to everyone else). How is that fair in any way? The shop might even go out of business.
- It hurts the actual people that need the food: some people will be angry (for the reasons above) and will probably blame the people that need it. Might even jump to the conclusion of “why do we have social programs for them if they’re gonna steal anyway?”.
- It erodes trust in general. Everyone benefits if everyone behaves correctly. I don’t think I need to argue why. In this case specifically, shops wouldn’t need to implement anti-theft measures if nobody stole. It would be a waste of resources.
- It’s even worse if you steal from another person directly or a small shop instead of a big shop. For multiple reasons.
- It does psychological harm. Maybe the food owner had plans for that food, so now he has to make new plans, or even worse, go make another trip to the store to buy more food.
- It lowers the stock. Which combined with the difficulty to keep track of inventory, might result in an item going out of stock. Preventing everyone else from buying it.
- If it was home cooked, it might’ve been cooked as a gift for someone else. Increasing the psychological harm.
I could go on. But I believe this is more than enough to get the point across.
When something is stolen, society doesn’t just lose the value of the item. A 1€ item being stolen might be a loss of 10€ for society.
There’s 2 choices:
- Literally everyone gets provided with the basic needs by the government.
- Only the people that are unable (not unwilling, important) to pay for basic needs gets them provided by the government.
Both cases should remove hunger as a problem. Only in case 2 would the lazy assholes be hungry. But being hungry should be motivation enough to work at least the bare minimum. Which means nobody would be.
What both cases have in common is: nobody has the need to steal food. Therefore, it should not be allowed, neither legally nor morally, due to it being incredibly antisocial and expensive.
The solution to hunger is not “let them steal”. It is “give them food”.
Or maybe we could have a system where the people that actually need it are given food, in order for there to be no excuse for stealing food.
Stealing food is still stealing, when you do it you indirectly increase the price of it for everyone else.
If everyone else just puts aside a bit of money to pay for food for those that actually need it, we can have both no starving and no excuse for stealing. Which would result in food being cheaper for everyone.
Or what if you’re a lazy asshole that decided it’s easier to just steal food than do anything for society in exchange for food?
calcopiritus@lemmy.worldto
Flippanarchy@lemmy.dbzer0.com•using "natural" as a moral category is a form of post religious moralism
1·4 days agoSince you seem to be way more intelligent than me (it’s a miracle I managed to write this
postcomment, being illiterate). Could you explain the lie to me? Please be direct and use simple phrases, as if I were a 5 year old. Otherwise I might get lost in the full display of your intellect.
calcopiritus@lemmy.worldto
politics @lemmy.world•The Dam Breaks: Democratic Senators Overwhelmingly Reject Arms Sales to Israel
21·4 days agoIt’s not meaningless. It’s saying “if you vote for us, we will make this happen”.
If you don’t fail to pass laws/resolutions because you’re the minority, you won’t win votes over.
calcopiritus@lemmy.worldto
Ask Science@lemmy.world•What's a scientific fact that sounds 100% real but is made up?English
6·4 days agoThat’s the whole point of this post.
calcopiritus@lemmy.worldto
Showerthoughts@lemmy.world•It's ironic that the derogatory term "Feminazi" fell out of use now that there are actual real feminazis in the world and no one ever calls them that
1·4 days agoThere never was a time when feminazis didn’t exist. The amount of them might have changed over the years. But there have always been.
EDIT: I meant feminist in the sense of “people that call themselves feminist but just want to kill all men or similar”.
calcopiritus@lemmy.worldto
Flippanarchy@lemmy.dbzer0.com•using "natural" as a moral category is a form of post religious moralism
32·4 days agoYou have still not answered the question: what’s the lie?
calcopiritus@lemmy.worldto
politics @lemmy.world•Men with higher IQs are less conservative, study finds
2·6 days agoCould be the third parameter that causes both leftism and big IQ.
Someone would need to do the study on that to be sure though.
calcopiritus@lemmy.worldto
Programming@programming.dev•It's OK to compare floating-points for equality
121·6 days agoHeadline: says something. (That is obviously not true and just clickbaiting)
Instant disclaimer: the headline is not good, it should be instead “don’t do this other thing”.
Later in the article: how do we avoid doing the thing I told you not to do? By doing what I told you not to do.
The dude may be correct (idk, haven’t bothered reading the rest of the article), but he doesn’t know how to write/communicate. I don’t believe he’s respecting my time. Just tell in the title what you actually want to talk about.
calcopiritus@lemmy.worldto
politics @lemmy.world•Men with higher IQs are less conservative, study finds
31·6 days agoDon’t worry. Let a non dumb dumb explain.
There are many causality relationship kinds.
- Leftist -> big IQ: being leftist makes someone have big IQ
- Leftist <- big IQ: having big IQ makes someone a leftist.
- Leftist <-> big IQ: both 1 and 2. That is, saying “I am a leftist” and saying “I have big IQ” is the same, since one causes the other.
- Third parameter -> leftist AND third parameter -> big IQ: there is something that causes both being leftist and having big IQ.
In case 1, all leftists have big IQ. But NOT all big IQ ppl are leftist.
In case 2, all big IQ ppl are leftist. But NOT all leftists have big IQ.
In case 3, all big IQ ppl are leftist, and all leftists have big IQ.
In case 4, some NOT all leftist have big IQ. And NOT all big IQ ppl are leftist. But some are.
Assuming having big IQ is desirable, leftists would want either case 1 or 3. Since that would mean they have a big IQ.
However, the headline seems to suggest case 2. And in reality. And it could still be case 4.
Of course, in reality there is an uncountable number of parameters, not just 3, so don’t take the “all” in my comment as literally “all”. Reality probably resembles more case 4.
If this were a feel-good article for leftists, the headline would suggest case 1 or 3. Since that is what leftists want.
Even assuming the best case scenario of case 2 where all big IQ people are leftists. If you define big IQ as “top 10%” and low IQ as “not big IQ”: it is technically possible for 90% of leftists to be low IQ. And if low IQ is 50-50 leftist-conservative, 78% of leftists would be low IQ.
5 seconds at every boot and shutdown is important.
The reason you shouldn’t blindly benchmark an init system is because most of the time is not caused by the init system itself being slow, but the processes it manages being slow.
As the other commenter says, it is very easy to make the system “faster” by just configuring the timeouts to be lower. If you just set the timeout to 0 it will be very fast, but it won’t be a very good system.
calcopiritus@lemmy.worldto
Technology@lemmy.world•‘I want to cancel’: YouTube Premium quietly hikes its US prices for the first time in three years, forcing many users to consider the unthinkableEnglish
4·10 days agoIt’s even worse than that. They increase the price right after they increase the ad length. As in “well, now that ads are longer, this subscription has more value. Therefore we should increase the price”.
calcopiritus@lemmy.worldto
Programmer Humor@programming.dev•Haskellers when someone boasts about Typescript's fake type system.
12·12 days agoIt was a dream when it wasn’t available. Once it existed, we saw the many flaws it had. That’s why statically strong typed languages still exist. And even new ones are being created.



Some people are just elitist.
“Ew? You use the GUI? I’m way better since I do that from the terminal”.
But since the terminal has a shit UI, they do all sort of things for it to resemble a GUI more. So they can have the convenience of a GUI while not hurting their pride.