[Date Prev][Date Next][Thread Prev][Thread Next] - [Date Index][Thread Index][Author Index]

Re: IPS and Amateur Satellite Software

Douglas -- glad you found Karl's article in the library. I'm sure you'll
find it interesting.

Realize that the material is now ~23 years old. Given a Moore's law
"technology doubles every year", remember that what you read is now a
factor of ~ 2**23 = ~8,000,000 = ~69 dB behind current capabilities. When
the article was published, Altair & Imsai S100 machines were at the edge of
the state of the art and the Apple-I had been introduced as an alternative.
Atari 400's were also available and Karl was using them as his preferred
ground-based development tool.

> I'm looking for a current IPS port because I don't have an 1802 processor,
> nor a RISC machine and I am interested in the working of AO-40.
> Don't you ever wonder *how* something works?  Have you ever
> taken something apart with a screwdriver just to see how it works?
> AO-40 runs IPS.  I want to learn how it works.  Simple.

>      IPS is what AO-40 uses and this isn't likely to change.  If you want to
> learn how AO-40 really *really* works, you need to learn IPS
> (and from what I know so far, you need to learn German IPS.  JA?  :-)  ).

In IPS the language used to write the code is pretty irrelevant. As an
example the JA? NUR: pair is German IPS for the IF...THEN...ELSE pattern
(The IF is implicit -- you evaluate the test you want performed and leave
the TRUE/FALSE values on the stack). But you have only to enter the
translation instructions   YES? JA?  and  NO: NUR:  make the two languages
be equivalent forever. There is no execution speed penalty for adding the
second language, since both will point to the same execution address.

Since FORTH has essentially the same concepts/grammar/philosophy as IPS,
you could easily take a working FORTH (like the one that Maggie mention for
PalmOS) and write IPS in FORTH. You would need to enter in the translation
instructions to convert  JA? YES?...NUR: NO: into whatever the FORTH words
are (I forget) for IF...THEN...ELSE.

This ease of writing IPS as little words that are pieced together into more
complex words, which are then bumdled into complete tasks is one of the
strengths of IPS/FORTH. Personally my biggest problem with IPS (which was
also true for the case of the HP35/41 calculator series) was the difficulty
of reviewing my old code later -- or even worse, someone else's code ;<{. 
In my way of linear thought, Reverse Polish is a write-only language
concept! I grew up in a left-to-right Fortran world.

Also I offer the caveat that my comments are based on my mental memories of
activities almost 2 decades old and after that long the brain takes on
certain spongiform attributes. I apologize for any errors of omission or
commission contained in my comments. I intended no offense to anyone's
religious preferences for/against any particular computer language.

73, Tom
Via the amsat-bb mailing list at AMSAT.ORG courtesy of AMSAT-NA.
To unsubscribe, send "unsubscribe amsat-bb" to Majordomo@amsat.org