Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site uw-beaver
Path: utzoo!watmath!clyde!burl!ulysses!cbosgd!ihnp4!houxm!vax135!cornell!uw-beaver!info-mac
From: info-mac@uw-beaver
Newsgroups: fa.info-mac
Subject: MS-BASIC dynamic linking
Message-ID:
Date: Thu, 24-Jan-85 11:31:08 EST
Article-I.D.: uw-beave.512
Posted: Thu Jan 24 11:31:08 1985
Date-Received: Fri, 25-Jan-85 08:46:22 EST
Sender: daemon@uw-beaver
Organization: U of Washington Computer Science
Lines: 34
From: PETER YAOHWA CHU
This message is for BASIC fans.
I received "Microsoft BASIC for the Macintosh Building Machine Language
Libraries" handout from Microsoft yesterday (see BASIC v.2 manual p.103).
I don't expect to try it in the near future, so no questions, please.
Here are some quotes from that document:
"...machine langues routines which can be bound to BASIC
dynamically at runtime."
"When BASIC sees a CALL or implied CALL statement, it first sees if the
routine name is defined as a BASIC subprogram..... If it is not...,
it checks to see if a BASIC variable has been defined with that name. If
so, it invokes the machine language routine at the address indicated by
the variable. If it is not...., it sees if any opened library has a CODE
resource by that name. If it finds..., it creates a BASIC variable by the
same name, and store information in that variable which makes subsequent
accesses to the routine very fast. .... This routine must call routines
provided by BASIC to parse its arguments. ..."
one of the provided routines "picks up the next argument", the types of
argument are: end of argument list, null argument (i.e. ,,), string,
integer, single precision and double precision (I don't see matrix type)
Other routines deal with data conversion, I/O, error message, string
descriptor manipulation.
One of the many examples explains the commands to create a library
using "the Macintosh Development System provided by Apple" which runs on
a Mac. (NOT on a Lisa)
------
