Why does linus torvalds hate c




















Java: s. There you will find dozens of proposed solutions many of them quite indecipherable , along with lots of debate about which one is best. The top voted solution has a comment on it with several hundred votes saying that it's a bad solution and you shouldn't use it. Doing even really basic, common operations with STL requires way too much work and produces absurd, hard to read code.

A better specified language, with fewer holes in its design, wouldn't have these problems between 'language' and 'compiler'. The difference, though, is that what that code actually does is less subject to interpretation by the compiler. I've observed that two Ada programmers will argue, "Is this program legal? Finally, not that many people are writing kernels from scratch And there are also some good reasons for not wanting virtual destructors because they can introduce unacceptable performance penalties in high performance code.

Check out any of the libraries that do fixed-length linear algebra stuff. They use internally quite complex systems of derivations to allow the resulting classes to have all the features you expect. There may be more comments in this discussion. Without JavaScript enabled, you might want to turn on Classic Discussion System in your preferences instead. The relative importance of files depends on their cost in terms of the human effort needed to regenerate them.

Try the CryptoTab Browser. It works like a regular web browser but mines Bitcoin for you while you browse! Works on all devices. Do you develop on GitHub? You can keep using GitHub but automatically sync your GitHub releases to SourceForge quickly and easily with this tool and take advantage of SourceForge's massive reach. Follow Slashdot on LinkedIn. This discussion has been archived. No new comments can be posted.

More Login. Archived Discussion Load More Comments. Full Abbreviated Hidden. Write-only code. Score: 5 , Insightful. Share twitter facebook. Re:Write-only code. Score: 5 , Interesting. Parent Share twitter facebook. Score: 5 , Informative. Score: 4 , Interesting. Score: 5 , Funny. Re: Score: 3. Aren't all but one popular languages like this? This is all true, but I'm not sure how it's any different to almost any other popular language. Re:Aren't all but one popular languages like thi Score: 4 , Insightful.

Yep hence Vala, which transpiles to C-with-GObject. Re:Aren't all but one popular languages like thi Score: 4 , Funny. Vala is surely the most ironic language yet. GObject: because we don't want to use a whole new programming language just to add objects to C. Vala: because GObject is better approached using a whole new programming language. Re:Aren't all but one popular languages like thi Score: 5 , Interesting. They're bloody awesome.

Read the rest of this comment The other thing of course is that you have 1 line ot find the slowness, not 30 as in the C code. Score: 4 , Informative. Score: 4 , Insightful. Re: Score: 3 , Insightful. Re: Score: 2. This is true. If you're using something else then you may encounter problems.

Casting Score: 3 , Insightful. Re:Casting Score: 5 , Insightful. I definitely disagree here. This language is focused on getting the job done. Thus some of its design decisions don't look very nice. But it's the most usable language in its niche. The same applies with Perl. And PHP. And Java. And Go. And Ruby. And Python. And Javascript. One of the nice things about Python is the very concrete idea of what is and isn't "Pythonic".

I've never had too much difficulty jumping right in to something written in Python and having a good idea of what's going on. It's both. Type import this from the interpreter, and you'll get this: The Zen of Python, by Tim Peters Beautiful is better than ugly.

The nice thing about Lisp is I don't have to use it. Here's a sample the only data structure available is the list. Scheme includes arrays and so much better for it it doesn't have pointers, which means it is hell to build a complicated but very efficient data structure like threaded trees it has too many parenthesis.

In part because it attempts to operate under the illusion that a function call like ADD 1 2 is the same as the list ADD 1 2 which it isn't and hence the setq and ' rigamarole. In fact back when Lisp was first introduced its creators thought that not long from there a version 2. The main flow control structure is recursion. Recursion can be very nice and elegant, but there are times where one needs a for loop or a while loop, and one can either shoe horn it under recursion, or simply make the language richer and include those control structures see again Scheme for things are best understood as a for or a while loop.

