[sdiy] Programming Language Recommendation
Ben Bradley
ben.pi.bradley at gmail.com
Tue Dec 8 07:55:07 CET 2020
It's good you know C++, I think every compiler that outputs for ARM
(perhaps even for most 8-bit processors) is both C and C++. The
"problem" you now have is if you want to learn C, you need to
"unlearn" the parts of C++ that aren't in C. Having learned C circa
1987 and C++ slowly over the last 10 years or so, that's not a problem
for me.
If you want to learn assembly also, I think that would be good. It
might possibly be helpful to learn assembly before learning C (that's
what I and many old-timers ended up doing, so we might have a bias for
that), but if you want to learn assembly, it's different enough from
C/C++ that I think you can learn them together with no problem. I
suggest often looking "under the hood" at a compiler's assembly
output, or even doing single-stepping at the instruction level, so you
can see 1. what the compiler turned your source code into, and 2. how
the processor works at the assembly/machine level. Be sure to turn off
optimization when you do this, else you may not recognize the object
code as having any connection with what you wrote.
There's this guy on the amazing things that modern compilers do:
https://www.youtube.com/watch?v=w0sz5WbS5AM
I do have a long rant on languages and how I learned them that I was
about to write, but I should put it in a blogpost, if not a book. I've
semi-jokingly thought of writing a book titled "C programming for C++
programmers."
On Wed, Dec 2, 2020 at 9:47 PM Shawn Rakestraw <shawnrakestraw at gmail.com> wrote:
>
> Please don't go into extreme detail (unless you really want to). I ask too many simple questions and I feel bad that everyone spends great amounts of time with it.
>
> I am thinking about programming ARM chips like the STM32 for something like Braids. I know that I will not be making my own Braids module anytime soon, but I would like to start thinking about the language I need to learn. I know the most about C++. I also realize that my question may be better asked as what libraries should I load / study up on.
>
> Thanks guys/gals
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at synth-diy.org
> http://synth-diy.org/mailman/listinfo/synth-diy
> Selling or trading? Use marketplace at synth-diy.org
More information about the Synth-diy
mailing list