View Single Post
  #26 (permalink)  
Old 31st May, 2003, 10:21 PM
Gizmo's Avatar
Gizmo Gizmo is online now
Chief BBS Administrator
 
Join Date: May 2003
Location: Webb City, Mo
Posts: 14,943
Send a message via ICQ to Gizmo Send a message via AIM to Gizmo Send a message via MSN to Gizmo Send a message via Yahoo to Gizmo Send a message via Skype™ to Gizmo

Quote:
Originally posted by Áedán


BASIC was my first language, closely followed by 6502 assembler, followed by 68K assembler. Then I discovered things like Pascal, C, Ada and others.

Áedán
Hmmm..........lessee............started with Basic on a TI-99/4A. Got an Atari 600XL, learned AtariBasic, then learned 6502 ASM, and then Forth and Action!. Then got an Atari 520ST, followed by an Amiga 500, followed by an Atari Falcon030. Learned 680x0 ASM, Atari STBasic, and C (Mark Williams and Borland Turbo). Then got a PC, learned 80x86 ASM (which I LOATHE), C++ (Microsoft MFC and Borland OWL), Java, Quick Basic, and Visual Basic. Along the way, I picked up Z80, Z8, and 8051 assembly. Hmmm, anybody see a pattern here? I've also done some Pascal and COBOL, but I wouldn't say I am proficient in those.

Given a choice, I prefer to code in ASM (even on the x86). Why? Because REAL programmers code in ASM, that's why!

For pure, raw, unbridled speed and power, NOTHING touches ASM. It is SUCH a rush to see a program that used to crawl fly by so fast you think something is wrong. You don't have to deal with screwball compiler optimizations. There are no surprises. The program does EXACTLY and ONLY what you tell it to do.

However, I'm rarely given the choice. Interfacing an ASM program to a C or C++ application usually involves jumping through hoops. And most of the people who pay my checks don't give a crap if the high-level language I write in requires more powerfull hardware to get reasonable performance, because Moore's law has spoiled them. What they care about is that I can write a program in C in about 1/4 the time I can do it in ASM. Granted, the ASM program will generally run 4 times faster (or better, some times as much as 10 times faster) and have about 50% smaller memory footprint, but that doesn't have an impact on the company's bottom line. Being able to get me off the current project and onto a new one does.

The biggest drawback to ASM is, IMHO, the amount of time it takes to find a bug. Things like local variables and variable scope don't exist in ASM; EVERYTHING is a global variable. That means that you can end up with some nasty, NASTY memory management issues.
__________________
Avatar and sig graphic by Pitch. Subscribers!
Ask about a custom graphic or avatar today!
 
Later,
Gizmo
Thermal Diode Mod and Direct-Die Water Block
8-Cheetah 18GiB U-2 SCSI
MegaRAID Enterprise 1500/128MiB
Samsung SyncMaster 955DF
TTGI/Superflower TTS-520 PSU
 

 
AOA Team filesAOA Team wcgAOA Team fah
Reply With Quote