Now some fanboi will come and explain why these things aren't a bug but a feature in 3, 2, 1. Ugly and Complex is better than Ugly and Complex and Inconsistent. Syntax and typo errors compile Score: 5 , Informative. Almost got me Score: 5 , Insightful. Full Disclosure Score: 5 , Informative. Mod parent up Score: 5 , Informative.

Another troll-FP? Score: 3. No Score: 2 , Insightful. Linus was not going overboard. In this rare instance, I'd argue he hasn't gone far enough. Re:No Score: 5 , Insightful. A clickbait article about a flamebait rant, commented on by trolls. God bless Slashdot. No Score: 3.

The ability to fuck it up is a good thing, because there's a spectrum, and you can also knock it out of the park. Flamefest thread Score: 5 , Funny. What comes next, a thread on "is Emacs better than Vi"? Re:Flamefest thread Score: 5 , Funny. Although the language itself isn't truly, truly bad, the only thing that made it tolerable was a library like Qt. STL and Boost are so shocking it isn't even funny, as well as the attitude amongst many that they are some kind of 'standard'.

Although the language itself isn't truly, truly bad,. Feature Request Score: 4. I have read maybe 1 billion articles about language X being better than language Y and in many cases it is pure religious fanaticism; someone has committed to a language and now justifies that commitment with zealotry. A very common refrain about any given language is how many people write poor code in that language. This argument is often reserved to support the more "sophisticated" languages. For instance it is pretty much a gold medal sport to crap on PHP; and yes there is lots of terrible PHP which probably stems from the fact that it is often someone's first language and that someone is self teaching.

Then other languages are looked at as toy languages by those who resent them, Python would often be a victim here. But for me it is not one language but a pairing that has caught my heart.

Python is just so damn productive. But to answer his cry about people over-engineering things with silly STL uber inheritance type crap. But I really do hold a special revulsion for anyone who claims that their language "Enterprise" which translates to me as so shitty that nobody will notice that most of your drone developers are also shitty. Then you have productivity and glue code of Python and the raw speed of C without all the clutter. I'd rather work with skilled programmers in assembly than lousy programmers in whatever amazing language you have.

It's the programmers that matter, not the language. Fully agreed. That is why enterprise languages exist. Crappy programmers. Yes, he was wrong There's no sense in blaming the language for the abuses developers have written -- you might as well indict English for the horrible spelling and grammar of many Americans On the other hand, if you don't know what you're doing, well, I guess there's Visual Basic or C. Machine Beauty. He is still right.

True across the board. That is really a truism across all fields and languages. What's he afraid of? Which pays more to use? Assuming that, which language is going to get you paid the most and make you most employable? Horrible compared to what?

STL Score: 5 , Informative. Check whether a string s ends with a suffix t. Check whether a collection c contains an element e. Java: c. Split a string s into tokens based on whitespace. Less bloat would be nice too. Re:Ugh Score: 5 , Insightful. Oh no, on the contrary. Re: Score: 3 , Informative. A better developer who understands what it is he or she is trying to accomplish would help more. I'd say I've seen just as much piss poor code written in Java and C , but that'd be a lie.

When I was in college, not understanding pointers means you didn't graduate. Not probable but possible in this virtual world.

For me this job could and should be done by the IDE as it already does for the project and for many areas of the code itself. Each new language used to do the same things destroys the achievements of the previous generation, slowing the evolution, to the benefit of big software producers.

I look like a conservative, but I would love to have a constructor, a destructor of structure, operator overloading and write pStruct. I would prefer that the simplicity of the developers of middle land as me, win the war between super genius and spaghetti-coder. Well, noting is perfect and nothing is forever. One good thing about it is now we have the standard for it and people need time to adopt new ways.

There is to many things to be improved still, after all. Still nothing better for scientific programmer, game engines or simulation. Speed and abstraction. Yeah, it can be a mess and it is definitely not the most elegant collection of tools. Somebody once call it a family of languages.

