Why There are no Asm Apps
From: Randall Hyde (randyhyde_at_earthlink.net)
Date: 06/13/04
- Previous message: Derek Ross: "Re: Converting programs to C/C++?"
- Next in thread: f0dder: "Re: Why There are no Asm Apps"
- Reply: f0dder: "Re: Why There are no Asm Apps"
- Reply: Betov: "Re: Why There are no Asm Apps"
- Reply: Jean Charbonneau: "Re: Why There are no Asm Apps"
- Reply: Woody: "Re: Why There are no Asm Apps"
- Maybe reply: donkey: "Re: Why There are no Asm Apps"
- Maybe reply: Robert Redelmeier: "Re: Why There are no Asm Apps"
- Maybe reply: Annie: "Re: Why There are no Asm Apps"
- Maybe reply: Annie: "Re: Why There are no Asm Apps"
- Maybe reply: The Wannabee: "Re: Why There are no Asm Apps"
- Maybe reply: Beth: "Re: Why There are no Asm Apps"
- Reply: ernobe: "Re: Why There are no Asm Apps"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sun, 13 Jun 2004 18:37:32 GMT
There are a ton of people bellyaching around here, asking
the question "Why aren't there more applications in assembly?
This would demonstrate assembly language's viability as a programming
language to the great unwashed masses."
You hear comments like "gee, if only someone would implement
Microsoft Office in assembly language, the world could see how
effective assembly language is as an application development tool."
Well, "Earth to A.L.A. posters...." Microsoft Office is what is known
in Software Engineering terms as a *large* project (on the order of
millions of lines of code). I'm sorry, but a determined little hacker
working on his own is *not* going to produce something like
Microsoft Office on their own. Of course, you hear some people
say that "we ought to develop such a product as a team effort.
There are two problems with that:
1. Putting the team together. There were literally *hundreds* of
developers involved in the creation of MS Office (if not thousands).
Even counting all the lurkers around here, you're not going to find
that many people working on a project just to glorify assembly
language. Oh, the project may start off well enough, but such large
projects rarely get anywhere. Generally, it's only small projects,
those than can be done by one or two people, that really get done.
2. Getting the team to agree one which tools to use. Even if you
*could* scrape 30 or 40 programmers together from a newsgroup
such as this one to work on your grand project, convincing them all
to use the same tools (e.g., the same assemblers, linkers, OSes, etc.,
etc.) is an insurmountable problem. And convince people to work
on a project where pieces are done in different assemblers? Well,
if you can convince the RosAsm crowd of that idea, then I'm sold
on it :-).
----------------------------------------------------------------------
Some will argue that we don't need to go full bore on something like
MS Office. After all, the original Visicalc and Lotus 1-2-3 were
written in assembly language. Why not just do a spread *** as
a demo program?
Well, this is a fine idea, but I argue that it will probably wind up
doing *more* damage to the cause of assembly than good.
After all, if you create a Visicalc-like spread ***, written in
assembly, it really doesn't matter how small or fast it is. People
are going to compare it agains MS Excel and MS Office and say
things like "see, this proves assembly is a poor application
development language, it's too much work to implement a
real spread*** (e.g., Excel) in assembly."
And even if you did implement a decent spread*** in assembly,
people would start saying things like "one application doesn't
prove anything; if assembly were really approriate, you'd see a
lot more people using it for a wide variety of applications."
and on and on and on.
--------------------------------------------------------------------
I'd argue that the case for assembly as an application development
language is best made by having a large number of small applications.
Not demos mind you, but actual, complete, applications. Small apps
that people wouldn't normally consider writing in assembly language.
This would prove to some people sitting on the fence out there that
assembly *is* a viable tool for the small projects they're considering
working on.
The only problem, of course, is that most people would rather gripe
about the lack of important killer apps rather than work towards the
goal of providing tons of little applications that demonstrate assembly
language can be used as an application development tool.
Worse yet, when someone *does* write such an app, they tend to
get derided for it. Around here, no less. Gee, I can see C programmers
in a C forum poking fun at someone writing apps in assembly, but in
an assembly forum? By the same people who in previous posts
complain about the lack of apps in assembly? Give me a break.
I'm speaking of course about several people's reactions to Paul Pank's
Adventure Game. Here's a *perfect* example of an application most
people wouldn't ever consider writing in assembly language. The fact
that Paul implemented his game in assembly tells the uninitiated one
important thing - assembly is a viable tool for developing such
applications.
So what happens around here? People bitch about the fact that
"no one plays text adventure games anymore" or "you're using HLA
to develop the game" (i.e., "you're not using *my* favorite assembler")
and even "assembly language just isn't an appropriate language for
developing text-based adventure games." Also, you hear lots of
people griping about Paul's assembly programming skills (who admits
he wrote the game in HLA specifically to learn assembly, so what do
you expect?).
Has it occured to no one else that this is exactly *why* there are
no apps in assembly? Gee, if *I* was considering writing applications
and assembly was on my short list of languages to use, it would only
take about 10 minutes in this newsgroup to convince me to use some
other language where I might actually get some support and advice
about the application rather than some misguided opinions on what
is and what is not assembly language.
Heck, if I was Paul, I'd go back to programming my games in
BASIC. It's somewhat confusing to meet a crowd of people
who are begging others to write apps in assembly, you deliver
an app in assembly, and then all they do is criticize you. That's
one less assembly programmer helping push the good news of
assembly programming, folks. Think about it.
Maybe people like Rene Tournois and certain members of the
RosAsm team really believe this fantasy that when ReactOS
arrives, people will automagically switch from C/C++ to assembly
for application development. Such people need to seek help
because it's a complete delusion. The only way to build up
the ranks of assembly language programmers is one beginner
at a time. The only way to get a large number of applications
written in assembly language is to encourage those who are
writing apps in assembly to write more (and encourage new
beginners to start). Criticizing beginning programmer's work
in assembly is just going to frighten them away and send them
back to their HLLs.
I'm sure Rene and a few RosAsmites (or other anti-HLA zealouts)
will have all kinds of interesting things to say about this post
(along the lines of "well, HLA isn't an assembly language anyway,
so criticizing HLA users doesn't count" :-)). Of course, their
posts are exactly the kind of nonsense I'm talking about around here.
If you want the ranks of assembly programmers and users to grow,
you need to encourage that growth. It's one thing to criticize a
product. It's another thing entirely to criticize individuals who've
done what you've been begging for (develop applications in
assembly).
Just a thought,
Randy Hyde
- Previous message: Derek Ross: "Re: Converting programs to C/C++?"
- Next in thread: f0dder: "Re: Why There are no Asm Apps"
- Reply: f0dder: "Re: Why There are no Asm Apps"
- Reply: Betov: "Re: Why There are no Asm Apps"
- Reply: Jean Charbonneau: "Re: Why There are no Asm Apps"
- Reply: Woody: "Re: Why There are no Asm Apps"
- Maybe reply: donkey: "Re: Why There are no Asm Apps"
- Maybe reply: Robert Redelmeier: "Re: Why There are no Asm Apps"
- Maybe reply: Annie: "Re: Why There are no Asm Apps"
- Maybe reply: Annie: "Re: Why There are no Asm Apps"
- Maybe reply: The Wannabee: "Re: Why There are no Asm Apps"
- Maybe reply: Beth: "Re: Why There are no Asm Apps"
- Reply: ernobe: "Re: Why There are no Asm Apps"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]