Talk:Security Now 238
I respectfully disagree with Steve's answer about the portability of assembly language.
Assembly language is tied the a processor family, like Intel x86 or Motorola 68000. There are slight differences for each processor in a family - 386, 486, Pentium, Core 2 Duo, etc. The assembly languages between families are different and incompatible. Other companies have created clones of the chips. For example, AMD uses the x86 language, so those chips are compatible with Intel x86 processors.
C/C++ programs are significantly more portable than ASM across processor lines provided you use only core language features (non-GUI) or use a cross platform GUI library like GTK or Qt. Most of the GNU software command line utilities are portable across widely different processors and operating systems. I've seen C programs that are simply recompiled work on the same on MS-Dos, OS/2, Windows, Mac, Solaris, AIX, HP-UX, and MVS mainframes.
It is common for programmers today to use cross platform GUI libraries which make it easy and efficient to support OSX, Linux and Windows GUI versions. These libraries are optimized for each platform and aren't just another layer over other convenience library calls, like MFC or Xt or Motif.
18.104.22.168 11:26, 22 March 2010 (PDT)