[ale] Assembly & C
synco gibraldter
synco at xodarap.net
Wed Sep 24 06:02:53 EDT 2003
On 23 Sep 2003 at 17:26, Benjamin Scherrey wrote:
> C is not the language to learn before learning C++. C++ is a superset
> of C but C++ is also
> a language that enforces certain constructs, implements OO
> capabilities, and supports abstractions and programming concepts (via
> the compiler) that are far outside the scope of C. To be a C++
> programmer you need to approach it from these directions otherwise you
> lose most of the benefits of the language. To do this you will have to
> unlearn a lot of old-C idioms so its counter-productive. C was
> designed effectively to be a platform-independent or portable assembly
> language and succeeded remarkably well which is why it is the language
> of choice for operating system level development. C++, being a
> superset of C, can be used as an even better platform independent
> assembly language (as a language) but, unfortunately, ABI standards
> are just not there to support this portability between compilers so C
> still holds this turf rather strongly although it has made remarkable
> inroads in the embedded development market.
i love this answer... very succinct. i'm a long-time c programmer and i've done very
little in c++ [i took an intro class in high school and i own 1 book that i won't
recommend to anyone] and i have no intention of learning it further. i'm sure i could
do the same things in c++ i do in c but do them easier, but the transition would be
such a drastic one that i haven't really wanted to. it just "seems" like a lot of
overhead knowledge to do the same things and, although i know this is just my
perspective because i've been doing things the long way for so long, your analysis
above is right on.
> Your request to learn C++ & asm, however, leads me to wonder what
> kind of application
> development you are embarking on.
shellcode? or perhaps just a better understanding of how things come together on
the back end -- not a bad idea, even if you never actually code in asm. hard to
understand the concepts of compiling and linking if you only know what they do
conceptually.
-- synco gibraldter
-- atlanta, ga
-- synco at xodarap.net
-- key id: 0xC5117E0A
More information about the Ale
mailing list