HP3000-L Archives

February 1999, Week 1

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Reply To:
Date:
Wed, 3 Feb 1999 03:46:49 GMT
Content-Type:
text/plain
Parts/Attachments:
text/plain (62 lines)
Therm-O-Link wrote:
>
> Tracy Johnson writes:
>
> >At my job we've replaced Growthpower in a couple of places with CA-MANMAN.
>
> Please note that I'm not picking on Growthpower in particular, I'm
> just interested in seeing what you-all consider valid reasons for
> replacing software.
>
> >This is not a great technology leap, (HP BASIC to FORTRAN)
>
> Funny, but I've never considered language as "technology" per se.
> I always considered the language as the technology enabler.
> I've been on some other computers where you had to use a certain
> language if you wanted to do something esoteric (like muck about
> in the file system), but most of them were similar to the HP3K:
> System intrinsics are callable from any language.  Now, I don't
> know a whole lot about HP Basic, but I am *assuming* (uh-oh!)
> that it can call system intrinsics.

Oh
No
It
Can't.

  Not directly. You have to write SPL interfaces to it, call the SPL
code, and the SPL call turns around and calls the System Intrinsic.

The object it produces has a call structure totally unique. You can't
even call another Classic Basic routine. Neither can you put a Basic
routine into an SL. Classic HP Basic predates ALL other compilers and
produces a code unique to itself.

Also, no compiled object can be over 32K-words. Our Order Entry program
is composed of FIFTY source modules that INVOKE one another.

Variable names must be one or two characters the second of which must be
a number. So we don't refer to SOL-PART-NBR, we refer to W7$[17;18].

Strings can't exceed 254 characters so DB calls must use multiple
variables. DB's must be constructed so all strings are together, all
Integers, all Short Reals and all Long Reals are together. Only Short
Integers (-32767..32767) are supported. -32768 is reserved as the
UNDefined variable. If you read a Long Integer you musr code it as two
Shorts - and Woe unto you if one of the values is -32768. You can't move
it (abort), test it (abort) or even assign it (abort).

All Short and Long Reals are HP-peculiar Reals - IEEE Reals are not
supported. No packed-decimal either.

Sample DB Call:

5000 XDBGET(B1$,"SOH;",FNI(5),Z(*),"@;",W5$,W6$,W8$,W8[*],X8[*],"")
9000 DEF INTEGER FNI(X)=X
9005 INTEGER Z[10]
9010 DIM W5$[254],W6$[224],W8$[192]
9015 REAL W8[27]
9020 LONG X8[11]

The XDBGET is a Basic-peculiar routine that interfaces to DBGET.

ATOM RSS1 RSS2