Originally posted by timofonic
View Post
Announcement
Collapse
No announcement yet.
Rust Infrastructure Pull Request Submitted For Linux 6.1!
Collapse
X
-
Originally posted by marios View Post
I disagree. The standard library should not even be considered as a part of a language. It is just an (important) extra. Only the syntax/keywords are part of the language and I think everything else (including standard libraries) should be standardised separately.
- Likes 4
Comment
-
Originally posted by karolherbst View Post
that's the reason why C sucks.
- Likes 2
Comment
-
-
Originally posted by marios View Post
If it is enough reason for a language to suck, every language sucks. Unless there is a language that defines only syntax in it's standard. And I am only talking about languages that have a standard. Those that don't have a standard at all suck even more.
Everybody doing it for a living will tell you that it's a no brainer to have proper tooling around a language, which includes a good and competent compiler and a competent standard library. We don't want to have to think for 5 hours which of the 100 implementations I have to use to get peak performance. We want to use the language. And e.g. Rusts _huge_ benefit is, that it actually made the package managing part of the language and that third party libs which make sense, get pulled into the stdlib after a controlled process.
Having a standard would make all of that much harder and would actually sabotage it.
If you don't believe me, ask other full time programmers, they'll probably tell you something similar.
- Likes 9
Comment
-
Originally posted by karolherbst View PostI am not arguing with trolls who don't actually code themselves, but only have "theoretical pointless discussions" around programming languages...
Everybody doing it for a living will tell you that it's a no brainer to have proper tooling around a language, which includes a good and competent compiler and a competent standard library. We don't want to have to think for 5 hours which of the 100 implementations I have to use to get peak performance. We want to use the language. And e.g. Rusts _huge_ benefit is, that it actually made the package managing part of the language and that third party libs which make sense, get pulled into the stdlib after a controlled process.
Having a standard would make all of that much harder and would actually sabotage it.
If you don't believe me, ask other full time programmers, they'll probably tell you something similar.
In fact, standard libraries are almost always worse than the native APIs for the target platform. GNU/Linux is an exception when it comes to C, because most of the interfaces there are from C, so it's basically 1:1 mapping for many cases. But this isn't the case with, for example, Windows. Standard libraries will always be bloated, because they're an abstraction and lowest common denominator for all the target platforms that it supports.
Do you know why "Hello World" programs are so big in HLLs? Yep, standard libraries and all the junk they pull in. I know that it's not that significant on big projects, but it's not about the size, it's about the extra junk that gets executed before it reaches the target platform's code. Everytime you do a call, it gets wrapped around the actual APIs underneath.
When you could, you know, use the target platform's APIs directly. Skip all this fat completely. Standard libraries are like using OpenGL when Vulkan exists: just extra bloated overhead.
I also don't really give 2 shits about the "other full time programmers" considering the web is filled with basic JavaScript coded in extremely bloated frameworks, because yes, they pull that shit in EVERYWHERE since it's the only thing they're "used to". Those aren't programmers, those are a cancer to both computers, PC users (who have to deal with the bloated JS slowness) and the planet (massive energy waste).
Proving the point.
- Likes 1
Comment
-
Originally posted by Weasel View PostWhat a load of crap.
In fact, standard libraries are almost always worse than the native APIs for the target platform. GNU/Linux is an exception when it comes to C, because most of the interfaces there are from C, so it's basically 1:1 mapping for many cases. But this isn't the case with, for example, Windows. Standard libraries will always be bloated, because they're an abstraction and lowest common denominator for all the target platforms that it supports.
Do you know why "Hello World" programs are so big in HLLs? Yep, standard libraries and all the junk they pull in. I know that it's not that significant on big projects, but it's not about the size, it's about the extra junk that gets executed before it reaches the target platform's code. Everytime you do a call, it gets wrapped around the actual APIs underneath.
When you could, you know, use the target platform's APIs directly. Skip all this fat completely. Standard libraries are like using OpenGL when Vulkan exists: just extra bloated overhead.
I also don't really give 2 shits about the "other full time programmers" considering the web is filled with basic JavaScript coded in extremely bloated frameworks, because yes, they pull that shit in EVERYWHERE since it's the only thing they're "used to". Those aren't programmers, those are a cancer to both computers, PC users (who have to deal with the bloated JS slowness) and the planet (massive energy waste).
Proving the point.
If you know how it's have to be done, then proof the world you are right (spoiler: you won't).
troll somewhere else
- Likes 8
Comment
-
Originally posted by uxmkt View PostAh, the old fallacy. Languages don't have an intrinsic speed(*), so it's nonsense to say "X is faster/as fast as/slower than Y". It's all a property of implementations. You can have a shit C compiler/runtime (hi MSVC), and you can have a shit Rust compiler/runtime.
(*) Of course esoteric programming languages will do whatever. Specifications of common general-purposes programming languages however generally don't say "this has to execute in 17 nanoseconds". At best, they'll mention the scaling characteristic of certain APIs (e.g. C++'s std::map should be logarithmic with #elements -> \infinity).
Comment
Comment