Bregalad wrote:rainwarrior wrote:but C++ is very widely used, and very productive language.
Do you account countless time to understand extremely obsure 10-pages long messages form the linker in your measurement of "productivity" ?
Yes, of course. In all programming tasks you have to deal with errors. That's part of the work.
When I say productive I mean people successfully use it to make applications all the time. You can
make stuff with it, and there's a large workforce constantly doing so. Whether or not it's the theoretical "best" language is mostly a worthless debate to me, but whether it's a practical one for getting a project done is not at all.
C++ has linker errors, and sometimes they're cryptic, especially when you're inexperienced. Is there some programming language that magically never has cryptic errors? Do you think python runtime exceptions are easier to debug? (I do not.) With a little bit of experience you get used to errors and how to cope with them. Difficult linker errors happen, but with some practice you begin to understand how to solve them and how to avoid them. They are typically a bit of a problem when doing initial setup for a C++ project, but hardly ever a significant amount of ongoing work as it continues.
Bregalad wrote:rainwarrior wrote:knowing C++ has literally been worth hundreds of thousands of dollars to me.
Well that's great for you, I haven't been so lucky. By the way, considering how
insanely complex C++ is, especially the later 11 and 14 versions, by "knowing" it do you do like me and pretend knowing it because you can use it to make your programs, or did you dedicate 10 years of your life studying the dark corners of this language ?
Ok, so maybe putting a ballpark figure on it was a bit over the top, but in terms of 10 years salary it should seem reasonable?
More or less I've been working professionally for 10 years, using C++ on a not quite daily basis. So in that respect yes I've spent that much time studying the language by now, but I hadn't when I started. (I think I'd been using it
unprofessionally for another 10 years before then, but I'm not sure how focused that effort was; it was not my primary occupation until then.)
My point was that knowing C++ puts food on my plate. There's a lot of companies right now that need people who can use C++. You don't have to be a 10 year expert to start a job. The major stuff does not take 10 years of study, the rest you can learn incrementally over time as it comes up.
And back to the topic, I was really just trying to express why you won't find a lot of people writing assembly programs for RPi:
- Most people do not find assembly "easier" than higher level languages (though this board is full of exceptional people in that respect)
- The traditional efficiency reasons that made assembly dominant 30 years ago do not apply now
I only advocated for C++ as a counter to the idea that someone would benefit from
avoiding it, which I disagree with.
As a learning project, trying to do assembly on the RPi is feasible, but very unusual. You're probably not going to find tutorials on the subject, because very few people are doing it. I think you'll find most people are usying Python on it, actually, but what I'm trying to get across is that it will help you learn a lot if you pick something there's an established community of people doing already. Forcing assembly onto this goal will require you to be a lone wolf.