ChipTuner on Nostr: Glad you found the one for you. Keep my npub if you want to do more C/C++ things :) ...
Glad you found the one for you. Keep my npub if you want to do more C/C++ things :)
C++ is everything some dream of C with all the modern OOP. Yeah it's a beast, even systems developers admit that. Since C++ is a superset of C you can abuse C++ with C patterns (and many do because when in doubt just access memory directly) C++ adds many complicated features as security mechanisms to leverage the compiler (templates specifically) to help you make better patterns if you want to.
Imo C++ is a complexity short-cut, steeper initial learning curve, but dividends in high level applications compared to writing C. That an C++ has actually package management solutions where C doesn't really.
Finally since C/C++ compilers literally take individual C files, assemble them, and then implement machine code (translational units) called object files, it's a super manual process which is where GNU Make and CMake come in, both of which require their own languages too. Noscrypt (my nostr cryptography library) has like a 600+ line CMake file just to orchestrate the build lmao. So you're not just learning to write code in the language, you're also learning the compiler and build system.
Before I even write a line of code for a hardware project I read the manufactures' compiler manual. Because you may not realize that int is actually not an int at all, or the register keyword will cause stack issues because registers are limited. In C it's forced and for good reason, but not everyone needs to learn system level programming to get the job done
finrod (npub1ecd…s735) can speak to this as well I'm sure
Published at
2024-09-19 20:26:56Event JSON
{
"id": "9d334b80ca77282c20e0c645ea8f513cbb5c52b5a6717e9a1a8cbbd2d34c7f2f",
"pubkey": "036533caa872376946d4e4fdea4c1a0441eda38ca2d9d9417bb36006cbaabf58",
"created_at": 1726777616,
"kind": 1,
"tags": [
[
"e",
"56117db669cfbad76dd341991c8a939d8055ec94e37e28cfc1a9d036d80f722e",
"",
"root"
],
[
"e",
"56117db669cfbad76dd341991c8a939d8055ec94e37e28cfc1a9d036d80f722e",
"",
"reply"
],
[
"p",
"f683e87035f7ad4f44e0b98cfbd9537e16455a92cd38cefc4cb31db7557f5ef2",
"",
"mention"
],
[
"p",
"ce1bf9ad92164df227bfcab2813193c60eb4021d35bf4bbbc6fa24c560d0f3e9",
"",
"mention"
]
],
"content": "Glad you found the one for you. Keep my npub if you want to do more C/C++ things :)\n\nC++ is everything some dream of C with all the modern OOP. Yeah it's a beast, even systems developers admit that. Since C++ is a superset of C you can abuse C++ with C patterns (and many do because when in doubt just access memory directly) C++ adds many complicated features as security mechanisms to leverage the compiler (templates specifically) to help you make better patterns if you want to. \n\nImo C++ is a complexity short-cut, steeper initial learning curve, but dividends in high level applications compared to writing C. That an C++ has actually package management solutions where C doesn't really. \n\nFinally since C/C++ compilers literally take individual C files, assemble them, and then implement machine code (translational units) called object files, it's a super manual process which is where GNU Make and CMake come in, both of which require their own languages too. Noscrypt (my nostr cryptography library) has like a 600+ line CMake file just to orchestrate the build lmao. So you're not just learning to write code in the language, you're also learning the compiler and build system. \n\nBefore I even write a line of code for a hardware project I read the manufactures' compiler manual. Because you may not realize that int is actually not an int at all, or the register keyword will cause stack issues because registers are limited. In C it's forced and for good reason, but not everyone needs to learn system level programming to get the job done nostr:npub1ecdlntvjzexlyfale2egzvvncc8tgqsaxkl5hw7xlgjv2cxs705s9qs735 can speak to this as well I'm sure",
"sig": "17cf0869a8ea505a2a505c3405e33b18955552026eb6037e65be40401261672aad38c88f9677bb0041b662c8aaa72bdcab7ff171d8ae7214a0e96ec5f381f67f"
}