*Ahem*
An extract:
"Covering such things as the four most used registers like eax, ebx,
ecx, edx, ebp, and esp among others."
Obviously, you should also be including a "how to count" chapter too
before this, as that's _six_ registers he's listed (worse, he also
puts "amongst others", implying _even more_ than the six in the list
;), not four...
Also, it might be cool to also add a "how to punctuate" chapter to AoA
too, Randy, so that he might start using commas - and other useful
reading aids like that - more often in his reviews...
Beth ;)
I can relate.
>
> Also, it might be cool to also add a "how to punctuate" chapter to AoA
> too, Randy, so that he might start using commas - and other useful
> reading aids like that - more often in his reviews...
>
> Beth ;)
Hey, no one said programmers can write :-)
Fortunately, it was very postive and will sell a few more books :-)
The big problem in my mind is that it's clear he didn't read much beyond
the first few chapters before posting the review. Oh well, most book
reviews are written based on the material that appears on the back
cover anyway. It's also why so much of the really advanced material
got dropped from the published edition -- nobody reads that far anyway :-)
Too bad, too. With the number of posts I've see about activation records
(here and on the MASM boards) recently, some people really ought to
read some of the more advanced sections in AoA.
Cheers,
Randy Hyde
> The big problem in my mind is that it's clear he didn't read much beyond
> the first few chapters before posting the review.
Indead. It is also evident that guys writing such bullshits,
by definition, know nothing about Assembly. The only problem
is that, even if he reads it all and becomes one other day,
an "HLA expert",... he will yet know nothing about Assembly.
But, as you say, what is important is that you sell some more
books. I have to admit you are very good at selling yourself.
Too bad it is not for the sake of Assembly.
Betov.
Doesn't it just rankle you to no end that almost all the reviews of
AoA are *very* postive?
Cheers,
Randy Hyde
The simple fact of having a guy like you considered
by the very wide majority some important person, in
the Assembly area rankles me to death, Master Pdf.
This is a great demonstration of the pathetic state
the Assembly communauty actually is. If there were,
here, and in other places, say, only 10% of real Asm
Programmers, you could not even post such insane and
indecent provocations, without getting more answers
like mines, you could not even follow up answering.
Betov.
< http://betov.free.fr/RosAsm.html >
I was thinking last night ( shut up Beth ). There are a counter on you web
page which says you have more than 3 million hits ? Lets suppose this mean
300 000 users (to be optimitic). For such bunch of potential users, where
are the links to the serious application written in HLA= There should at
*least* be 1000 serious applications written in it. _NOT_ including
testapplications. (I myself write from 10- 50 test application on a single
project). Show me the links.
:))
Oh, yes, we have already seen one passing around, some times ago:
This was a Text-Mode-Console-Game. The guy simply made use of
the wonderfull capacity of the HLA Standard Library, for outputing
the Text on the Console, what achieved into problems, because,...
-Master Pdf terms-,... it was a bit "extreme programmation", and
the problems were because the "StandardOut' HLA Function was so
"_powerfull_" (his words), that the source was expanding into
uge size.
... and when i provided him with Links to real little games
written with RosAsm, he answered that those Dx thingies were
nothing significative at all (the AsmGgess SpAce Games, for
example...).
:))
Betov.
< http://betov.free.fr/RosAsm.html >
True; But, in a sense, programming is actually a _literary_
artform...I mean we "write" programs using typewriter keyboards just
like book authors do...all the verbs and nouns usually applied to
programming are taken from the _literary_ equivalents...and, as
computers are terminally stupid, then we _must_ have correct spelling
and correct grammar...heck, it has to be _perfect_ or they'll spit out
a "syntax error" or something at us...
If you like, where books are "passive writing", programming is kind of
"interactive writing"...did you ever see one of those "interactive
fiction" books where there were lots of numbered paragraphs and you'd
read one paragraph and then there'd be a bunch of "choices" as to what
you wanted to do: "if you want to pick up the amulet, then goto
paragraph 57...if you want to talk to the dwarf, then goto paragraph
158"?
Well, these things are, basically, almost identical to computer
"adventure games" (which, in fact, these days has also been renamed to
"interactive fiction" that there's no difference in name at all
anymore...the books were called this and now the computer games were
renamed to be called exactly the same thing...so, clearly, someone
also realised that - other than the medium - there's not really any
difference between the two ;)...
And, well, doesn't it kind of also sound a bit like an "old-skool"
BASIC program as well? Loads of "GOTO 57", "GOTO 157" splattered all
over the place...which, of course, is NOT at all far removed from
"JMP" and "CALL" everywhere, which is what the computer fundamentally
does...
So, one way of looking at programming, is that it's an "evolution" of
writing...the "interactive" equivalent of Shakespeare or Goethe...but,
in being "interactive", there's an extra restriction that it has to be
"self-consistent"...whereas, just writing words on paper, things can
be very "William Boroughs" (if you don't get what I mean by that, then
try looking at his work...it's often close to being almost "random
words" in some places...like "poetic prose", so to speak ;)...but, in
a computer program, yes, it's more restricted because you've got
"variables" to keep track of and the "rules" must all be
consistent...as it's _dynamic_ and _interactive_, then it has to be
"consistent" and "robust" for all the different ways that the "book"
can be read at different times (you have to make sure that all those
"GOTO 57", "GOTO 157" things actually make sense ;)...
I know that I basically learnt the basics of how to spell correct and
so forth from programming...as is far too common these days in English
speaking countries, schools seem not to be at all interested in
teaching people this basic stuff and have some weird "don't be 'heavy'
on the kid's 'creativity', man...like, let them spell things wrong and
stuff" '60s attitude that still holds sway (because once those pupils
taught like this themselves become the teachers, you've set a "chain
reaction" in motion...interestingly, the statistics and surveys into
this are demonstrating that this "hippy" attitude is still rolling on
and on...the standards of English usage in English speaking countries
is now at an all-time low and _getting worse_...language experts are
actually slightly frightened by this prospect, in fact...they've
noticed that non-English speaking countries are actually _getting
better_ at English usage, as English speaking countries _get
worse_...it's still a way off but some have realised that if this
carries on, then we could really end up with a bizarre situation of
hiring Russians and Japanese to teach English in English-speaking
countries because they happen to be the better "experts" than our own
teachers...granted, an extreme but one that's more and more becoming
true...as I say, language experts are quite worried by this
notion...although, it might be "good" in international terms - English
basically falling into "world ownership", effectively - it's a pretty
damning thing for English-speaking countries to be so crap at
something that we should _excel_ everyone else on because of the
automatic "unfair advantage" we have...I mean, you just _expect_
Germans to be the best at speaking German, rather than the Japanese,
right? It would be embarassing and highly absurd if things carry on in
this direction and something like that _actually happens_...it's a bit
like the "Roman Empire"...English speakers have gotten slightly
"arrogant" and "lazy" about their language because of its
"international" status..."drunk on their own success", so to
speak...while, because it's NOT their first language, other countries
are _properly instructing_ their students in spelling and grammar and
so forth...they _are_ making the correct efforts to understand the
language...so, as daft as it sounds, it's actually quite possible for
something even this absurd to happen one day unless the
English-speaking countries "pull their socks up" and get a bit more
serious about English lessons _actually teaching English_...there's an
awful lot of "presuming" that people know all about the language and
that English lessons don't concentrate on "punctuation" or "grammar"
or anything...but, instead, a typical English lesson these days is
"character development" (strictly, really, a _dramatic subject_...this
should be part of specifically "drama" or "_creative_ writing", not
"general English" ;)...or "poetry", where they _WRONGLY_ suggest that
"anything goes" in a poem (yeah, right...and Shakespeare was so
"wrong" to use the tight restrictions of "iambic pentameter", was he?
;)...
Hence, though it's not perhaps _directly_ relevent, I do think that
literary considerations aren't completely alien to a programmer...or,
at least, they _SHOULDN'T_ be...it might not be a "nautral language"
we're using but some things are universal to any and all languages,
natural or artificial...
At the very least, Randy, consider that if this stuff was better
taught and explained in schools, then you wouldn't need to constantly
try to explain to people why they are "confusing syntax with
implementation" and so forth when talking about assemblers (it's more
than once you've had to make this point, isn't it? ;)...they are doing
this because it also gets confused in English lessons too...like I
say, if you stop and think about it, what's "character development"
doing in a English _language_ lesson? It's even a bit "dubious" as
part of "English literature"...and, really, it's "drama" or, at best,
it's "_creative_ writing", where the subjects of English, literature
and drama are combined to teach about _script writing_, _story
telling_, _plays_, _plot development_ and so forth...I mean, there are
NO "characters" in the Intel reference manual but that's written in
(technical) English, right? It's NOT part of "English" itself...it's
just an _application_ - an "implementation" - of English in actual
practice...a worthy subject _in its own right_ that confusing and
combining these things in any old order ends up doing none of these
subjects the justice they deserve...
If ASM helps people to write HLL code - even if they never use ASM
again - I'd also say that being able to properly understand and
respect your own natural language (doesn't have to specifically be
English...all languages teach the same basic underlying subject, in a
sense...same essential idea, just different words and rules and
grammars ;) would also help someone be able to program
better...possibly a "contravertial" topic but only I think because
people tend not to make the connection so haven't really considered
it - presuming that "different subjects" must automatically suggest
that nothing from one topic would necessarily be any use to such a
"different subject" (although, as I say, I would challenge if it _is_
really that greatly different...yes, it _is_ different but not by all
that much in the fundamentals) - rather than that I'm necessarily
actually wrong to make the "taboo" connection between the two...I
mean, make the connection and then be able to compare Microsoft's
".NET" to Big Brother's "NewSpeak" and realise that I'm not
particularly off-the-mark here at all...we're heading down very
similar paths there ;)...
> Fortunately, it was very postive and will sell a few more books :-)
Indeed; As you could probably tell, I just couldn't resist making a
joke about the fact that he appears unable to count...of course, I'm
sure he actually can...it was just a slip up (he probably typed "four
registers, EAX, EBX, ECX and EDX"...but then later realised - probably
in reading it from AoA as he got further into the chapter ;) - that
"ESP" and "EBP" aren't exactly "irrelevent" either...so, went back and
added the extra registers...plus the "among others" to "cover all
bases"...in case some more important registers suddenly appeared in
later chapters (which, in a sense, they _do_ when floating point, MMX
and SSE or whatever turn up because those are really more register for
user use...just because of the original "co-processor" nature of the
FPU - which isn't the case anymore, of course, being "bolted" directly
onto the CPU silicon - it tends to be thought of as "separate" and
"different" :)...and, oops, forget to edit the "four registers" bit to
account for the other changes...just a common typo I'd probably also
do or something too...
But I couldn't resist the "how to count chapter" joke...the rest of
the review was perfectly okay and quite reasonable...although, yes, it
did carry the usual "I've only read three chapters" tone in
places...but that's fair enough...far too easy for "experts" to poke
fun at beginners - on small, pedantic little mistakes here and there
which aren't greatly important - but we were all in that position
once...
That's why none of my comments actually relate to any _technical_ part
of the review...but, you know me, there's no way I could resist making
the joke when he'd left something so tempting on a silver platter in
front of me as seemingly not being able to count to six properly ;)...
> The big problem in my mind is that it's clear he didn't read much
beyond
> the first few chapters before posting the review.
Agreed; As I pointed out for that other review you posted up a link
to, the same seemed very true of that other review...this one was
actually much better but you could still kind of tell that it's
probably being written _simultaneously_ with writing it (in a sense,
the "can't count" mistake seems most obviously explained as a case of
him originally listing _four_ but then added more when he realised -
in reading more AoA - that there's some more important registers
covered...and he "went back" and edited the list to include these,
forgetting to "bump up" the actual count from "four" to "six"...or,
strictly, the count should have been removed entirely when "among
others" was typed because that's making things implicitly
"non-numerical" from then on ;)...so, as I say, there's a number of
"hints" in how the article is written that it was probably written at
the same time as reading AoA and that, yeah, once he reached chapter
three or something, he just gave up because he'd reached the "required
word count" for his article and decided he didn't read to write any
more (again, I make my general point that "word counts" and
"conciseness" should NOT rule how people write because it very often
makes what's written _worse_ than it should be if _content_ defines
how much is written and then "word count" comes later, during any
"editing" phase...note, my posts have no "editing phase" at all - at
most, I read over them to look for stupid mistakes but not much beyond
that - and I delibrately leave them "as is" - so they are more or less
the "raw thoughts" as I was thinking them - but in a more "formal"
environment, then the "proper" usual way of doing is _writing too
much_ - letting content alone define how much you write - and then,
later, you mercilessly "edit" the thing back down to throw out the
redundent bits...exactly like how film makers actually film much
_more_ and then "perfect" it all in the editing room by throwing out
chunks of film that don't actually help in any way...or how painters
often paint _more_ of a picture delibrately knowing that they'll later
"crop" it by putting a frame around it...it's easy looking at these
things to believe that Da Vinci painted "within the frame" or that
Spielberg only ever filmed the scenes you actually see on the
screen...not actually true...the general formula is actually: do _too
much_ and then carefully trim it back down later...my posts are
massive because, well, you get the "first draft" and there isn't any
"second draft" on them...if I was writing an "article" rather than a
post, I'd be a bit more careful and professional about things...but,
well, I'm just "chatting" here..."professionalism" is most certainly
"on leave" when I post here...if it in any way seems "professional" in
any place - unlikely - then that's not done delibrately, it's just
"rubbing off" from when I _do_ things more professionally...you know,
certain things become "habit" and you do them automatically without
even thinking ;)...
> Oh well, most book
> reviews are written based on the material that appears on the back
> cover anyway.
Hehehe...yes, totally...most of the book reviews I wrote in school
were little more than that, anyway...no, to be fair, I did read _some_
of the books...sometimes, anyway...but, yup, most book reviews (and
even film reviews or, as we see around here, "assembler reviews" when
it comes to typical comments about HLA, which is why I decided to coin
the phrase "phantom book review" to cover _exactly_ this element)
_ARE_ 90% "bluff" and maybe only 10% factual...and that's a _good_ set
of figures, some reviews are much worse...
It's actually very good, isn't it, that someone actually even
_bothered_ to look at AoA and HLA before commenting? The usual
"phantom book review" about HLA - though I notice there is _less_ of
these around lately as HLA has "gained ground" and isn't so easily
attacked anymore (because there's now enough people - not just Randy
and sometimes myself - who can tell when a HLA "review" is actually
_factual_...and when it's just "I don't like HLA so I'll accuse it of
things I _think_ might be wrong with it, even though I've never
actually given it five minutes to actually _know_ whether my
accusations are correct or not" (the old "hey, it _looks_ like Pascal,
so I'll call it a Pascal compiler and that's, well, _probably_ right
or something - maybe - isn't it?" syndrome ;) - weren't / aren't
nearly so kind as to actually _look_ at AoA and HLA before commenting
(well, okay, so as to make sure I'm not being non-factual here either,
when I say "AoA" I mean the 32-bit edition...the 16-bit edition has
long been considered "okay" from most people, as it's probably
_properly_ been looked at and read...which, in fact, only makes the
issue that 32-bit AoA gets treated so vastly differently a slightly
odd affair...because it is basically the same kind of approach just
moved into the 32-bit world...it's just that things had to be
"expanded" and MASM proved "not good enough" for doing exactly the
same thing - providing library routines and "beginner friendly"
macros - in the, itself different, 32-bit environment...for example,
you can't really criticise, say, a lack of example programs for
directly accessing keyboard hardware because in 32-bit (multi-tasking)
environments like Windows and Linux, you _don't_ access things
directly anymore...in fact, unless you've got "special permissions"
(Linux applicable only) any attempt to directly access things would
likely blow up and crash your application...the Win9x "exceptions" to
this is actually _bad design and implementation_ from Microsoft - it
_shouldn't_ really be allowing it by their own "design criteria" for
those OSes but, well, Microsoft (probably by their own admission, if
pushed in a number of years time that admitting it won't be
embarassing for them anymore) were often "lax" and "hacker-ish" when
it came to Win9x - and has nothing to do with AoA being "lacking" in
any way...in fact, this might even suggest that people who make
comments like this might even need to _read_ 32-bit AoA in order to
get a perspective on _why_ things like this are now "verboten" by
Windows and Linux ;)...
Perhaps, in fact, we should shut up here now...because it's not a good
idea to "look a gift horse in the mouth"...the review's actually more
reasonable than most that we don't want to give the impression of
"punishing" the best stuff...my comments about "can't count" were, of
course, merely a silly joke about spotting where there was a simple
"typo" kind of thing in the review...just being sarcastic, as I'm 100%
sure that he actually _can_ count and it was just a little honest
mistake in editing the review :)
> It's also why so much of the really advanced material
> got dropped from the published edition -- nobody reads that far
anyway :-)
Quite amusing, really; I'm quite the opposite in that I "skimmed" the
first chapters (well, I don't need the stuff about number systems or
registers...but it's always good to read other people's
explanations...just in case you've hit upon "the perfect way" of
explaining it that I could sort of "borrow" in trying to explain it
all in a post here or something...so, I actually _do_ often read even
the first chapters of things that are only covering things I already
know about...plus, I like reading for the sake of reading, anyway,
that it doesn't greatly bother me to read "what is a byte?" for the
hundred millionth time in yet another beginner tutorial ;)...but then
jumped straight to the "HLA reference manual"...you know, just trying
to discover the HLA _syntax_...because I _do_ need to learn all about
that, as it's completely new to me...so, I sort of have started "at
the end" and then read backwards...which is also why I comment mostly
on HLA but don't say quite so much about AoA...I've not read it cover
to cover, I will admit...but "skimmed" over enough of it to know
what's roughly in it and have properly read one or two chapters fully
(the stuff about, say, "procedures" as that helps work out what HLA
does with "automatic generation" and how to, yup, switch it off almost
immediately...not that I don't appreciate the efforts made there, of
course...but "old habits die hard" that it's probably "quicker and
more productive" to actually NOT use these things than to use them, in
my case, as I'm used to the more "traditional" methods ;)...
> Too bad, too. With the number of posts I've see about activation
records
> (here and on the MASM boards) recently, some people really ought to
> read some of the more advanced sections in AoA.
As I say, in my case, it's sort of the reverse...I've looked at those
bits but only "skimmed" quickly over the first chapters...so, I can at
least confirm that you've written it well enough that it also works
perfectly well used "out of order"...which, of course, is actually an
important point for anything that could be used in a "reference" /
"look something up" kind of way :)...
Beth :)
He was a beginner; As could be determined from the way that the entire
adventure was _hard-coded_...this, of course, isn't the "professional"
way of doing things for "adventure / interactive fiction" programs...I
posted up a small example - you were not going to mention that because
it doesn't suit your purposes? Because you _must_ have seen it and
remembered it, if you're remembering that program which was on the
same thread - which does things in the more "traditional" method of a
"game engine" that has the map and such as _data_ (a technique that
not only simplifies coding but also means that it's reasonably easy to
"plug and play" different adventures and maps into the program without
needing to touch much - if any - of the code...of course, the most
famous examples of using this kind of system would be DOOM, Quake,
Half-life and so forth, where there are many users out there who use
tools to make their own "counter-strike" maps and so forth (just like
that guy on Ctrl+Alt+Delete does ;))...
If you're going to _hard-code_ an entire large-ish adventure game with
"print" and "input" statements duplicated for every single location on
the map, then, for sure, it's _going_ to expand into a very huge
size...but, of course, as a beginner just writing some "first
programs", then this is likely the kind of way most people would write
it...and it's not really "wrong" because it will work...just the "game
engine" structure is actually _easier_ to do - once you get the hang
of it - and doesn't expand into a huge size...
Hence, if instead of repeating "stdout.put" over and over with
hard-coded string constants, he'd written a _generic_ "room printing
routine" which grabbed the name, description and stuff from data
statements, then they'd only be a few "stdout.put" statements and it
wouldn't have expanded to anything near the same size...
The _exact same thing_ would completely apply to BASIC, Pascal, C++,
C#, Perl, NASM, MASM, RosAsm, etc....it was an _algorithmical_ issue,
not anything to do with the language used...and I posted up my example
code to demonstrate the different way to do things that not only is
going to be much smaller but is actually easier, more flexible and
more "robust" (because rather than having loads of different
procedures for each room, there is only _one_ procedure which pulls
the room information from _data_ statements...so, once you "perfect"
that lone routine, all rooms will work perfectly...while having each
room hard-coded leads to the possibility of a "bug" in one room but
not in other rooms...this is actually "code re-use" in actual
_practical_ use, basically :)...it's just a general "rule of thumb" to
"avoid hard-coding" and practice "code re-use" where possible...
> ... and when i provided him with Links to real little games
> written with RosAsm, he answered that those Dx thingies were
> nothing significative at all (the AsmGgess SpAce Games, for
> example...).
Actually, I'm going to side with you on this point, Rene...these kinds
of "demos" are important, useful and fun...and I've actually just been
talking to Randy in Email exactly about how it is somewhat "poor show"
that HLA doesn't have something similar at the moment...in fact, to
Randy, this little "coincidence" here that you've mentioned exactly
what I was talking about to him does help me say "See? I did tell you
this stuff _is_ something people are expecting and looking for"...
Unfortunately, Rene, what I'd determined was that this was a "gap" to
be plugged...on that, you and Wannabe are quite right...as time goes
on, you should see this issue beginning to be resolved (hence, if you
want to keep your "advantage" here, be warned that there will be
attempts to "catch up" coming as time goes on...that is, you _are_
ahead in this race that if you want to _stay_ ahead, don't forget
Aesop's "The Tortoise and The Hare" fable...see? We're really kind to
you, Rene, and you _never_ seem to realise this...I'm actually
_fore-warning_ you about what's likely to happen...and I _still_ bet
you won't do anything even then ;)...at least, from the perspective
that I'd be willing to help start "the ball rolling" in that
direction...obviously, there's not much that Randy can directly do
about other people setting up their own "what I've written in HLA"
websites (posing as someone else and publishing his own code is, of
course, "cheating" in a very big way ;)...and, this "absence" _is_, to
my mind, a cause of concern..._something_ is amiss or this kind of
thing should be springing up of its own accord...one factor is that
HLA _is_ targetted at beginners and, therefore, I suppose there's an
element of "give them some time to actually learn something first"
involved...but, true, there seems to be something more than this...I
personally _DON'T_ believe its a HLA failing because I've used it and
it's more than capable for such programming...in fact, I'd find it a
_lot_ easier to code something in HLA along these lines than RosAsm
(but I will be fair to point out that there wouldn't be _that_ much of
a vast difference between the two, that it's not meant to be a
criticism that RosAsm is "bad"...the comment is actually that HLA is
"good" for this stuff as well, that the "absence" _is_ quite
strange)...
One other thing to note is that the counter is for _Webster_ (which
includes many other things relating to assembly...links, MASM
documentation, ASM libraries, the old 16-bit AoA, etc....and,
actually, there's also those "Parodeity" things, which are also
visited but don't have anything to do with the other assembly content
on Webster :)...what we'd really need a "counter" on specifically is
the _HLA download page_...the figures here might not be quite so
high...just as I don't think Rene's RosAsm or NASM or whatever would
particularly get "million hits" on their counters either...
But something is amiss...personally, I'd want to suggest that rather
than fight amongst ourselves over "who has the biggest", then we
should actually look that _NONE_ of the assemblers - except, perhaps,
MASM - can really be considered too "healthy" on this score...yeah,
RosAsm has some great examples there...but then if you try that same
search on something like "PowerBASIC", "BlitzBASIC", "C++" (this one
is going to be stupidly massive, most likely ;), "Java" or others,
then _all_ assembly is much too "unhealthy"...yes, _even taking into
account_ that ASM is never going to be as popular or as used as some
of these HLLs, there still doesn't - at least it doesn't "feel" right
to me - make the sort of "ratios" you'd expect...there's _generally_ a
strange "absence" across all ASM...that's why I'd loudly applaud
Rene's effort to actually ask people to "submit" it to him and then he
puts them up on his site for all to see...that's actually a very good
and clever thing he's done there...interestingly, other tools don't
seem to make these little attempts at "community"...and if Rene does
_suceed_ well on something with RosAsm, I think it's fair to give him
credit on that...RosAsm users _do_ contribute things back to Rene's
site and this probably _does_ help to generate some "loyalty" and
perhaps "community" there...
As I've always said, Rene does have some pretty good ideas from time
to time and this one certainly is a good one...you can't answer the
"what if?" definitively but _would_ we actually be able to easily find
user RosAsm examples, if Rene didn't cleverly provide people the
_platform_ to submit their little "demos" to him for public display?
Especially because this kind of thing also naturally generates a bit
of "competition", I'm sure...people looking at a demo and thinking "I
can do better than that"...and then submitting their
examples...helping to build up a nice "portfolio" for RosAsm when
people come a'looking to see what it can do (which, of course, is
another "key benefit" of these kinds of "demos"...they are
"informercials" of a kind, so to speak...giving you an idea of what's
possible with RosAsm and the source code allowing people to find out
how and do something similar themselves...educational and also an
"advert" for RosAsm all-in-one :)...
All of the ASM tools out there could probably borrow a leaf out of
Rene's book on this one (if they haven't already, of course :)...it's
not really a technical issue but a "feeling welcome" and "generating a
community spirit" thing...
I can't specifically argue against this point because, to be honest,
Wannabe, I _already_ noticed this myself and actually have pointed it
out to Randy...plus, I can't fault Rene on his little "user demo
section" on his website because it's a great idea...in fact, I have
seen this kind of thing mentioned in "good website design" guides as a
great idea perfectly suited to the internet...if you provide anything
"creative" then also accept and display your users' work on the same
site too...you know, if you provide a paint package, then you can
display images that your users have made with it...because this gives
people a reason to go back to the site (to see if there's any new
demos :), gives a sense of "community", acts as an "advert" (and a
very good one because these demos are _real_ examples of what actual
users have managed to do...not just some "perfectly art-brushed by a
professional" image or whatever :) and is generally an all-round "fun"
and "cool" idea...
Admittedly, this isn't a particularly good advert for HLA...but, using
it, there's actually _nothing_ I can see about HLA itself that
prohibits this happening at all...the problem resides elsewhere...not
enough "advanced users" capable of doing this using HLA or people
writing this kind of thing but - perhaps, in fact, due to people
posting up things to ASM newsgroups creating a "stigma" against using
HLA - just choosing NOT to make it available for some reason or
another...
You're right that this is a strange thing that's a cause for
concern...but you can't jump directly to the conclusion that this
means HLA is "incapable" of such things...that is NOT the case, I can
assure from using it and knowing what it could be used for...any fault
is NOT with HLA itself but elsewhere...which may include, to be fair,
that HLA _isn't_, indeed, getting the "right breed" of coder involved
who can create these kinds of things...
Beth :)
> [...]
Beth,
This is not me who said that HLA was designed,
first, to teach beginners.
This is not me, either, who said "My Assembler
is designed to teach beginners".
Now, i have yet to see _one_ RosAsm user writing
some Application, without understanding a thing
at what a Macro is and how it expands into Code
and/or Data.
Simple.
I also remember of this beginner answer when i
asked him, after he wrote this with HLA, what he
thought he had learned about Assembly, and also have
no need to ask other beginners what they may have
learned after having written some first Application
with an Assembler.
Also very simple.
Betov.
And therein lies the *brand-new* reason why I will
truly seek to enlarge my audience, ego, and personal fame.
If it annoys you, it must be a good thing to do.
> This is a great demonstration of the pathetic state
> the Assembly communauty actually is. If there were,
> here, and in other places, say, only 10% of real Asm
> Programmers, you could not even post such insane and
> indecent provocations, without getting more answers
> like mines, you could not even follow up answering.
Ahh yes.
The "pathetic state of the Assembly Communauty" [sic].
Nobody's doing thing's your way. That makes them pathetic.
Have you ever considered the fact that perhaps it is *you*
who is the pathetic one?
They have a word for those who refuse to accept reality.
Usually the clinical term is "insane".
In your case, it's probably just "a little too much wine
makes you whine"...
Cheers,
Randy Hyde
300,000 visitors?
You think people only visit Webster 10 times?
Heck most people hit Webster ten times on *each* visit.
Tons of schools have links to Webster and their students
read AoA on-line while working in the laboratory.
I've never done the actual statistics, but I'd guess that
Webster has probably had closer to 30,000-50,000
visitors since Jan 1 2000 (when the counter was reset
to zero); and that's being optimistic.
BTW, Webster's counter works as follows:
If you click on a page (with the counter on it, there are
several pages [including all the PDF and zip files] that
don't have counters attached to them) it bumps the counter.
From that point forward, no matter how many clicks you
try, Webster will *not* bump the hit counter until it receives
a hit from some other IP address. IOW, it keeps track of the
last visitor and doesn't allow that visitor to run up the hit counter
by hitting the refresh button constantly (try it). Therefore, Webster
actually *undercounts* the hits it gets, because it will only count
multiple hits from the same IP address if someone else accesses
Webster between the hits.
BTW, Webster is on-track to hit 4,000,000 hits real soon now.
The number of hits on Webster has accellerated this year. Looks
like it will do a million hits in 8-9 months (versus 10-11 months
like last year).
Ultimately, the exact nature of how the hits are recorded isn't that
important. The hit counter on Webster is completely meaningless
when compared to a hit counter on some other web site (as, no
doubt, different algorithms are used to maintain the hit counter).
Webster's hit counter, however, is a decent way to gauge Webster's
popularity over time (by watching how fast the counter turns over
that seventh digit).
Of course, one reason that Webster's hit counter *might* be
acceleration is because the non-assembly language side of the
site (Christian Resources, the Parodies section) has been getting
a lot of attention this year, too.
Cheers,
Randy Hyde
I don't think I suggested otherwise, did I?
> This is not me, either, who said "My Assembler
> is designed to teach beginners".
>
> Now, i have yet to see _one_ RosAsm user writing
> some Application, without understanding a thing
> at what a Macro is and how it expands into Code
> and/or Data.
>
> Simple.
Indeed; As your assembler is not designed to teach beginners nor - as
you've repeatedly stated - are you in the slightest bit interested in
assisting them, then those who use it are clearly NOT beginners and
already understanding what a macro is and how it expands into code and
/ or data...
What you're failing to appreciate is that most people would probably
take this as being a somewhat "bad" thing, not a good
thing...evidently, though, you either can't understand this...or,
otherwise, you are simply fully unconcerned in even trying to
understand that point of view...probably the second one, though, as
you're not stupid about these things usually...hence, you are clearly
choosing to not understand...well, your wish is your command...
> I also remember of this beginner answer when i
> asked him, after he wrote this with HLA, what he
> thought he had learned about Assembly, and also have
> no need to ask other beginners what they may have
> learned after having written some first Application
> with an Assembler.
>
> Also very simple.
And, if I recall, he'd written all his other adventure games in HLLs
and HLA was the first time he'd attempted assembly for such a
problem...prior to this, he would have had no idea about registers,
stack use, activation records, direct API commands and a whole host of
other things...HLA, as is intended, has introduced a person to ASM who
would, otherwise, simply NOT have come in this direction at all...
HLA is targetted at assembly beginners, giving it a familiar "HLL
spin" for those people to who this benefits...these people would NOT
be using RosAsm instead, they would be using
_VisualBASIC_...therefore, your accusations of "HLL pollution" are
absurd...these people are _already infected_ by "HLLisms"...HLA begins
to introduce ASMisms into their vocabulary...what you're failing to
appreciate is that these people are NOT coming from nowhere...they are
not "bottom up" programmers coming as "clean slates" (which is why
RosAsm's "BU_assembly" stuff just has no relevence to them and they
_will_ be ignoring you)...they are _HLL programmers_...HLA beings to
"undo" that and introduce ASM programming to them...if they could not
see HLA and its HLL familiarity and its HLL "helpers" and syntax, then
they would be programming _VisualBASIC_, NOT RosAsm...I repeat,
VisualBASIC, NOT RosAsm...
This is also very simple...
Beth :)
Quite honestly, who cares what size it compiles into?
The fact that he could learn enough HLA to write the thing in
a few weeks speaks volumes.
The real problem, despite what Rene is claiming, was not the
*size* of the application, but the compile time. The way Paul
wrote the game, he wound up assembling the equivalent of
about 1,000,000 lines of code and it took 5-6 minutes to
do this on his machine. Much like the good old MASM
"static initialized array" problem, once Paul was shown how
to use stdout.puts instead of stdout.put, assembly times fell
down into the _seconds_ range. Rene won't mention that,
though. He likes to make claims about how HLA is so much slower
than other assemblers; he'll stick with those large numbers for
MASM and HLA as long as he can get away with it :-)
Oh, and when you point out that it's possible to create slow
compiling RosAsm source files, he'll start feeding you a line about
how you're swindling and lying...
>
> Hence, if instead of repeating "stdout.put" over and over with
> hard-coded string constants, he'd written a _generic_ "room printing
> routine" which grabbed the name, description and stuff from data
> statements, then they'd only be a few "stdout.put" statements and it
> wouldn't have expanded to anything near the same size...
Well, it would have been somewhat smaller. But unless he was
repeating the same strings over and over again (which I don't believe
he was), then each character in that string data is going to take up
the same amount of space no matter where you put it.
>
> The _exact same thing_ would completely apply to BASIC, Pascal, C++,
> C#, Perl, NASM, MASM, RosAsm, etc....it was an _algorithmical_ issue,
> not anything to do with the language used...and I posted up my example
> code to demonstrate the different way to do things that not only is
> going to be much smaller but is actually easier, more flexible and
> more "robust" (because rather than having loads of different
> procedures for each room, there is only _one_ procedure which pulls
> the room information from _data_ statements...so, once you "perfect"
> that lone routine, all rooms will work perfectly...while having each
> room hard-coded leads to the possibility of a "bug" in one room but
> not in other rooms...this is actually "code re-use" in actual
> _practical_ use, basically :)...it's just a general "rule of thumb" to
> "avoid hard-coding" and practice "code re-use" where possible...
With Rene, here's how it works:
1. "You can do this in HLA, otherwise there'd be example code showing it."
When example code appears:
2. "Look how bad HLA is, you have to write an example program to
prove you can do things with HLA that can be done with other
assemblers."
Amusing how it works, eh? He could turn winning the Lotto Jackpot into
a negative event ("Look at all the taxes you've got to pay now...")
>
> > ... and when i provided him with Links to real little games
> > written with RosAsm, he answered that those Dx thingies were
> > nothing significative at all (the AsmGgess SpAce Games, for
> > example...).
>
> Actually, I'm going to side with you on this point, Rene...these kinds
> of "demos" are important, useful and fun...and I've actually just been
> talking to Randy in Email exactly about how it is somewhat "poor show"
> that HLA doesn't have something similar at the moment...in fact, to
> Randy, this little "coincidence" here that you've mentioned exactly
> what I was talking about to him does help me say "See? I did tell you
> this stuff _is_ something people are expecting and looking for"...
Personally, I'm more interested in real applications written in HLA,
like Roger's 6809 assembler, than in little demos. HLA, after all,
has over 100 "demo" programs already appearing in the "Examples"
download (some trivial, some more complex). Yeah, someday it
would be nice to move them to web pages so people can see them
on-line and that would help promote HLA.
Still, it probably wouldn't hurt to start a "user demo" page just to
give people the "warm and fuzzy" feeling of knowing that other
people out there really are using HLA.
The reason for this gap (and it may very well continue for some time) is
specifically the clientel the two assemblers attract.
Most beginners are incapable of using RosAsm. Despite the fact that
it has an IDE (the advantage is rapidly disappearing as people discover
RadASM is so much easier to use), there is almost no support available
for the beginner who wants to learn assembly langauge programming using
RosAsm. So you'd better already know x86 and participate in the RosAsm
Forum if you want to get anywhere. Naturally, those people are going to
be able to create somewhat more sophisticated demo programs than an
absolute beginner trying to learn assembly for the first time. The only
problem
with that approach is that *most* people who already know assembly language
are quite happy with the tools they're already using. So unless they've got
some
political problems with using a product like MASM, you're not going to
attract *too* many people to a product like RosAsm. I would be astounded
to find that Rene's user base numbers above 1,000. I'd guess the low
hundreds,
if that many.
HLA has the same problems attracting advanced assembly programmers
(even more so). People already have their tools and they're not interested
in learning a new syntax when their existing tools serve them well. That's
okay,
though. HLA *was* designed to provide a tool to make assembly easy to
learn (and yet be powerful enough that they won't outgrow the assembler
as their expertise level rises). But HLA has *thousands* of users because
it attracts an audience who doesn't have a built-in bias against HLA (that
is,
it's geared to the person who hasn't already learn some other assembler).
Clearly, the group that HLA is attracting is *not* in the position to write
really cool assembly demos right off the bat.
However, in the past year as HLA usage has begun to really take off, we're
seeing a *lot* of new users sticking with the plan and continuing to write
assembly code with HLA. That means that over the next year or two we're
going to start seeing some more sophisticated apps written in assembly
using HLA (like Roger's 6809 assembler). And so, within this next year,
putting up a "user contributed" section on Webster begins to make some
sense.
Prior to this point, however, most HLA programmers are just getting the
feel for assembly language and might not be comfortable contributing such
stuff.
Kudos to Paul for his HLA adventure game, regardless of what Rene thinks of
it :-)
>
> One other thing to note is that the counter is for _Webster_ (which
> includes many other things relating to assembly...links, MASM
> documentation, ASM libraries, the old 16-bit AoA, etc....and,
> actually, there's also those "Parodeity" things, which are also
> visited but don't have anything to do with the other assembly content
> on Webster :)...what we'd really need a "counter" on specifically is
> the _HLA download page_...the figures here might not be quite so
> high...just as I don't think Rene's RosAsm or NASM or whatever would
> particularly get "million hits" on their counters either...
The counter on Webster is not a device for measuring anything other than
the acceleration of deceleration of interest in the material on Webster.
Technically, there is this "umpteen gigabyte" file at UCR that has tracked
every hit on Webster than I could use for data mining purposes, but
I don't really care what pages have been hit, how many downloads
HLA has had, or what pages in AoA people are reading. Indeed, as
UCR is kind enough to host that page (it promotes the school), I'm
more than happy *not* knowing anything about Webster's access
other than the hit counter. Otherwise, someone might start questioning
the bandwidth costs :-).
>
> But something is amiss...personally, I'd want to suggest that rather
> than fight amongst ourselves over "who has the biggest", then we
> should actually look that _NONE_ of the assemblers - except, perhaps,
> MASM - can really be considered too "healthy" on this score...yeah,
> RosAsm has some great examples there...but then if you try that same
> search on something like "PowerBASIC", "BlitzBASIC", "C++" (this one
> is going to be stupidly massive, most likely ;), "Java" or others,
> then _all_ assembly is much too "unhealthy"...yes, _even taking into
> account_ that ASM is never going to be as popular or as used as some
> of these HLLs, there still doesn't - at least it doesn't "feel" right
> to me - make the sort of "ratios" you'd expect...there's _generally_ a
> strange "absence" across all ASM...that's why I'd loudly applaud
> Rene's effort to actually ask people to "submit" it to him and then he
> puts them up on his site for all to see...that's actually a very good
> and clever thing he's done there...interestingly, other tools don't
> seem to make these little attempts at "community"...and if Rene does
> _suceed_ well on something with RosAsm, I think it's fair to give him
> credit on that...RosAsm users _do_ contribute things back to Rene's
> site and this probably _does_ help to generate some "loyalty" and
> perhaps "community" there...
Too bad Rene has declared a "Holy War".
Have you ever noticed how Hutch and I rarely make negative
comments about other assemblers? Picking on Rene is more of
a defensive act. Ever noticed how it quiets down around here
when Rene goes away for a few days? I've given Rene a couple
of years to get civilized and start behaving like a mature adult.
He is incapable of that, apparently. So be prepared for this "holy
war" to become a little less one-sided from now on. Rather than
being simply defensive, as I have mostly done in the past, I'm not
going to have any problems at all criticizing RosAsm. Rene *and
the product* both deserve it, and have deserved it for a long time.
Yep, it's a side-track that prevents some real work from getting done.
But it's one of those things that just has to be done to prevent
Betov from possibly misleading anyone.
>
> As I've always said, Rene does have some pretty good ideas from time
> to time and this one certainly is a good one...you can't answer the
> "what if?" definitively but _would_ we actually be able to easily find
> user RosAsm examples, if Rene didn't cleverly provide people the
> _platform_ to submit their little "demos" to him for public display?
Rene has done many good things.
They are completely overshadowed by his attitude and all the bad
things he has done.
> Especially because this kind of thing also naturally generates a bit
> of "competition", I'm sure...people looking at a demo and thinking "I
> can do better than that"...and then submitting their
> examples...helping to build up a nice "portfolio" for RosAsm when
> people come a'looking to see what it can do (which, of course, is
> another "key benefit" of these kinds of "demos"...they are
> "informercials" of a kind, so to speak...giving you an idea of what's
> possible with RosAsm and the source code allowing people to find out
> how and do something similar themselves...educational and also an
> "advert" for RosAsm all-in-one :)...
Yep. I agree. It would be a real good idea to start adding this
kind of stuff to Webster over this year.
>
> All of the ASM tools out there could probably borrow a leaf out of
> Rene's book on this one (if they haven't already, of course :)...it's
> not really a technical issue but a "feeling welcome" and "generating a
> community spirit" thing...
Except that Rene is very "anti-assembly community". Did you read
his post immediately above yours? Let me quote the relevant phrase:
>>>>>
This is a great demonstration of the pathetic state
the Assembly communauty actually is. If there were,
here, and in other places, say, only 10% of real Asm
Programmers, you could not even post such insane and
indecent provocations, without getting more answers
like mines, you could not even follow up answering.
<<<<<<
I don't believe that's encouraging the assembly community very much.
His posts over in the MASM Forum are equally destructive.
Heck, he even tears people apart on his own board.
>
> Admittedly, this isn't a particularly good advert for HLA...but, using
> it, there's actually _nothing_ I can see about HLA itself that
> prohibits this happening at all...the problem resides elsewhere...not
> enough "advanced users" capable of doing this using HLA or people
> writing this kind of thing but - perhaps, in fact, due to people
> posting up things to ASM newsgroups creating a "stigma" against using
> HLA - just choosing NOT to make it available for some reason or
> another...
There are a *lot* of things that need to be done to promote HLA :-).
This suggestion is a good one.
However, I've been busy on the things that will have a dramatic
impact. Over the past four years that has been:
1. Bringing the electronic edition of AoA on-line for HLA.
2. Porting HLA to Linux
3. Getting AoA published
4. Working on other HLA-centric books, like "Windows Programming in
Assembly"
and, to a lesser extent, "Write Great Code".
5. Making progress on HLA v2.0.
Whereas Rene thinks that the "turning point" for RosAsm is going to be
the introduction of a disassembler into his system, I personally feel that
the thing that will dramatically increase HLA usage is the introduction
of new books like "Windows Programming in Assembly" (sure has worked
for me in the past). Maybe my work has blinded me to other possibilities
as well. So I welcome any suggestions along these lines and I'll be more
than
happy to maintain a "user-written demo" section on Webster, if people feel
it will help them.
>
> You're right that this is a strange thing that's a cause for
> concern...but you can't jump directly to the conclusion that this
> means HLA is "incapable" of such things...that is NOT the case, I can
> assure from using it and knowing what it could be used for...any fault
> is NOT with HLA itself but elsewhere...which may include, to be fair,
> that HLA _isn't_, indeed, getting the "right breed" of coder involved
> who can create these kinds of things...
To Rene, HLA is incapable of anything :-)
Except, of course, setting the assembly rebirth back a few years
while he tries to get his act together with RosAsm.
Cheers,
Randy Hyde
> At the very least, Randy, consider that if this stuff was better
> taught and explained in schools, then you wouldn't need to constantly
> try to explain to people why they are "confusing syntax with
> implementation" and so forth when talking about assemblers (it's more
> than once you've had to make this point, isn't it? ;)...they are doing
> this because it also gets confused in English lessons too...
Well, Rene *refuses* to study the material. It doesn't matter what
gets taught or how well it gets taught. If someone refuses to learn it
and, indeed, even brags about their ignorance as if that were a good
thing, then there's no hope for them :-(
Although I've never though of HLA as "revolutionary" (after all,
it was based on principles found in MASM and TASM long
before HLA was created), definitely it's following the path of
a revolutionary product in the sense of acceptance.
1. People universally hate the idea.
2. A few newbies sign on.
3. The old-timers make lots of noise about the "new generation" being
totally lost
4. The idea is around long enough that the old-timers become comfortable
with
its presence, if not the idea itself.
5. The new guard replaces the old guard and the product achieves "standard"
status
(and the old guard reminesces about the "good old days").
6. A new idea comes along and the cycle repeats.
"Meet the new boss, same as the old boss" comes to mind.
We're somewhere between points 3 & 4 right now, in my estimation.
Within a couple of years we'll be sliding between points 4&5.
I personally feel that the x86 will probably die off before HLA replaces
the likes of MASM at the top of the heap (unless Microsoft really kills the
product off), but, despite Rene's best attempts, HLA is posed to continue
growing in popularity and usage.
>
> Perhaps, in fact, we should shut up here now...because it's not a good
> idea to "look a gift horse in the mouth"...the review's actually more
> reasonable than most that we don't want to give the impression of
> "punishing" the best stuff...my comments about "can't count" were, of
> course, merely a silly joke about spotting where there was a simple
> "typo" kind of thing in the review...just being sarcastic, as I'm 100%
> sure that he actually _can_ count and it was just a little honest
> mistake in editing the review :)
Any review that doesn't read like something Rene would write is
bound to sell more books and increase interest in HLA. There are
some non-flattering reviews on Amazon, for example, but they
still sell books (people tend to mistrust glowing and flowery reviews
if they don't see a few bad ones one; every product has its warts and
people realize this; the absence of negative reviews tends to give the
impression that things are rigged -- particularly at a reseller like
Amazon.com).
You should write a review, too :-)
Cheers,
Randy Hyde
> I know that I basically learnt the basics of how to spell correct and
> so forth from programming...as is far too common these days in English
> speaking countries, schools seem not to be at all interested in
> teaching people this basic stuff and have some weird "don't be 'heavy'
> on the kid's 'creativity', man...like, let them spell things wrong . . .
And what is "wrong" spelling. Which is correct, color or colour?
Gaol or jail? Who is the judge? Language and spelling evolve.
At least it did until someone invented the dictionary and proclaimed
their version of spelling the correct one. The appeal to "correct"
spelling is simply an appeal to authority.
Just as you can have colour blindness some people have word
blindness. They can read and write ok it's just that they cannot
tell if the spelling is correct or not. It doesn't make them dumb.
I have known autistic people who can spell perfectly yet couldn't
write a essay. How many English professors write best selling
novels? How many programming professors write ground breaking
software?
By the way the first line above doesn't "sound" right. Should it
be "correct" or "correctly"? What are the rules in this case?
[snip]
--
John Casey
A products value depends on how easy it is to learn. How many
features go unused on a VCR simply because they are too hard
for the average joe to figure out? If you have to be an expert to
use it then it will only sell to the experts.
--
John Casey
> How many programming professors write ground breaking
> software?
Quite a few actually. The real question is "How many programmers write
ground breaking
software?" Percentage-wise of the whole population, I'd say their number is
higher than
that for software engineers (because the vast number of software engineers
never get an
opportunity to work on "ground-breaking" software).
Then again, I know of some jackhammer operators who are really into
ground-breaking stuff... :-)
cheers,
Randy Hyde
And generally, those who use it are, alas, quite few in numbers because
those who already know assembly are typically probably using a tool
with which they're already happy.
>
> What you're failing to appreciate is that most people would probably
> take this as being a somewhat "bad" thing, not a good
> thing...evidently, though, you either can't understand this...or,
> otherwise, you are simply fully unconcerned in even trying to
> understand that point of view...probably the second one, though, as
> you're not stupid about these things usually...hence, you are clearly
> choosing to not understand...well, your wish is your command...
Rene is real big on choosing not to understand things.
Did you see his post about his disassembler where he claimed that
attempts to read papers on decompilation put him to sleep (translation:
he didn't bother reading them enough times to understand the points being
made)?
>
> HLA is targetted at assembly beginners, giving it a familiar "HLL
> spin" for those people to who this benefits...these people would NOT
> be using RosAsm instead, they would be using
> _VisualBASIC_...therefore, your accusations of "HLL pollution" are
> absurd...these people are _already infected_ by "HLLisms"...HLA begins
> to introduce ASMisms into their vocabulary...what you're failing to
> appreciate is that these people are NOT coming from nowhere...they are
> not "bottom up" programmers coming as "clean slates" (which is why
> RosAsm's "BU_assembly" stuff just has no relevence to them and they
> _will_ be ignoring you)...they are _HLL programmers_...HLA beings to
> "undo" that and introduce ASM programming to them...if they could not
> see HLA and its HLL familiarity and its HLL "helpers" and syntax, then
> they would be programming _VisualBASIC_, NOT RosAsm...I repeat,
> VisualBASIC, NOT RosAsm...
>
> This is also very simple...
It's very simple where RosAsm is targeted. It is targeted to ReactOS
users. And someday, when ReactOS becomes real, all those HLL
programmers out there will immediately switch to RosAsm because
it will magically be better than a HLL, because it's now running under
ReactOS. Of course, please don't read the fine print too carefully and
note that NASM is the official assembler of the ReactOS project :-)
cheers,
Randy Hyde
Yes, research papers in the area of Computer Science
are very difficult to read, boring, and put you to sleep.
They are not explained well. And the writing is often horrible.
It's even worse when you're a non-native speaker attempting
to read the subject material in a second language.
But the problem is, you won't find "advanced computer
science for dummies" or "decompilers for dummies" on
Amazon.com. If you want to work on advanced programming
projects, involving advanced concepts in computer science,
you've got to develop the ability to read through those
horribly-written papers and extract the information you need
for your project. Simply announcing "this stuff is boring and
it puts me to sleep" and then striking off on your own is a
good way to:
1. Wind up reinventing the wheel, expending far more effort in the process.
2. Missing out on some important facts that might be the difference between
a successful product and a failure.
3. Head down a wrong path that has been travelled many times before.
4. Not gain an understanding of why someone would want that feature in a
system.
Hacking is fun. Quality research is not.
But the difference definitely shows in the final product.
Someday, when Rene gets bored with working on his disassembler, it will
be interesting to have an IDA-Pro user take a look at Rene's product and
evaluate the two. IIRC, Rene claimed that he hasn't even bothered to look
at IDA-Pro. That's probably because Rene thinks he always knows the
right way to do things and nobody else could possibly have anything to
add to his vision.
cheers,
Randy Hyde
Naughty girl.........that wouldnt be....your wish is *my* command..... now
would it ? Sometimes you scare me a litle Beth ;-)
(No...because I am a nutter too...lol)
> > Also very simple.
> HLA is targetted at assembly beginners, giving it a familiar "HLL
Thats why there is no demos. They cant figure out how to program with it ?
They are still trying to stay awake after chapter 3 ?
Beth......admit it, even you were almost falling asleep...so you skipt right
through to the end. Where you went into meditation and closed the book. :-)
> This is also very simple...
HLL programmers, after some time, become *so and so* familiar with machine
architecture. They want to know *more*. After a while they see that HLL is
not where they want to be. When they see they have been duped, been served a
false path to their goal, they want straight to the core. No more bullshit,
"give me all ya got"!. If you want to have sex with woman, you dont want to
have sex first with a Troll, and then a cow and then read 1500 pages about
sex. You want to have sex NOW.
IMO Spasm is like having sex now. And HLA is like beeing deprived of it
right from the start.
Maybe HLA was created to be all of it. But compare 20 minutes to get started
in Spasm with reading
1500 pages of *** *******. You dont need to be a mathematician to write 3D
renderers (nor english professor to get understood). All you need is will
and a place to start.
Problem is, how to get rid of that 200.000 lines of HLL code, without
tearing your heart out.........
Beth you want to compete with me in making the best HLA vs Spasm demo ? Of
course I use Spasm, you use HLA ?
If you're interested, write me at my email, and we'll agree on terms and
stuff...
> Beth :)
>
>
> Thats why there is no demos. They cant figure out how to program with it ?
> They are still trying to stay awake after chapter 3 ?
> Beth......admit it, even you were almost falling asleep...so you skipt
right
> through to the end. Where you went into meditation and closed the book.
:-)
There are no *user supplied* demos on Webster. Big difference.
There are user-written examples in HLA out there, just not on Webster.
And the "Examples" download for HLA contains over 100 various
sample programs written in HLA; not including all those that are part
of WPA, the Iczelion translations, and various other source code (e.g.,
the HLA Standard Library source files); nor does that include all
the example programs from "The Art of Assembly."
No question that having some "user-written" demos might prove to
*somebody* out there that real assembly programs can be written
with HLA by someone other than myself :-). But I think you overstate
the fact when you say "there is no demos".
>
> > This is also very simple...
>
> HLL programmers, after some time, become *so and so* familiar with machine
> architecture. They want to know *more*. After a while they see that HLL is
> not where they want to be. When they see they have been duped, been served
a
> false path to their goal, they want straight to the core. No more
bullshit,
> "give me all ya got"!. If you want to have sex with woman, you dont want
to
> have sex first with a Troll, and then a cow and then read 1500 pages about
> sex. You want to have sex NOW.
Well, if instant gratification is what you're after, I'm afraid I'm not
going to supply it.
I'm more into training people for the long haul rather than teaching them
how to
quickly assemble and run some quick little demo in hopes of impressing their
girlfriends with their amazing "assembly expertise". I *could* have written
a
"professional style" text like "assembly language for dummies" if I wanted
to
teach it the way you're suggesting.
But check out what people have to say about AoA. It's well-respected
because (1) it's *very* comprehensive, (2) it actually takes the reader
beyond the very basics of assembly, (3) it teaches good programming
practice (even in assembly), and (4) It has been classroom tested.
As much respect as I have for Jeff Duntemann and his "Assembly
Step-By-Step" (about as close as you're going to get to "assembly
for dummies" in the marketplace), a common complaint you get
from people who've read that book is that once they finish, they're
ready to read a book like AoA.
For your typical teenage hacker who wants to impress his buddies
with the fact that he knows assembly language, ASBS is a great
book. You get through it real fast, it won't put you to sleep, etc.,
etc., and you know just enough assembly when you're done to
impress all your friends. I, however, prefer to provide in-depth
information that teaches how to really *program* in assembly.
Including subjects that most hackers never really get into, such
as object-oriented programming in assembly, advanced use
of macros (e.g., to create your own "mini" languages), and
so on.
Sorry if such advanced material doesn't interest you at all.
But it is information that advanced assembly programmers use
and, therefore, needs to be documented somewhere for those
who want to go a little beyond impressing their hacker friends
in the world of assembly language.
>
> IMO Spasm is like having sex now. And HLA is like beeing deprived of it
> right from the start.
Now you're confusing AoA with HLA.
HLA is a tool, not a tutorial. AoA is the book that has all those chapters
you have to read in order to figure things out.
> Maybe HLA was created to be all of it. But compare 20 minutes to get
started
> in Spasm with reading
> 1500 pages of *** *******. You dont need to be a mathematician to write 3D
> renderers (nor english professor to get understood). All you need is will
> and a place to start.
And what were you able to do in 20 minutes with RosAsm?
Click on a demo program, assemble and run it?
How much assembly did you know afterwards?
I'm sorry, but if you want to learn assembly language programming, it's a
bit
of hard work. Clicking on a couple of menu items to compile a canned demo
doesn't teach you a whole lot, nor is it an efficient way to learn.
For example, as long as you've mentioned the 1,500 pages in (the on-line
version of) AoA, exactly where in all those RosAsm demos do you learn
about thunks, activation records, displays, advanced parameter passing
techniques, and so on?
Perhaps in 20 minutes you were able to assemble some little demo
program. Did that make you an assembly programmer? I think not.
Quite frankly, reading those 1,500 pages won't make you an expert
assembly programmer, either (you'll need a little experience, too).
But you'll get much farther along with AoA in the goal of becoming
an expert assembly programmer than you ever will by clicking on the
"demo" programs that come with RosAsm.
I understand why you're afraid of those 1,500 pages, though.
They are a bit overwhelming. That's why the published edition
was abridged down to about 900 pages.
>
> Problem is, how to get rid of that 200.000 lines of HLL code, without
> tearing your heart out.........
???
>
> Beth you want to compete with me in making the best HLA vs Spasm demo ? Of
> course I use Spasm, you use HLA ?
> If you're interested, write me at my email, and we'll agree on terms and
> stuff...
That would be amusing.
Rene has had a long standing invitation to create some program in RosAsm
(SpAsm)
that couldn't be done in HLA. Obviously he has not been able to do this.
Perhaps you would like a shot at the title?
Cheers,
Randy Hyde
> Someday, when Rene gets bored with working on his disassembler, it will
> be interesting to have an IDA-Pro user take a look at Rene's product
and
> evaluate the two. IIRC, Rene claimed that he hasn't even bothered to
look
> at IDA-Pro. That's probably because Rene thinks he always knows the
> right way to do things and nobody else could possibly have anything to
> add to his vision.
>
Yes, i am not concerned with non-free soft.
This does not mean i think it is a bad product.
I ignore it.
Nervetheless, i have never heard that you could,
with any actually existing Programing Tool, but
RosAsm, load a File // Click on Desassemble //
Click on Compile and get a new fresh version of
the thing, ready to re-run, in say, actually 80
of Demos, and 40% of small Applications (under
improvement...), with, in between the complete
restitution of all the PE Components and Source,
ready to be use inside a complete developement
Environement.
Good luch with your stupid propaganda, when having
to face such facts made real by a guy who never
managed to read some "Decompiler Theory", but for
a good laugh time.
Betov.
< http://betov.free.fr/RosAsm.html >
> Indeed; As your assembler is not designed to teach beginners nor - as
> you've repeatedly stated - are you in the slightest bit interested in
> assisting them, then those who use it are clearly NOT beginners and
> already understanding what a macro is and how it expands into code and
> / or data...
>
You are miss-understanding, here.
What i said is that i am not interresting with
beginners, _actually_. I don't want to waste my
time, actually, with beginners, because:
1) I have no need of guys searching for a free
Tool for programming under Windows.
2) RosAsm will remain in heavy developement for
yet two yers, at least. Time is time.
3) RosAsm is not yet ready to compete with HLLs.
Nevertheless, when considering HLA being introduced
as a Tool for teaching Assembly to beginners, all
i can say is that RosAsm would be, evidently, a
_much_ better choice, because of all the many
reasons you perfectely know.
Betov.
> It's very simple where RosAsm is targeted. It is targeted to ReactOS
> users. And someday, when ReactOS becomes real, all those HLL
> programmers out there will immediately switch to RosAsm because
> it will magically be better than a HLL, because it's now running under
> ReactOS. Of course, please don't read the fine print too carefully and
> note that NASM is the official assembler of the ReactOS project :-)
>
There is not the smaller kind of competition
between RosAsm and NASM, and in no case, RosAsm
could be able to beat NASM on the things NASM
is designed for (the reverse being also, true,
evidently).
Betov.
> Whereas Rene thinks that the "turning point" for RosAsm is going to be
> the introduction of a disassembler into his system
:)) :)) :))
I well understand that the implementation of the RosAsm
Disassembler, turning RosAsm a Tool without any competitor
in that area, irritates you a lot, Master Pdf.
But, sorry, this is _not_, at all, "the "turning point" for
RosAsm". This turning point will be the day when RosAsm will:
* Include a Basic Pre-Parser.
* Include a Symbolic Profiler.
* Include an OOA Pre-Parser.
* Include the Wizards for Visual Applications building.
* Include several Applications Builders.
... and so on, and so on,... up to the point it could
really offer a valid alternative to the HLLs.
As opposed to you, i am not a man who sells "prototypes"
and bases all of his personal and so ridicoulous "success"
on illusions and vile propaganda.
Betov.
< http://betov.free.fr/RosAsm.html >
First I like to say that I am sometimes am this little humours mode and
sometimes overdo my style to get my points out there.....I am kidding just a
little inbetween the facts......So never take anything I say TOO serious.
And while I sometimes are a little cranky...I do not mean to actually attack
someone...rather stir up a little inoscent action...(But I said this before,
so it should come as no surprice).
I am also comming to programming from the heart...and not so much from the
head. The head try to follow where the heart is leading....
For those who dont know me. I started programming at age 13-14. Back then at
an MZ-700 sharp. Not because it was first choice...but on that machine, I
made an assembler (They wore ALOT less complicated than todays assemblers.
To *understate* that fact). Since then I was into C64, C128, Amiga1000,
x286, x386sx, x486dx, dx2, dx4, P133, P450, AMD1500+, AMDDuron1300,AMD1800+.
Maybe I left out a few. When Beth talk about C64 programming my eyes gets
big and black...BUT I found out some time ago that I didnt want to stay in
the past. I want to renew myself. As I figure, the day I cant change myself,
cant rearrange everthing, that day I am dead. Then it doesnt matter what
else I be doing. For approx. 10 years I have been programming in Pascal.
From the a dos version I dont recall the version, into TPW, BPW and then to
Delphi1.0 and D3, and now wth a GPLed D7 version. I dont know exactly how
long. Theese year went by very quickly its seems, and things, other things,
like jobs, girlfriends (tragic pathetic stories) and other kinds of events
went by in between, so 10 years maybe a little less than actuall or a little
more. Its seems a lot. I took the path of OOP, I was in from the start. It
was a totally new consept. It had a very "magic" ring to it. It seemed so
intrigueing. With objects.."inheriting" properties etc. Descendants and
Ancestors...It had frankly an AI ring to it. And AI, is something that has
allways intrigued me. But I was too much of a control freak. I thought I
needed to know ALL that was before me, so I could add to it. That was how
things wore back in the dos days, where a simple application like NC, could
make you rich and famous. Sometimes during the last 5 years it dawned on me,
that I would NEVER be able to consume ALL the computer or programming topics
that wore around, the information just came out to fast and in to many
flavors. By then I had "expert" knowledge in one field only. OOP and
frankly, windows desktop programming. Creating one "me too" product after
the other, much like an old "Evergreen" singer. I was spreading myself
simultaniously on OOP, basm, Desktop, NOT Database programming, but game
programming, filemanagement programming, GUI programming, optimization
technics, both for asm but also for my language in general Reading about 3D
topics and algoritms, trying to catch up, trying to sometime get to the
"cutting edge". Thats why I am the Wannabee. I jumped on every topic I saw,
trying to take it all in. I was splattered around the OS. Working on from
10-20 simultanious projects, without any direction whatsoever. I was just
programming in all directions. Without a single focus. A goal. No Spesifics
whatsoever. I loved the time in front of my PC. This silent time, sound of
the keyboard, hand tapping along....Hey man...its allmost meditative and
gives me sometimes a very good feeling about beeing alive, which I
think/hope is something that most programmers have in common.
I learn (hopefully) by my mistakes. I need focus. I need to get spesific. I
need to have a purpose. Not that I need it in particular, but I just can no
longer justify, neither to myself nor to other people just sitting here
having brainstorms and not excel in any area. I can no longer afford to be
second. I have to find my own space withing the programming area...
Looking back, allthough its been some fun and exhilirating working
periods...I wouldnt say any experience is a total waste, but its seems to
me, that I was more creative back at my MZ-700, where I actually needed to
be inventive just to have memory to do what I wanted. Back then I created
about the ONLY thing I can truly say was MY original creation, code that
people "wanted" to know. Code I knew was mine, that *I* had conceived of.
Since then, to repeat, all I have done is to catch up. And what I now see,
is that this catching up is a bloody waste of time. And the reason for this
"me too", comes from following a HLL tool. Its beeing dragged into other
peoples energy. Like people crave for the attention of some beautiful
artist, instead of devoting time to treasure themselfes. A bloody waste of
time. IMHO, every programmer should really start out with nothing readymade.
As little as possible. For creating original work, not wasting time on other
peoples...often flawed..design dessisions, better spend that fresh energy at
a blank paper. you may descover something new. What use is there in learing
the old ? the fun is in discovering the new. With a tool like Betovs Spasm,
there is every chance you will get into problems that force you to think ! I
dont know HLA, so I cant truly give an true opinion about it, but its seems
it is more like a HLL, trying to catch all, than a starting point for new
inventions. Of course, I may be wrong. Maybe this is just me whining about
my own dessisions, and other people will be perfectly able to create
masterpieces in HLA. Probably the latter.....Hey maybe I am even in the
wrong game here ? I be hard pressed to admit tomyself that I have been
wasting 20 years of my life on a hobby...just for nothing. Thats was blowing
some steam..now I answer you post Mr. Randall. I omit the sections I see no
need to comment.
> There are no *user supplied* demos on Webster. Big difference.
> There are user-written examples in HLA out there, just not on Webster.
> And the "Examples" download for HLA contains over 100 various
> sample programs written in HLA; not including all those that are part
> of WPA, the Iczelion translations, and various other source code (e.g.,
> the HLA Standard Library source files); nor does that include all
> the example programs from "The Art of Assembly."
You take the defensive stance here. What else is new ?
>
> No question that having some "user-written" demos might prove to
> *somebody* out there that real assembly programs can be written
> with HLA by someone other than myself :-). But I think you overstate
> the fact when you say "there is no demos".
> >
Maybe. This is still a defensive stance, as oposed to an offensive stance.
As in : Hmm. Neverthought about that. Clever Betov. Maybe Betov actually
have something worthwhile in his hands after all.
> Well, if instant gratification is what you're after, I'm afraid I'm not
> going to supply it.
No programmers tools, can supply "instant gratification". Gratification
comes after much hard work, but this is true for HLL as well. Maybe even
*as* hard work as asm sometimes. But pure asm will IMO offer much greater
gratifications, and the chances you end up with a "me too" product is much
less likely, if you invented all you code yourself. The computer industry
cant afford inventing the wheel. But full time programmers like us would be
better off. But considering that programming is an end, to some of us, in
itself, instant gratification is possible...in a sense...cause when you
program you have fun.
> I'm more into training people for the long haul rather than teaching them
> how to
> quickly assemble and run some quick little demo in hopes of impressing
their
> girlfriends with their amazing "assembly expertise". I *could* have
written
> a
> "professional style" text like "assembly language for dummies" if I wanted
> to
> teach it the way you're suggesting.
>
You're missing the point. You cant TRAIN people for the long haul. Or can
you ? You learn by doing in programming this is as true a anywhere else.
While I was working for "Manpower" I sometimes took jobs with a
workdescription way above my head/CV. After a couple of months I could
perform the job to full satisfaction for the employer. With NO teoretical
training in the field. No that education is power over the people. You
should teach people how to learn, not WHAT to learn. you seem to be doing
the latter.
> But check out what people have to say about AoA. It's well-respected
> because (1) it's *very* comprehensive, (2) it actually takes the reader
> beyond the very basics of assembly, (3) it teaches good programming
> practice (even in assembly), and (4) It has been classroom tested.
>
IMO Its is well respected because it talks above people head. The average IQ
is 80 (read in a norwegian newspaper, and 100-110 in the rest of the
world.....lol....facts for you...read that last one on a web page). You are
more likely way above average IQ ? So it makes sense that the work you do
will get some respect. After all it is not easy to teach oneself all those
topics, that you deliver with such ease. You said youself that that person
giving the review of you book had not even read it !! I would never allow a
noninformed critic to give me reviews. IMO Its not ethical. He probably does
you no good by lifting you up, when it is later revealed that he himself is
a "joke" = in NOT understanding what HLA is all about. I cant say I fully
understand or know HLA either. But I know what a byte stream is and that it
needs a "format" to be meaningful. And I know how to load a register, fill,
scan a memory area in asm. And the HLA code I have seen is another HLL. Basm
syntax IS x86 compatible......
> As much respect as I have for Jeff Duntemann and his "Assembly
> Step-By-Step" (about as close as you're going to get to "assembly
> for dummies" in the marketplace), a common complaint you get
> from people who've read that book is that once they finish, they're
> ready to read a book like AoA.
>
I agree that asm for dummies is a litle counterproductive. Thats IS also my
point. But now you go on discouraging you devotees again. Asm is NOT that
hard. Try out Spasm. It is NOT that hard. There are MUCH MORE to learn about
details in a HLL. *If* we are talking about the language...and not the art
of programming. Programming a doubly linked list differ only in
implementation between HLL and ASM. And for people who have 10 years or more
in ASM, they will "allways" make much better, clearer implementation, in
less time than a person comming from a HLL. Asm force you to look at what
you are doing. HLL is for the ignorant person. I am increasingly feed up
with beeing ignorant, to Spasm, I must must throw away my ignorance. HLA
code sometimes does seem to be more of a C/Pascal/asm redo-soup, than
anything else.
> For your typical teenage hacker who wants to impress his buddies
> with the fact that he knows assembly language, ASBS is a great
> book. You get through it real fast, it won't put you to sleep, etc.,
> etc., and you know just enough assembly when you're done to
> impress all your friends. I, however, prefer to provide in-depth
> information that teaches how to really *program* in assembly.
> Including subjects that most hackers never really get into, such
> as object-oriented programming in assembly, advanced use
> of macros (e.g., to create your own "mini" languages), and
> so on.
But OOP in assembly? Is it needed? I know OOP, in and out. I have reworked
the Delphi OOP library to suit my needs in pascal. If I implement it
"exactly" like that in Spasm, then my Spasm code will eventually work out to
be just a translation of Borlands OOP to ASM, and wouldnt that really defeat
the whole purpose of the transformation ? My code would then after a while
get about the same characterristics as my other code, slow, not to the
point, general code, that runs like a the counter on Webster...it runs like
hell but accomplishing less ;-)
>
> Sorry if such advanced material doesn't interest you at all.
> But it is information that advanced assembly programmers use
> and, therefore, needs to be documented somewhere for those
> who want to go a little beyond impressing their hacker friends
> in the world of assembly language.
Yes maybe you are right. To some degree all people have valid points. Maybe
even me. But I see much more reality checking going on in Betovs head than
in yours. No offence, but Betov seems far more experienced in programming
than you do. Read The Sage critics below. It have some valid points. I would
guess that a lot of programmers in here, can see that your tests, and tone,
is very childish, and that Betov critics of you, if blunt and not exactly
respectful (in the ordinary sense) are filled with valid points as well.
That parable you gave back there with comparing Jesus to Betov...need I say
more....It became imortal from the day you posted it.
> Now you're confusing AoA with HLA.
Isnt that what we are supposed to do ?
> HLA is a tool, not a tutorial. AoA is the book that has all those chapters
> you have to read in order to figure things out.
>
I thought you said somewhere back there that HLA was created to *teach*
people assembly ?
>
> And what were you able to do in 20 minutes with RosAsm?
Get into the front seat. Get ready to learn. After 2 hours I was convinced
that 32 bit asm in windows, with my previous knowledge about the win32 api,
would be much less painful than I imagined. And more fun.
> Click on a demo program, assemble and run it?
Thats how I started learing myself programming in the first place, by
tinkering with a demo and add to it,
testing things, see results, thinking about what happend, try out something
else, run see what happens. etc.
> How much assembly did you know afterwards?
Enough to get me started. Thats all that is needed. The rest comes from
within, from a willingness to experiment and to try again another day.
> I'm sorry, but if you want to learn assembly language programming, it's a
> bit
> of hard work. Clicking on a couple of menu items to compile a canned demo
> doesn't teach you a whole lot, nor is it an efficient way to learn.
??? It might be for those of us who are born without photographic memory.
You have to start somewhere. Its how people learn. All our life we learn
best by doing. Noone gives you a PDF to teach you to bycycle or to fall in
love. At the point where the bycycle starts supporting you...and the show
get rolling...it a beautiful moment...you did it mostly yourself. The final
jump...when you gave up and just trusted yourself ;-).
> For example, as long as you've mentioned the 1,500 pages in (the on-line
> version of) AoA, exactly where in all those RosAsm demos do you learn
> about thunks, activation records, displays, advanced parameter passing
> techniques, and so on?
>
I didnt know I needed those. When (IF) I need them I read about them.
Sometimes I find I knew about them before...but I never took the time to
give it a fancy name. You sound more like Betov says you are with each post
you make..
> Perhaps in 20 minutes you were able to assemble some little demo
> program. Did that make you an assembly programmer? I think not.
No. *Years* of progamming in assembly might get you there. Which has been
one of my main points from the beginning.
> Quite frankly, reading those 1,500 pages won't make you an expert
> assembly programmer, either (you'll need a little experience, too).
I am glad you noticed.
> But you'll get much farther along with AoA in the goal of becoming
> an expert assembly programmer than you ever will by clicking on the
> "demo" programs that come with RosAsm.
I dont need to become an expert asm programmer. That may be a by product of
my work in assembler. Of my work. Of the nice hours I spend in front of
here, reading, programming, testing. Trying again, experimenting.
>
> I understand why you're afraid of those 1,500 pages, though.
> They are a bit overwhelming. That's why the published edition
> was abridged down to about 900 pages.
For one willing to put in the effort. It all there in
24547004.pdf
24547104.pdf
and
24547204.pdf
But I agree that a book is sometimes nice to read, to know what other
programmers are thinking and doing, and get some input...no question of
that. No mans a complete irland...allthough I may be close to one :-) LOL
>
> >
> > Problem is, how to get rid of that 200.000 lines of HLL code, without
> > tearing your heart out.........
>
> ???
I was hinting at my current work. All resuable OOP code. But it runs like
shit. It accomplished many things...but its not a lot of fun watching it and
knowing I didnt give it my best shot. Maybe this is snobbish of me, maybe
thats my real problem. Maybe I am more like you in a certain sense. I know I
am far from perfect...I realize that to get to where i want to be, I
probably need to delete this code. So that Im FORCED to start clean. But I
havent been able to yet....
> That would be amusing.
No. I consider it will be a very hard work. At least for me. But sure it
would be fun, if thats what you mean. But I detect the old proffesoral
looking down your nose - kind of a tone - when you say "amusing".
> Rene has had a long standing invitation to create some program in RosAsm
> (SpAsm)
> that couldn't be done in HLA. Obviously he has not been able to do this.
Yes obviously. Hey he created Spasm with it.....maybe thats proof it can be
done. But of course...it would be very sad if HLA couldnt at least mimic a
real application. So I think it was a strange request you gave him ;-)
> Perhaps you would like a shot at the title?
What title was that again ? I missed something again. What was it ?
> Cheers,
> Randy Hyde
>
>
Indeed they do...
> At least it did until someone invented the dictionary and proclaimed
> their version of spelling the correct one. The appeal to "correct"
> spelling is simply an appeal to authority.
Not an appeal _to_ authority...but an appeal _for_ authority...
> Just as you can have colour blindness some people have word
> blindness. They can read and write ok it's just that they cannot
> tell if the spelling is correct or not. It doesn't make them dumb.
Oh, sorry...you've got the wrong end of the stick completely here...in
absolutely no way, shape or form was there meant to be any suggestion
whatsoever that someone is "dumb"...you misunderstand completely...
One of my classmates in school was actually dyslexic...though, for a
while, it was not diagnosed...many people simply presumed she was
stupid...even _teachers_ would - which I found deeply
offensive...especially to do to young children, that it was lucky I
was already my "independent" self at the time - actually say things
like "what is an intelligent girl like you doing hanging around with
her? She's really stupid...she'll drag you down to her
stupidity"...people would bully her because she spelt something wrong
in a lesson on the blackboard or whatever...
I simply didn't care one way or the other whether it was "stupidity"
or not...she was a _good friend_ and that's all that mattered to
me...but, unlike all those who just presumed "dumb" and then looked no
further, I could tell that it wasn't as clear cut as "stupid" like
everyone was saying...this was particularly bad for her - which made
me want to be even more bold in my refusal to listen to people telling
me to leave her be - because even her _parents_ has, apparently, just
assumed it was "stupidity" too...they were also older than most
parents - one of the many nasty jokes that the bullies would say was
that she was an "accident" and that it was because her parents were
older that the stupidity was because of that, like it was a genetic
mistake - and tended to simply say "oh, we've got a stupid kid" and
then ignored her...not nastily, really, but a tone of "not good
enough" to it that really did upset and disturb her, as you can
imagine...
But I stuck to my guns on this...it's a completely preposterous idea -
as was suggested by some teachers - that I should "keep away" because
I'd get infected by "being dumb"...if anyone was being "dumb" then it
was clearly the teachers...she was, unlike others, not at all
"sniping" or "bitchy" or anything else...regardless of "IQ" (useless
nonsensical measure, anyway), she was a _damn good person_...and that
was the only thing that mattered to me...
Anyway, eventually - and though I like to think sometimes that it was
because of my refusal "drawing attention" to their "presumptions" but
it probably wasn't and just a case of a "regular check-up" picking it
up - they discovered that she was dyslexic...there was a _reason_ for
not being able to read or write properly...also, she turned up wearing
glasses too, suggesting there was also a simple eyesight problem as
well...anyway, after it was diagnosed, people actually _attempted_ to
help...they knew that there was a problem, what type of problem it was
and that it had NOTHING to do with intelligence whatsoever...once
people actually gave her a chance, she did much better at everything
in school...never up to the standards that she probably should have
been...but, basically, she'd been _neglected_ by people - told to sit
in a corner and do something else because the lesson was "too
complicated so draw pictures instead" and that sort of thing - for so
long that, simply, _THEIR_ ignorance, _THEIR_ refusal to see if there
was an actual physical problem, _THEIR_ prejudice to simply alienate
someone who appeared to be "dumb", etc. had caused what might be more
or less _permanent_ damage to this girl's life...you can't have a
childhood again and, at the "peak" learning period, she was
neglected...plus, though things are much better because the dyslexia
is now known, it didn't vanish and it still can cause problems...but
they could now be worked around...
Even if she had _actually_ been "dumb" as suggested, the treatment was
still not in any way justified...I still wouldn't have cared (well,
for a while, I wasn't sure if they were right or wrong about that...I
suspected wrong because though she could say some "dumb" things at
times, other (most) times she was totally insightful and
coherent)...people are people and she was great fun and a great
person...a quiet one...but then that was almost certainly from being
alienated off by practically everyone...you know, even a baby
eventually learns not to bother crying if constantly no-one comes to
them when they do...
Illiteracy may often be treated as "dumb" but, in most cases, it's
nothing of the sort...it's usually traceable to simple _neglect_...the
type of "neglect", in fact, that I'm kind of suggesting that,
nowadays, _everyone_ is getting to a degree...if you're not taught (or
teach yourself) about something, then you cannot possibly know
it...that has NOTHING whatsoever to do with "intelligence"...dyslexia
and poor eyesight, like with my friend, can also interfere with
learning literacy skills...there's also attention deficit disorders
where someone can't concentrate and their learning suffers because of
it...
NOT a single one of these things is actually any reflection on a
person's "intelligence" whatsoever...there is NO coincidence at all in
seeing high literacy levels in rich countries and lower literacy
levels in poorer countries with high levels of poverty..._neglect_ and
a lack of decent education is the usual culprit in most cases...or a
problematic home life, moving from school to school and other
"domestic" issues that end up interfering with someone education (not
really "neglect" there, strictly...but, in practice, leading to much
the same thing because where knowledge should have been taught to
these kids, they are missing out)...
In fact, I would tend to go further than most people in believing that
"dumb" is actually, to an extent, a _myth_...and, yes, I've meant
plenty who others may class "dumb" but when you bother to look into
things, there's almost always "another reason" which actually accounts
for it...even if that's plain old "I never paid attention in class but
preferred to play the fool" (not an actual "illness" or "problem" as
such but still a case of missing out on important education at the
most important times)...and I also have completely sympathy for even
"insane"...because either it's coming from a _physical_ problem or
someone has been mistreated and pissed about so much by others that
they were _driven_ that way...I do not and will never discriminate on
this...and, after doing work in neural networks and AI, this may not
actually qualify me as a "brain surgeon" or anything, but they do very
roughly try to copy the functioning of the human brain (but, unlike an
actual human brain, it's quite possible to "get inside it" and "look
around" with a computer neural network :)...I never did believe such
things but after that work and the insights it has given me, I
_cannot_ believe it...it is simply a _myth_...people don't know how to
deal with supposedly "stupid" or "insane" people...so, they shut them
up or shut them out...reject them, alienate them...because, of course,
certainly with "insane", such people _can_ end up causing problems and
being a "burden" on others...hence, there's a temptation to "reject"
and "alienate" simply on the grounds that people _fear_ "getting
lumbered" with someone they can't understand because, yes, they aren't
funcitoning mentally as they do...
Essentially, if we were to take two healthy 8 year old brains from
active kids and were somehow able to examine them, then _factually_
they would contain _equal amounts of information_ (give or take quite
negliable difference)...the _quantity_ would be no different...not in
the slightest...another way to see this is to consider _where_ the
information in their brains comes from...it comes from the senses and
those are basically in _constant_ operation (even when you are asleep
;)...even more interestingly, other than minor "fluctations" here and
there, these senses actually work at somewhat "fixed rates"...20Hz to
20KHz, roughly, for the human hearing range (decreases with
age)...about 10 "frames per second" on eyesight (but film has to
double this towards 20Hz - or, for film, 24Hz and TV - at least, PAL -
tends to be 25Hz - for the "illusion" of "smooth motion"...this is
because eyesight isn't "discrete" at all...well, wave your hand up and
down quickly in front of your face and watch all those other "ghost"
motion-blurred hands too...blah-blah-blah...these are pretty much
"uniform" rates and measurements for _all_ human beings...it's a
_physical_ thing, you see...comes in the human genes we all carry
:)...
Hence, if these two "subjects" are exactly the same age then, more or
less, we've had equal amounts of sensory input...the brain really is
constantly processing everything (it's actually impossible - if you've
ever tried it - to "shut up" your thoughts inside your mind...you can
"distract" them - focus them on something else - like watching a
movie...but all these things are, basically, _permanently_ "on" for
the entireity of your life...even when you sleep, the stuff is _still_
being gathered - that's why a loud noise or someone shaking you wakes
you back up again - it's just that the conscious mind is "put on
hold"...although, of course, no-one really actually knows the exact
purpose of sleep but, well, everyone - even animals - need it...what
actually goes on mentally, though, is a complete mystery, more or
less, because we don't even really know all that much about how the
brain works itself...much less "specialise" in one or two activities
it gets up to...no "point of reference" to even really properly begin
understanding sleep :)...
The _quantity_ is effectively _identical_...logic and plain facts
confirm this...what is _different_...that could make someone "dumb" or
"a genius" is the _quality_ of that information...
Well, no, let's call it by a more appropriate name...what comes in
through the senses - though it is "pre-processed" a little by our
senses themselves - is _data_, not information...the brain _makes_ it
"information" by applying other memories and logic and reasoning to
what's coming in to attempt to comprehend it...we've got equal amounts
of data...but - and here's where the "crunch" comes - that doesn't
necessarily mean equal amounts of _information_...
So - though, unlike most, I don't totally condemn TV because I quite
like it and it _has_ often taught me things - the 8 year old who sits
"vegetating" in front of the TV, stuffing pizza into their mouth on
the couch...the child who's sort of "pushed to one side" by the
parents who have "better things to do" and know that the kid will be
"safe" just sitting there watching TV (note: you can't either
immediately condemn such parents, either...perhaps there's simply no
choice in the matter...that is, it's a lone mother - through no fault
of her own, the father died or ran off or whatever - who lives in a
poor neighbourhood and has to do multiple jobs to keep out of
poverty...and, well, it's one of those "damned if you do, damned if
you don't" situations...the kid might have to be "neglected" at times
because there's work to be done...but that work can't be "neglected"
either or the kid is _really_ in for trouble when there's no food on
the table...remembering that _good nutrition_ is also an important
factor because growing brains actually consume _loads_ more food than
practically anything else...due to human intelligence, humans need
even more than most animals do when it comes to specifically
supporting the functioning - and, more importantly, development - of
the brain)...
Another kid has a different "quality of life" where the mother and
father take them off to visiting to see places...and if they ask "why
is the sky blue?" then their parents actually try to answer the
questions (and, by this, there's also a "chain reaction" that's almost
"pre-written"...that is, if the parents don't know the answers, then
they can't educate their child when s/he gets all "curious" about how
the world works :)...the kid gets given a pad of paper - rather than a
TV set - and they start drawing picture and being creative with
this...possibly setting a trend that, later on, this kid will, indeed,
go into "creative" fields...they are getting an _experience_ that,
yes, _doing things_ like drawing is actually _enjoyable_...the kid
with the TV gets a slightly different experience that _enjoyment_ gets
beamed into their TV sets...handing them the pad of paper, they might
think "boooring!" and not really know what to do with it...
Then there's "influences"...and, despite the thing of always "blaming"
the parents, these come from _everywhere_ and _everyone_ (due to
"close proximity", parents can end up being the biggest influences but
not everything always comes from them in "nuture" terms :)...because,
on the other hand, the kid with the paper might become bored...stuck
for ideas...eventually tires of it and puts it down...and, perhaps,
the kid watching TV turns onto a programme with Rolf Harris talking
about art and painting pictures - doing all his usual "funny noises"
and stuff which the kid finds "great fun" (heck, I still think Rolf's
great!! I Love that Aussie Aboriginal-inspired "Sun Arise" song he
did...although, I'm beginning to digress so I'll get back onto the
point ;) - and, in fact, the reverse of what we were originally
expecting happens...the TV kid gets excited by Rolf Harris - an
excellent influence on the kids with his "extra leg", of course ;) -
and then goes about doing all the many "projects" Rolf suggested on
his show and watches it again next week to get even more ideas...the
kid who had the paper got "writer's block" with their ideas and then
just gave up, going off to play computer games (again, though people
Love to jump to conclusions, we can't instantly condemn "computer
games"...after all, especially in a group like this, how many here
might have been specifically _inspired_ to their current computing
careers in part - if not in whole - by perhaps a computer game or two?
Typing in computer game listings was where I started, for sure...and
still - probably always - carry a "soft spot" for the art that I can't
consider the very thing that inspired me to become a programmer in the
first place to be "brain-warping" or "turns you into a psycho" or
"stupid and kid's stuff" ;)...
Are we beginning to get the basic pattern here? We're talking
_CHAOS_...butterfly wings and tornadoes...and there's not much you can
do about it...the best, of course, is to ensure that no child has any
"wants" and gets a good education and, well, try to ensure that things
are "as they should be" as far as possible...though, as we all know,
this very often isn't the case...plus, it's NOT clear-cut in that many
geniuses and rich businesspeople and stuff are actually where they
are, _exactly because_ they started off in not the best circumstances
which basically turned them into a "fighter" to go chase after their
dreams...I'm reminded of George Micheal's "Star People" where,
naughtily breaking "behind the scenes" into public view, he questions
if, in fact, people become stars _because_ they were neglected or
ignored or downtrodden...you know, though a cliche, that the quest for
fame is a substitute for Love that wasn't given (so, like, _go get it_
off other people by being a famous actor that everyone Adores watching
and has a big fan club and stuff ;)...the quest for money perhaps
motivated by something as simple as a brother stealing a Christmas
present when really young, leaving a sense of "loss" and not a real
sense of what "possession" actually is...so that, as they grow older,
they might become slightly obsessed with "possessions"...yes, very
"Freudian" - minus the sexual stuff about mothers because I'm tempted
to think that was _Freud's_ personal problem and he was "projecting"
and "transferring" ;) - but there's some degree of substance to these
kinds of things...
Those who are "satisfied" with things - which, of course, is basically
_NO-ONE_ at all..but let's consider the "degrees and measures" of
these things - just don't have any motivation or reason to rush off to
Hollywood and try to become a star or "form a band" with friends so
that they can create some "concept album" idea they've got or
whatever...that's, actually, the underlying ironic joke of George
Micheal's "Star People" song, in fact...that the people who've got
things _least_ sorted in their lives end up becoming "role
models"...because such people often go on to do "great things" in some
attempt to "feel satisfied" that, of course, no-one ever perfectly
fulfills...but you can get a decent way along that road that it isn't
by any means "fool's gold" to go chasing it...not at all...I
whole-heartedly approve of such things...yup, those "stars" probably
are _twisted_...but then, I don't have a problem with this, as I said
earlier, and that only tends to make people all the more interested to
be around...another great irony for you: many people "conform"
thinking that this is what people want...actually, 9 times out of 10,
it's the complete reverse...people Love watching the "nutter" comedian
who's really weird doing his stage act or whatever...you know, it's
the "characters" who people flock around in school...the joker or the
jock or the bully or the geek (who depends on the other person's
mentality..."bullies" only go to "geeks" to bully them...but "fellow
geeks" group together and so on and so forth :)...
It's all just one big _CHAOTIC_ melting pot...you can't predict
it...you can't control it (you can _try_, of course...but there's no
guarantees it'll work out as expected...you know, you send your kid to
"ballet lessons" with dreams of them doing really well at that...but,
actually, they hate it and totally reject it once they are
older...oops! Nice try but - though, of course, there wasn't any real
way of knowing beforehand - ended up a waste of time...on the other
hand, they _might_ Love it and end up becoming a Prima
Ballerina...that's the problem...you can't predict it so though you
can "influence" things, you still can't "control" it because you can't
tell where a certain action might eventually end up :)...
And, due to what information is, you have to _apply_ it during your
life...you learn how the VCR works and then actually try to _use_
it...and this is where "all information was born equal...but some
_more equal than others_", so to speak...it's why these IQ tests are
often simply full of crap...you can ask someone about trigonometry and
they know absolutely nothing...well, they weren't paying attention in
class when "Pythagoras" was mentioned...and what did stick in their
minds was soon forgotten because they didn't bother with the homework
(actually designed specifically to help "re-inforce" the day's
learning :) and they were never really interested in the first place
to ever be bothered to think about "Pythagoras and his magic
triangles" ever again...on the other hand, ask them "who plays Kat
Slater on EastEnders?" (pub quiz type question ;) and they _know_,
where the maths genius doesn't because they never watched TV...I know
this well because a local pub I used to go to had a regular "pub quiz"
and I went there once or twice with friends but soon gave up because
the questions were all "who did this in the '60s?" or "What was this
thing during the war?"...and, like, how on Earth do I know? I wasn't
even born..._but_ when the science or TV (recent) or music (recent)
questions turned up, I was the "team expert" there...well, usually...
This is an opinion that perhaps I'm almost unique in having but I
stand by it because my "choatic experiences" have conspired to _tell
me_, so to speak, that it's the case..."dumb" is a _myth_...there is
no such thing...ooh, that's pretty "radical" and "contravertial", eh?
But I'm quite serious...
Some people, of course, _do_ have mental problems caused by physical
things like chemical imbalance...but, well, that's an illness...a
disability...you know, you don't "blame" someone for being born deaf
or blind...these things just do happen because we don't live in a
perfect universe...there's no "fault" attached, really...and then
there are people with knowledge of things that, well, is slightly
"useless" in the more general context...you know, someone who spent
all their time with sport to the detriment of learning about maths or
science or something...well, ask people like this: "who won the FA cup
in 1942?" and they tell you straight away...they also tell you who
came second and third...they can tell you which players were in the
teams...about some "event" or "scandal" that happened around the
time...basically, when it comes to football, they are a total
_genius_...the sheer volume of information is NOT something that could
ever be insulted...just, well, if you want to get a job then other
than a sport commentator or a footballer or something like that, these
particular skills aren't too useful in an office or factory production
line or whatever...
In a sense, you've misunderstood me and got things slightly backwards
from what was meant..._exactly_, some kids are being _let down_ by
rather pathetic English lessons that don't cover the basics, presuming
that they "just know it"...well, that's a dangerous presumption...I'm
actually saying: "let's get back to first principles and make that
_every_ kid gets the correct instruction...no excuses because we're
NOT going to let them down, right?"...in the words of Tony Blair when
asked what his priorities would be: "Education, education, education!"
;)
Any form of illiteracy is almost always NO reflection on that person
at all...generally - though, granted, there are exceptions where a
person _let themselves down_ by buggering about in lessons and didn't
learn when they should (it's not always "them" to blame for
everything...but then again, sometimes it really _IS_ "them" ;) - the
problem was inadequate education, neglect, bad teaching, not putting
an important topic onto the cirriculum (so, for example, a teacher
dives into "poetry" lessons and then talks on and on about "using
descriptive adjectives and unusual verbs"...oh, oops, they _forgot_ to
explain what "adjectives" and "verbs" were first..._some_ of the kids
already knew, _some_ didn't...and then, when one kid produces a
perfect poem and another doesn't - totally NOT doing what the teacher
asked because they _couldn't understand_ the directions given to
them - the kid is called "dumb"...no, no, no...it's a simple
fact...until you _learn_ something, you can't possibly know it...the
other kids who "did well" were simply _lucky_ that they already knew
something - that really should have been _taught_ by the teacher to
make 100% sure that _every_ kid in the class understood - that allowed
them to understand and do what they were told...there's another place
where "dumb" can be considered to appear but, in fact, it was nothing
of the sort...the "dumb" thing - if anything - was "presuming" every
kid in the class knew what certain terms meant (some did, some
didn't...all that "chaos" stuff once more...though not actually taught
in class, they might have seen a kid's TV programme where "nouns" and
"verbs" and "adjectives" were described...so they could learn it there
and the kids who didn't see that programme miss out...again, irony
there, in that TV is usually _blamed_ for "dumb" but that's just
"cheap scapegoating"...it can be a problem, yes, but it can equally be
a solution...it can't be simply "labelled" one way or the other
because it can serve _both_ purposes...to "educate" as well as to
"vegetate"...and, again, it's usually "chaos" that rules what actually
ends up to be the case :)...
You completely misunderstand, I think, because there was not an ounce
of "blame" for the declining standard of English (which, by the way,
is a simple statistical _fact_ because they do regular surveys and
things to "monitor" it and have done for decades...just to check that
there's no problems developing)...I'm not saying you or anyone else is
in any way "dumb"...for Pete's sake, in fact, _I'm_ in my 20s..._I'm_
not that much "out of school" myself..._I've_ gone through the process
I'm now accusing...yes, _I_ am effected by exactly the same
problem...I can't throw stones here because some of them would have to
land on _my_ head too...
In fact, what I'm talking about is that _generations_ have been _let
down_...no fault of their own...in fact, one of the points I was
trying to make is that, unfortunately, there can be a "chain reaction"
to these things...hence, when one generation is not totally taught the
things they were supposed to be, they gone to be teachers themselves
and the problem "propogates"...the decline in educational standards
when it comes to English - which you must note is true in America
_and_ Britain _and_ Austrailia...all the English-speaking
countries...which suggests there was a wide _cultural_ issue that
started all this...not anything specific to a person or generation or
whatever...I suggest perhaps '60s thinking because I could see a
possible connection there...BUT, then again, it might go further
back...perhaps the "flower power" children were not the originators
but the _first set of victims_...I don't know...no-one does,
really...you can see the figures drop and make "guesses" as to what
might be to blame...but there's no way to specifically _trace_ it back
to any origin...and even attempting to do so would probably be a
massive volume of research work with perhaps no concrete conclusions
at the end of it all...
But, whatever the origin, let's forget that and consider the
_solution_...which is, I believe, a case of simply being more
_rigourous_ and _systematic_ - trying to cover all bases - about
English education...because, in fact, some of the questions asked and
reported by these surveys _are_ things like asking recent school
leavers: "What is a noun and what's a verb?" to see, basically, had
they been taught this at any time during their education...it's not a
completely terrible figure but it's not good either and the _biggest_
issue, in fact, is more the _sudden decline_...that is, more recent
school leavers are more likely to be getting these questions wrong
than previous generations...
When we're talking about _entire generations_ and that this phenomenon
is happening in _English-speaking countries_ (so, Britain is suffering
just as badly as America and Oz and so forth)...then, clearly, that's
far too widespread to have anything to do with "being thick" or
"dumb"...there's some more sinister culprit...TV, perhaps? TXT msging
wit all t'abbreviations? Cultural influences like, say, emphasis on
"creativity" in the '60s or emphasis on NOT being "creative" in the
'70s? Whatever it is, it's clearly something that has an influence on
_more than one generation_ and doesn't seem to be respecting any
borders but that of language (mind you, I've not looked...is French
and German langauge standards getting better or worse? I simply don't
know...I've never heard those statistics...it might even be a
_world-wide_ problem, not even exclusive to English...but I do know
that there's a _decline_ when it comes to English and, so, that's what
I'm specifically talking about...it's not an implication that only
English might have this problem...I'm simply trying to be "correct" in
only speaking from what I _know_ to be the case and not just
"guessing" it might or might not effect other languages...if it's more
widespread - say, all Western nations - then more culprits turn
up...could it be diet? An overall general "wrong turn" in the way
education has gone post-war? Again, I'm not sure _where_ it's coming
from but it's here...and, well, soonest that's accepted, we can work
on the _solution_ and, Hopefully, bring things back into line that it
just fades away as a distant memory :)...
> I have known autistic people who can spell perfectly yet couldn't
> write a essay.
Autism is an interesting disease, in that it actually tends to help
_support_ what I contend about "dumb" not even existing...it's a
"myth" created so that we can feel "comfortable" about differences
between people...that is, autism is a mental disease that often throws
up what many people simply don't expect at all...much like your
example, an autistic child might seem incapable of one thing -
constantly looking around unable to concentrate for any length of
time - but then can often be literally almost "super-human" in
something else...such as the cases of children that can just glance at
something once and then have perfect photographic memory and are able
to render what they remember from memory with amazing
penmanship...literally drawing things that you'd be impressed if it
were coming from the hand of a highly skilled draftsman...an
absolutely perfect visual memory and brilliant - staggeringly good -
eye to hand co-ordination in being able to draw it...basically, if you
didn't know, you'd be sure that the drawing comes from some 50 year
architect who's been doing this all their life, referring to "plans"
for the building that's in the picture...but, in fact, it comes from a
10 year old who _only_ looked at the building once for a matter of
seconds...and, moreover, they don't "refine" it or erase a line until
they "get it right"...the drawing is just done "as is"...so it is even
actually drawn by the child in a matter of minutes where our skilled
draftsman would take hours to do the same...a ten year old able to
simply "memory dump" something from a perfect photographic memory onto
the page via a pencil...no mistakes, no "refinement"...just, well, as
I say, something akin to a machine doing a "memory dump" to a
file...machine-like accuracy and speed...
This would seem "unintuitive" until you take my perspective that "dumb
doesn't exist"...note, I'm not calling autism "dumbness" here
either...it's not...it's an actual disease...but what I mean is, is
that autism allows us - because autistic people "think differently"
because of their illness - to see something interesting about _human
intelligence_ in general...it's not as black and white as people make
out...it's not any simple "hierarchy" with "dumb people" at the bottom
and "Einstein" sitting on the top...these are simplifications and they
have lead to a nonsense idea: "dumb"...like myths of old where the
"Sun god" was blamed for a tornado so they made "sacrifices" to the
god to "gain favour" that the "Sun god" would not "punish" them again,
we have a similar kind of "mythology" invented here to, again, explain
what is the unexplained to us..."stupid" is a myth to comfort us from
the actual _chaos_ that's out there and that actually rules
this...humans, understandably, _don't_ like the idea of "chaos"...that
things happen out of our control...that you could work hard and still
end up in crap, while someone else breezes through life by simply
being "lucky"...these are "uncomfortable" ideas...they don't "obey
rules" as we'd like...humans generally don't like this...so, bad
weather? Ah, well, "Thor" was unhappy...earthquake? Ah, that's "Loki"
up to his usual naughty pranks and tricks...of course, we now know
about weather patterns and tectonic plates...they've been "explained"
so those Norse gods aren't needed anymore to explain the
unexplained...but it's slightly a mistake to completely believe that
humankind doesn't do this stuff anymore...ghosts? It's a "mass
hysterical mental illusion"...apparent psychic powers that defy
"coincidence"? That's just "cheating" - even if we can't find out how
they did it - by the usual official line...someone went mad and shot
loads of people with a shotgun? Why, that's Marilyn Mansun records or
maybe TV or maybe violent computer games or, well, anything
really...the second something goes wrong, everyone looking for a
"scapegoat"...laws must be changed! Who can I _sue_ for this going
wrong? And, yes, fair play to Annie, me saying "poverty and
mistreatment" doesn't actually have any more weight of evidence than
all the other "usual suspects" either...it just seems "likely" to me
and I'm trying NOT to simply create a "mythical god" to blame the bad
weather on...Annie would probably think that this is _exactly_ what
I'm doing (as I'd turn around and accuse her of the same ;) but it's
actually trying to _avoid_ that and look for things that seem to have
_actual connections_ rather than "Marilyn Mansun looks a bit evil,
must be his fault" or "violent computer games should be banned!", even
though there's no evidence or even sugestion that this person even
owned a computer or even played a single computer game, violent or not
(anyway, what's "violent" about "Puzzle Bobble"? "Tetris"? Etc.,
etc....will someone also become "violent and insane" because of
guiding cute green dinosaurs to fire coloured spheres into a pattern
of "bobbles", trying to create sequences of colour? If it's TV to
blame, then what particularly about Blue Peter showing kids how to use
old toilet rolls, sticky tape and poster paints to make a pen holder
for a Mother's day present, turns them into savage bloodthirsty
killers? ;)...
Things don't work that way...I know that I'll simply never be able to
convince some people of this and, no, I can't particularly explain in
minute detail how things really do work...but, for sure, this can't be
it...it doesn't fit the known facts...
> How many English professors write best selling
> novels? How many programming professors write ground breaking
> software?
Oh, totally; But then they stand a far, far better chance of doing
this than someone who's _illiterate_...indeed, just being "academic"
and having the "qualifications" doesn't mean you'll become Shakespeare
overnight...not at all...there's _talent_ and _intuition_ and _feel_,
which are necessary to be that good and they can't be taught...
But, as talented as Beethoven was - born with talent, intution and
"feel" for music - his works fit in perfectly with musical
theory...so, true enough, simply knowing musical theory cannot, alone,
make you "a Beethoven"...but randomly hitting keys on a piano - like
those thousand monkeys at their typewriters - waiting for the
"complete works of Beethoven" to ring out from the piano is NOT the
way to go either...
The "best" are simply born with "something extra"...an _intuition_ for
what's right and wrong and what works...most people are,
unfortunately, not so blessed...that's what makes these people
geniuses and notable and worthy of admiration...they were "that
something extra"...simply reading some textbook on musical theory will
NOT make you a musical genius in and of itself...
But - and I've seen others with this opinion but I've always firmly
disagreed - simply sitting around "waiting for God" to drop "talent"
and "intuition" into your lap? Refusing to learn "theory" because
everything must be "felt"? I completely disagree...a genius is
remarkable for being active in _BOTH_ left and right hemispheres of
the mind...they combine the "science" of their craft to the "art" of
their craft in just the right measures...Shakespeare himself didn't
just whack at a typewriter randomly for a few million years (well,
there were no typewriters...ummm, scribble randomly with a quill, then
;)...yes, there were no "strict rules" for English in his time and he
himself spelt _his own name_ in dozens of different ways...but what
conventions did exist, Shakespeare kept within them...he made
"references" to the "Cantebury Tales" by Chaucer before him...he
introduced the "fool" - also called the "harlequinn" in _Italian_
stage traditions - because this was the stuff of every play in his
time...he was, though people always forget, a _practical_ writer in
the sense that he wrote _plays_ mainly that were _acted out_ on
stage...and, well, yup, he kept to all the "Hollywood cliches" of his
day...of course, most people don't see the "references" to Chaucer
because they haven't read his works (and, also, Shakespeare made other
"references" to other writers of his time and before him...just
Chaucer is himself classed as a great writer that we know his name but
most of the other names aren't well-known anymore ;)...they _forget_
that these are _plays_...they don't recognise that "Shaggy and Scooby
Doo" are the modern day "harlequinns"...the "jokers" who come on to
entertain with comic behaviour - clowns, if you will - between serious
parts in the play...why? Because, in Shakespeare's day, acting was NOT
a respected artform at all...they didn't like you, you had rotten
tomatoes thrown at you...you were boring? Then they'd probably start
talking or walk out or heckle you...and, over the years, the
"jokers" - the "harlequinns" - which we still have today (in modern
traditions, the role has interesting split into two...a "straight man"
included for the "joker" to bounce their jokes off...so, "Shaggy and
Scooby Doo" because the rest of the "Mystery Gang" are very serious
and these two are the "light relief" in between to stop you get too
bored of Velma and Daphne doing those, well, "boring bits" to do with
the "plot"...R2D2 and C3PO in Star Wars, where C3PO is R2D2's
"straight man" (although, with the "camp" way he moves around perhaps
"straight" isn't the most appropriate word there ;)...note, also,
another interesting modern variation...both Scooby and R2D2 don't
really talk properly...hence, to an extent, though they do make some
sounds, they are also "mimes"...the "harlequinn" and the "mime" are
closely related (originally, one and the same..as, in fact, R2D2 and
C3PO would have been just _one_ role in "ye olde dayes" ;)...well,
when "mimes" where their full uniform, it usually _is_ a "harlequinn"
pattern, if you notice...once you know what to look for, the
"harlequinns" in most things you watch are pretty easy to spot...they
are slightly "comedy characters" that provide some "light relief"
between serious bits by doing some simple jokes and, usually,
"slapstick"...by the way, Chandler and Joey are the "comedy duo" in
"Friends"...Ross is merely the "serious juxtaposition"...yes, he's
"Fred" from "Scooby Doo", basically...someone who's "serious" and,
well, slightly on the "I'm far too perfect" side...
They are everywhere and Shakespeare is NO exception either...he has
his "harlequinns" here and there in some of the plays (the very
serious ones are, of course, "drama" and, like some "serious" murder
mystery TV show today, are not "tainted" with any "comedy
characters"...well, sometimes it's just totally inappropriate...it
would sort of ruin things to have Shaggy and Scooby Doo run around
making jokes in the middle of "24" or something more serious like
that...although, that said, the tradition isn't completely lost
because Elisha Cuthbert's role as the daughter who always gets into
trouble in a "sub-plot" is a "serious" version of the "light relief"
idea...her "sub-plot" gives you a break from the main "serious
stuff"...this one is also sexually charged - well, you don't think
they'd pick a beautiful actress like that "by accident" - in that she
provides a "romance" angle usually when some guy turns up from nowhere
for her to fall in Love with...
Oh, once you know the conventions, you can read this stuff like a book
(pardon the pun ;)...there's not just "art" in these things,
really...there's also "science" and "rules" and "convention"...
Do you know who originally came up with the musical scale that the
West uses today? It was Pythagoras...based on the twelfth root of 2,
in fact...utterly mechanical and mathematical, I'm afraid to
report...basically, "harmonies" are where two sound waves "coincide"
in frequency...that is, the A below middle C is 440Hz (at so-called
"concert pitch"), the A above middle C (an octave higher) is
880Hz...exactly double...the E above middle C (if I can recall this
from memory correctly ;) is 660Hz...that's 440 * 1.5 = 660Hz...one and
a half times...and these ratios are constant...going up an octave is
simply doubling the frequency...a "fifth" (oh, I do Hope I'm
remembering correctly...let me check...E, F, F#, G, G#, A...yup,
that's five so it's a "fifth" ;) does this 1.5 kind of thing...the
other ratios are all fitted out to fit nicely...although, in fact,
it's not possible to actually get a "perfect fit" here...it's trying
to fit a logarithmic scale onto a linear set of "notes"...it's a
tricky problem and, in fact, before things were standardised, there
were actually different types of scale...you know when they say things
like "Pachebel's Cannon in D Minor", the reason that they make a fuss
about "D Minor" is that, in the old scale systems, they weren't
actually all equal...in the modern system, shifting all notes up so
many semi-tones actually doesn't sound appreciably different at all,
just, well, higher-pitched is all...but in the older systems, they'd
"bias" to some harmonies which would put other harmonies "out of tune"
by a little and the scale you played in was NOT an insignificant
thing...well, as you probably know, the people who're really into
their classical music and these symphony ochestras are particularly
"fussy" about trying to get it as _exact_ to what Beethoven or Mozart
or whoever actually originally wrote so they _do_ pay attention to the
older systems and tune their instruments accordingly...on the other
hand, the modern rock bands turned up once the "one size fits all"
scale was established and no-one pays attention to that stuff
anymore...the scales were "corrected" so that we have the "minimum
error" possible on all the harmonies...and guess who was the first
person to work out how that should be calculated? Yup, Pythagoras
using completely _mathematical_ means...you multiply the "note number"
(MIDI people will understand roughly what I mean by that...the lowest
key is 0 going up one by one for each note :) by the twelfth root of
two and add the "tuning"...so, for "concert pitch" (established
convention for tuning :), that's the A below middle C being
440Hz...note that prior to special electronic tuners, it's the very
fact that these notes create "harmonies" with nice "ratios" to each
other that allowed tuning instruments (to themselves and to others :)
to be even possible...guitarists here probably know about "relative
tuning" where you play one note on one string and then tune another
string until the "harmony" is exactly right...you can actually be
incredibly precise with this method once you develop a "ear" for
hearing harmonies...well, in fact, most piano tuners basically do
exactly that...they'll have some "tuning forks" which ring at certain
frequencies just to give them a "base" to work off (and also to
"double-check" that they haven't slowly gone "off tuning" as they
work...well, when it's all "relative", minor mistakes can accumulate
into an entirely different note by the other end of the piano ;)...but
it's all done "by ear"...though this isn't quite as "magical" as it
first sounds...I _could_ teach you the basics and after some practice
to get used to it, you could do it too...yeah, not as well as a piano
tuner, of course, it's their _job_ so they have very, very "trained
ears"...it's all in what's called "the beats"...when things are in
harmony, the frequencies coincide nicely (for every 440Hz A note,
there's two 880Hz A notes an octave higher :) but when they don't, you
get a "phasing" effect...that is, it'll be "out" by a certain amount
and you can actually hear, when you learn how to listen for it, the
"beats" where the two aren't matching (for every 440Hz A note, an
out-of-tune 870Hz note is going to "clash" at regular periods and when
it does, it prodces a "beat")...thus, once you get the basics of how
to "hear beats" when tuning, it's a case of tuning until you _can't_
hear these things anymore...
Okay, let's move on to another artform...why not art itself? This is
the most "flexible" of them all but, then again, don't think that
"science" doesn't play any part...if you want to draw perspective,
then there's strict physical rules to how that works (these are the
"rules" you'd program into a 3D engine to teach the computer how to
draw 3D objects :)...light, conveniently, travels in straight
lines...knowing this fact from physics permits an artist to calculate
where light and shadow would fall on an object...or, in reverse, from
looking at light and shadow - knowing where the light is situated -
you can "ray-trace" backwards to work out the shape of the
object...the first most useful for drawing things from imagination but
still making them look completely real by ensuring the light and
shadow would be as it would were the object real...the second more
useful for drawing from reality...light and shadows give us all
"clues" as the shape of objects...a sculpture, say, working from a
photograph can only really get the "depth" from light and shadow
(plus, a bit of "extrapolating"...because, after a while, as you might
imagine, you get accustomed to how these things work and can "fill in
the gaps" here and there...like, say, your model walks away but you
could still add things to the picture based on _fact_ rather than
strict observation...don't worry, the laws of physics are completely
reliable...if the model comes back and you've followed the rules
exactly, then, yup, the light and shadow _will_ be exactly where you
thought they'd be ;)...
Then, there's the science of colour...yup, it's more a _science_ than
art since Johannes Itten (of the Bauhaus, a German art school...who,
by the way, also invented an amazing amount of the "modern look" of
the world...coming up with fonts - which followed "typesetting rules"
they worked out for themselves with experiments - that are more or
less what are probably exactly what's installed on your PC right
now...they also came up with those "tubal chair" things...you know,
it's one chrome tube that's bent and then a "seat" and "back" is
added...the Bauhaus was concern with very "minimal" designs and in no
way rejected "science" as playing a part in hepling to form art...if
you check out the sorts of things they did, there'll be an awful lot
of "oh, so _that's_ who came up with that style of chair...oh, so
_that's_ who came up with those colours I see in every modern
advertisement", etc. ;) formulated a "colour theory" that's simply
_fact_ these days...advertisers will be picking their colours from an
Itten "colour wheel" (good professional art programs often include
just such a "colour wheel" for selecting the colours and give
"assistance" for working out which colour combinations fit
together..."complimentary colours" and so forth :)...they are _rarely_
"made up" or "accidental"...NOT with the amount of money in
advertising these days...hence, yellow on blue (complimentary colours,
where blue naturally "recedes" making it the perfect background colour
;)...orange on blue if you want a more "subtle mood"...
In fact, look up Itten's "colour theory"...and then see how
fundamentally _formulaic_ it is...this shouldn't be a surprise to a
physicist, though, because colours are merely different frequencies of
the visible spectrum...you're, in fact, simply finding "harmonies"
between _frequencies_ (yes, all can be expressed with _numbers_ and
dealt with mathematically without even hearing or seeing the note or
colour...hey, how do you think Beethoven could carry on composing even
when he went deaf? Not to detract of the man, that's still a mightily
impressive thing to be able to do...but he could carry on because
music is actually very _mathematical_, in the end...and he'd just
written so much music prior to this that he just "knew" - remembered,
if you will - what "moods" each chord makes...no, the _emotion_ of
music can't be captured mathematically easily but once you know which
harmonies sound "happy", "tense", "sad", etc. then much after that
_can_ be done "blind"...well, _deaf_ in this case but you know what I
mean, I think ;)...
"Genius" is neither left brain nor right brain...it's _both_...these
people - even when they "bend the rules" can only do so because they
_KNOW_ those rules and how they'll bend without breaking them - I
assure you, where working as much inside these "rules" as they
aren't...this is _craft_, so to speak...neither "art" nor "science"
but both together...what I like to call "craft" (and Hope that phrases
like "arts and crafts fair" with their cheap home-made wicker baskets
doesn't also spoil the semantics of what I mean with horrible mental
images...think instead of blacksmiths hammering at anvils...craftsmen
who know the _science_ of dealing with metals but are using that
_science_ to create "art"..."craftsmen" at their "forge" ;)...
Indeed, "science" people like the "academics" you seem to Love to hate
here, tend to think it's all to do with numbers...they are missing
half the picture..."art" people think that you can do it all just by
"feeling" and being "emotional"...they are also missing half the
picture...let me attempt to explain how...objects in this world -
where "objects" is also including things like sounds, colours,
etc....even though, yes, they are strictly energy but I just mean
"physical things" in general here rather than "nebulous ideas" inside
someone's mind - all follow strict rules...you probably know many of
them...what goes up must come down...an object in motion stays in
motion or an object at rest stays at rest unless an external force
acts upon them...light travels in straight lines...things get smaller
the more distant they are from you...rules about how oscillating
motions like sine waves (sound stuff :) work are, of course, derivable
all from Pythagoras' triangles...this stuff is there, the rules are
there...and as Scotty on Star Trek reported put it: "ye cannae change
the laws of physics!"...but this is NOT everything that's in our
"equation" here...there's also _humans_ to contend with...well,
_people_ will be looking at your pictures or listening to your
music...so, the "psychology" and "feeling" and "art" enters into the
picture in how people will _respond_ mentally and emotionally to those
physical things you've presented to them...
Ignoring either element is a mistake...you need both...the _thing_
that you're creating must obey reality...but, at the same time, to
make it "work" for your viewer or listener, it should obey their
"feelings", "mood" and "psychology" too...any piece of artwork or
whatever is clearly _BOTH_...
Let's get back to Shakespeare...he would often end acts by going all
"poetic" and using strict "iambic pentameter" (this is a poetic
"rhythm" based on fives...hence, "pentameter"..."iambic" refers to the
poetic rhythm part :)...if you ain't tried it, writing _good_ "iambic
pentameter" is immensely difficult because it's a _very restrictive_
form...oh, and you _can't_ "bend the rules" here or "go by feeling"
because then it wouldn't be proper "iambic pentameter"...you would, a
bit like a drummer falling asleep in a band, lose the "rhythm" of the
prose (although, when using such meter, it actually starts sounding
"poetic" rather than just "prose"...the change from prose to this kind
of poetry in Shakespeare's work was actually a _signal_ that the act
was coming to an end...even if only subconsciously, you can pick up
this "rhythm" and, well, I suppose it's a bit like an ochestra
starting to "trail off" and have lots of long notes to also signal
that some music is about to draw to an end...this stuff is lost in
modern music - except, to be fair, _jazz_ players still like to put
"proper ends" onto their music with a quick drumroll and a few "stabs"
from the quartet - because they have that cheap "repeat to fade" stuff
instead usually...a case of "oh, crap...how do we end this? Oh, just
fade it out!" ;)...
But Shakespeare's use of strict meter and stage conventions and all
that sort of thing is just the _mechanics_...that's NOT where the
genius lie...it's in reading Hamlet: "This is our winter of
discontent" and _recognising_ the bitter, scrunched up man as he vows
revenge...ooh, he's Rene on a bad day...you can _see_ Shylock the Jew
playing with his hands and rubbing them as he thinks of money (pardon
the anti-semitic angle but, in Shakespeare's day, anti-semitism was
"norm"...I don't think Shakespeare himself was particularly
prejudiced, though, because, of course, one of the things that was the
genius of Shakespeare is that he could _see_ the human condition
perfectly...clearly, looking at his writings, he's NOT one to be in
any way fooled by "stereotypes" because he wrote his characters often
with - shall we say? - "the wisdom of Solomon"...which is why he still
speaks to us today with relevent stuff because he wrote characters
that we all know or understand and, as I say, it's almost as if,
unlike most of us, he could just _see_ the human condition and it
wasn't at all shrouded in mystery for him like the rest of us who
struggle hard to make head or tail of other people and stuff...and he
does leave "hints" that he's merely "writing for the audience" - who
expect all their Jews to be like Shylock - and it wasn't necessarily
himself who thought like this...again, it's easy to forget that these
things were _plays_ and that dramatic conventions were
applied)...actually, he invented some too...much like he invented a
big chunk of the English language as well...
But, the _mechanics_ alone would not be particularly good...the
"trick", as it were, was that Shakespeare _combined_ this technical
mastery with a fantastic _intuition_ about people and humans...one
thing that's clear as crystal is that he "knew people"...what makes us
laugh, what makes us cry...how to write that character that, yup, we
_all_ know someone who's exactly like that from our own lives...he got
the "human" part - the "art" - exactly right too..._that_ is what
makes genius...not one or the other but being able to fuse the two as
if there's absolutely NO division or difference whatsoever...
Though I'm no way near the poet of Shakespeare, let me try by
expressing this as "the mathematican that sees the _beauty_ in his
numbers"...a fractal of the human condition, if you will...
That's why true "genius" is rare...most people think either "left
side" or "right side" of the brain...they are an "art" person or a
"science" person...well, that's NOT a particularly good start...then a
"genius" needs to be able to be brutally cold-hearted and utterly
"professional" - the "detachment" of a doctor - to get the mechanics
right...I mean, if you're writing the "bad guy" and you really want
them to be "bad" then if they would cold-heartedly murder someone
without hesitation then, as the writer of this part, you must be able
to _be_ that person - whether they are anything like you or not - in
order to get it just right...think their thoughts, even if, to you,
they are basically "vile" to even consider...but then to be able to
"switch on" their humanity to "feel" every climax, to use that
"intuition" which tells you that, yup, this is a joke that other
people will find hilariously funny...or that, yes, this sad moment
will make the audience cry..."NO!! Don't shoot Bambi's mother!!! Oh my
god, they killed Bambi's mother...you bastards!" :(
And on top of that you need talent, professionalism, intuition,
systematic skill, etc., etc....basically, very, very few people ever
make the grade or come close...but then it's because the black orchid
is so rare that makes it such a sweet prize to catch a glimpse
of...gold has its worth _because_ there isn't an awful lot of it
around and it ain't growing on trees...
> By the way the first line above doesn't "sound" right. Should it
> be "correct" or "correctly"? What are the rules in this case?
I believe, indeed, that it should be "correctly" and my use of
"correct" isn't strictly right there...
Beth :)
> JGCasey wrote:
> > Beth wrote:
[I refuse to snip this excellent post. Go girl.... Beth you astonish me.
Thank you for this post]
The first 60% I would say is excellent. And you yourself are a star....that
not even debatable....you excell. So therefore I declare my love for your
writing again, (in case you lack love and that the reason you are a star
;-))and I would add that you have a genious and I am not even able to envy
it, cause I repect it too much.
Nevertheless. The part about genious beeing a synergy between skills and
art. Heck, for all I know you could be right....but I feel theres a part you
haven't mentioned. But evidently, my brain is not even in the neighboorhood
of you intellect, so I must wonder if I am not completly mistaken.
But I am no longer afraid of playing the fool so here I go.
My vision of a genius, has NOTHING to do with work at all. Its about a
playful even loving person, who plays with something. Along the way, she
"discovers" through her playful experiments new "things". While he himself
understand theese new things (in her visions), it must be explained to
others, or they would not belive it. That is what Einstein called the
aftermath. And he did not care much for it. What he himself wanted was to
see what God was seeing. Or something. I have to ask you for the absolutely
correct reference. I couldnt care less to find that Einstein PDF on my other
PC. The extact words are NOT important, only the meaning of the words. Which
I understood completly (in my own way) when I read them. I claim that
everybody has some sort of genius of some kind,(and like you claim there is
an insane amount of different intelligence) but are beeing mislead by the
tyrants of this world - (forced to not develop it) - The money makers, who
think that their success was for them alone, and who dont see the whole of
the creation as wholly. All religions up to this point have been in this
state. Thats why I hate religions. Not because Im not some kind of religious
man. But I leave that as an execise to the reader, and consider it a
personal afair between me/them and my "God"/their "God" (which is nothing
but their/my vision of God), whom I give the benefit of the doubt that he is
not needing "followers" of any kind, to war his visions into the heart of
men.
Rene fights theese people (the money makers). And I respect him for it. And
that you who are so evidently in love with humans, cannot support the very
very few people who realize this truth, I find hard to accept. Cause you're
skills would be a most valuable tool in this fight. Dont confuse love of
men, with not going to war. I deeply disagree with you until you actually
prove it, that one should not fight when beeing thread upon. One can accept
many things, seeing as Jesus did, that people dont know what their are
doing, but to actually allow them to kill you? to not stand up for what one
belive is right? Then everything becomes evil. Unlike you, I have never
considered Microsoft to be an evil idea. Or that BG himself is evil. Read
about my view at The Sages homepage, under the Jung pages. That doesnt mean
that they are incapable of acting in evil ways. Or in ways that do harm.
Power corrupts. Even the best amoung us........or is that just BS ?
Now, we, us other "stupid" people, create theese teories about (what the
geniuses needed no theory to understand), in order for us to (maybe) be able
to grasp a litle of it. Thats all.
Thanks you again for you most excellent post. I am looking forward for more
of your writing.
I stand corrected. Perhaps I was being somewhat churlish.
> Then again, I know of some jackhammer operators who are really
> into ground-breaking stuff... :-)
Do I detect a smidgen of elitism here?
> cheers,
> Randy Hyde
>
>
Oh dear; You're so quick to jump to condemn Randy because he
represents "acadmeia" (and you really do seem to have a problem with
that because you attacked me for much the same reasons...even though
equating me with "academia" would prove hilarious to my teachers over
the years, as I never played by the rules there, exactly as I never
have had or probably ever will do ;) that you've gone and missed what
was simply an outright _JOKE_:
Let me put it this way, what do you use a jackhammer for?
Yes, perhaps to break up some tarmac on the road...so, you "break"
"ground" with it...
Hence, a jackhammer is a "ground-breaking" machine...boom-boom! ;)
Do you get it now? Randy probably doesn't even know any jackhammer
operators...that's just the "set up line" for his "double meaning"
joke...it's nothing but a "wordplay" joke and isn't meant to really
suggest anything at all about jackhammer opertors in the slightest...
I actually thought it was rather funny...
Beth ;)
Really? I thought one of the fundamental ideas behind NASM (along with
"emliminate red tape", "start a 'net-wide' free assembler project",
etc. :) was to create a "portable" assembler, which was why C
(actually, Frank will correct me here, but it's not even ANSI C, is
it? It's an older C99 standard or something, right? Because even ANSI
C is not "portable" enough for some of the more "obscure" targets
which haven't yet got their compilers up to the ANSI C standard :) was
chosen to implement it...
In which case, you're suggesting that RosAsm works on an Apple iMac or
Sparc machine? NASM _does_ and was one of those "things NASM is
designed for"...
So, evidently, "the reverse being also true" isn't evident at
all...though, coincidentally, you're not wrong because NASM _can_,
indeed, write PE files just like RosAsm can...it can also do an awful
lot more which RosAsm can't, mind you...but, yeah, the reverse _is_
true...unfortunately, the original statement which you reversed
actually _isn't_ true...
But, hey, one of out two isn't totally bad...at least you weren't
completly wrong...just "half" wrong...
Beth ;)
It's not because people have been clamoring for that feature.
Automatic disassemblers (without the reassembly one click
later) have been tried in the past. They were all failures.
What makes you think your's will be any better? Yes,
the first click generates a bad representation of the object
code in source form, and the second click converts that
bad form to equally bad object code that is not equivalent
to the original program. That's a real break-through.
I realize that you're convinced that your software is
"high-quality" if you can find a few examples that it
actually processes correctly. Most people, however,
judge software quality according to how *few* examples
it messes up on. While you may shock the world and
produce an amazingly great automatic disassembler that
succeeds where everyone before you has failed, given
the code examples you've written in the past (e.g., RosAsm)
I strong suspect this will not be the case. You're going to
wind up with a tool that disassembles the modules *you're*
interested in disassembling (mainly as demonstrations of
your disassembler) and then you'll move on to something
else. Leaving the people who *really* want to use your
disassembler in the lurch.
> Good luch with your stupid propaganda, when having
> to face such facts made real by a guy who never
> managed to read some "Decompiler Theory", but for
> a good laugh time.
>
Uh, what makes you think that I've never read such papers
in the past? Unlike you, I actually *went* to graduate school.
And yes, I studied things like "decompiler theory." In fact,
back in the Apple II days I *wrote* a disassembler for my
Apple II assembler. And that's why I know a *little* bit about
disassemblers today and I know that you're going to fail to
produce a reasonable product if you attempt to make it
automatic.
But as you keep claiming, I must only have an IQ of 80
and you're an absolute genius. So no doubt you can
succeed where I, and so many others, have failed
(though I never attempted to actually create an automatic
disassembler; I was smart enough to do the research *first*
and come to the conclusion that it was mathematically
impossible to write such a program; so I opted for an
interactive disassembler).
Cheers,
Randy Hyde
Well, you are probably right about that. NASM is probably
the second most popular assembler in the world today and
RosAsm offers it positively *no* competition :-)
> and in no case, RosAsm
> could be able to beat NASM on the things NASM
> is designed for (the reverse being also, true,
> evidently).
Except, of course, in terms of portability, the ability to
optimize branch displacements, macro capabilities,
and the ability to specify low-level opcodes.
Other than that, plus a few other things, RosAsm probably
does things about the same as NASM, maybe.
Oh yes, RosAsm *is* faster than NASM :-)
Cheers,
Randy Hyde
Irritate me?
Boy, you have a high opinion of your product, don't you?
I find the whole thing laughable and humorous. The sad thing
is seeing you waste all this time on it (as it's going to be a complete
failure with the design you're pursuing) when you could be working
on the more interesting things you've outlined below.
>
> But, sorry, this is _not_, at all, "the "turning point" for
> RosAsm". This turning point will be the day when RosAsm will:
>
> * Include a Basic Pre-Parser.
Like Nike says, "just do it."
We're all waiting. This would be infinitely more valuable to
most people than your disassembler project. It might even
work to. Especially if you can convince someone else to write
it (who knows a little bit about "compiler theory").
>
> * Include a Symbolic Profiler.
Never heard of a non-symbolic profiler. But yes, having a
profiler that works with RosAsm would allow it to catch
up with other assemblers like MASM (and even HLA)
that can use the profiler in Visual Studio today.
>
> * Include an OOA Pre-Parser.
Yep. Then you'll be able to catch up with TASM and
HLA that have OO programming facilities today.
Of course, you *will* have to learn what object-oriented
programming *means* first. Or, perhaps, you can convice
"The_Sage" to write this pre-parser for you. He seems to
think that he's the only one around here who knows what
"object-oriented programming" means (I think he thinks it
means you don't have to put semicolons at the end of
statements in C++ :-)).
>
> * Include the Wizards for Visual Applications building.
Of all the things you've ever discussed as planned for RosAsm,
this is the *one* thing that would temporarily lift you above the
pack. I find it amazing that you're wasting time with the disassembler
when *this* is the thing that people are *really* looking for
when they ask about an IDE for an assembler.
However, if you keep wasting time on things like your disassembler,
then other IDEs (RadASM, Fresh, whatever) will overtake you and,
once again, there will be no real reason for using RosAsm.
>
> * Include several Applications Builders.
See the above.
>
> ... and so on, and so on,... up to the point it could
> really offer a valid alternative to the HLLs.
After five years, look what you've produced. The above, if
done right, represent more work that you've done to date.
When do you plan on finishing this?
I feel for you. Many years ago I plotted out a "road map"
for HLA that was just as ambitious as yours. Clearly, I'm
way off the track based on my original estimates. I wish
you luck. But I suspect you're going to get scooped if you
don't get to work on the really important stuff (wizards,
app builders) real soon. Other people *are* making
progress on this.
>
> As opposed to you, i am not a man who sells "prototypes"
Apparently not. That's why HLA will wind up being a better
design than RosAsm - I've actually played around with the
language to figure out what works and what doesn't. I wasn't
quite so arrogant as to think I knew how the assembly language
should be on the day I started. Instead, I've tried things out,
seen how they work, and, yes, even *broken* some old code
as I removed or changed features that just didn't work out.
If I was just interested in maintaining a lot of old baggage, rather
than creating something *good*, I would have created a
MASM-compatible assembler and just extended that.
> and bases all of his personal and so ridicoulous "success"
> on illusions and vile propaganda.
Oh so vile.
And what is all this nonsense you're spreading about HLA?
Is that not propaganda? I can certainly find a lot of people
who feel your posts are a bit on the vile side. Are you the
only one who is allowed to make "vile" posts and spread
propaganda?
Cheers,
Randy Hyde
Tell that to the jackhammer operator.
Yes I understood the joke. I know a racist jokes, feminist jokes
all very funny if you aren't on the receiving end. A "put down"
joke is only really funny if the victim is up themselves. Attacking
the weak in body and/or mind is not funny to me.
When I first became interested in programming, as a result of
my interest in electronics, I was introduced to a real programmer
who was programming bank computers at the time. I asked him
how he felt about computers taking peoples jobs. The response
was "Who cares. I will always be employed". This guy was a
real brain. Top of the pile in mathematics. But as a human being...
As for Randy I was not condemning him at all, just having a dig.
There was no major animosity involved in the observation. Let
me apologise if it was taken as a personal attack. I respect his
intellect and his contribution to the community.
By the way I notice you used two spellings of "academia" :)
--
John
>I realize that you're convinced that your software is
>"high-quality" if you can find a few examples that it
>actually processes correctly. Most people, however,
>judge software quality according to how *few* examples
>it messes up on. While you may shock the world and
Even if it would process some files correctly. a) I wouldn' t expect from a
disassembler to create something acutally close to the original source because
that is impossible, and b) "some" files are not good enough because you have
to use real world examples. So if there are some examples where the
disassembly is correctly processed in a way that almost the original source
has been reconstructed, the actual question is wether these examples are real
world examples.
>I strong suspect this will not be the case. You're going to
>wind up with a tool that disassembles the modules *you're*
>interested in disassembling (mainly as demonstrations of
>your disassembler) and then you'll move on to something
>else. Leaving the people who *really* want to use your
>disassembler in the lurch.
I have tested some disassemblers and IDA is the best. Straight to the point. I
haven' t seen any disassembler which really comes close. And I was already of
this opinion about ten years ago.
--
Gerhard Gruber
Maintainer of
SoftICE for Linux - http://sourceforge.net/projects/pice
Fast application launcher - http://sourceforge.net/projects/launchmenu
>Well, you are probably right about that. NASM is probably
>the second most popular assembler in the world today and
>RosAsm offers it positively *no* competition :-)
I know NASM but whats RosAsm?
>> Good luch with your stupid propaganda, when having
>> to face such facts made real by a guy who never
>> managed to read some "Decompiler Theory", but for
>> a good laugh time.
>>
>
> Uh, what makes you think that I've never read such papers
> in the past? Unlike you, I actually *went* to graduate school.
> And yes, I studied things like "decompiler theory." In fact,
> back in the Apple II days I *wrote* a disassembler for my
> Apple II assembler. And that's why I know a *little* bit about
> disassemblers today and I know that you're going to fail to
> produce a reasonable product if you attempt to make it
> automatic.
>
> But as you keep claiming, I must only have an IQ of 80
> and you're an absolute genius. So no doubt you can
> succeed where I, and so many others, have failed
> (though I never attempted to actually create an automatic
> disassembler; I was smart enough to do the research *first*
> and come to the conclusion that it was mathematically
> impossible to write such a program; so I opted for an
> interactive disassembler).
???!!!... and then??? What do you think the guys actually
using RosAsm "Two-Clicks-Disassembler-Reassembler" on small
Demos, with success and pleasure, may care of your expert
deliriums?
You are a great expert at everything. So forth, of course,
a great expert on Disassemblers, and you perfectely know
that what i have done, and what i am doing is impossible.
Well... OK to me. Being stupid is a sad thing, but being
stupid, plus arrogant, is really terrific.
Betov.
> Even if it would process some files correctly. a) I wouldn' t expect
> from a disassembler to create something acutally close to the original
> source because that is impossible, and b) "some" files are not good
> enough because you have to use real world examples. So if there are
> some examples where the disassembly is correctly processed in a way
> that almost the original source has been reconstructed, the actual
> question is wether these examples are real world examples.
You might have been miss-leading by the "oriented"
discussion, Gerhard. The purpose of RosAsm Disassembler
is not exactely to "create something actually close to
the original source". It is designed to output an Asm
Source, in RosAsm syntax, plus Resources, and all Infos
required for a full rebuild.
Now, for the final reconstruction of the Source, we are
actually in the early stage. Only the symbolic Names
comming from the analyses of the Api calls are actually
implemented, Plus (not always working, actually) the
rebuild of the Menu Symbolics. In the next stage, we
will implement the OS Structures recognitions, in order
to restitute these symbolics, in the same manner.
Then, at the final stage, we will implement the rebuilt
of the HLL-like Constructs (If and Proc, mainly).
When these restitutions will be completed, we will implement
one another "side-computation", for, when having the original
Source available, copy the Comments, from the original Tool
to the RosAsm translation.
All of this should be around six more months of work...
The purpose of this Tool is to enable user with a fast
and easy _Translation_ of most Demo and/or small Apps,
essentially, to RosAsm syntax.
For RosAsm itself, this implementation is very important,
as it turns RosAsm a programming Tool having, potentialy,
the biggest Demos set. If you have already done such works
as porting, say, C Demos, to Assembly, i am sure you can
understand the interrest of such an implementation.
Betov.
< http://betov.free.fr/RosAsm.html >
One more time, Beth i don't understand a word at what you say.
Here i suspect, as i suppose you can read english much better
than can, that my upper paragraph does not at all express what
i was meaning to say. So here is what i mean to say:
1) There is no competition between RosAsm and NASM.
2) RosAsm is not designed to do the things NASM does.
3) So forth, RosAsm can not do what NASM does.
3) There are also, evidently, things that RosAsm can do
that NASM cannot do, or, to say the less, do in some other
way, and/or a more complicated way, even if you call "NaGoa"
NASM. Interrsting product, also... NaGoa... (just in case,
your next post would be say that i have said that... outch!
"NaGoa is bad", or something...).
I really wonder where you have seen that i would be
"suggesting that RosAsm works on an Apple"... ???...
Betov.
< http://betov.free.fr/RosAsm.html >
> On Sun, 11 Jan 2004 20:55:56 GMT wrote "Randall Hyde"
> <rand...@earthlink.net> in alt.lang.asm with
> <wLiMb.5663$zj7....@newsread1.news.pas.earthlink.net>
>
>>Well, you are probably right about that. NASM is probably
>>the second most popular assembler in the world today and
>>RosAsm offers it positively *no* competition :-)
>
> I know NASM but whats RosAsm?
>
:)) :)) :))
Nothing
:)) :)) :))
Betov.
< http://betov.free.fr.RosAsm.html >
> Boy, you have a high opinion of your product, don't you?
>
If i had one half an high opinion of RosAsm as you
have of yourself, i think i would be afraid of adding
one single line into the Source.
Betov.
Huh?!? It's not a "put down" joke at all...how the fudge is this in
any way "offensive" to jackhammer operators? It's just a simple "play
on words" joke...and, if it is saying anything other than humour, it's
celebrating that jackhammer operators are bold pioneers (and this is
an insult?!?)...
So, you think that jackhammer operators would be offended by a "double
meaning" joke where they are either simply using their jackhammer
(but, that's kind of "by definition" if you're a jackhammer
operator...if you don't operate a jackhammer, then you're not a
jackhammer operator ;) or it's suggesting that jackhammer operators
are bold pioneers? Why in particular would jackhammer operators feel
in any way offended or discriminated by this comment?
> When I first became interested in programming, as a result of
> my interest in electronics, I was introduced to a real programmer
> who was programming bank computers at the time. I asked him
> how he felt about computers taking peoples jobs. The response
> was "Who cares. I will always be employed". This guy was a
> real brain. Top of the pile in mathematics. But as a human being...
Right, so this guy was a jerk...nice story...and the relevence is?
Sorry, I'm not being funny with you or anything here...I'm just
totally confused by your comments...I honestly can't see any reason
whatsoever for a jackhammer operator to be "offended" by that
joke...and now you've related a story about someone who's a jerk -
which is very interesting and, yup, this is not an uncommon story -
but what's this got to do with Randy, jackhammer operators, racist
jokes...well, _anything_ that's been mentioned before...this just
seems to be coming right out of the blue here...
Was there some extra posts in-between that I missed or something?
Because it feels like a large chunk of some "other" conversation
somewhere is missing when I read this...
> As for Randy I was not condemning him at all, just having a dig.
> There was no major animosity involved in the observation. Let
> me apologise if it was taken as a personal attack. I respect his
> intellect and his contribution to the community.
Okay, fine...then what on Earth are all these comments about? If
Randy's done nothing wrong - and I don't see how jackhammer operators
could be in the slightest bit offended for there to have been anything
wrong - then, umm, what on Earth is this part of the thread about?
You've totally lost me, anyway, that's for sure...
> By the way I notice you used two spellings of "academia" :)
Well, you might have noticed that the difference was a reversal of "e"
and "m"..."e" is on the left-side of the keyboard and "m" is on the
right...I type two handed...have you worked it out yet? Yes, it was a
simple _typo_ where my right hand outpaced my left hand when it
shouldn't have...
Out of interest, would my typo also "offend" jackhammer operators?
Because, from your description of them, they seem an awfully sensitive
group of people who just seem to enjoy getting randomly "offended" by
things for no particular reason...
Beth :)
[ By the way, the number "4" comes after "3" ;) ]
Now you explain what you meant, I can see that what we have is one of
those "translation problems"...what you wrote isn't "wrong", it was
just very difficult to understand and you could easily get the wrong
idea (well, I could, anyway, because I did ;)...I now understand what
you meant to say and it's been made clear and unambiguous to
all...when what you meant to say is understood, you're, indeed, quite
right in what you said...just a problem in trying to understand what
you were trying to say, is all...sorry about that...it happens from
time to time (as I'm sure I also confuse the hell out of you with my
strange writing style once in a while too ;)...
Beth :)
It's a "weapon" in the "holy war" against "evil corporations",
apparently...
To look at it, you'd reckon that it was a GUI-based assembler project
from our Rene here...but, no, it's like a modern day version of King
Arthur's sword "Excalibur"...a magical "holy" weapon to "smite evil",
which - just like the infamous "sword in the stone" - won't allow
itself to be picked up by any old assembler newbie...oh no, only the
"chosen people" - like the young King Arthur - who are "holy warriors
against evil" may brandish RosAsm...for, as was Excalibur, this is not
merely "a weapon", it's the unifying symbol of holy justice
itself...for when the time of ReactOS is finally completed, Rene shall
pull the sword from the stone and raise it aloft for all to
see...proving to the people that he is the one true "King" - "the Once
and Future King", as T.H.White put it - who will unify the kingdoms
under his rule in a glorious new Kingdom of the "assembly
rebirth"...the "evils" of Microsoft, GM food manufacture, HLL
compilers and such will instantly vanish at the sight of the fearsome
Excalibur - a weapon that cannot be broken or defeated - and the
subjects of the new King will be dancing in the streets with joyous
celebrations!
Unfortunately, in Rene's version of the story, there seems to be a
noticable absence of the figure of Merlin...which is a crying shame
because Merlin was Arthur's mentor and filled the young King with
great wisdoms to rule his kingdom properly and helped make him a just,
fair and true King to his people...I always wondered how the story
would differ were Merlin not there to guide Arthur...seems that Rene
will finally answer that "what if?" question for us...
No, seriously, the following is the RosAsm website:
http://betov.free.fr/RosAsm.html
If you can manage to make head or tail of what Rene's actually doing
there, then please post back a reply to explain it to the rest of
us...
No, no...just kidding...there are some really interesting features and
ideas in RosAsm (unfortunately, there are also some really weird and
restrictive features and ideas in RosAsm...take a look at "clip files"
for more details ;)...
Oh, actually, Gerhard...I just realised...you probably _have_ heard of
RosAsm before but it was called _SpAsm_ the last time you
looked...Rene changed the name to "RosAsm" in order to "clarify its
morality", apparently...in changing the name to Rosasm, I quote: "It
is clearly declared an Assembler for ReactOS, and the political and
ethical concerns coming with this and with the GLP are clearly
defined." [sic*]...no, I don't know where it's "clearly defined"
either but Rene assures us that it is, so I suppose we'll just have to
trust him on that one...
Long story short, RosAsm (was SpAsm) was a good pioneering project to
create a GUI-based Window PE assembler...and it was coming along
great...then, Rene let a bunch of his good ideas go straight to his
ego and is now convinced he will defeat all "evil" on this Earth by
simply forcing people not to use library code...he then decided to
start a "holy crusade" against HLA and MASM (they _dare_ to use
library code in front of him? The infidels! ;), which Randy originally
tried to deal with by presenting the reverse arguments...but all that
failed and it's now turned into a pub brawl or something...
Does this answer the question? No, it probably doesn't, does it? Well,
umm, that's because it's a confusing story that I'm not completely
sure that I understand either...
Beth :)
* Yes, he's put "GLP" rather than "GPL"...obviously not quite as
"clearly defined" as he first imagined, eh? ;)
>You might have been miss-leading by the "oriented"
>discussion, Gerhard. The purpose of RosAsm Disassembler
>is not exactely to "create something actually close to
>the original source". It is designed to output an Asm
>Source, in RosAsm syntax, plus Resources, and all Infos
>required for a full rebuild.
Thats as I understood it. :) Maybe "close to the original source" was a bit
wrong.
>Now, for the final reconstruction of the Source, we are
>actually in the early stage. Only the symbolic Names
>comming from the analyses of the Api calls are actually
>implemented, Plus (not always working, actually) the
>rebuild of the Menu Symbolics. In the next stage, we
>will implement the OS Structures recognitions, in order
>to restitute these symbolics, in the same manner.
How will your disassembler work? Does it have a flow analysis like IDA?
Otherwise I really wonder how you could disassembly some stuff like jump
tables. Also how do you process the output after your disassmebler is
finished? Does it have a technique like IDA where you can work on the code
without having to maintain text files.
>Then, at the final stage, we will implement the rebuilt
>of the HLL-like Constructs (If and Proc, mainly).
Good luck. If you want to be able to disassemble an arbitrary executable then
you have quite some work ahead of you, considering all the compilers and their
different methods of encoding.
>All of this should be around six more months of work...
I don't really think so. :)
>The purpose of this Tool is to enable user with a fast
>and easy _Translation_ of most Demo and/or small Apps,
>essentially, to RosAsm syntax.
You mean, applications written in asm? If they have the source, why would they
translate it anyway? Especially from the executable. If you want users to be
able to convert their apps then a source translator would be much better.
>For RosAsm itself, this implementation is very important,
>as it turns RosAsm a programming Tool having, potentialy,
>the biggest Demos set. If you have already done such works
I don't see why this shold be. I don't understand exactly what your targeted
audience is. Demos as in the demoszene or Demos like shareware tools that are
put out for evaluation? I don't think you mean the latter, though.
>as porting, say, C Demos, to Assembly, i am sure you can
>understand the interrest of such an implementation.
I have translated some of small things of my code to asm, but often in that
case I already wrote the C code in a way that it lends itself easily to
porting to asm, or in the case where I needed performance, I had to rewrite it
totally differently to take adavantage. Translating some C code to asm is
actually rather easy, if you use the compiler to create the first assembly
version for you and tehn build upon it. I don't know any compiler which can't
do this.
I see that you are yet missleaded on many points,
much probably by the curve of the unfair discussion.
RosAsm Disassembler is not a dream for the future.
It is actually effective, even if yet under heavy
developements.
I have no idea how IDA does what it does, and i do not
care much of what IDA does. I do not care at all of what
other tools do, unless Open Sources and free.
About how RosAsm Disassembler works, it is quite simple,
as it is GPLed Open Sources, and as the binary are quite
easy to give a try (don't hope it to rebuild Nescape in
two clicks, actually... :)) :)) :)) )
You will see an awfull messed-up organisation of the
"DisMain" Routine, but this is not a great shame for me,
as it is under important recognitions organisations and
modifications, actually, but,... well, i hope the Source
is, nevertheless, easy enough for a reading...
Betov.
< http://betov.free.fr/RosAsm.html >
>Gerhard W. Gruber wrote:
>> Randy wrote:
>> >Well, you are probably right about that. NASM is probably
>> >the second most popular assembler in the world today and
>> >RosAsm offers it positively *no* competition :-)
>>
>> I know NASM but whats RosAsm?
>
>It's a "weapon" in the "holy war" against "evil corporations",
>apparently...
My question was actually meant to be sarcastic. :)
From reading the threads I know by now what RosAsm is, even if it took rather
long to learn that RosAsm was previously SpAsm (I may be wrong on that and
RosAsm is a totaly new assembler). I only wrote this question because of Randy
writing "... no competition.". Which would be ridiculous(sp?) since NASM is
well known and widespread while RosAsm is a rather small project apparently.
This is expected if it is driven by only one programmer, given the complex
task an assembler is to write. At least it would be to me. :) I never wrote
one, so I guess that it is not an easy thing to do.
>itself...for when the time of ReactOS is finally completed, Rene shall
I wont mind if ReactOS would become a good alternative, though I don't hear
much about it. Only every now and then on the wine developers list it is
sometimes mentioned.
>http://betov.free.fr/RosAsm.html
>
>If you can manage to make head or tail of what Rene's actually doing
>there, then please post back a reply to explain it to the rest of
>us...
Actually I think the page is not really well designed. So far what I can learn
from the page is that RosAsm is an assembler. What surprised me was, that it
claims to be the assembler used for development of ReactOS. I was surprised,
because last time I checked ReactOS I didn't notice an affiliation with Spas
or RosAsm, but I didn't specifially look for it. This time I looked for it and
I only found that they use NASM. I couldn't find any mention of RosAsm.
>Oh, actually, Gerhard...I just realised...you probably _have_ heard of
>RosAsm before but it was called _SpAsm_ the last time you
>looked...Rene changed the name to "RosAsm" in order to "clarify its
Yes.
>morality", apparently...in changing the name to Rosasm, I quote: "It
>is clearly declared an Assembler for ReactOS, and the political and
>ethical concerns coming with this and with the GLP are clearly
>defined." [sic*]...no, I don't know where it's "clearly defined"
I don't see what political and ethical concerns are involved with an assembler
or with ReactOS.
>* Yes, he's put "GLP" rather than "GPL"...obviously not quite as
>"clearly defined" as he first imagined, eh? ;)
:)
> [...]
>
> Actually I think the page is not really well designed. So far what I
> can learn from the page is that RosAsm is an assembler. What surprised
> me was, that it claims to be the assembler used for development of
> ReactOS.
I wonder where you could have read this, Gerhard.
>I was surprised, because last time I checked ReactOS I didn't
> notice an affiliation with Spas or RosAsm, but I didn't specifially
> look for it. This time I looked for it and I only found that they use
> NASM. I couldn't find any mention of RosAsm.
Yes, they use NASM. RosAsm would be absolutely of no
use for them.
> [...]
>
> I don't see what political and ethical concerns are involved with an
> assembler or with ReactOS.
Your problem, Gerhard, not mine. To the guys who share
my "political and ethical concerns", the relationship
with the Open Sources Mouvement is quite evident... and
when this 'evident' is not 'evident' for someone, i can
say that i have a quite robust experience that has shown
me the discussions to be desesparate attempts. :)
Betov.
Let me assure you Beth I did not condemn Randy, full stop. And my
comments about elitism was not an attack on academia. Nor did I
attack you! I simply asked what you considered to be "wrong" spelling
and pointed out it was only one part of intelligence (word memory).
Randy's "play on words joke" was perfectly acceptable behaviour
given what I wrote. I would have reacted the same. In the context
it was also a form of sarcasm toward those without academic skills.
You will note in my reply to him I accepted I was out of order.
===========================================
That's ok Beth. Trying to explain it isn't that important and I
am sure no one else, least of all Randy, could care less. Put
it down to a late night and I wasn't thinking all that clearly?
========================================
>
> Was there some extra posts in-between that I missed or something?
> Because it feels like a large chunk of some "other" conversation
> somewhere is missing when I read this...
>
> > As for Randy I was not condemning him at all, just having a dig.
> > There was no major animosity involved in the observation. Let
> > me apologise if it was taken as a personal attack. I respect his
> > intellect and his contribution to the community.
>
> Okay, fine...then what on Earth are all these comments about? If
> Randy's done nothing wrong - and I don't see how jackhammer operators
> could be in the slightest bit offended for there to have been anything
> wrong - then, umm, what on Earth is this part of the thread about?
> You've totally lost me, anyway, that's for sure...
>
> > By the way I notice you used two spellings of "academia" :)
>
> Well, you might have noticed that the difference was a reversal of "e"
> and "m"..."e" is on the left-side of the keyboard and "m" is on the
> right...I type two handed...have you worked it out yet? Yes, it was a
> simple _typo_ where my right hand outpaced my left hand when it
> shouldn't have...
Yes I was aware it was a typo. I am also a two handed touch typist.
I do it all the time (example: gournd ground). My worst offence is
changing what I am thinking while typing so the sentences come out
a little strange.
===========================================
> Out of interest, would my typo also "offend" jackhammer operators?
> Because, from your description of them, they seem an awfully sensitive
> group of people who just seem to enjoy getting randomly "offended" by
> things for no particular reason...
Oh dear. How do I respond to that?
===========================================
--
John
Well, I know what you're driving at...size _isn't_ the prime concern
here...BUT, if size can be reduced easily then one should do so...
And, in this particular case, the size was a _symptom_ of another
problem...that was what _my_ reply demonstrating a different kind of
structure to his program was specifically about...
> The fact that he could learn enough HLA to write the thing in
> a few weeks speaks volumes.
Yes, it does...and I agree completely with you that Rene is off the
mark on this with his assertions...if Frank also agrees - though, he's
probably too "diplomatic" to say (and is probably the most sensible
and mature out of us all for choosing to do that ;) - then all the
main people who replied to that thread seem to all have a completely
_different_ memory of what happened than Rene does...
> The real problem, despite what Rene is claiming, was not the
> *size* of the application, but the compile time. The way Paul
> wrote the game, he wound up assembling the equivalent of
> about 1,000,000 lines of code and it took 5-6 minutes to
> do this on his machine. Much like the good old MASM
> "static initialized array" problem, once Paul was shown how
> to use stdout.puts instead of stdout.put, assembly times fell
> down into the _seconds_ range. Rene won't mention that,
> though. He likes to make claims about how HLA is so much slower
> than other assemblers; he'll stick with those large numbers for
> MASM and HLA as long as he can get away with it :-)
> Oh, and when you point out that it's possible to create slow
> compiling RosAsm source files, he'll start feeding you a line about
> how you're swindling and lying...
Agreed; Except that I'd go further...in fact, I _did_ go further...an
even more fundamental problem with the program was its
_structure_...not its size, not its compilation time, not its use of
any particular standard library function...the most fundamental
problem with Paul's adventure game was that - and this is not said in
any way to "fault" Paul because this was his first attempt in assembly
after only a few weeks...as you say, it's miraculous in itself that he
could have gotten as far as he did in such a time...I'd even say that
Paul himself deserves particular credit, though I understand why you'd
also like it emphasised the part HLA also played in speeding it all up
too - it had a "naive" structure for this kind of "interactive
fiction"...
Note, this isn't to say it was "wrong"...not at all because, of
course, it worked perfectly well...but the approach was, as I say,
slightly "naive" in that the structure was, basically, to simply lay
everything out "flat" in the program...again, I want to stress that
I'm not comdemning or insulting Paul for that...I mean, the first time
I tried to wire up a plug, I got it all wrong and the wires weren't
tightened properly and got easily yanked out (luckily, I didn't blow
anything up, though ;)...the first time I used a mouse, I was a
complete moron about it...heck, the first time I used a keyboard I was
typing single-fingered and took forever (just like everyone else, I'd
imagine...a far cry from what I'm able to do these days...but, well,
_everyone_ is "a bit crap" when they first start to try something
;)...I'm glad to report that these things pass and don't last but,
sure, _everyone_ does "naive" things when they are learning and
getting to grips with something...
I thought then - and now - that though you aren't "wrong" to mention
the "stdout.puts" stuff - seeing as you wrote those library routines,
there's simply no-one more qualified to know about those matters -
that this is essentially a "red herring"...so, of course, is Rene's
comments, which aren't even recalling things correctly, let alone
making useful programming suggestions from which Paul could benefit...
The most fundamental "issue" with Paul's adventure game was that it
was all laid out "flat"...code to print out the "room" information was
duplicated for every single "room" in the map...this was the _primary
cause_ of the gigantic size...you're, indeed, on the mark to point out
that the "stdout.puts" stuff would improve things further...but, well,
in this case, I think you can't see the forest for the trees...because
that is a minor "technical detail" - an important one, sure - while
there was a fundamentally "naive" structure to the program (ooh, I
don't like saying "naive" because it sounds like I'm insulting
Paul...I don't mean it in a nasty way at all but, well, it's the best
word I can think of to capture the issue: There are _better_ ways to
structure the program and because Paul was "new" to assembly and HLA
then that inexperience lead to him not seeing the better way but
taking the most "obvious" method of simply laying everything out
"flat" one by one as it comes)...
Now, admittedly, my example code only had - what was it? - five rooms
or something and no capability for "characters" or "items" or
what-nots...but there was a _massive_ difference simply because of the
structure...
And I'm not simply talking about source code size (irrelevent) or
final file size (partially irrelevent; For such a program, even
written badly, it's never going to take up half of someone's hard
drive, granted..._BUT_, always, if it can be done - in a reasonable
and easy way ("diminishing returns" may, indeed, apply if you get
_too_ obsessed over the issue...but simple "concern" and minor efforts
can make big differences without having to spend the next seven months
chopping off an extra three bytes here and there ;) - to reduce the
file size, it _should be done_...because of all the "macho" contests
about "file size" - like Hugi and "demo coding" and such - the
actually _valid_ reasons for this are often clouded by that kind of
stuff getting in the way...but, for example, if you can make it
<1.44Mb then you can put it on a floppy disk, allowing it to be easily
transported...if someone's downloading it on a 56Kbps modem, every
additional megabyte is (roughly) 1 minute and 14 seconds onto the
download time...and that's presuming things running at maximum
bandwidth, which is rarely actually the case in practice...on our home
machines, we might forget that disk space can be put under "quota" by
an administrator on a school or business network...each additional
megabyte puts us in danger of "breaking the bank" on something...and,
for example, when you "break the bank" on 1.44Mb, you've just lost
yourself an extra ability of moving the program around on a floppy
disk...if you "break the bank" on download times (the user goes to the
webpage and reads: "estimated download time: 7.23 Ice Ages" and
_rightly_ thinks "Well, sod that!") then you can _lose_ users...also,
if you've got a nice "always on" connection, you may forget that
others still on "dial-up" (and a certain amount will _remain_ on
dial-up simply because the economics and convenience makes sense for
their situation) often have "cut-off periods"...my ISP - when I was on
dial-up - used to do this...to avoid people "hogging" the system by
simply logging on and then leaving their machines just sitting there
connected all week long, there'd be an "automatic cut-off" after a set
period...well, for certain massive, massive files - Windows SDK and
that kind of thing - it actually proved _impossible_ to download them
using IE's standard downloader (which always starts from scratch and
doesn't know how to "resume" a partially downloaded file)...they took
longer to download than was allowed for a constant connection...it
would just cut-off half-way through! The annoyance factor is a major
thing, trust me, and those extra megabytes could have someone cursing
you and happily saying "to hell with you and all of your programs!" in
anger...
Plus, small file sizes are simply tremendous...once you experience
them, you don't want to go back to Microsoft "bloated" crap ever
again, if you could only choose to do so...for example, I was playing
around with my C64 emulator and downloading tons and tons of "demos"
and programs, all of which were downloading so fast (well, 170KB
_maximum_ available on a disk using both sides! ;) that by the time
the "download" dialogue had appeared, it already said "download
complete"! Then a friend who also enjoyed a bit of nostalgia over
these old 8-bit machines said: "Woah! Those demos are cool! Can you
Email them to me?"...and, like, sure, I can Email you tens and tens of
these things because they are so tiny...and, remember, though C64
games aren't comparable to PC versions, these _are_ complete adventure
games and action shoot-em-ups and such...with a simple program,
there's no particular reason why we can't get down to similar sizes...
Anyway, I shouldn't really go on about file size but, as I say,
there's other important reasons...laying it out "flat" is also poor
structure from the perspective of "code re-use" and "reliabilty"...one
"room" can have a bug in it while another has a different bug and the
rest of the rooms work just fine...basically - though it's a bit of a
simplification, it's fundamentally correct - the bigger the code, the
more places where it can _go wrong_...
The "push come to shove" point being that the nature of the program is
automatically perfect for "code re-use" - by which greater reliability
as well as smaller size can be got - in creating a "room printing
routine" and a general "parse the user input routine"...generalising
things so that, ideally, there is a "game engine" which accepts _data_
that defines the adventure...
This, of course, is the usual and standard way things would be coded
for a typical "interactive fiction" program...in fact, there are
"libraries" and even pre-written "engines" where you literally only
have to supply the map and your imagination - the "scenario", I think
those D&D people like to call it, right? :) - the "engine" dealing
with the rest...
Which, of course, is another _massive benefit_ to coding things this
way as well...once you've got an "engine" then you can actually
"re-use" the entire thing, simply swapping one "scenario" for
another...one adventure can be about slaying dragons and then other -
using exactly the same "base", merely swapping the "room", "item" and
"character" data (even better, stick these into include files or
separate ".pak" files that the program loads up off the disk
dynamically then you can literally "plug and play" these things...if
you want proof of this, then go ask that "counter-strike" addict about
all the maps he's made and downloaded ;) - can be a "film noir" Dick
Tracy detective story...completely different "adventures" and you can
create tons and tons of these without needing to change one line of
code in the actual "engine" at all ;)...
Of course, "The Gospel According to Rene" states that "code re-use" is
"evil" and could never serve any purpose but to "bloat" a
program...admittedly, when people misuse, in ignorance, poorly written
(Microsoft) "object frameworks" which waste time and memory making
things often _more complicated_ than simply programming these things
directly then, indeed, these things conspire to make a program
"bloated"...
But Rene has jumped to one of those "this = that" conclusions which so
often prove to be entirely wrong...and, in this case, that's exactly
what's happened again...because, in fact, "code re-use" will _greatly_
improve this program...and we're not just talking about "de-bloating"
the program's file size...we're talking about making it more flexible,
more reliable, much easier to code and a whole bunch of
not-insignificant other advantages...
Rene's more "on his own planet" than you, Randy...but you both seem to
be missing the forest because you're concentrating on the "minor
details" of all the trees...
That was why when I looked at Paul's program, the very first thing I
did was write up that example program of mine which demonstrated at
least the basics of a much better approach to take...that, to my mind,
was worth a million discussions of "assembly rebirth" / "code
libraries are evil!" / "stdout.puts generates 60 lines less of code
than stdout.put does" / etc....
Fair enough, unlike Rene's points, you're not "wrong"...but you might
be standing a bit too close to your standard library code not to have
seen the more important "wider issue"...the fundamental structure was
"naive" and that was causing problems...among which, granted, the file
size wasn't particularly important...but, as I say, it was a _symptom_
of a much more fundamental problem...
> > Hence, if instead of repeating "stdout.put" over and over with
> > hard-coded string constants, he'd written a _generic_ "room
printing
> > routine" which grabbed the name, description and stuff from data
> > statements, then they'd only be a few "stdout.put" statements and
it
> > wouldn't have expanded to anything near the same size...
>
> Well, it would have been somewhat smaller. But unless he was
> repeating the same strings over and over again (which I don't
believe
> he was), then each character in that string data is going to take up
> the same amount of space no matter where you put it.
Oh, you underestimate how much of a difference it would make here, I
believe...and I'd be slightly worried to see any of "Rene" rub off on
you because he's put you "on the defensive" all the time about HLA and
your own qualifications...after all, we _know_ you're in a different
league, Randy...if no-one's mentioning it, it's only because we all
consider it to be exceedingly "obvious" that this point should be
"taken as read"...
Why do I say this? Because I read in the "Great Debate" - that you
yourself penned - how you made a point of noting that ASM programs can
often be _significantly_ smaller in size than HLL programs...and you,
rightly, stressed that this is all the more amazing a fact when you
consider that "data is data" (regardless of language used, a byte is a
byte and always 8 bits...well, okay, 9 bits on some older mainframes
but you know what I mean..._data_ is identical in size and nature
between all the programming languages)...
This was a very important and good observation, Randy...I would hate
to see you deciding to "go back" on it simply because Rene's nonsense
attacks - which, by the way, most people aren't really paying
attention to (I join in for the "comedy" and "chat" involved mostly
;) - have got you "on the defensive" that you're now automatically in
"don't concede any points" mode...as I warned before your "onslaught"
and has been more or less confirmed by a few posters posting up "I
respected you until you started this series of attacks", the _main_
victim of any attack tends to be the attacker, not the attacked...
Anyway, anyway...you're correct that the strings will still be the
same size...but, then, we're not printing string constants
anymore...there's not only the possibility of "code re-use" here but,
also, "data re-use"...the room descriptions - unless a compression
algorithm is applied to them (note that this "game engine" / "game
data" scheme also helps make ideas like ZIPping up the game data -
even on-the-fly decompressing of one room at a time should RAM
conservation be an issue - very easy to implement too :) - aren't
likely to be repeating themselves much, it's true...but things like
"verbs" to be parsed will be...rather than hard-coding the constants
"north", "south", "east", "west", "up" and "down" into a series of
"if" statements for _each and every room_, you have one "user input
routine" which deals with parsing "nouns" and "verbs" and such in one
place with one set of words (the "vocabulary" of the "game engine"
:)...
But, still, the point about "data is data" is still true...but this
change will make a _great_ impact on the size of the code...a feel for
exactly how much could be seen by comparing the sprawling code Paul
had with the code I provided in my example...for every additional
room, Paul's code would be spitting out a series of repeated
"stdout.put" macros (yup, you do _reduce_ this substantially by using
"stdout.puts" but the main problem here isn't actually the _amount of
code in the macro_, it's the fact that it's being expanded many. many
times over)...my example code _only_ required four DWORDs - 16 bytes -
in addition to the natural length of the room's "name" and
"description" strings...these extra bytes being a bunch of "pointers
to ROOM" for each direction the player can move in...only being five
rooms in size, my example code might not have demonstrated the quite
large difference this makes...
Essentially, it's an arithmetic thing, so let's try an illustrate it
more clearly...with my program, there's the "raw" room data plus _one
set_ of "room printing" and "user input" routines...adding more rooms
only adds the size of the "raw data" of the room description strings
and so forth...whereas, with Paul's original method (he wised up
thanks to Frank showing him the light...I was actually _late_ in
posting my code - because I was actually working on writing that
because making my reply, while Frank dived in to describe it so he got
there first - in fact, that I wasn't the one who made Paul see a
better way to do it...but, well, I was late _because_ I'd actually put
together an example in which he could _directly see_ what it was all
about...heck, my posted code is public domain always so he could even
use that code directly and expand on it, I'm happy enough with that
:), there was the "room printing" and "user input" "overhead" for
_each and every room_, in addition to the "raw game data" for that
room...
As the "map" for the game increases, Paul's method - even vastly
reduced by your, yes, good suggestion of using a "more direct" library
function which makes the "overhead" per room much smaller - increases
at a massive rate...for every room added, we're getting the "room
printing" and "user input" code duplicated again and again and
again...
Hence, this is why I'm picking on this point here specifically...and,
well, not letting you get away with _just_ the comments you've made so
far...because the issue here was that we were adding _duplicated code_
for every single room added to the map as "overhead"...and, in nature,
every room follows a similar "room printing" algorithm (the output is
formatted the same for every room :) and every room has the same "user
input" algorithm (and _should_ have too...because it would be a very
strange "adventure" indeed, where all the different "rooms" in the map
have their own "personal vocabulary" different to all other rooms in
the game...in room one, we say "go north"...in room two, we say "head
towards the Pole Star"...in room three, we say "Polariswards"...in
room four, we say...well, actually, as the invented nonsense of
"Polariswards" suggests, I'm completely stuck for thinking up any
other synonyms for "go north" ;)...
There, in contrast, was effectively no "overhead" per room with the
structure I was suggesting...the "raw" room data - which other than
compressing it or something, can't be reduced or removed without
actually changing the very adventure itself - was all that was
needed...and, basically, as we're saving all this "overhead" per room,
which will soon mount up to a _significant_ amount...imagine
"overhead" of only 250 bytes on, say, 100 bytes of "room data"...and
then a map with one hundred rooms...that's (roughly) 24KB "lost" for
only 10KB of "raw data"...now, imagine two hundred rooms...five
hundred rooms...a thousand rooms...again, as this just an adventure
game, figures like 24KB and 10KB aren't anything to worry about when
it comes to RAM or hard drive space...but that's NOT actually the
point here...you were certainly right that it's somewhat immaterial...
The point is that we're _only_ adding on the size of the "raw data"
and no overhead...the point is that everything is processed in _one_
"room printing" and _one_ "user input" routine...as we're making
savings of 24KB and such here, then we can _complicate_ these
routines...we can make the "room printing routine" do extra things
like plot out a little ASCII "map", list out the "carried items" down
the right side of the screen, add a mouse interface, etc...the "user
input" can get really clever with intelligent parsing that doesn't
blink at "plant the pot plant plant in the plant pot pot" (historical
note: this was roughly the phrase used to demonstrate how "fantastic"
the parser on one of the first Amiga adventure games to use graphics
actually was...I, unfortunately, forget the name but I still remember
the impressive "courtyard with fountain" graphics printed in the
magazine review to which everyone said "wow!"...bet it would look
pathetic to look back on it now, though ;)...and we probably won't
even make 10KB...the amount saved means that the game can be vastly
improved and _still_ come out as significantly smaller on the disk...
Plus, if we're learning "How to Write Great Code" then shouldn't we
note that the practice of not hard-coding constants but using "EQUs"
at top of the code - where we only need to change the single "EQU"
line at the top, rather than go through every line of code in the
program changing every instance - can be expanded and applied to the
entire program itself...imagine Paul decided he wanted to "change the
look"...room descriptions should now be yellow text and _below_ the
user input area...plus, for convenience, we're going to add
"abbreviations" to the user input...you know, typing just "N", "S",
"E" and "W" as shorthand for "Go North", "Go South", "Go East" and "Go
West"...
With my suggested structure, you simply alter the "room printing" and
"user input" routines...there are only one set of these routines...you
only change it in one place...on the other hand, with code repeated
over and over for each room - even ignoring the massive "overhead"
we're generating in doing this - you'd have to go through every
instance of eery room altering the colours and text positions and the
user input parsing...one room: "no difference!", two rooms: twice as
much? "Who cares?", three rooms, ten rooms, one hundred rooms: "Oh,
crikey! I should have listened to Beth! I'm drowning in code here!!"
;)...
Plus, _reliability_...once you "perfect" your "room printing" and
"user input" routines to make them bug-free, then your _entire
adventure_ is bug-free...using the original method, it's perfectly
possible for one room to have one bug, another room to have a
different bug, fifty rooms (because they were all "based" on "cut and
pasting" an earlier room and "changing the strings"...but, oops, there
was a small bug in the first room that got copied fifty times ;) while
the rest are all perfectly fine (and, coincidentally, they are all
near the start of the adventure and Paul can't be bothered to "walk
too far" around the map during his testing...then he releases his game
to the public and gets swamped by "you can't complete this game!! Room
35C - which you have to enter to get the magical axe - has a bug that
crashes the game if you've picked up the rope beforehand but you've
got to have the rope for room 36E!! This makes it impossible to finish
the game!!! Swindler!! I want my money back!!"...sounds unlikely? Then
you never heard the fuss about "Jet Set Willy" then, did you? Or,
worse, the first versions of "Quo Vadis", where there was a prize for
the first person to complete it and send back the "secret
password"...some people even suspected that the "impossibility
problem" was not actually "accidental" and it was a cheap way to get
out of giving away any prizes...but I actually buy their
"incompetence" excuses, knowing the traditional amount of care many
"hacker" programmers take in chasing bugs away...and _everyone_ was a
"hacker" in them ye olde dayes...mind you, not that any of this comes
even close to Microsoft's "I can't even use this operating system for
more than two hours without it going blue screen on me!!!" ;)...
And, basically, it would be difficult to argue against what I'm
suggesting...because, really, what I'm doing is passing on the
"accumulated wisdom" that the game industry developed over
decades...as of "DOOM", "Quake" and such, people _only_ talk about
"game engines" and every game comes complete with its "map editor" and
a "community" trading their own maps and models and scenarios...it
can't be stressed how much of an "inflection point", as Carmack
himself put it, DOOM actually was...and it wasn't even a _proper_ 3D
game (check the map; It's an "enhanced 2D" game, so to speak...the
"third dimension" was an incredibly clever Abrash "optical illusion"
and that's why you could shoot zombies standing on platforms high
above you and still, weirdly, hit them...it actually _doesn't_
"texture map", so to speak...it just splits up and stretches bitmaps
;)...because, as I say, now pretty much every game - even Microsoft's
"Age of Empires" and stuff that you might initially not suspect
because of it being a completely different kind of game altogether -
has "game engines" and "map editors"...because DOOM, Quake and all the
"clones" thereafter simply _proved_ the concept that no-one even
considers anything different anymore...
> > The _exact same thing_ would completely apply to BASIC, Pascal,
C++,
> > C#, Perl, NASM, MASM, RosAsm, etc....it was an _algorithmical_
issue,
> > not anything to do with the language used...and I posted up my
example
> > code to demonstrate the different way to do things that not only
is
> > going to be much smaller but is actually easier, more flexible and
> > more "robust" (because rather than having loads of different
> > procedures for each room, there is only _one_ procedure which
pulls
> > the room information from _data_ statements...so, once you
"perfect"
> > that lone routine, all rooms will work perfectly...while having
each
> > room hard-coded leads to the possibility of a "bug" in one room
but
> > not in other rooms...this is actually "code re-use" in actual
> > _practical_ use, basically :)...it's just a general "rule of
thumb" to
> > "avoid hard-coding" and practice "code re-use" where possible...
>
> With Rene, here's how it works:
>
> 1. "You can do this in HLA, otherwise there'd be example code
showing it."
>
> When example code appears:
>
> 2. "Look how bad HLA is, you have to write an example program to
> prove you can do things with HLA that can be done with other
> assemblers."
>
> Amusing how it works, eh? He could turn winning the Lotto Jackpot
into
> a negative event ("Look at all the taxes you've got to pay now...")
Yup; But I'm wondering what his reaction would be if the HLA example
code proved significantly better than any of his RosAsm examples by a
margin? Probably the same thing but wouldn't he make a complete dick
out of himself arguing "black is white" so strongly when everyone else
can clearly see he's not got even a wooden leg to stand on ;)...
> > > ... and when i provided him with Links to real little games
> > > written with RosAsm, he answered that those Dx thingies were
> > > nothing significative at all (the AsmGgess SpAce Games, for
> > > example...).
> >
> > Actually, I'm going to side with you on this point, Rene...these
kinds
> > of "demos" are important, useful and fun...and I've actually just
been
> > talking to Randy in Email exactly about how it is somewhat "poor
show"
> > that HLA doesn't have something similar at the moment...in fact,
to
> > Randy, this little "coincidence" here that you've mentioned
exactly
> > what I was talking about to him does help me say "See? I did tell
you
> > this stuff _is_ something people are expecting and looking for"...
>
> Personally, I'm more interested in real applications written in HLA,
> like Roger's 6809 assembler, than in little demos. HLA, after all,
> has over 100 "demo" programs already appearing in the "Examples"
> download (some trivial, some more complex). Yeah, someday it
> would be nice to move them to web pages so people can see them
> on-line and that would help promote HLA.
>
> Still, it probably wouldn't hurt to start a "user demo" page just to
> give people the "warm and fuzzy" feeling of knowing that other
> people out there really are using HLA.
Plus, of course, "salesmanship" has _NOTHING_ to do with
"functionality"...it's all about pretty colours and flashing signs and
psychological smiles...and that's the same mistake the computing
industry makes over and over because, _to geeks_, (note: I am a "geek"
too, it's not said in an insulting tone at all :) we're all impressed
with "54.76Hz" ratings and all the minor details...but we're as
"weird" in being like this, as everyone else looks on the person who
refuses buy any stainless steel soda pop cans because "it's materially
inferior to aluminium production"...the same "huh?!? Are you mad?"
reaction to that is the more universal reaction to "geeky"
obsessions...
I mean, otherwise, wouldn't Las Vegas be universally shunned for its
promotion of gambling addictions and other "sleazy" behaviour?
Wouldn't everyone reject Coke and pizza because the "nutritional
content" wasn't healthy enough? Wouldn't religious institutions
automatically reject all war as a matter of principle rather than
cheer it on or even _start_ the bloody thing?
Welcome to the wonderful world of "Barnum"..._one_ "pretty picture"
(with a "kickin' soundtrack" as well, they'll fall to their knees :)
will "sell" a million times as many "units" as six hundred
"functionality" examples that, indeed, hash beats binary beats
linear...or that we should all use "quicksort" or something...
This, of course, is not at all logical...but, then, as Mr.Spock
reminds us (before I accidentally killed him in an earlier post ;),
humans aren't particularly logical at times...and, indeed, as you read
through all those "boring" compiler theory texts that have sent Rene
to sleep, you _are_ doing something far more concrete than the
"hacker" making little dots bounce around the screen...but what _IS_
good and what merely _looks_ good are different things (just ask
Microsoft; If not for "pretty graphics", they'd have been found out
decades ago by _ordinary users_, as well as us programmers who are
able to "look behind the mask" to see that it's just _utter
crap_...but, well, it _is_ crap that's painted a very nice shade of
"desktop cyan"..."hmmm, how pretty!" and, in that moment, Bill Gates
manages "Bluff #37" that turns him into a billionaire ;)...and, on
that point - if you really think about it - that's probably the _only_
thing keeping RosAsm afloat at all...the smiley faces and spinning
cubes...it's pretty "dubious" on many other scores but: "Look! It can
do pretty pictures and so can you!"
I mean, another way to look at it is, _why_ did only Iczelion's _GUI_
examples revive Win32 assembly? Console applications are hardly that
radically different in nature to DOS applications...Linux code is even
arguably _easier_ than DOS because "bye bye" real-mode addressing and
other horriblenesses...no "pretty pictures" or "widgets" or anything,
you see: too "booooring!"...everyone wants "windows" and "icons" and
stuff in their Windows code or, well, might as well stick to simple,
familiar, _known_ DOS code...
With only _one_ perfectly crafted "pretty pictures", the point will be
proved totally..."salesmanship" has _NOTHING_ to do with "being right"
or "being correct in improving productivity" or "high quality"...
I mean, the evidence is pretty clear: Windows is the dominating
operating system as it "blue screens" everywhere, McDonald's are the
biggest restaurant chain serving up those "cardboard" French Fries (or
is it still that childish "Freedom Fries" nonsense still? You know,
it's _still_ French-style whatever you rename to...now, if you served
up "spicy potato wedges" instead, than that would be saying
something...but that would ruin McDonald's "profits production line"
mentality...well, buying actual _potatoes_ instead of that
"cardboard-based potato substitute" they serve would mean actually,
like, spending money (gulp!!)...mind you, you could have always
avoided the issue entirely by just calling them "chips" like we do in
the first place...hehehe ;) and "lukewarm"
every-single-part-of-a-cow-crushed-together burgers of theirs, NSync
and Westlife getting all the awards for selling the most (supposedly
musical) singles that year, "lots of babes but no appreciable plot
whatsoever" Baywatch gets all the ratings (correction: Pammy's
_artificial_ chest gets all the ratings...the rest of the show just
"comes along for the ride" ratings-wise because the ratings system
isn't that finely grained), etc., etc....yeah, and everyone's going to
Las Vegas because of its "sophisication" and "educational
value"...sure...and Bush (and Gore when he was campaigning against
Bush) is an example of the "very best that America can offer" (of
course not...but it's this "common misconception" that a world leader
represents the "best" of a country that is probably the reason why
Rene and others presume that this must mean that Americans are all
"dumb Nazis"...well, if Bush (and Gore) were really "the best" - which
they aren't by any means - then you can sort of appreciate the logic
that Rene thinks "what could be worse than this?" and comes to the
conclusion that Americans must be severely, severly fudged up in a
major way ;)...
Plastic, synthetic, "cardboard substitute", pretty pictures covering
incompetence, artificial people, etc....what on Earth makes people
think for a split-second that "ratings" has the slightest thing to do
with _actually_ being any good or having quality or whatever? I
repeat, there's NO connection whatsoever..._if only there was_, then
half of the world's problems would disappear overnight...
> > Unfortunately, Rene, what I'd determined was that this was a "gap"
to
> > be plugged...on that, you and Wannabe are quite right...as time
goes
> > on, you should see this issue beginning to be resolved (hence, if
you
> > want to keep your "advantage" here, be warned that there will be
> > attempts to "catch up" coming as time goes on...that is, you _are_
> > ahead in this race that if you want to _stay_ ahead, don't forget
> > Aesop's "The Tortoise and The Hare" fable...see? We're really kind
to
> > you, Rene, and you _never_ seem to realise this...I'm actually
> > _fore-warning_ you about what's likely to happen...and I _still_
bet
> > you won't do anything even then ;)...at least, from the
perspective
> > that I'd be willing to help start "the ball rolling" in that
> > direction...obviously, there's not much that Randy can directly do
> > about other people setting up their own "what I've written in HLA"
> > websites (posing as someone else and publishing his own code is,
of
> > course, "cheating" in a very big way ;)...and, this "absence"
_is_, to
> > my mind, a cause of concern..._something_ is amiss or this kind of
> > thing should be springing up of its own accord...one factor is
that
> > HLA _is_ targetted at beginners and, therefore, I suppose there's
an
> > element of "give them some time to actually learn something first"
> > involved...but, true, there seems to be something more than
this...I
> > personally _DON'T_ believe its a HLA failing because I've used it
and
> > it's more than capable for such programming...in fact, I'd find it
a
> > _lot_ easier to code something in HLA along these lines than
RosAsm
> > (but I will be fair to point out that there wouldn't be _that_
much of
> > a vast difference between the two, that it's not meant to be a
> > criticism that RosAsm is "bad"...the comment is actually that HLA
is
> > "good" for this stuff as well, that the "absence" _is_ quite
> > strange)...
>
> The reason for this gap (and it may very well continue for some
time) is
> specifically the clientel the two assemblers attract.
It's most certainly a major element in it, anyway, for sure...I
generally don't believe in "only one cause and only one effect"
because the world's too complex and chaotic to work that simply...for
instance, _someone_ out there, I bet, went with "SpAsm" for no better
reason than it had a "better sounding name" than HLA (and were already
"accustomed to how it works" by the time of the name change to stay
with it, even if they don't particularly like the new name ;)...or
just that Google threw up Webster before RosAsm and they were "too
lazy" to put much effort into searching...
Plus, there's other to consider...those with "political issues" are
_very likely_ to run around shouting at everyone about
"morality!"...while newbies probably only bother recommeding by "word
of mouth" when it's a friend because they are "new" to all this stuff
and don't know many people who do this "ASM programming" stuff...and
"word of mouth" is, of course, _THE_ best advertising that there
is...it's _gold-dust_...literally stuff you don't dare touch, lest you
break it...which is the crying pity that Rene didn't realise this and
with his "spouting off" in all directions, he created much more
_negative_ "word of mouth" about "have you heard this madman?" than he
was getting from "politically motivated" followers spreading the
"moral" word to their colleagues...not that this is specifically a
_big hint_ NOT to play Rene's game under any circumstances,
Randy...but, well, haven't some of those replies you've received in
your latest "attack" been _especially_ pointed...oh, I know, I
know...what about me with Annie? Surely I'm worse...well, yeah...BUT
I'm not selling anything...the only thing I can "taint" is my own
reputation and, well, if that concerned me too much, then I'd sit
quietly in a corner saying very little and not saying things like
"yes, I'm quite insane" and insulting Bush (as, well, _some_ Americans
somewhere must have voted for him...even if it's not as many as was
actually counted up as his eventual vote tally...not that I'm
suggesting anything about the esteemed non-President in saying that,
"of course" ;)...
> Most beginners are incapable of using RosAsm. Despite the fact that
> it has an IDE (the advantage is rapidly disappearing as people
discover
> RadASM is so much easier to use), there is almost no support
available
> for the beginner who wants to learn assembly langauge programming
using
> RosAsm. So you'd better already know x86 and participate in the
RosAsm
> Forum if you want to get anywhere. Naturally, those people are going
to
> be able to create somewhat more sophisticated demo programs than an
> absolute beginner trying to learn assembly for the first time. The
only
> problem with that approach is that *most* people who already know
> assembly language are quite happy with the tools they're already
using.
> So unless they've got some political problems with using a product
like
> MASM, you're not going to attract *too* many people to a product
like
> RosAsm. I would be astounded to find that Rene's user base numbers
> above 1,000. I'd guess the low hundreds, if that many.
Yes, I agree...
...except on the part where "ratings" is some sort of measure of
"greatness" and "high quality"...or the implied advice of that to
merely go with "popular" regardless (which, of course, would be
MASM...and would _STAY_ MASM if everybody only went with "most
popular" and daren't step outside to see if something - like, say,
HLA...or RosAsm...or NASM or FASM - might actually prove to be
_better_ for them...and, of course, the other problem with "only ever
go with the most popular" is that, as long as new users keep coming
and keep following such advice, MASM will win...and, ten years later,
we check and MASM is still there...and, thirty years later, we check
and MASM is still there...and, a hundred years later, we check and
MASM is still there...this is because "always go with ratings and most
popular" advice leaves no room for anything else - and _everything_
starts out "obscure", every great warrior and leader, bold, was once a
small defenceless baby in mother's arms, that it is no
crime..._NOTHING_ was "born popular"...well, except to the audience of
one or two "parents" who would always Love their child whatever - so
that it theoretically would be indefinitely...infinitely..."popular"
for ever more...and, ironically, that "popularity" turns into a curse
on everyone..."popular" and "unpopular" alike...
Granted, I understand _some_ "metric" needs to be examined and
compared in order for it to be determined, well, who has the biggest
dick...yup, substitue any "phallic symbol" as desired - top speed, GHz
rating, score in a game of Atari "Pong", etc. - it all amounts,
ultimately, to the same thing...but let me provide you with the _true_
"metric" here for my wider point to become clear: "Customer
satisfaction"...and, no, "ratings" don't actually measure that...those
"first weekend box office ratings" we all hear about measure the
_effectiveness of the hype and advertising for the film_, not the
film's actual quality...because, of course, as people queue outside
the theatre, they _haven't_ yet seen the film one way or the
other...now, there may be _some_ who went on the Saturday, were
stunned by the film and then watched it once more on the Sunday...but
that's not particularly likely...and those would be the only "ratings"
that _really are_ measuring "customer satisfaction" because when they
hand over their money, these rare, rare few _do_ know the quality of
the film before going in...
What is the real measure here is Rene finding submissions of user
demos and Emails of praise...just as, for you, it's the invites onto
TV programmes, requests for publication, Emails and posts of
praise...and, for all, those simple words: "Thank you very much for
what you've done"...
Ignore the rest, Randy, you've won the "biggest ego" (yeah, in the
end, even the "dick" is itself an "ego substitute" in these
things...otherwise, if you're receiving no complaints, then why should
it matter? Ah, because, really, it's a matter of _pride_ and _ego_,
not just merely inches ;) contest hands down on that score...yes,
Rene, "by swindles and propoganda", no doubt...you know, I don't
believe it, but suppose that assertion is actually right...it doesn't
matter once he's "won", anyway...you should know this well, Rene...as,
after all, regardless of "right or wrong", Microsoft _won_ their
contest...we can - and I sometimes do - say "in a more just world,
Apple and Motorola would have won because they _deserved_ it
more...because, at least with them, you could see them _try_ and that
they - even if money is still the central motivation - had some _Love
and Respect_ for the art...to which the 'jokers' that replaced them
evidently do NOT in any way"...but, in the end, that didn't
happen...nothing you can do about that now...recover those wounds,
move on, accept the loss and, perhaps, just try a different strategy
instead...
> HLA has the same problems attracting advanced assembly programmers
> (even more so). People already have their tools and they're not
interested
> in learning a new syntax when their existing tools serve them well.
That's
> okay, though. HLA *was* designed to provide a tool to make assembly
easy to
> learn (and yet be powerful enough that they won't outgrow the
assembler
> as their expertise level rises). But HLA has *thousands* of users
because
> it attracts an audience who doesn't have a built-in bias against HLA
(that
> is, it's geared to the person who hasn't already learn some other
assembler).
Well, yes, this is undoubtedly correct to some degree...but shouldn't
we also consider other possibilities and such too?
I mean, just to remind you, I'm one of those "advanced" assembly
programmers you're probably talking about there...so, even if the
above applies in the majority, there _are_ some exceptions to this
rule...it be "some" or even "most" the above...but it's not "all" as a
rule and I stand as demonstration of that...as Odessey was earlier
able to use RosAsm then came to HLA, because he also likes to remind
"open-minded" and "see what's out there", then - by your own logic
that RosAsm is so "newbie unfriendly" that he must have know
_something_ and had the perfect chance to get "mentally stuck" using
the syntax of their existing tools..._but didn't_ - though the above
may explain the "general case", even the "majority"...well, as I say,
I always have trouble swallowing these "only one cause and only one
effect" simplifications...it's not "all"...and that implies that you
may NOT have _everything_ completely sewn up yet...
Note, that my "user demo" suggestion was - unexpectedly,
actually...quite a coincidence - echoed on the newsgroups
independently...and then, once mentioned, a whole bunch of people have
also dived on this, as a: "yeah, actually, good point...where are
these things?" deal too :)
> Clearly, the group that HLA is attracting is *not* in the position
to write
> really cool assembly demos right off the bat.
Well, "Clearly, the _majority_ of the group that HLA is attracting..."
and then you can finish off that sentence...
Some were and are; But, in addition, the "how to control your HLA
code" paper only turned up after criticisms regularly cirrculated that
it was "impossible" in HLA...you know, up to that point, even _I_
thought "oh, there's some code that gets added that you can't do
anything about" with HLA...but just thought and thus argued that it
was probably just minor startup code so it didn't really amount to
much...I'd thought that, perhaps, you could get "damn close" but that
complete control was, perhaps, not possible...it was only with that
paper on the matter when I saw and _knew_ that "only what you write"
_was_ 100% _possible_ with HLA...and I was _looking_ and wasn't
automatically "biased" against it...rather, very Hopeful - as it
seemed very powerful and had lots of features I could see as being
useful and, indeed, invaluable - that I'd _look_ and _find_ that,
indeed, there was no big "but..." hidden in the small print
somewhere...
There is also, to an extent, a minor bit of "neglect" for "advanced
users" too...now, I _don't_ want this to be taken out of proportion
and upset anyone, because I don't mean it quite as melodramatically as
the word "neglect" automatically sounds...what I mean is: The
beginners are given their "Hello, world!" example (using all the HLL
structures :)...but the version for "advanced users" (using more "raw"
ASM and "complete control" :) is only found tucked away inside a
"complete control" paper a few pages deep on your website...
Of course, _once_ you know it's there and read it, there's no
problem...and the fact that HLA allows this shows that you certainly
_intended_ "advanced users" - perhaps not as many - to come along or,
of course, for your "beginners" now when, eventually, they "graduate"
to "advanced" themselves...so, as I say, "neglect" might, indeed, be a
slightly overly melodramatic way to express it...
But, essentially, though "advanced users" _can_ root things out for
themselves, there hasn't really been any "formal invitation" over to
HLA...what I mean is, can't the little "promotional posts" show the
HLL "Hello, world!" and then mention "as you advance in your skills,
you will learn how to completely control all of your ASM code" and
then provide the "advanced" equivalent...which not only gives
something for the "advanced" coders to look at and go: "Oh, look! HLA
can do that kind of thing and it's NOT really that appreciably
different from what I'm doing in MASM, if I translate the syntax
differences"...but it also "invites" the beginners to also see that,
sure, that "advanced guru" who's showing interest in this "advanced
code" seems happy with HLA...that _confirms_ any promises that "HLA
will grow and evolve with the beginner as they learn"...
Remembering that, of course, _NO-ONE_ takes what _the author_ has got
to say automatically at face value...because, well, you're wise to
treat anything from someone with a "clear vested interest" with a
degree of suspicion...well, if a brush salesman comes to the door and
says "with my brushes, you'll never have a single worry ever again!!"
then none of us automatically believe him...that's why the brush
salesman usually gives a _demonstration_ that it's not bullcrap but
honestly a real benefit of his brushes...
Hopefully, you get what I mean by "neglect" here...I'm not saying you
haven't done anything or don't care...I just mean that the focus on
_newbies_ has often "blinded" the issue for advanced users...still,
right to this very day, unless they've _gone_ to look at "how to take
complete control" (or, perhaps, to a lesser degree, that -
unfortunately, unfinished - HLA code I posted before where I _had_
"taken complete control" :) then the "advanced user" still has nothing
more than your word - which is only actually mentioned when coming
under criticism about "not being real ASM" rather than offered as part
of your "new HLA release" posts - that this is possible...or any idea
how it may work...though such people should probably keep their mouths
shut when they clearly don't know what they are talking about, the
"phantom book reviews" were, in a sense, a "symptom" here...if there'd
been a post where you mirror up the "how to take complete control"
example with _examples_ showing it at work then this would have
educated on this point...not only would much of the "phantom book
review" stuff have gone more quiet but, as I say, it's an "invite" for
the "advanced people" to have a look...
And, yes, you tried this once long ago...and those arrogant,
opinionated, stuck-in-the-mud "advanced users" started kicking up a
fuss and screaming...don't take that personal...the truth is, even
such users _still_ need "invites" and "examples" to tempt and educate
them to give HLA a look-see...they kick up the fuss because of
"perception reasons"...well, people expect their "advanced gurus" to
be "above" being taught and instructed...so, the kicking and screaming
is merely "ego protection" and nothing more...behind the scenes, the
_rationally-minded_ (so, not Rene...but then Rene has his _own_ tool
so, really, there's no surprises that _nothing_ else satisfies
him...it's only natural for a "parent" to be "rather fond", at least,
of their "children" ;) "advanced coders" out there _are_ giving it a
look-see when you actually just make a simple post to point out these
things...
Do you know how I know this? Because, as I say, it was when - after
pressure from others claiming "HLA can't do this!" - that you added
"how to take complete control" that _I_ went "behind the scenes" to
have a look at that on Webster...somewhere around that point, Randy,
when was I wasn't just defending HLA for the sake of it being
potentially good for beginners and maybe useful for writing "quick and
nasty" applications quickly (you know, a case of "look, give Randy a
break here because he's helping out _beginners_ and they are happy
benefitting from that, whether you "advanced coders" are or not" :)
but just defending HLA _in its own right_ and realised the true
"injustice" going on that, because of the obvious and clear focus on
"HLL" examples to target beginners, a perfectly 100% valid product was
being given a "bad name" totally unfairly, unjust and unjustifiably
so...
You are, of course, entirely right to target beginners...that was the
original point and the main target audience...and it was to assist in
teaching ASM...and also correct in being careful not to greatly
"taint" too many of your promotional posts with "inpenetrable advanced
coding topics" that could confuse and turn off beginners...indeed,
this was all correct...
But, in all this time, not one post doing the "advanced" equivalent
just to show those coders that HLA can also do that too? Yes,
labelling "advanced" at the top to let the beginners know that, at the
moment, they needn't concern themselves with that stuff because these
are the topics they'll reach later on eventually but not at the
moment...or the "demo section" that goes beyond merely backing up AoA
(after all, AoA is _still_ the text "for beginners", so to
speak...hence, its examples are "beginner" examples...yes, some are
_impressive_ but the different "target audiences" are expecting
slightly different things in their "demos" :)...
Some - albeit small, granted - "blame" lands on this, as well as
Rene's ranting, that HLA didn't catch people's attention as quickly as
it probably should have...in a sense, Rene _did_ succeed in one
thing...he "distracted" you with making direct responses to his -
usually preposterous - accusations...if these had been more like your
"article-like" posts which cover issues clearly and sensibly, then
we'd probably have reached that kind of "advanced post" I've been
disappointed by its absence (in the end, I made my offer to,
basically, "do it for you", so to speak...because I could see more
Rene battles and it wouldn't be forthcoming while that was going
on...and that's slightly ironic because if "advanced" users had been
catered for and _shown_ all about HLA, then those who would be willing
to look and perhaps move over to HLA would have done so...that, in
fact, would have made a far, far better job of "countering" Rene's
ranting than, perhaps, anything else...the "Gandhi" approach, if you
like...when Rene attacks, let him be...instead, concentrate on the
_actual facts_ and presenting them to people...to just NOT engage the
"enemy" at all...basically, what we've all been advising Rene to do
because, deep down, though we _ALL_ "react" to these things (like,
yeah, I went on for years with Annie until I simply realised I was
doing it all wrong...she, more or less, _depends_ on me making posts
that if I cut off her oxygen, then she simply "deflates"...Rene is not
just no different, I believe, but it would prove _even more effective_
;), in the end, the best strategy is to simply carrying on _promoting_
what you're doing and keeping out of fruitless arguments that never go
anywhere or lead to any "conclusions"...well, other than for a bit of
"sport" now and again...
Truth is, Annie did get one thing kind of right...we _all_ tend to get
overly serious and forget to take those few steps back and take a
break now and again...we, indeed, _should_ just "get over it!"...if
only I'd _immediately_ taken Annie's advice...NOT in the way she meant
it, mind you...but the essential idea's on the money...I can still
care passionately and seriously about issues close to my heart...but
playing "neurotic-downward-spiral ping-pong" on the newsgroup about it
tends to just make things _worse_, rather than better...
In fact, we've all been warned...Godwin's law...the rule that after a
few layers of posts, there's never any real argument left, just a
stream of "flame ping-pong" posts...once Rene invokes "you are all
fascist Nazi Americans" then, indeed, the "law" is always usually
exactly on the money...you're _never_ going to get a reasonable
argument from Rene - or, to be fair, anyone else either - once they've
resorted to arguing on the fact that "everyone is a Nazi!"...note, due
credit to Rene, Phil's "monkey fuehrer" was much the same thing...
The point I think might be best summed up like this: Even when "on the
side of angels" (though, of course, _everyone_ thinks that and
_someone_ has got to be wrong about it ;), you've _STILL_ always got
to be careful of NOT "falling from grace"...Lucifer, so the story
goes, was once "archangel" and God's "favourite"...His "right-hand
man", so to speak...so, if even one of the greatest angels - who
pleased God more than any of the others - could "fall from grace" so
hard and harshly to become the very symbol of evil itself...then,
however "angelic" and "righteous" the "cause" - even if we may have,
indeed, began "on the side of angels" - it appears _NO-ONE_ is exempt
from having to be careful of not "going over to the Dark Side"...you,
me, Rene...Martin Luther and Gandhi, despite _extreme_ provocation to
try to make them "react" (because they _would_ have become
"vurnerable" if they'd let themselves "fall from grace")...heck, all
the way right up to the Archangel Gabrielle (presuming there that the
job is somewhat "eternal" - rather than there being "shifts" between
all the angels for the "top job" - unless something like Lucifer's
"fall from grace" intervenes)...
Note, for those who're more comfortable seeing the above as a
metaphor, then, please, see it as a metaphor...the basic point being
that just because someone started out doing good doesn't actually
guarantee or automatically mean that they can't suddenly "switch
sides"...perhaps even "accidentally" because they got drawn into
something without thinking...
"Fear and Anger path to Dark Side is"
[ Yoda ;) ]
> However, in the past year as HLA usage has begun to really take off,
we're
> seeing a *lot* of new users sticking with the plan and continuing to
write
> assembly code with HLA. That means that over the next year or two
we're
> going to start seeing some more sophisticated apps written in
assembly
> using HLA (like Roger's 6809 assembler). And so, within this next
year,
> putting up a "user contributed" section on Webster begins to make
some
> sense.
> Prior to this point, however, most HLA programmers are just getting
the
> feel for assembly language and might not be comfortable contributing
such
> stuff.
Well, I still reckon that had "the ball started rolling" sooner then
_some_ "advanced users" may have come over to HLA and
contributed...which, itself, interests more people in HLA who come
along and contribute...and so on and so forth...there _could_,
perhaps, have been a "shortcut" in picking up those "advanced" people
who _aren't_ "stuck" with any particular tools (hey, it can't just
only be me and Odessey...well, Frank to an extent too, because those
he's a "NASM bigot" - in his own words - he never usually blinks when
MASM or even HLA code is posted up...so, though "satisfied" with what
he's got, this doesn't make him "closed-minded" :) and we wouldn't
need to depend only on beginners "coming up to speed" (mind you, once
these HLA beginners do "graduate", they'll have been "bred" on HLA so
could likely do a better job in the end by knowing the tool better,
once they become "advanced" so that all the other factors involved are
equalled out between people :)...
But, regardless, that's a "what if?" to a past that never
happened...so, whether it may or may have happened, it's not
particularly useful to the future in any way...and things will
eventually - "inevitably" unless HLA somehow expectly "dies" overnight
or something, which doesn't appear very likely at the moment - work
out for the best anyway...it's just me...the grass is _always_
greener...give me "world peace" and "end world hunger" and I'll only
complain about how long it took and how we can work to improve things
even further...this shouldn't be taken in a wrong way or
anything...just a "restlessness" at Heaven not already being on
Earth...and, you know what, if that happened, then the very next thing
you'd probably hear me say is: "So, is there anything better than
Heaven we could work towards now?"...it's just me...I just can't
"operate" unless there's another dream to aim for, basically...the old
"if you stand still, you're effectively dead" deal (which sometimes
goes too far in that I rush off with brand new "better dreams" before
I've quite finished the last one I was pursuing...but I'm trying to
reign that in and be more disciplined on such things from now on :)...
> Kudos to Paul for his HLA adventure game, regardless of what Rene
thinks of
> it :-)
Totally; I also quite enjoyed putting together that little example I
made for Paul too...I, in fact, should really eventually get around to
that "Interactive Fiction DSEL" thing for HLA one of these days
too...but, well, my "to do" list is already too big...once other
things are "put to bed", perhaps, in a spare five minutes here and
there...it would be a quite cool thing to do and have...problem is,
there's a vast difference between some specific example code and a
more general "adventure game language"...you know, working out all the
possibilties people might want (I have actually thought some of this
over when I first looked at the DSEL idea, so I can give an
example...in the thread with Paul and Frank, there was a discussion
about adding "up" and "down" for an extra dimension...and, thinking
more about that, in addition to "North", "South", "East", "West" as
well as "Up" and "Down", we have combinations: "Northeast",
"Southwest" or even "Northwest-up", if you catch my drift, as a 3D
"diagonal" direction...then we have "in" and "out" - for jumping
through a teleport or Alice's looking glass or getting into a box or
vehicle - and we can also consider the "relative" directions: "bow",
"stern", "starboard", "port" for locations that themselves move around
a wider map (say, jumping on a big cruise ship...you can walk around
"inside" the ship and need consistent directions regardless of what
compass direction the boat - or plane or spaceship, bringing in the
third dimension - is pointing in...plus, there could be consideration
to the "facing" of the player - even if we move around with "North"
and "East" directions - that when they travel North, they face North
and, hence, don't see the hobgoblin sneaking up behind them, who
automatically gets the first "hit" on the characters at the back of
the player's "party" (well, there's another idea...having "teams" of
characters...getting really extravagant, do we dare even consider
extending to "multiplayer"? Oh dear, that's really getting ahead of
yourself, eh? ;)...and so on and so forth...if making a specific
adventure, then things are pretty simple in comparison...but making a
"interactive fiction language extension" that has all the options to
allow _imagination_ to be let loose - as, after all, with these
text-based adventures, imagination is an important component or they'd
be playing "point and click" graphical adventures that show you fancy
graphics so that you don't need an imagination - and make sure that it
would all hold together....well, _that_ can actually amount to a lot
of work...but, yeah, I _do_ like the basic idea...it's just it'll have
to suffer as a much "de-prioritised" side-project...a bit like the
"idle thread", only getting attention when there's nothing else to be
doing or everything else is giving me headaches that the change will
be as good as a rest...totally a "don't hold your breath" thing
because it might end up getting "side-lined" over and over that it
simply never gets done...but, I like the idea that I've got a little
folder for it and might do stuff when I can be bothered..."slow and
steady" may or may not "win the race" in this case ;)...
> > One other thing to note is that the counter is for _Webster_
(which
> > includes many other things relating to assembly...links, MASM
> > documentation, ASM libraries, the old 16-bit AoA, etc....and,
> > actually, there's also those "Parodeity" things, which are also
> > visited but don't have anything to do with the other assembly
content
> > on Webster :)...what we'd really need a "counter" on specifically
is
> > the _HLA download page_...the figures here might not be quite so
> > high...just as I don't think Rene's RosAsm or NASM or whatever
would
> > particularly get "million hits" on their counters either...
>
> The counter on Webster is not a device for measuring anything other
than
> the acceleration of deceleration of interest in the material on
Webster.
Well, yeah, that's what I was saying there...
> Technically, there is this "umpteen gigabyte" file at UCR that has
tracked
> every hit on Webster than I could use for data mining purposes, but
> I don't really care what pages have been hit, how many downloads
> HLA has had, or what pages in AoA people are reading. Indeed, as
> UCR is kind enough to host that page (it promotes the school), I'm
> more than happy *not* knowing anything about Webster's access
> other than the hit counter. Otherwise, someone might start
questioning
> the bandwidth costs :-).
"Don't look a gift horse in the mouth", eh?
[ Although, going off on a tangent, if the "gift horse" in this saying
is the "Trojan horse", as I suspect, then wouldn't actually be a _good
idea_ to look inside the gift horse to see that there's tons of armed
soldiers hidden inside it? If they'd done that, then the tables really
would have been seriously turned...those soldiers hiding inside the
horse were in a _vurnerable position_ hiding there - all cramped up
inside the horse with little room to move and, one presumes, only a
single entry / exit that they'd be "bottlenecked" and the enemy could
just take them on one by one as they tried to escape the horse - and
would have been in _big, big trouble_, if discovered...
So, there's one "gift horse" where it would have been a _very good
idea indeed_ to try to look inside it...but, anyway, this is totally
irrelevent and besides the point, it's just - especially with the
coming "Troy" film - with the most obvious "gift horse" from history,
the complete reverse was actually true...
Not that this actually suggest people should go prying into things or
anything...just ranting in a silly and irrelevent way, as usual :) ]
> > But something is amiss...personally, I'd want to suggest that
rather
> > than fight amongst ourselves over "who has the biggest", then we
> > should actually look that _NONE_ of the assemblers - except,
perhaps,
> > MASM - can really be considered too "healthy" on this
score...yeah,
> > RosAsm has some great examples there...but then if you try that
same
> > search on something like "PowerBASIC", "BlitzBASIC", "C++" (this
one
> > is going to be stupidly massive, most likely ;), "Java" or others,
> > then _all_ assembly is much too "unhealthy"...yes, _even taking
into
> > account_ that ASM is never going to be as popular or as used as
some
> > of these HLLs, there still doesn't - at least it doesn't "feel"
right
> > to me - make the sort of "ratios" you'd expect...there's
_generally_ a
> > strange "absence" across all ASM...that's why I'd loudly applaud
> > Rene's effort to actually ask people to "submit" it to him and
then he
> > puts them up on his site for all to see...that's actually a very
good
> > and clever thing he's done there...interestingly, other tools
don't
> > seem to make these little attempts at "community"...and if Rene
does
> > _suceed_ well on something with RosAsm, I think it's fair to give
him
> > credit on that...RosAsm users _do_ contribute things back to
Rene's
> > site and this probably _does_ help to generate some "loyalty" and
> > perhaps "community" there...
>
> Too bad Rene has declared a "Holy War".
> Have you ever noticed how Hutch and I rarely make negative
> comments about other assemblers? Picking on Rene is more of
> a defensive act. Ever noticed how it quiets down around here
> when Rene goes away for a few days? I've given Rene a couple
> of years to get civilized and start behaving like a mature adult.
> He is incapable of that, apparently. So be prepared for this "holy
> war" to become a little less one-sided from now on. Rather than
> being simply defensive, as I have mostly done in the past, I'm not
> going to have any problems at all criticizing RosAsm. Rene *and
> the product* both deserve it, and have deserved it for a long time.
> Yep, it's a side-track that prevents some real work from getting
done.
> But it's one of those things that just has to be done to prevent
> Betov from possibly misleading anyone.
Well, okay...though I'm dubious that this is actually a good course of
action, I can certainly understand the motivation and rationale...
I still reckon you should just blow some people up with a shotgun in
"Counter-strike" or something to "left off steam" instead ;)...
> > As I've always said, Rene does have some pretty good ideas from
time
> > to time and this one certainly is a good one...you can't answer
the
> > "what if?" definitively but _would_ we actually be able to easily
find
> > user RosAsm examples, if Rene didn't cleverly provide people the
> > _platform_ to submit their little "demos" to him for public
display?
>
> Rene has done many good things.
> They are completely overshadowed by his attitude and all the bad
> things he has done.
Indeed; But, for everyone else, we can "extract" those good bits from
all the bad bits...as Rene _hasn't_ done in getting "clued up" on
compiler theory before starting, we can take this and learn from _his_
mistakes without having to them ourselves...plus, where he really
_has_ done good and clever things, we can also learn from his clear
successes and great ideas...
> > Especially because this kind of thing also naturally generates a
bit
> > of "competition", I'm sure...people looking at a demo and thinking
"I
> > can do better than that"...and then submitting their
> > examples...helping to build up a nice "portfolio" for RosAsm when
> > people come a'looking to see what it can do (which, of course, is
> > another "key benefit" of these kinds of "demos"...they are
> > "informercials" of a kind, so to speak...giving you an idea of
what's
> > possible with RosAsm and the source code allowing people to find
out
> > how and do something similar themselves...educational and also an
> > "advert" for RosAsm all-in-one :)...
>
> Yep. I agree. It would be a real good idea to start adding this
> kind of stuff to Webster over this year.
Indeed, as I keep pointing out, this universe insists on being "deeply
ironic" everywhere...because, of course, this is the "left-wing
anarchist" on a "holy war" against "evil corporations"...and what's he
helped demonstrate? Essentially, the "Capitalist" concept of allowing
a bit of friendly, healthy "competition" to naturally _self-regulate_
itself without need for interference towards _improvement_...how to
employ what must be the acme of "commercialism" in the concept of the
"infomercial"...
You know, I'd heard the saying about "becoming your own worst enemy"
and I could see how that could come about...but, in meeting Rene, I
never quite realised just how far this can go...his "obsession" with
this "holy war" has, amazingly, turned him into _exactly_ the very
thing he claims to be fighting: A fascist police-state authority that
oppresses everyone else, using anti-social propoganda and the
mechanics of right-wing Captialist theory - employing and promoting
the very tools of his sworn enemy, the Microsoft PE file format - in
order to become the new "King" of his own personal kingdom of
"personal glory"...
I mean, you couldn't write this better as a piece of fiction...truth,
indeed, is far stranger than fiction by miles...he _is_ his own
"enemy" and he can't even see it...
Hence, by the way, Randy, dropping down to "his level" would be, in my
opinion, a potentially massive mistake to make...yes, I'm pushing this
point hard here and don't do so lightly...
> > All of the ASM tools out there could probably borrow a leaf out of
> > Rene's book on this one (if they haven't already, of course
:)...it's
> > not really a technical issue but a "feeling welcome" and
"generating a
> > community spirit" thing...
>
> Except that Rene is very "anti-assembly community". Did you read
> his post immediately above yours? Let me quote the relevant phrase:
>
> >>>>>
> This is a great demonstration of the pathetic state
> the Assembly communauty actually is. If there were,
> here, and in other places, say, only 10% of real Asm
> Programmers, you could not even post such insane and
> indecent provocations, without getting more answers
> like mines, you could not even follow up answering.
> <<<<<<
>
> I don't believe that's encouraging the assembly community very much.
> His posts over in the MASM Forum are equally destructive.
> Heck, he even tears people apart on his own board.
Oh, of course, if you're collecting all these many, many "minus
points" for talking like this then the "plus points" of doing things
in a "community-like" way elsewhere are completely cancelled out and
then some more, taking it firmly into negative numbers...
But, employed by someone else who has the sense to stick with just the
"plus points" and leaves the "minus points" firmly to one side, then
this same idea will produce, I believe, very good _positive
numbers_...
Practically speaking, decimalising units of measurement is a logical
enough idea (even Britain finally had to admit that our older
pre-decimalised "pound, shilling, pence" system - listen to this: 12
pence in a shilling and 20 shillings in a pound...would _you_ want to
work out things like that after changing your dollars while on
vacation over here? And don't dare forget in the back of a London taxi
which is which, because the taxi driver has probably already taken you
ten times further than he was supposed to, upon hearing any
foreign-sounding "I'm a tourist who can't tell if I'm being ripped
off" accent, but then to ask: "so, how many of these shilling things
am I supposed to give you?"...well, just save time and hand the first
taxi driver all the money you have - was a bit complicated and -
though you Americans borrowed the other non-decimalised "English"
measurements like inches and miles, you still went with a decimalised
100 cents in a dollar when it came to currency - trying to fit this
irregular scheme into a world of exchange rates where every other
currency was decimalised...well, though those used to such a system
are bound to complain about it changing - there's a constant stream of
moaning about "going metric" on everything over here from the older
folk - there's only so far you can push the loyalty to the
system...mind you, it was only in 1971, apparently, that the currency
systems were changed over so any old timers visit merry old England in
the '60s with actual tales of confusion about the confusing currency
system?)...this point of bringing Europe - other than Britain because
we kept him at bay - under one "metricised" system may be considered a
"plus point" but Napolean had gathered up plenty of "minus points"
along the way that any good he'd introduced was easily
forgotten...without him, though, there wouldn't just be "English" and
"Metric" (note, though, we actually call "English" measurements
"Imperial" - as in "Empire" - because they were exported to all the
"colonies"...but it's quite understandable why America renamed it...in
fact, it's somewhat surprising that you even stuck with "feet and
inches" at all...I suppose everyone had got used to it or
something...you could have officially gone "metric" - as you did
choose to do with currency - right then and there - although, I
suppose you could ask: "The British or the French Empire?" as _both_
being bum choices for a country gone "independent" - but it's
interesting to note that there wasn't any "American" measurements
invented...well, I suppose it's the nature of measurements..._both_
parties suffer having to do awkward "conversions" that keeping
"compatible" measurements, whatever the ultimate origin of the
measurements (which are amusing tales in themselves...a "foot"
literally _was_ based off the size of the King's foot - I don't
remember which King it actually was, personally, because, to be
honest, I'm not much into that "royalty" nonsense and have no idea
which King followed which Queen...and, unlike with the American
Presidents, no-one makes a fuss to bother teaching people or would
call you "unpatriotic" for not knowing what is a historically
interesting, sure, but ultimately arbitrary sequence - and so forth
:), is a good idea all-round...but, of course, things are "deeply
ironic" in this world so Britain now joins the EU and agrees to
finally make a slow conversion over to "metric"...leaving behind the
irony that America who fought hard (and rightly) to establish its
"independence" is now the main place keeping "English" (or, as I say,
what we call "Imperial", as in "Empire") measurements alive...it'll be
called "English" but the English won't be using it anymore...over
here, it'll be thought of as "Imperial" and America is using it,
despite the valiant struggle for "independence"...
As I say, in the end, pretty much everything turns out to be "deeply
ironic"...that, in a bizarre sense, it becomes almost "comforting" to
see strange things like this happen, because at least it confirms that
the universe is still working in the same old way it always
has...playing these little "pranks" on humanity...let's Hope that the
universe is laughing _with_ us rather than _at_ us in making these
jokes, yeah? That's why it's good to just throw your hands up and
acknowledge that the irony is kind of funny, I suppose...because if
you're taking yourself far too seriously not to see the irony then
that kind of makes you more the "victim" of the joke than part of the
audience laughing along with the gags...mind you, for all the jokes
about Americans usually being the ones taking themselves far too
seriously to spot irony, if I compare something like the Amercian
Simpsons or Frasier to Canada's Alanis Morrisette's "Irony" song
(which, in most part, actually lists "bad luck" rather than irony in
the lyrics ;)...well, you guessed it, there's a "deep irony" there for
any Canadian to be making any such jokes at America about this...of
course, knowing the universe's fondness for "irony", I'm sitting here
waiting for a Canadian to demonstrate that, in fact, the British are
the ones who don't really understand it with some perfectly undeniable
example...or...or...or have I just outsmarted the "irony" by actually
_expecting_ it? Because if I'm waiting for it, then it wouldn't be all
that "ironic"...ha! Caught the universe out there, didn't I? Wasn't
expecting that little "curveball", eh? Steeeeee-rike one! Oh crap, I
should have known it would catch me out somehow...I just celebrated
"Britishness" avoiding irony by - yeah, you guessed it - using an
Americanism...a metaphor from an American sport...subtle,
indeed...but, clearly, there _is_ NO ESCAPE from universal deep
irony!! Looks like we'll just all have to accept it as a part of life
and laugh along instead, eh? ;)
> > Admittedly, this isn't a particularly good advert for HLA...but,
using
> > it, there's actually _nothing_ I can see about HLA itself that
> > prohibits this happening at all...the problem resides
elsewhere...not
> > enough "advanced users" capable of doing this using HLA or people
> > writing this kind of thing but - perhaps, in fact, due to people
> > posting up things to ASM newsgroups creating a "stigma" against
using
> > HLA - just choosing NOT to make it available for some reason or
> > another...
>
> There are a *lot* of things that need to be done to promote HLA :-).
Well, yeah...but, also, one element here is that shouldn't things
already be "self-promoting" a little by now that it does always need
_your_ hand in every bit of promotion? That's the missing ingredient
thus far, if we ignore me as a "weird exception" (because I'm
_usually_ the "weird exception" to most things, which means that
status is completely unremarkable and not worth much pondering
;)...after a while, things should move along under their own steam -
HLA users trading code between them and discussing HLA problems, which
is a kind of "promotion" implicitly going along with that - and the
"promotion" should now only be a case of "reminder" rather than still
a "sale"...Coke, for example, no longer need to advertise very often
and have completely given up on "hard sell" in those adverts...it's
because, basically, they no longer to have "sell" the items anymore,
so to speak...it's just advertising which gives a gentle prod now and
again to "remind" people about Coke...
> This suggestion is a good one.
I thought so too...but then, you already know that...I've "nagged" you
often enough so far ;)
> However, I've been busy on the things that will have a dramatic
> impact. Over the past four years that has been:
>
> 1. Bringing the electronic edition of AoA on-line for HLA.
> 2. Porting HLA to Linux
> 3. Getting AoA published
> 4. Working on other HLA-centric books, like "Windows Programming in
> Assembly" and, to a lesser extent, "Write Great Code".
> 5. Making progress on HLA v2.0.
>
> Whereas Rene thinks that the "turning point" for RosAsm is going to
be
> the introduction of a disassembler into his system, I personally
feel that
> the thing that will dramatically increase HLA usage is the
introduction
> of new books like "Windows Programming in Assembly" (sure has worked
> for me in the past). Maybe my work has blinded me to other
possibilities
> as well. So I welcome any suggestions along these lines and I'll be
more
> than happy to maintain a "user-written demo" section on Webster, if
> people feel it will help them.
Well, there _are_ other ways besides publishing books, of
course...mind you, you've _already_ done the "TV commercial"...so now
you should look into your "internet sales" with a more examining eye,
perhaps ;)
Certainly, though, points 1, 2 and 3 were all significant and
crucial...points 4 and 5 are, of course, sort of "still
on-going"...and, to an extent, point 2 hasn't totally reached its
potential yet because it works on Linux, sure, but that side of things
can certainly be expanded (such as a companion "X-Windows Programming
in Assembly" to balance things out...and, of course, once we have
things balanced out a little more in that direction, there's "Portable
GUI Framework Programming in Assembly" too, when a GUI-enabled
"stdlib" smooths over the little differences in a "transparent" way to
extend the "re-compile without modification" idea already present for
console applications over to "the wonderful widget-filled world of
windowing" ;)...
> > You're right that this is a strange thing that's a cause for
> > concern...but you can't jump directly to the conclusion that this
> > means HLA is "incapable" of such things...that is NOT the case, I
can
> > assure from using it and knowing what it could be used for...any
fault
> > is NOT with HLA itself but elsewhere...which may include, to be
fair,
> > that HLA _isn't_, indeed, getting the "right breed" of coder
involved
> > who can create these kinds of things...
>
> To Rene, HLA is incapable of anything :-)
> Except, of course, setting the assembly rebirth back a few years
> while he tries to get his act together with RosAsm.
Mind you, don't forget that "deep irony" thing...because, if you think
about it, then probably - because of all his ranting was forcing you
keep his "false image" of HLA spreading around - then it might, in
fact, be the total reverse...in that, if anyone been delayed and
slowed down by the other, it's probably Rene doing it to you rather
than the other way around...
I mean, I don't recall the exact date on my post first suggesting the
basic idea of a "portable GUI framework" for the standard library but
it was a while back...actually, was it the very release of the Linux
version that made me first mention the idea? I think it was...because
it was seeing Windows GUI applications in HLA and then the "port" to
Linux but no equivalent X-Windows stuff that instantly offended my
natural "sense of balance": "hey, that's not very symmetrical!!!" ;)
Beth :)
That was quite amusing.
Ever considered building an origami model of that sword Excaliber?
>I have no idea how IDA does what it does, and i do not
>care much of what IDA does. I do not care at all of what
>other tools do, unless Open Sources and free.
I think there are several reasons why people start developing software.
1) You want something for yourself which doesn't exist yet.
2) You want something which is already existing, but it is not free, so you
take some effort to make it free on your own.
3) You want to earn money with it.
4) You want to make something for the good of the people (which is probably
one driving motivation for many of the GPL developers).
5) You want to make something to impress other people with your skills.
6) Add your own which I forgot.
Except in case 1 and 2 you will have some users which should use your
applications. In case 1 and 2 you can probably ignore them, but in all other
cases you can't really. If a similar product already exists and you want users
to start your app then you always will have to be measured on how well YOUR
app performs against other apps. And with performance I don't mean speed of
execution because it is the user to decide which app provides the best
performance whatever that is (portability, speed of execution, size of the
binary, stability, whatever).
I think it certainly pays off to look what other apps are providing, how they
are handled and how well they are suited to their tasks, because your users
may decide that your app is not worth bothering because it doesn't match up to
app X. This is especially true if you create something where already a very
good product leads the market as in the case of disassemblers with IDA (the
marketleader not always is neccessary the best, but in this case it is).
>About how RosAsm Disassembler works, it is quite simple,
>as it is GPLed Open Sources, and as the binary are quite
>easy to give a try (don't hope it to rebuild Nescape in
>two clicks, actually... :)) :)) :)) )
You don't really expect me to read up the sources to determine how RosAsm
works? :) Of course to give it a try for the look and feel it is a good
approach to simply run it and see if you like it.
>You will see an awfull messed-up organisation of the
>"DisMain" Routine, but this is not a great shame for me,
>as it is under important recognitions organisations and
>modifications, actually, but,... well, i hope the Source
>is, nevertheless, easy enough for a reading...
I don't intend to take a look at it, because it will take me too much time
just to get into the sourced and work out how it works. On the other hand, for
you as the creator it should be quite simple to outline how it basically
works.
Oh, yes, I see that now...but, then again, my reply was hardly the
greatest example of a serious and unsarcastic reply in return,
anyway...I mean, it's an "assembler", isn't it? Comparisons to the
legendary Excalibur weapon should not be taken all that seriously as
an answer ;)
> From reading the threads I know by now what RosAsm is, even if it
took rather
> long to learn that RosAsm was previously SpAsm (I may be wrong on
that and
> RosAsm is a totaly new assembler).
No, RosAsm is just SpAsm renamed and a few versions further on...it's
only an essentially "cosmetic" name change...mandated, amusingly, by
SpAsm gaining a bad reputation that Rene thought the name change would
throw off those negative associations...except things have probably
gotten worse since the name change rather than better...I know I'm
naturally thinking of RosAsm in a worse light and I _know_ it's merely
a name change...I still say to this day that Rene should have stuck
with "SpAsm" as the name and struggled on through...
But, then again, as I've asked Rene, if he's not using "SpAsm"
anymore, then is it now "up for grabs" as an assembler name? Because,
of all the assemblers, the one thing Rene got totally right with SpAsm
was the name...yes, indeed, it's a "warped" kind of name...but then
_that_ is what makes you remember it...and it's a proper word with
clear pronounication to it...but still contains the vital "ASM"
ingredient that it's instantly recognisable from the name (especially
with Rene's use of mixed case to stress it :)...
It stuns me, basically, that the one thing Rene undeniably got exactly
right - that name (and when selling people on ideas, the name actually
isn't a completely trivial consideration at all...I mean, would you
feel "welcomed" and instantly happy to use a tool called "RatsVomit"
or "the CowDung assembler"? Yeah, exactly ;) - is the thing he goes
and throws away...
Well, seriously, if the old associations with Rene's SpAsm weren't
there that could cause a problem, then I'd happily use the name if he
doesn't want it...in fact, I _did_ actually consider "Spasm" myself -
thinking along the same "What _actual words_ in English end with ASM?"
as Rene probably did - and finding his site with a web search on the
name (always check if something's already taken with a web search,
yes? In fact, if Mozzie's listening, then we've already had "confusion
issues" with your proposed LASM name because there _is_ something
called that already ;) was what put an end to that idea...
> I only wrote this question because of Randy
> writing "... no competition.". Which would be ridiculous(sp?) since
NASM is
> well known and widespread while RosAsm is a rather small project
apparently.
Well, yes, comparison to NASM is mostly futile with all the
"non-commercial" assemblers...NASM is "official" on ReactOS and as
part of most Linux distributions and is "well-known" in a different
kind of league to the others...in terms of having your name out there
on people's lips, there's even a case that MASM can't make close to it
(e.g. Linux coders can potentially not know much about MASM because
it's DOS / Windows only and things are "either GAS or NASM" to them,
where "Intel syntax" probably allows NASM to win many battles
there...but, on the other hand, NASM is an "alternative" to MASM on
the DOS / Windows platform _as well_, that most MASM users who've
looked to see if there are "alternatives" know about it :)...
TASM's dying that its name is rarely spoken these days...FASM is still
comparatively new that it's still forging its name (but getting good
praise thus far :)...HLA has a healthy profile - especially after
Randy published his book _and_ even made a TV appearance to promote it
on TechTV not too long ago - and that looks like it's coming along
well (if the book does particularly well, HLA might be in for an
"explosion" in its profile soon enough perhaps :)...
RosAsm - especially, as I warned Rene at the time, with the name
change meaning that he'd "lose" some of his profile simply because not
all people will know that it's "SpAsm" with a new name - just isn't
working on the same platform as these, really...no, I'm not saying
it's small or, even, in fact, that "popularity" and being "well-known"
actually _means anything_ in particular (after all, "Jack the Ripper"
is "well-known" but that doesn't imply in any way that he was
"good"...you can also be "notorious" for exactly the _wrong_ reasons
as well ;)...being more "obscure" than most things doesn't itself
automatically mean "no good"...sometimes, the most precious jewels
_are_, indeed, little secrets hidden away in relative
"obscurity"...mind you, in RosAsm's case, I'm personally not at all
convinced that RosAsm counts as this...but it's a general point that
"popularity" doesn't translate automatically in a measure of
something's _quality_...exceedingly crap things regularly make it to
the top of the charts for inexplicable reasons...I'll bet there's some
"NSync"-equivalent embarassment sitting in all our national "top ten"
music lists right at this very moment...and, hey, _Windows_ - of all
things - is the most used operating system (sorry, I can't bring
myself to say "popular" because I don't believe it's actually where it
is through actual "consumer choice" with fair representation to all
the alternatives...that is to say, even when people choose to stay
with Windows after not being particularly impressed by Linux, that's
still not a case of Windows being "popular" but more a case of Linux
_NOT_ being "popular" with these people...a perhaps subtle but crucial
distinction, I feel..."popular" implies things like "liked", "chosen",
"makes people happy" and so forth, which I don't believe Windows can
really claim is anywhere near its _sales_, which must be remembered is
an entirely different metric measuring something different
altogether...
> This is expected if it is driven by only one programmer, given the
complex
> task an assembler is to write. At least it would be to me. :) I
never wrote
> one, so I guess that it is not an easy thing to do.
Mind you, Randy doesn't do too badly on his lonesome with HLA...he was
even on TechTV talking about assembly language and his new
book...which must be a first because even on something like TechTV,
"obscure" little geeky ASM isn't usually considered a ratings winner
;)
> >itself...for when the time of ReactOS is finally completed, Rene
shall
>
> I wont mind if ReactOS would become a good alternative, though I
don't hear
> much about it. Only every now and then on the wine developers list
it is
> sometimes mentioned.
No, indeed; I fully support their whole thing there...whether it'll
eventually happen or not is another matter because many projects like
this can start off well and then just die out before completion...I
Hope not...but, then again, the development is slowing and going
quiet...perhaps that's just a "blip on the radar", so to speak, and
things may soon pick up again...perhaps someone will come along or
something will happen that'll re-invigourate and re-motivate the
project back to strength...stuff like that's been known to happen from
time to time too...it's one of those things I wouldn't like to
predict, as it seems it could go either way...
> >http://betov.free.fr/RosAsm.html
> >
> >If you can manage to make head or tail of what Rene's actually
doing
> >there, then please post back a reply to explain it to the rest of
> >us...
>
> Actually I think the page is not really well designed. So far what I
can learn
> from the page is that RosAsm is an assembler. What surprised me was,
that it
> claims to be the assembler used for development of ReactOS. I was
surprised,
> because last time I checked ReactOS I didn't notice an affiliation
with Spas
> or RosAsm, but I didn't specifially look for it. This time I looked
for it and
> I only found that they use NASM. I couldn't find any mention of
RosAsm.
Ah, well, that's Rene's translations into English for you...what the
website _should_ be suggesting is that RosAsm is an assembler designed
for running _on_ ReactOS for creating ReactOS applications...indeed,
it _can't_ really be used for ReactOS development _until_ ReactOS is
already far enough along that it can handle PE files and load and run
RosAsm's full GUI stuff...Rene's idea is that RosAsm will be "the"
ReactOS assembler once ReactOS is finished...
Of course, after looking at what ReactOS is all about, you might be
asking yourself: "But, wait a minute, isn't the whole purpose of
making ReactOS an NT clone exactly so that the current NT software
will be immediately compatible? So what's to stop someone using MASM /
TASM / HLA / NASM / FASM and all the other Win32 capable assemblers on
ReactOS? Why does ReactOS need an assembler specific to it?"...
Well, that's a very good question...the best answer we've got from
Rene is that RosAsm is "ethical" (that is, "OpenSource(tm)", GPL,
non-commercial, etc., etc. ;), so that it fits into the
"OpenSource(tm)" / "ethical" stuff of ReactOS itself...well, that
answers the question regards something like MASM, which is a Microsoft
"evil empire" product...so, yeah, you can understand the "ethical"
argument there...but what's "unethical" about NASM being used on
ReactOS? I mean, NASM is being used _for developing_ ReactOS so
obviously those guys don't consider there to be anything
"incompatible" with what they are doing or that it's too "unethical"
to be used...the only thing I've heard Rene say about NASM to
"disqualify" it is that it's written in C...he's yet to explain how
wirting an assembler in C automatically makes it "unethical"...but I'm
sure Rene can enlighten us all on this...
No...surprisingly, perhaps, Rene doesn't seem to have talked to the
ReactOS team or anything, it would appear...of course, you _don't_
need any "official permission" to proceed with "OpenSource(tm)" and
he's perfectly entitled to carry on...I'm not suggesting he needs
their approval or anything...but you would have thought from his own
perspective, it would have been a very big boost to see if he could
get "approval" and "sanction" for what he's doing...you know, a sort
of ReactOS equivalent of getting a "Designed for ReactOS" badge...for
some of the ReactOS main contributors to give him a good "reference"
for his website...Rene doesn't seem to realise that even "pioneers"
and "revolutioneers" have to know when to court "official approval"
(to get backing, funds, approval, etc. :) and when to be "rebellious"
(to actually get the job done :)...Rene is just permanently
"rebellious" about everything to everyone...so, unfortunately, if he
did try something like this, they'd probably want to keep a safe
distance away from him...well, this "Ronin" swings his Katana (Samurai
Sword) blade around somewhat randomly...best not to stand too close,
lest he beheads you by accident as he shows off his supposed "warrior
skills"...
> >Oh, actually, Gerhard...I just realised...you probably _have_ heard
of
> >RosAsm before but it was called _SpAsm_ the last time you
> >looked...Rene changed the name to "RosAsm" in order to "clarify its
>
> Yes.
Sorry, me be slow of mind...slow think of obvious things...duh! ;)
> >morality", apparently...in changing the name to Rosasm, I quote:
"It
> >is clearly declared an Assembler for ReactOS, and the political and
> >ethical concerns coming with this and with the GLP are clearly
> >defined." [sic*]...no, I don't know where it's "clearly defined"
>
> I don't see what political and ethical concerns are involved with an
assembler
> or with ReactOS.
Well, yeah...this stuff does seem _ONLY_ to be "clearly defined" in
Rene's mind...it's very confusing and "nebulous" for everyone else...a
nd he's pretty strict about this...much like Dubya Bush who he
actually condemns for doing the same thing (Rene seems to have no
capacity to spot "hypocrisy" or "paradox" whatsoever ;), Rene
_insists_ that "you're with him or against him"...if you don't
_IMMEDIATELY_ understand the _FULL_ "political and ethical" concerns -
which though "clearly defined" to him, he mostly refuses to _educate_
anyone else on these apparently very important issues (if you try
asking then he dismisses you: "if you need to ask, then you are
already beyond all Hope") - and fall into the ranks of his "army" of
"holy warriors" then you are, indeed, an "infidel"...
Instant unquestioning obedience to his "cause" or, sorry, he doesn't
even want you to download his assembler...nope, you have NO permission
to use it...and he would rather leave his assembler "crippled" rather
than give away any of his "warrior secrets" which could end up in
other "unethical" products like HLA (he obviously hasn't read the GPL
because, of course, GPL code _can't_ be re-licenced as "public
domain", even if PD isn't "commercial", "immoral" or otherwise...once
GPL, always GPL...it's that legally "viral" nature which makes it such
a formidable "enemy" to Microsoft and others...well, he either hasn't
read the GPL to realise the licence already protects him from this or
he doesn't trust the GPL...which would make you wonder why he uses a
licence he apparently doesn't seem to either understand or believe
in...or perhaps both ;)...
Anyway, from listening to Rene rant for years, I'm still not
completely sure...but I think it goes something like this: Globalising
Multinationals often engage in "unethical" practices...Microsoft is a
globalising multinational...MASM is a Microsoft product...to destroy
MASM (and anything that is "MASM supporting", which HLA counts as
because _one_ of its many output formats - which includes TASM, GAS
and FASM as well, mind you, and NASM would be added without hesitation
once an "issue" about "optimising jumps" is sorted out in a way that
HLA can deal with - is MASM...and Hutch is also a target for promoting
MASM with the MASM32 package, even if doing so by, well, sort of
"cheating" their licence to use it against them...not that Microsoft,
I bet, care in the slightest because they give the thing away for
free, anyway ;)...to destroy MASM is, therefore, to rid the universe
of _all_ "unethical" things in own swing of his Samurai Katana
sword...thus, a single assembler project will, if it succeeds, bring
about "world peace" and "end world hunger"...which is a mightily
impressive objective I'd whole-heartedly support...it's just that, I
must confess, I do find there to be a severe problem in his chain of
logic there...
To my mind, getting so worked up about attacking a product - MASM -
that Microsoft have basically _ABANDONED_ (they only still work on it
for _their own OS development purposes_ and stick it _for free_ in the
DDK, merely because the thing they _do_ care about - the OS monopoly -
is _actually built on the device driver support_ so as an assembler
comes in handy sometimes for interfacing with hardware in device
drivers, they throw MASM literally as a "sacrifice", as long as doing
so pleases the "gods of OS monopoly" in keeping Windows with that 100%
hardware coverage, always leading the way...wasting time on the thing
Microsoft really don't give a flying fudge about because they've
effectively _abandoned_ it as a product of its own, thinking that
knocking MASM off the #1 spot will have the slightest effect
whatsoever...
There's the real "Achilles Heel" which Rene has not even
spotted...despite looking at the ReactOS website, where they've more
or less identified _exactly the same thing_...what is the _main_ thing
stopping other "hobbyist" putting together a Windows rivalling OS
(after all, Microsoft are not the best coders in the world by any
means...a proper dedicated "team" _could_ upset them big-time...proof
of the pudding there is that Linux _HAS_ done so)? Hardware
support...that's the "Achilles Heel"...Microsoft have basically more
or less 100% coverage of it all...hardware manufacturers act as "local
branch offices" writing the device drivers (which are a _vital_ OS
component...without them, the boat simply does NOT float
whatsoever...try it...delete all your device drivers
completely...every single one...and _then_ try to boot up
Windows...actually, no, don't do that! It will, of course, completely
destroy your copy of Windows because it'll be impossible to boot it up
(even "safe mode" is using drivers too...just "safe" ones that assume
basic "standard" hardware so that it should work happily on _any_ PC
;) so it's not actually a serious suggestion at all)...
As I say, the ReactOS people know this...the main rationale they state
about why ReactOS is an NT clone is that by having "compatibility"
with NT device drivers, they automatically get _identical_ hardware
coverage to NT itself...if they can get this idea to work, then,
straight away, they'll "leapfrog" even Linux's coverage and have
_identical_ coverage to Windows (which basically means practically
_everything_, as most hardware manufacturers _can't_ make hardware
that isn't Windows compatible - why else do you think that they'd let
themselves be whipped and controlled by "Designed for Windows" badge
schemes or to stick on those extra "Windows" keys on their keyboards,
handing free advertising and "product association" to Microsoft?
Hardware manufacturers have pride and enjoy their independence the
same as anyone else...but they _must_ fall into line with Microsoft's
wishes or they'll have trouble selling their products - or they'd
never sell enough to make back their costs)...
The underlying problem was a cock-up a long while back...in real mode,
there's the "BIOS" routines which acted as effectively "device
drivers" to the hardware...but when "protected mode" was introduced,
these wouldn't work anymore because _the addressing scheme_ was
altered completely into something "incompatible"...OS/2 and Windows,
though, by-passed this by using their own "device drivers", which acts
as their own "protected mode BIOS"...the problem? Well, Microsoft
aren't dumb...the Windows device driver format is highly _specific_ to
the particular way Windows works...device drivers use Windows API and
sit in the _specific_ Windows "memory model" and so on and so
forth...in short, it's _proprietary_ and they own it...
There's only three ways around this problem, which we know about
already:
1. ignore Windows and do things "your own way"...this is Linux, trying
to simply match up to Windows by raw hard work, writing as many device
drivers as possible to reach the same coverage...they do very well,
indeed, but are always trailing behind...while Microsoft are
_dictating_ what hardware manufacturers should do with "ACPI" and "PC
2000", almost as if Microsoft "owned" these hardware manufacturers and
these were memos of "internal policy" (so Microsoft already have their
end of ACPI written up and simply wait for hardware manufacturers to
fall into line...and they will because they have to, as all their
paying customers use Windows)...on the other hand, Linux are
constantly "playing catch up" to this...
While Microsoft get it _given to them_ on a silver platter by hardware
manufacturers, Linux has to _beg on its knees_ to hardware
manufacturers (who are now even starting to _NOT_ give out their
hardware programming specifications anymore...anyone else draw the
parallel to nVidia being amongst the first to stop publishing their
specifications - the "life-line" of Linux being able to get a device
driver written (providing "binary only") - and then, magically, their
name coming up in the negotiations with Microsoft as to who'd have the
exclusive - incredibly lucrative - contract for the video hardware
inside X-Boxen? Publishing the specifications would allow Linux to do
it itself but giving them simple "binary only" drivers puts it in
nVidia's hands...if they want to suddenly stop Linux support - and any
implication that it could be on Microsoft's instruction is, of course,
coincidental - then they just stop doing that and Linux can't do
anything about it)...and, even then, Linux coders have to do all the
hard work normally, the only "crumbs" they get thrown at best is
specification sheets...
2. "Clone" Windows so that you can use Windows own device driver
support against itself; This is ReactOS...due to how "specific"
Microsoft have made things, this basically means an almost complete
100% clone of NT...due to the horrible taste of having to do it
Microsoft's way, there's room for "other subsystems" so it could also
support Linux and try to act as a "bridge"...as to how this will pan
out, it's yet to be seen as ReactOS is still under development...
3. Use Microsoft's own tricks against them: "de-commoditise" their
proprietary advantage; This hasn't been attempted properly..."BIOS32"
is perhaps the closest but wasn't taken up properly...the idea being
that things return to a "BIOS"-like position but appropriate for
protected mode operation...the difficulty here is protected mode
itself...how do you create a "device driver specification" that will
be appropriate for all the different possible OS types? It is also
perhaps the most difficult because it needs hardware manufacturers "on
side"...mind you, I have a big, big suspicion that the hardware people
would _LOVE_ to be "freed" from slavery to Microsoft's every
wish...but getting them all to happily agree on a single thing? To
step away from Windows and take a risk? To avoid them themselves
trying to "de-commoditise" whatever develops (you know, say, ATI
decide to add their own "proprietary extensions" and nVidia add their
own which is completely different...branching everything off in all
directions ;)?
It's not easy...not at all...but this method goes straight to
Microsoft's "Achilles Heel"...if there were "universal device drivers"
for all hardware, which any and every OS can use, then everything
would fall totally on the _quality_ of the OS code and its
interface...with the playing field leveled, Microsoft will _have_ to
lift their socks in order to compete against programmers who _DON'T_
think that the Blue Screen of Death is an acceptable thing to see
every five minutes...they'd have _competition_...the "monopoly" is
effectively broken...in comes _choice_..."competition" forces them to
improve their act, as rivals exert "competitive pressure" on each
other...all that's needed is for the "market" here to be turned into a
truly "free market" where anyone and everyone entering the field has
NO particular "advantage" over anyone else...and Linux has already
demonstrated that even the richest company in the world can't
automatically defeat everything simply because they are rich...not all
problems are solvable by simply throwing money at them...
It would require unheard of "co-operation" in order to get enough
muscle to pull the carpet from under Microsoft's feet...but once done,
the slaves are free...free forever...there's an _alternative_...always
a choice other than Microsoft...and it would be something Microsoft
couldn't ever bring back under their control...it's like making
something "public domain"...once you do it, it's a decision that
cannot actually be retracted...the cat is let out of the bag...and
Microsoft will be forced to actually _compete_, not sit comfortably on
their throne thinking they are untouchable...once you let the worms
out of the can, you'll need a bigger can to even consider trying to
get them back in there...they'll have to improve and start acting more
properly...they could not be complacent about things
anymore...because, as they are scrambling to get those worms back into
the can, there are others also scrambling to collect worms...the worms
themselves - hardware manufacturers - now have independence...they can
_choose_ not to jump back into Microsoft's can...in fact, will "Nokia
OS" or "nVidia Multimedia Station" themselves start to appear? That
the hardware manufacturers - as IBM once did until they were "usurped"
by their own ideas and their own "contractors" - get in on the game
themselves?
Note, things would be free...therefore, there would be tens of
different "competiting" OSes...there'd be more demands for "portable"
code because each OS is different...the market splinters and
factures...some manufacturers may be tempted to split off from the
main "PC" dominance...it must be noted that things will inevitably go
back to the way they were in terms of multiple machines and multiple
manufacturers and the possibility of an explosion of "compatibilty"
that were all but finally solved with the PC line and Microsoft
dominance...freedom has its price and it would probably be an
acceptance of some element of "chaos" being unleashed once
more...until things could perhaps "settle" into a few "main"
platforms, OSes and so forth...but I've seen that before and it's
nothing to overly-worry about...I'd pay such a price...heck, to be
honest, for programmers, it's a Good Thing as we get called in to
solve any problems...
On the other hand, Rene's convinced attacking an _abandoned_ product
will bring about "world peace"...I repeat, I'm actually completely
sympathetic to his goal of seeing _real_ choice and competition
restored...for Microsoft's monopoly to be broken (I myself don't mind
if Microsoft still stay around and try to carry on...because as long
as it's a _fair_ battle, I don't see why they shouldn't be allowed to
attempt to win things back...this would actually be "okay" because, in
order to win against "ethical" competition, they'd have to lift up
their socks and cease to be complacent and - gulp! - become more
"ethical" and _do things properly_ or, now that there's "choice",
people would NOT choose them when there's a better
alternative..._proper_ "Captialism" in action...what we have now is
NOT any such thing...it's complete opposite...Bill Gates' own private
Communism, where he "owns" everyone else's property...Microsoft
applications writing as they feel - without permission - to your hard
disk and registry? Reporting back "statistics" and spyware for them to
sell on? _Dictating_ to hardware manufacturers what they should do?
Microsoft already believe that they _own_ all of us...and you know
why? Because, in fact, while this persists, they actually really
do...with no means of escape and no choice to leave whenever you like,
you're effectively a prisoner)...
But Rene's chosen method is, well, chasing after a "red
herring"...attacking some "scarecrow" Microsoft left standing in an
old abandoned field that they no longer care an ounce about at
all...ReactOS has to compromise too much to beat Microsoft at their
own game...it would be a free Windows, true...but it would still just
be Windows...lumbered with Microsoft technologies and conventions and
file formats...just as unable to escape this, as Microsoft themselves
are unable to escape their past mistakes because of "backwards
compatibility" (which has to be maintained to hold onto their
advantage...if they make too radical a "departure" then, well, why
make that departure Microsoft's way? Why not make your radical
departure in Linux's direction? So, they keep their cards close to
their chest...keeping things "compatible" to keep their advantage
alive)...
Our "holy warrior" may have a brave heart but he appears to have _NO
appreciation_ of "strategy" whatsoever...which is a shame because, of
course, _strategy_ is what really wins battles...prodding abandoned
scarecrows left lying in a field with a bayonet might be an impressive
display of strength, perhaps...but it's such a poor display of
strategy, you have to pity the poor warrior...he'll jump out of his
trench - going "over the top" (certainly on appropriate term for Rene,
who's constantly "over the top" that he makes my melodramatic - nay,
operatic - flair seems quite "normal and ordinary" in comparison ;) -
full of spirit and determination...pulling out his Samurai Katana, the
"weapon of honour" for the "ethical" warrior...and then run headlong
in a wall of bullets from enemy machine guns that'll rip him apart
(oh, didn't we mention that the "enemy" has no honour whatsoever that
you shouldn't expect "fair play" at all?)...never mind, I'll leave a
flower and bottle of French wine on the grave of the unknown warrior
in rememberance...even though I'll probably never understand what's
"noble" and "honourable" in WWI soldiers lining up to be slaughtered,
in Japanese pilots doing Kamikaze runs or those 9/11 attackers (who
get called "suicide bombers" but, really, what they did was more like
the Japanese Kamikaze pilots of WWII...as planes aren't really
"bombs", even if they can cause just as much damage...but, yes,
there's no point getting pedantic over language there)...
> >* Yes, he's put "GLP" rather than "GPL"...obviously not quite as
> >"clearly defined" as he first imagined, eh? ;)
>
> :)
;)
Beth :)
>> can learn from the page is that RosAsm is an assembler. What surprised
>> me was, that it claims to be the assembler used for development of
>> ReactOS.
>
>I wonder where you could have read this, Gerhard.
Maybe I missunderstood that.
The first line of your welcomepage http://betov.free.fr/RosAsm.html says:
"RosAsm, the Bottom-Up Assembler for ReactOS"
and further below it says:
"It is clearly declared an Assembler for ReactOS, and the political and
ethical concerns coming with this and with the GLP are clearly defined."
Reading it again I can see that I may have missunderstood this, but my first
impression was: This assembler is heavily affiliated and used in ReactOS
development.
Otherwise, what should I make of it that ReactOS is so prominently mentioned?
>Yes, they use NASM. RosAsm would be absolutely of no
>use for them.
I think so. On the other hand, if ReactOS would use it for their development
this would be a good sign for potential RosAsm users.
>Your problem, Gerhard, not mine. To the guys who share
>my "political and ethical concerns", the relationship
>with the Open Sources Mouvement is quite evident... and
So you mean, because some open source developer, you know, has the same
political or ethical opinion (whatever that would be), this is a political or
ethical opinion for the open source community? :)
> I don't intend to take a look at it, because it will take me too much
> time just to get into the sourced and work out how it works. On the
> other hand, for you as the creator it should be quite simple to
> outline how it basically works.
>
Jocking me, i suppose... So, i'm going on jocking too :)
Simple indead: You fire RosAsm, up there, you see a menu
with an Item saying [Files]. You Click on it and, quite
magic, it opens a PopUp menu offering, among other things
an option saying [Load]. Then you have a Box where you can
choose for what file to Load, and, if this is not a RosAsm
produced PE, you are proposed to disassemble it. You Click
on [Yes] and... here we go with a RosAsm Source... Want to
know how this Source is build. OK. Here we go:
... :) No,... just jocking you, forgive me :) ...
Betov.
> On 12 Jan 2004 23:05:47 GMT wrote Betov <be...@free.fr> in
> alt.lang.asm with <XnF946F47AD3B...@213.228.0.4>
>
>>> can learn from the page is that RosAsm is an assembler. What
>>> surprised me was, that it claims to be the assembler used for
>>> development of ReactOS.
>>
>>I wonder where you could have read this, Gerhard.
>
> Maybe I missunderstood that.
>
>
> The first line of your welcomepage http://betov.free.fr/RosAsm.html
> says:
>
> "RosAsm, the Bottom-Up Assembler for ReactOS"
>
> and further below it says:
>
> "It is clearly declared an Assembler for ReactOS, and the political
> and ethical concerns coming with this and with the GLP are clearly
> defined."
>
> Reading it again I can see that I may have missunderstood this, but my
> first impression was: This assembler is heavily affiliated and used in
> ReactOS development.
Not at all. What would they do with it?
> Otherwise, what should I make of it that ReactOS is so prominently
> mentioned?
Simply because it is very important to me of letting know that,
though RosAsm is a PE Assembler, i am not yet stupid nor senile
enough for working GPL and for free,... for Bill Gates glory.
>>Yes, they use NASM. RosAsm would be absolutely of no
>>use for them.
>
> I think so. On the other hand, if ReactOS would use it for their
> development this would be a good sign for potential RosAsm users.
ReactOS is written by C developers. They use NASM only when
they can not do without. In no case they would ever want to
write, say, any OS DLL with any Assembler, being it specificaly
dedicated to ReactOS or not.
>>Your problem, Gerhard, not mine. To the guys who share
>>my "political and ethical concerns", the relationship
>>with the Open Sources Mouvement is quite evident... and
>
> So you mean, because some open source developer, you know, has the
> same political or ethical opinion (whatever that would be), this is a
> political or ethical opinion for the open source community? :)
More or less (even if the way you write it sounds really
strange and tortuous to me),... yes.
Though, my sentence was, in fact, and more exactely, some
kind of "provocation" addressed to you, because, after having
read some other posts of yours, on some other "politicaly
oriented thread, i had an impression that you had the same
political and ethical view as i have, generally speacking.
If not... ;)
Betov.
>...but what's "unethical" about NASM being used on
>ReactOS? I mean, NASM is being used _for developing_ ReactOS so
>obviously those guys don't consider there to be anything
>"incompatible" with what they are doing or that it's too "unethical"
>to be used...the only thing I've heard Rene say about NASM to
>"disqualify" it is that it's written in C...he's yet to explain how
>wirting an assembler in C automatically makes it "unethical"...but I'm
>sure Rene can enlighten us all on this...
???!!!... Scandalous Beth! i am furious after you:
Yes, i said to the NASM guys that NASM being written in
C sounds to me a bad jocke. And then???!!!...
Where, and when, did i say NASM unethical???!!!...
For your other comments about ReactOS, and the eventual
relationships between ReactOS and RosAsm, i am even more
furious! So that better is i shut up to not become
definitively unpleasant.
Future will answer you better than i could.
Betov.
> ...Well, seriously, if the old associations with Rene's SpAsm
> weren't there that could cause a problem, then I'd happily use
> the name if he doesn't want it...in fact, I _did_ actually
> consider "Spasm" myself...
_____
Beth, you and I should collabor- ((( `\
ate on a totally NEW assembler: _ _`\ )
one which is simple and intuitive; (^ ) )
an assembler which isn't hamstrung ~-( )
with legacy support, or with the _'((,,,)))
bureaucratized conventionality ,-' \_/ `\
of "educational-institution" ( , |
philosophy (a real blind spot in `-.-'`-.-'/|_|
your friend Randy's approach to \ / | |
his front-end for MA$M). =()=: / ,' aa
In other words, you and I need to write a wholly
unfettered, completely organic new assembler.
We'll call it OrgAsm. What do you say?
Been done so many times, you can't even imagine.
You could call it "BethTool", though :-)
That's gonna kick HLA's butt when it comes out!
Cheers,
Randy Hyde
> Yes, it does...and I agree completely with you that Rene is off the
> mark on this with his assertions...if Frank also agrees - though, he's
> probably too "diplomatic" to say (and is probably the most sensible
> and mature out of us all for choosing to do that ;) - then all the
> main people who replied to that thread seem to all have a completely
> _different_ memory of what happened than Rene does...
Well, since you ask... I thought Randy's explanation was quite
unsatisfactory. He came across as saying that HLA was generating
"millions of lines of code", which wasn't what was happening at all!
"stdout.put" generated exactly the same code as "stdout.puts" - a push
of some cryptic label and a call to STDOUT_PUTS (for every *line* of
text, not for every room!). Randy may have meant to say that HLA
internally processed millions of lines of code, rejecting all but those
required to output a simple string, but it came across as being a
problem in the output code, which it was not.
Randy came up with what was making it slow, all I did was S&R the more
powerful macro (and it *is* powerful, IMO), and replace it with a
simpler macro, suitable *only* for a simple string. As I recall, there
were 4 or 5 thousand instances. There were a few instances where Paul
needed the more powerful macro - "stdout.put ("Gold: ", g);", for
example - those one-letter variable names have gotta go, Paul :). Using
"stdout.put" for a simple string worked fine - output *exactly* the same
code - but took an "unexpectedly" long time. I feel sure that it will be
many, many times faster in 2.0. Not because of being written in
assembly, but because Randy's aware that this is a slow spot, and will
be looking for the algorithmic improvement. It may be that just doing a
"pre check" to see if it's just doing a simple string, before checking
for all the other data types that "stdout.put" will handle, would be
worthwhile. I imagine that this is a common newbie "error". It isn't
really an "error", just using a more powerful macro when a less powerful
one would do - closely akin to using "printf" when "puts" is all that's
needed, except that HLA doesn't bloat the code with stuff that's not
being used, it just takes a long time to figure it out.
I haven't looked at the code, maybe it's inevitable that it takes that
long, but I'm betting that there's something "wrong" there - it seems to
take a little *too* long. If I were a gambling man, I'd bet on an
improvement of one hundredfold - maybe more - in 2.0 - maybe sooner.
In the case of Paul's game, it wasn't posted as an example of "a major
app written by an advanced programmer". It clearly isn't an example of
"thinking in assembly". It's a demonstration of the "ease" of HLA - it's
impressive that a beginner could do so well, but it's pretty much a
"straight translation" of a BASIC program - one "PRINT" per *line* of text.
As you say, there would be many advantages to completely restructuring
the game. The size improvement wouldn't be dramatic. Replacing those
thousands of "stdout.put(s)" - there are many more now than when I
modified it - with *one* would cut a significant amount off the size,
but "percentagewise", most of the size is initialized data - that "text"
in "text adventure" - so the improvement wouldn't be a real "big deal".
But having *one* place to fix bugs, and *one* place to add enhancements,
is a significant advantage. I fear that Paul *is* writing an
unmaintainable piece of code. It was a PITA when I last tried to modify
it, and it's gotten much larger.
The assembly speed would be better - "who cares" how slowly HLA
processes "stdout.put" if we're only doing it once? The speed of the
game would be improved most by using one "stdout.puts" per "roomful" of
text, probably (this is where those horrid parentheses start to look
good!). But that's a real "who cares", considering the artform.
Curiously, the best text adventure is probably written by the best poet,
not the best programmer!
Paul has mentioned some enhancements he's thinking of (might have been
the Yahoo list, not here). He'll have to learn some more HLA, and maybe
some more "real assembly language", too. If Paul doesn't learn to "think
in assembly", it may not be HLA's fault - maybe that's not his interest.
He's been making it "better" by adding more rooms, so far - which makes
sense: the "player" isn't going to notice a damn thing from making it
better "programatically"! The real advantage to "bringing the data to
the code" rather than scattering the code throughout the data, is to the
programmer, in this case. Easier to add (and debug) enhancements that
the "player" *will* appreciate! As it's structured, there's going to
come a time when it's "too much work" to make it any "fancier", I fear.
It *may* be "too late" to rewrite this particular program - there's
already a lot of it. I suspect Paul's got a "room generation engine" -
he adds rooms "faster than a speeding Bethpost" :) If so, and if it can
be altered to regenerate all that "room data" in a slightly different
format without having to re-type all the text, then a "total rebuild"
might not be too big a job. If not, successive S&R might do the job
without *too* much pain. I don't know if Paul would find it worthwhile -
the thing works as it's structured, and he can add "more" fairly easily.
Maybe that's enough. How much is an "elegant" implementation of a text
adventure worth? Depends on where you're going with it, I suppose -
there are lots of interesting possibilities...
As it stands, there's one thing that Paul's program can do that no
RosAsm (or Masm) program can do: run on Linux! (and Paul didn't have to
know OS details to do it) In fact, on my machine, it looks better in
Linux. This might indicate a Windows problem, or a problem in the
console library (haven't tried the latest version), or maybe something
Paul's doing wrong - I don't spot it... works on Linux. Maybe it's just
my machine... do other people see the text colors being a little erratic?
Anyway, I was too "diplomatic" (or too lazy) to mention it when it first
came up, but Randy's explanation of what was going on didn't make sense
to me. I think I remember that he said "stdout.puts" wasn't a macro,
which I think it is. We're only talking about a few thousand uses of the
more complex macro, not millions. In spite of the fact that "stdout.put"
will handle many types of data, only one type was being sent per usage.
The thing is dramatically slow! I'm confident that Randy can and will
make it better. It seems like thin grounds on which to condemn HLA...
but "stdout.put" is *real* slow. Real slow. Did I mention, it's slow?
Best,
Frank
The *macros* wound up generating about a million lines of source code.
That is, each one of those stdout.put macros was about 700 lines long.
As there were around 1,500 stdout.put macro invocations in the source
file, this results in 700x1,500 lines of code produced by the macros.
These are *HLA* lines of source code, not MASM generated lines of
code. And yes, the end result of those 1,500 lines of source is typically
the equivalent of *one* stdout.puts call. That's why replacing the
stdout.put
invocations with an stdout.puts call reduced the compilation time. Almost
by a factor of 700, in fact :-)
>
> I haven't looked at the code, maybe it's inevitable that it takes that
> long, but I'm betting that there's something "wrong" there - it seems to
> take a little *too* long. If I were a gambling man, I'd bet on an
> improvement of one hundredfold - maybe more - in 2.0 - maybe sooner.
Reducing roughly one million lines of code to around 2,000 (which is
what we really achieved) is largely responsible for the performance
improvement. As for HLA v2.0 being faster, well.... It will be.
But the big improvement will be new features in the language that
allow the reduction in size of that stdout.put macro. :-)
>
> Anyway, I was too "diplomatic" (or too lazy) to mention it when it first
> came up, but Randy's explanation of what was going on didn't make sense
to me. I think I remember that he said "stdout.puts" wasn't a macro,
> which I think it is.
Nope. stdout.puts is a procedure call (HLL-like to be sure, but
a procedure call nonetheless).
> We're only talking about a few thousand uses of the
> more complex macro, not millions. In spite of the fact that "stdout.put"
> will handle many types of data, only one type was being sent per usage.
> The thing is dramatically slow! I'm confident that Randy can and will
> make it better. It seems like thin grounds on which to condemn HLA...
> but "stdout.put" is *real* slow. Real slow. Did I mention, it's slow?
Again, just keep in mind that stdout.put expands (on each invocation) to
between 600 & 700 lines of code. Even ignoring the fact that HLA's
macro expansion system isn't blazing fast, the expansion ratio alone
tells you that it's going to compile 600-700 times *slower* than a single
statement line stdout.puts. That's the real problem.
Improvements in HLA v2.0 will *dramatically* speed up the compile-time
language, but as I said above, the big problem remains the number of lines
of code in the macro.
Cheers,
Randy Hyde
Great read Beth. I only vaguely knew some of the stuff you cover.
Have you ever thought of writing for computer magazines?
But I still don't understand why some brilliant group of programmers
can't write a program that can translate programs written for M$ to
work with another PC OS, including the hardware drivers? Can't
software be written to behave like M$ from the point of view of
hardware drivers?
Does this mean that Java can never be platform independent when
it comes to hardware support?
John Casey
[snip]
> In the case of Paul's game, it wasn't posted as an example of "a major
> app written by an advanced programmer". It clearly isn't an example of
> "thinking in assembly". It's a demonstration of the "ease" of HLA -
> it's impressive that a beginner could do so well, but it's pretty much
> a "straight translation" of a BASIC program - one "PRINT" per *line*
> of text.
>
That's exactely what i am saying since the beginnig
of HLA. Not the fault on beginners if Master Pdf
pushes them to think Basic. Examples:
_______________________________________________
_______________________________________________
>How can I get user input in Win32 assembler without
>calling a C function such as printf or scanf?
>
>I'm using MASM if that's for any help..
Call any of the appropriate routines (stdin/stdout)
in the HLA library for MASM32 users.
http://webster.cs.ucr.edu
Cheers,
Randy Hyde
_______________________________________________
_______________________________________________
> Hello
> I am moving from C++ into assembly and I was
> trying to compare memory allocation. So what
> would be the ASM equivalent of new memory
> allocation, or the free-store, in C++?
> In segment:offset and flat modes please. :o)
> TIA.
Under MS-DOS, you can use the 'UCR Standard Library'
malloc and free functions.
Under Win32, you can use the HLA Standard Library
malloc and free functions (along with a whole host
of other memory allocation routines).
Cheers,
Randy Hyde
_______________________________________________
_______________________________________________
and so on..., and so on...
_______________________________________________
_______________________________________________
Even worse than the demential syntax and writting
convention problems. So, as a whole, whatever side
you look at it, HLA is nothing but one another HLL,
and compared to most of the available HLLs, ...
a very bad one.
No matter if it is "Assembly able, if you have the
courage to write Assembly" (guess who wrote this?).
Betov.
> 3. Use Microsoft's own tricks against them: "de-commoditise" their
> proprietary advantage; This hasn't been attempted properly..."BIOS32"
> is perhaps the closest but wasn't taken up properly...the idea being
> that things return to a "BIOS"-like position but appropriate for
> protected mode operation...the difficulty here is protected mode
> itself...how do you create a "device driver specification" that will
> be appropriate for all the different possible OS types?
Project UDI [ http://www.projectudi.org ] is having a go at doing
just this. Though their standard is rather baroque and typical of the
design by committy approach, several drivers have already been
implemented for it and a number of small / hobby OS projects support
the UDI interface. (In some ways this is similar in approach to a
VFS interface, though the design allows for a much wider range of
device types.)
C
2003-01-14
>Simple indead: You fire RosAsm, up there, you see a menu
...
>know how this Source is build. OK. Here we go:
I didn't want to know how the source is built for the user, I meant how your
disassembler works.
>Simply because it is very important to me of letting know that,
>though RosAsm is a PE Assembler, i am not yet stupid nor senile
>enough for working GPL and for free,... for Bill Gates glory.
Just because it is an assmebler for Windows thath doesn't mean it can not be
GPL.
>ReactOS is written by C developers. They use NASM only when
>they can not do without. In no case they would ever want to
Thats how I know it and why I was suprised, but that was a missunderstanding
than.
>Though, my sentence was, in fact, and more exactely, some
>kind of "provocation" addressed to you, because, after having
>read some other posts of yours, on some other "politicaly
>oriented thread, i had an impression that you had the same
>political and ethical view as i have, generally speacking.
That can be of course.
> On 13 Jan 2004 19:00:22 GMT wrote Betov <be...@free.fr> in
> alt.lang.asm with <XnF946FCF086A...@213.228.0.136>
>
>>Simple indead: You fire RosAsm, up there, you see a menu
> ...
>>know how this Source is build. OK. Here we go:
>
> I didn't want to know how the source is built for the user, I meant
> how your disassembler works.
>
Hey, i was jocking you because you ask me too much.
You want me to explain 6 months of very complicated
work (mainly on the terrific Sections Recognitions
problems, that i am yet actually working on, for
improving the ratio of correctely eaten Files...)
on Message List, ... in a couple of words?
Sorry i am unable to do this. The whole computing is
not at all achieved with _one_ trick. there are many
different types of analyses that are run in turn, in
order to try to guess what is Code and what is Data
This is really "the" more terrific problem with PEs
disassembling.
There is no universal Method for doing this, and
none of the possible Methods is 100% sure. At best
"highly probable" results. For example, some small
Chunks may, in some cases, be interpreted, as well
as Code and as Data Strings. So, you need to see if
it is called or evocated, if there are other String
around, other Code around, if, when runing the Decoder
on the Chunk, it will output some code that would
"looks like valid Code", and so on...
Betov.
< http://betov.free.fr/RosAsm.html >
Ah, but the above is a _criticism of Randy's method of offering
assistance_, NOT HLA, isn't it? For example, you do absolutely NOTHING
to change RosAsm at all...so it's still its "real assembly" self, as
you like to see it...out comes the "BASIC PREPARSE" thingy and then,
if you posted "don't bother with real assembly, use BASIC PREPARSE
instead!"...then RosAsm hasn't changed at all..._you_ have in offering
different advice to tell people to learn BASIC rather than ASM...the
criticism, therefore, would be of _you_, not RosAsm...similarly, if
you personally don't like the above replies by Randy then it is
_Randy_ who's to blame for that, not HLA...if Randy had posted up HLA
code which used machine instructions and what-not then the reply
wouldn't be "use HLL" at all...HLA would, of course, be exactly what
it always was - just as RosAsm would be too - regardless of what kind
of reply either you or Randy made...so, if there is "fault" in what we
see here, the fault is with _Randy_, not with HLA...
Beth :)
Beth :)
On 2004-01-14 BethS...@hotmail.NOSPICEDHAM.com said:
> ...I thought "oh no, we're going to have that old 'Orgasm'
> joke again, aren't we?"
> ...
> ...I honestly forgot all about _that_ word entirely...
_____
It's been a long time, hasn't ((( `\
it, Beth. Hehehe! _ _`\ )
(^ ) )
Love, ~-( )
Annie _'((,,,)))
,-' \_/ `\
( , |
`-.-'`-.-'/|_|
\ / | |
=()=: / ,' aa
-----= Posted via Newsfeed.Com, Uncensored Usenet News =-----
http://www.newsfeed.com - The #1 Newsgroup Service in the World!
-----== 100,000 Groups! - 19 Servers! - Unlimited Download! =-----
> Ah, but the above is a _criticism of Randy's method of offering
> assistance_, NOT HLA, isn't it? For example, you do absolutely NOTHING
> to change RosAsm at all...so it's still its "real assembly" self, as
> you like to see it...out comes the "BASIC PREPARSE" thingy and then,
> if you posted "don't bother with real assembly, use BASIC PREPARSE
> instead!"...then RosAsm hasn't changed at all..._you_ have in offering
> different advice to tell people to learn BASIC rather than ASM...the
> criticism, therefore, would be of _you_, not RosAsm...similarly, if
> you personally don't like the above replies by Randy then it is
> _Randy_ who's to blame for that, not HLA...if Randy had posted up HLA
> code which used machine instructions and what-not then the reply
> wouldn't be "use HLL" at all...HLA would, of course, be exactly what
> it always was - just as RosAsm would be too - regardless of what kind
> of reply either you or Randy made...so, if there is "fault" in what we
> see here, the fault is with _Randy_, not with HLA...
Yes Beth, as usual, any analyse of either, Master Pdf
behaviour, or HLA quality, or AoA balbla, or anything,
will fall flat, because, i am confusing,... :
* Master Pdf with HLA.
* The language with the Implementation of the Language.
* What of AoA/HLA was designed to "support" the other.
* and so on... (not forgetting that.. i don't know...
i don't understand,... i am missing,... and so on.
OK.).
You will excuse me but, in a big packet of shiet, i
tend to not try to search if the right part of the
shiet was from the mid-day or from the evening meal.
Betov.
You can say that again...very confusing, indeed...
> * Master Pdf with HLA.
>
> * The language with the Implementation of the Language.
>
> * What of AoA/HLA was designed to "support" the other.
>
> * and so on... (not forgetting that.. i don't know...
> i don't understand,... i am missing,... and so on.
> OK.).
>
> You will excuse me but, in a big packet of shiet, i
> tend to not try to search if the right part of the
> shiet was from the mid-day or from the evening meal.
Then you will always miss the target, then, won't you?
Plus, if people are to follow your "philosophy", then, with this
policy of yours, you'll have to make it clear:
Is Randy condemned for being American, for writing HLA, for using PDF
file format, for replying to you, for using MASM with HLA, or what?
Because when you're not clear or "specific" (pardon the pun) about
this, how can people actually tell if they agree with you or not? Like
if it's the "right-wing Christian conservative American" angle then
you've wiped out support from an entire continent or two...but, like,
if it's because he uses the PDF file format, well, you might get some
sympathy there from those who don't like Adobe...and if it's the MASM
thing, hey, you might get loads of people on side because many people
think Microsoft are crap...
Beth :)
> Plus, if people are to follow your "philosophy", then, with this
> policy of yours, you'll have to make it clear:
>
> Is Randy condemned for being American, for writing HLA, for using PDF
> file format, for replying to you, for using MASM with HLA, or what?
>
> Because when you're not clear or "specific" (pardon the pun) about
> this, how can people actually tell if they agree with you or not? Like
> if it's the "right-wing Christian conservative American" angle then
> you've wiped out support from an entire continent or two...but, like,
> if it's because he uses the PDF file format, well, you might get some
> sympathy there from those who don't like Adobe...and if it's the MASM
> thing, hey, you might get loads of people on side because many people
> think Microsoft are crap...
>
If you like. No problem.
Yes, Master Pdf is hatable for being an American
"Christian and conservator" (hear, to me: A nazi),
for writting HLA, for using Pdf, and for promoting
MASM.
Would it be only this, i would not much care.
The worst thing is that this awfull man is extremely
talentous at selling himself, at missleading people
with lies and sdwindling, and so forth, as long as
i fell concerned, at depriving the Assembly world
of an important part of fresh beginners, who, falling
into his viscious trap, will most often leave Asm
without having understood a thing of Assembly, when
using such a weird HLL.
This is why i consider that, as long as i work for
promoting Assembly, doing the proper work for achieving
the Assembly Rebirth is only the positive and constructive
"Half-Part" of my actions, and that doing my best to
discredit Master Pdf is my _DUE_, even if coming out as
a negative and destructive "Half-Part" of my actions,
and even if the only result of my efforts will be with
having the little birds flying away from RosAsm.
I perfectely understood that, doing so, i also discredit
myself, because i am far from having the required
competencies in this very particular kind of activity,
that looks more like "politics" than thechnical fight.
Nervertheless, i do my best to LEARN about those durty
swindlings and propaganda Methods, in order to improve
my actions against master Pdf. Well, yet _much_ to learn,
compared to his extreme level of competency in this area
of Propaganda, but, well, i do my best... and i have a
real great master of this difficult Art right here... :)
Betov.
You know, I might have written something for that "ASM Programming
Journal" but it seems to have stopped or something...
> But I still don't understand why some brilliant group of programmers
> can't write a program that can translate programs written for M$ to
> work with another PC OS, including the hardware drivers? Can't
> software be written to behave like M$ from the point of view of
> hardware drivers?
Yes and no; Under Linux, there's "Wine" which "emulates" DOS / Windows
(as best as it can :) so that this stuff can be run on Linux...under
Windows, you can use "CygWin" where the Linux kernel has been written
as a Windows DLL and, therefore, you can compile your Linux
applications (luckily, most come with source code ;) as PE files
against the CygWin DLL (some "tweaking" may be necessary :) and then
use them under Windows...
But these are _large_ projects and they never can claim a 100% success
rate...plus, these things simply _run far slower_ in most
cases...that's because the application uses the "virtual OS" and then
those calls have to be "intercepted" and "translated" over into
appropriate calls for the native OS...and, well, that requires
_time_...and it's not a particularly easy thing to do...for example,
with that CygWin DLL, it simply provides the Linux kernel _C_
functions as "exports"...if a program is using the lower-level "INT
80h" interface then there's going to be problems...if the program
depends on "side effects" then the emulator needs to match those up
perfectly...if the program tries to do "something clever" and directly
access a certain memory location or something else "non-standard" (but
which actually works in practice on the "real thing"), then this is
particularly difficult to manage...
Doing it more direct, we have the ReactOS project, which is attempting
to clone NT as close as possible so that the MS stuff works directly
with it...of course, that'll mean that ReactOS will basically _be_
practically identical to NT that, other than being free, what's the
difference between this and the real thing?
And none of these projects are particularly easy...remember, though
Microsoft are lazy sods at times, Windows has been _decades_ in
development and, despite some of the "hype" making you think that they
re-write it from scratch every single time, they don't and it's the
_accumulation_ of decades of development...
Plus, on this score, stop to think about _why_ Microsoft insist on
literally tens of thousands of API? Yes, tens of thousands of API
calls to "emulate"...and they keep throwing out new ones and changing
over to COM then .NET then...then...they have the advantage of being
at the front of this race, where everyone else must "catch up"...so,
they simply just "tread water" slightly ahead of everyone else all the
time - nice and easy for them to do - while everyone else is tearing
their hair trying to copy it or emulate it or whatever...and, by the
time they've reached that goal? Well, ReactOS was to emulate
_NT_...there's 2K, there's XP...they've not got NT yet...by the time
they get there, we'll all probably have XP2...by the time they reach
2K, Microsoft will have "XP3.NET" which has had radical changes added
(delibrately to piss off the ReactOS people while their lawyers
scramble to sue it out of existence or whatever is available to
them)...by the time they catch up with that, Microsoft - fearing the
"threat" - has signed special "deals" with hardware manufacturers to
use special "security encrypted" drivers...MS's claim being that this
is for "security" but, really, it's done delibrately so that no-one
can follow them...you can't ask hardware manufacturers what the "keys"
are because "for security reasons" these are not given out to anyone
but MS and their own employees...
Always three steps behind whatever they do, always playing "catch
up"...and in this game of "Simon says", Simon can say "using millions
of dollars forge exclusive deals with hardware manufacturers for total
obedience"...oops, that's one thing Simon says that _can't_ be copied
by definition...this is why I tend to think that the "imitating" idea
is ultimately doomed...you can have "fun" scaring Microsoft, perhaps,
but then the better you do at that, the more likely Microsoft are to
"clam up" in reaction and use non-copyable means...
Like, for instance, the Linux people actually have major "issues"
regarding DVD players...the problem is that stupid "regions"
nonsense...Linux is "OpenSource" so whatever encoding / decoding
algorithm is used for each "region", it could be read straight out of
the source code...but that, of course, ruins "regions" as a
"protection" so the DVD people say: "No way, hose!"...I read some
really interesting "open letters" about this where the Linux people
worked on making the case that the entire "regions" concept of
"protection" was totally flawed from beginning to end and only hurt
_legitimate consumers_, anyway...it's a very good read and makes the
"no such thing as an uncrackable safe" points very, very
well...professional pirates will break through any new protections in
days and then simply disable them (or "convert" something from one
region to another so the "protection" ends up being
pointless)...Windows "activiation" was apparently cracked within a day
or two of release...all that fuss and for only about 48 hours was
Windows actually "protected" from piracy...what was the bloody point
in even trying? The professional pirates are called "professional" for
a _reason_...you bring out some "smartcard" and they'll have the thing
reverse engineered in an eyeblink...note, these people aren't poor
because they make _tons_ doing this so they _can_ afford to match up
technologically with anything the big companies
"mass-produce"...literally taking chips apart _physically_, if needs
be...and the argument here, of course, is that if this stuff doesn't
stop professional pirates at all (and "casual pirates" can get the
professional's "cracked" version without protections and simply copy
it) then all it actually does, in the end, is really piss off someone
who buys a DVD on vacation in Japan and then realises that it won't
work on their machine at home...of course, most people would just
learn to avoid buying those DVDs and, oh dear, this thing that's meant
to "protect sales" has just lost them masses and masses of legitimate
sales...and they can stick "digital rights" on whatever they like but
what'll happen is that someone will connect the speaker socket to a
microphone socket and press "play" on one and "record" on the other,
then convert it to MP3 and stick it up on one of the hundreds of file
share programs out there (which are peer-to-peer and there's literally
hundreds of these things...and when they close Napster, everyone goes
over to Morpheus and when they close that they go to...and then they
go to...remember what I was saying about everyone being "one step
behind" Microsoft? Well, the shoe is on the other foot for the music
people with their attempts to bring things down via the law
courts...it's way too slow...they are, in fact, simply attempting to
"scare" people with the possibility and Hoping that's good
enough...but, of course, we all know that it won't be...Napster's
users were in the _millions_ at its peak, after all)...
Anyway, back to the main point...emulating is hard and isn't good
enough, copying is hard and doomed if those you're copying decide to
get "awkward" (plus, if you manage to copy NT perfectly then, oh, what
you've got is _still_ NT...it's free, true enough, which'll really
piss off Microsoft but it's not "new"...and, in a sense, the hardware
manufacturers are _still_ writing drivers for Windows and Windows -
even if now "FreeWindows" - will still be in control and Microsoft are
still calling the shots...it's like we joke at Rene...as his RosAsm is
for ReactOS and ReactOS copies NT using the PE file format, then
imagine ReactOS succeeds in destroying Microsoft...well, Rene will be
_still_ using _Microsoft's_ PE file format...he'll be keeping it alive
as some sort of "detached zombie"...other people may try to extend it
but, just like Microsoft, they keep the "core" the same for "backwards
compatibility"...you simply change who Microsoft are, so to speak,
they still - even in death - control everything with monopoly...new
Kings, yes, but same old crap Monarchy system ;)...
And writing a "conversion" program is very difficult...in fact, it's
basically reliable disassembly and then re-assembly, so to
speak...like Rene's "two-clicks" ideas but for a much more complicated
procedure of actually _changing_ a fully-functional Windows driver
into a Linux driver...I draw your attention to what Randy says about
the first part of this problem equating to the "halting problem",
which has been _proved_ to be impossible in the general
case...converting the semantics of one API set to equal semantics of a
completely different API set (and memory model to another memory model
and so on and so forth) sounds like a pretty complex AI
problem...although, at least the re-compilation after these two
next-to-impossible things has been done will prove nice and easy...you
can try this and might get some good results with "simple" predictable
programs...but, in general, you can't do it for all possible things
put in front of the "convertor" because that's got both a "halting
problem" _and_ complex expert system AI involved...
It would be easier and quicker to take the Linux approach and simply
write them all one by one from scratch..."diminishing returns", as
they say...Linux does reasonably well at this kind of thing exploiting
the "thousand eyes" that while you're still working ten years from now
on this "can convert anything to anything else" superior AI program,
they'll have hand-coded hundreds and hundreds of drivers from
scratch...
Also, there's the implicit problem...how do you "defeat" Windows by
totally _depending_ on it to exist to have all these drivers for
"conversion"? The "ReactOS paradox", so to speak...in fact, it's this
continual "acceptance" of Windows as "always there" in people's
attitudes and comments which is probably the very thing that's worst
of all...like using war to try to prevent war and then there's a
continual cycle forever of war after war...each one apparently suppose
to "prevent" the last one...
The lasting solution - if there is one - is for everyone to be
_determined_ to strike out alone (Linux-style) and for the hardware
people to come on-side...and that is, unfortunately, the _most
difficult_ thing to achieve: agreement and co-operation...
"Freedom comes when you learn to _LET GO_
Creation comes when you learn to _SAY "NO!"_
Pain is a _warning that something's wrong_...
I pray to God that it won't be long...
Do you want to go higher?"
[ "the Power of Goodbye", Madonna..."Ray of Light" ;) ]
Also, one suspects whether people really, deep down, actually want to
succeed:
"Every artist is a cannibal,
Every poet is a thief...
All _KILL_ their inspiration,
And then sing about the grief!"
[ "The Fly", U2..."Achtung, Baby!" :) ]
> Does this mean that Java can never be platform independent when
> it comes to hardware support?
Java is a virtual machine...its hardware support is "hidden" behind
method calls...this stuff is delibrately "abstracted" out of the
equation in order to get the "portability"...but, at some point, some
piece of code somewhere needs to send specific hardware-dependent
commands to an nVidia card to draw polygons in a certain way...
_UNLESS_ we write Java applications on a Java CPU that uses Java
hardware...but, then, that's just a case of inventing
"standards"...this stuff would then be "incompatible" with anything
else...
The problem is _inherent_...a _physical_, not merely "logical",
problem...if my hardware accepts certain device-dependent commands and
those commands are different to another piece of hardware which uses
different commands, then an application can't just spit out a single
set of commands because the two pieces of hardware work in different
ways...there needs to be some "bridge"...either by "standards" to make
all hardware the same (all VGA cards, for instance, are "compatible"
with each other and so any VGA code posted up here will work without
change on any "100% compatible" VGA card...the problem with
"standards" is that it holds back innovations..."standards" get
decided by committee and committees notoriously choose bloody awful
decisions full of compromise between them)...or by using some "bridge"
between "independent" and "device-dependent", which is the "device
driver", basically (note that the BIOS also acts as such a "bridge"
for things like disk access and these are effectively "device drivers
in ROM"...what would be nice, actually, is if Intel CPUs could finally
make the transition and boot up in protected mode and BIOSes were all
similarly updated to work in protected mode...though there are "memory
model" issues there but some "standard" could be worked out, I'm sure,
like VESA's VBE protected mode interface...now, _that_ would make a
_big difference_ in levelling out the competition...just as anyone can
easily write a "DOS" in real-mode - it's not too difficult as DOS
doesn't do all that much more than provide a file system and then call
through to BIOS calls - then a protected mode boot-up and protected
mode BIOS would go a long way...the problem? "Backwards
compatibility"...an x86 booting up in protected mode and a protected
mode BIOS would be totally incompatible with how things currently
are...it won't happen, unfortunately)...
Beth :)
Aha! I told you that the hardware people themselves _hate_ being
bossed around by Microsoft...notice their absence on the
"participants" list but the presence of IBM, Sun, LynuxWorks, Intel
and others we all _know_ would _LOVE_ to be rid of
Microsoft...methinks they have thought roughly the same as me and
_are_ trying to use their mutual hatred of Microsoft bossing them
around to get that "co-operation" towards a "standard" that'll be more
open to all...
And if IBM are on the "participants" list, does that signal - if this
project goes well and many drivers appear - that they may be the ones
to put up a "OS/3 (UDI)" or something? Ooh, with Sun and Intel
onboard, as hardware manufacturers with known software smarts to throw
in with IBM...
Aarrgh! They _could_ do it but you just _know_ they'll come to blows
and the whole project will backfire or something..._THAT_ is the true
reason Microsoft do so well, really...everyone else is just so bloody
"fingers and thumbs" about things and mess up completely all the
time...it's IBM and Apple's fault for falling for Bill Gates' bluffs
that we're in this position in the first place!! :|
But, as I say, this is the kind of thing I was thinking about...it
needs _hardware manufacturers_ - and "biggies" like IBM, Sun and
Intel - on-side or it stands no chance at all because it's about
getting these companies to _make_ "UDI" drivers eventually up to the
quantities that Windows drivers are made...and OSes that can take on
Microsoft...
Then, one day, if all goes well, then Intel can release something on
UDI and NOT Windows...starting to reverse the trend and turn the
tables, with _Microsoft_ scrambling in the dust to try to get
specifications to a device and sitting around fathoming out _IBM's_
"PC 2010" specifications, rather than writing them...an "unfair
advantage" in Windows' favour was allowed to develop because people
got "lazy" at a _crucial_ point in time (say, around Windows 3.x
time)...and Microsoft simply took advantage and keep things to their
advantage...that, for them, they merely only need to "tread water" in
a casual way while everyone else is working hard and scrambling around
for specifications and so forth, unable to match what MS get given to
them for free, _doing absolutely nothing_...
Beth :)
-----------------------------
4. What's the major motivation for creating a Uniform Driver
Interface?
With today's rapid pace of hardware development, and the proliferation
of Operating Systems, it is becoming increasingly challenging to
develop timely support for new hardware on more than a small number of
Operating Systems.
5. Why not just support some existing driver model on all OSes?
Unlike other interfaces, UDI was designed from the start to be
applicable for a wide range of Operating Systems and platforms,
instead of being based on a particular OS's internal architecture or
limited to a particular style of platform architecture. _This creates
a level playing field_, allowing the interface to more readily be
adapted to a wide range of architectures. If UDI were biased towards
one or a small number of Operating Systems or platforms it would be
difficult to gain acceptance from other OS and System Vendors.
-----------------------------
Yup, they _ARE_ thinking exactly like me...those skilled in "reading
between the lines" will recognise that the "small number of Operating
Systems" means Windows primarily (and Apple's OS X as a smaller but
also important target)...but point 5 says it so well that _all it is
actually missing_ is for "Windows" to be _literally stated
outright_...
Indeed, at least that's the theory: "This creates a level playing
field" ;)
Beth :)
> Yup, they _ARE_ thinking exactly like me...those skilled in "reading
> between the lines" will recognise that the "small number of Operating
> Systems" means Windows primarily (and Apple's OS X as a smaller but
> also important target)...but point 5 says it so well that _all it is
> actually missing_ is for "Windows" to be _literally stated
> outright_...
>
> Indeed, at least that's the theory: "This creates a level playing
> field" ;)
>
> Beth :)
Priorities of the day :
1. Turn on the power.
2. Get out of bed, and try to balance to the kitchen without hitting any
objects with my feet.
3. Put on coffie. Tea makes me sick.
4. Pour down 1/2 liter of water to get rid of sleep and the coffie from
yesterday.
5. Finding my glasses, where the hell did I put those? Hard to find them
without them.....
6. Log in. Start the mailreader. Any nice posts ?
I am thinking like this too Beth. And I am skilled...to read between the
lines, unless I am extraordinary tired, when I actually read more inbetween
lines than are actually there. :-(
But even if there were such driver standard, The drivers would still have to
be written. And to write them you would still need the hard facts about
them. So how would theese volantar people working for thoose companies, be
able to write drivers for UDI ? They would have to force MS to use UDI first
wouldnt they ? And how would anyone get into the position of forcing MS to
to anything ? What did I miss? A have a sig now, and read some other posts.
Bye.
The Wannabee.
Thanks for the "recap" on your position, as it should prove useful, as
I say, for some people to work out "where you're coming from" on these
things...
Beth :)
You are in good company. There are enough negative reviews of
SICP to give only 3-1/2 stars. Lots and lots of 1-star reviews
from students complaining that it did not teach them anything
that would help them get a job as a VB programmer.
>Randy wrote:
>> http://www.security-forums.com/forum/viewtopic.php?t=11021
>>
>> Check it out.
>
>*Ahem*
>
>An extract:
>
>"Covering such things as the four most used registers like eax, ebx,
>ecx, edx, ebp, and esp among others."
>
>Obviously, you should also be including a "how to count" chapter too
>before this, as that's _six_ registers he's listed (worse, he also
>puts "amongst others", implying _even more_ than the six in the list
>;), not four...
>
>Also, it might be cool to also add a "how to punctuate" chapter to AoA
>too, Randy, so that he might start using commas - and other useful
>reading aids like that - more often in his reviews...
>
>Beth ;)
Well I see my book review caused a minor stir. Randy and Beth if
either one of you want to ping me off line via my security-forums addy
feel free to do so. At that point we can discuss my review of Randie's
book. Don't care to do it here for usenet is a toilet bowl by and
large. Oh yes, we can also discuss my use of punctuation as well.
Please do email me, only fair as you chose to nitpick me here vice
emailing me, which is another reason I avoid usenet.
Don