Can't believe I didn't think of that... For instance, while I'm sure they are technically very good, I just get so ridiculously lost so ridiculously quickly in the official Ruby docs it's just not funny. Mind you, it's never the actual language's fault - w3schools probably only has about 10% of the nitty gritty of MDN, but as its so much easier to navigate, it's worth it.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
Mostly, I liked that C allowed me to do anything I wanted to do (and occasionally, things I didn't want to do - especially in the beginning (early on for you UK types) ). This passed into history with Windows NT.
Puts me in mind of a thing I managed when I was younger - I am guessing 9 or 10.
We are in the real beginning, just after all the nonsense with punched cards and ticker tape, there was a micro-computer called a NewBrain Link to a WikiPedia page with right picture and lots of text I couldn't be bothered to check for accuracy. It was a really good piece of kit for the discerning geek. My father who was a physicist, was given one by his university, mainly to stop him annoying the Computer Sciences department with dodgy fortran code and keep him safely in his lab. Obviously he brought it home and equally obviously I taught myself to program on it.
I chose to create breakout - it was black and white, with very basic sound but looked good and was really quite fast. I'd made one mistake. I hadn't thought to detect a ball leaving through the top of the screen. This was where the real fun started. The NewBrain plugged into a monitor and you could use more memory for the screen if your screen had more resolution. So all the memory was accessible to my ball. The effects were highly educational as it bounced around destroying its host. At one point it flew back out the top of the screen bounced around a bit and eventually disappeared again out the top. Slowly the screen was obliterated in increasingly weirder and weirder complaints from the machine.
(for those still awake and interested - Switching it off and on again did fix it )
"What? Where does that exist?" was my thought, too.
When Microsoft came up with their "Task"s, that made the impression that it could make working with Threads easier. But the concept of "thread safety" was totally forgotten - e.g. there is no consistent information on the usability of "Monitor.Enter" (or its short form "lock") with Tasks...
Oh sanctissimi Wilhelmus, Theodorus, et Fredericus!
Oh the additions are great, I gripe mostly with the overuse of lambda functions where unneeded. Their syntax is also unforgiving, it overloads almost every single symbol of the language and combine it in a non intuitive sequence.
unique_ptr and shared_ptr are freaking great.
GCS d--(d+) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
It isnt only make the coding easier, but avoids bunches of errors. For instance in Swift you have strong typing and nullability from the compiler and so such errors occur very rarely. The speed off the apps are so good that it isnt an issue.
"Speed" also means development speed. Ask your managers and accountants for the reason
Press F1 for help or google it.
Greetings from Germany
The last time I asked a question like that much of our development work was "off-shore" and it was apparently cheaper to have the work done off-shore and tested in-house ... despite this being a (felt like an infinite) loop of passing the code back and forth for weeks on end. Often the code didn't even compile never mind actually work. So "speed of development" needs to be "speed of development to completion" for me
The most important attribute of a language is that it allow the programmer to specify a program concisely and unambiguously, while allowing for future maintenance. This disqualifies languages such as APL.
An essential attribute for large projects is separate compilation & linkage, which allow more than one person to work on the code base.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.