We may even have and use an equivalent of the standard library and STL that is return-based instead of exception-based. The people who hate C are looking backwards at the process that caused it to come into existence and what led to its current incarnation. And I hear Linus is a bit of an ass, so take his complaint with a grain of salt.

Now I can do something like this:. This is way more expressive than some magical C bitwise operations AVR encourages in their datasheets. And exactly as efficient as it would be in C.

Works very well for me. MCU::b is static constexpr for a B port. I can use those as normal objects, too copy them, for example, pass to a function. Not by copying the standard customs and patterns used for less resource-constrained programming work, but by carefull use of for instance templates.

On top of that, D requires a garbage collector in the runtime, by default. Experience of previous mess encountered by others or made by yourself gradually forms you into a good programmer if you have any sense. Know the all features of a language — but only use them where necessary — not just to get it on your CV.

Making it simple, concise, well named and well organised and it will maintainable. I love people shoving opinions as facts. There is no such thing as perfect language. More focus on problem solving, less language rants. Are you implying that you can get away with the usual high-level language bloat in embedded systems?

You must know what you are doing, but it can be achieved and it is not rocket science. I cannot say the same about D, with a plugged-in GC in its runtime. Of course you can mess it up, but this is like driving a car or driving a plane: you can drive the car more easily, but when you drive a plane you can make long distances faster.

Objects scared them. Also, there are millions of schoolkids and students and engineers and scientists out there who need simple programming to a figure out some numbers b draw graphs out of them.

I am disregarding differences in speed here. Many of the languages of today are written in order to write a new programming language to exaggerate a bit. An analogy: Many languages are like buying a Bugatti Veyron or Jaguar E-type or Ferrari or Mercedes Maybach as your first car when you would get by with a bicycle.

AND: learning to drive a bike first certainly wets your appetite for trying out the Bugatti some day! Hope you notice I list no American cars among the silly ones.

That is after owning a row of Cadillacs myself. I am European. The learning curve for the E-type rises for a couple of years before you are anything like productive, you learn the elements of riding the bike in a week.

Do not misunderstand me. I deliberately go a bit off the original point here. I am just talking about the equilibrium between the demands of the users not needing iron-level crunching and the level of resouces available.

So what again was it that Linus does? From his perspective as a system level programmer his argument was more than valid albeit a bit strong…But than again he is known for his strong oppinion. I used to use boost.

It was quite painful at times. Some libraries like Spirit or Wave I never really liked very much. High level MPL Template programming can be a pain, especially when the compiler pukes up a type identifier three or four lines long. Instead, Microsoft adopts or supports Linux when the customers are there, or when it wants to take advantage of the ecosystem with open-source projects. Torvalds said: « The whole anti-Microsoft thing was sometimes funny as a joke, but not really.

The Fedora distribution is made for enthusiastic and curious computer users that like to learn and experience newer versions of software and therefore might not suit everyone. Today, Red Hat makes its money not from selling any « product, » but by selling services.

Open source, a radical notion: Young also realized that Red Hat would need to work with other companies for long-term success. Today, everyone uses open source to work together.

Why is vetinari a woman? How does SCP kill? Mint may seem a little quicker in use day-to-day, but on older hardware, it will definitely feel faster, whereas Ubuntu appears to run slower the older the machine gets. Linux Mint is the 4th most popular desktop OS in the World, with millions of users, and possibly outgrowing Ubuntu this year.

The revenue Mint users generate when they see and click on ads within search engines is quite significant. Its versatility, efficiency and good performance makes it an excellent choice for high complexity data manipulation software, like databases or 3D animation. Linus Torvalds told iTWire in response to queries that Rust support was « not there yet », adding that things were « getting to the point where maybe it might be mergeable for 5.

Iron and its alloys have unique magnetic properties that make them useful in certain applications. Metal with a thin coat of rust probably still retains its valuable magnetism. Badly rusted metal loses its magnetism and can hurt industries that rely on magnets like electronics, automotive, and energy generation.



0コメント

  • 1000 / 1000