🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.atari.st
Article #26261

Re: uniterm size

#26261
From: manis
Date: Sun, 12 Apr 1987 17:43
47 lines
3307 bytes
In article <4475@utah-cs.UUCP> sandra@utah-cs.UUCP (Sandra J Loosemore) writes:


>Given the straightforward nature of .o files on the ST (at least as produced 
>by the Alcyon assembler), it should not be too difficult to implement a
>dynamic linking routine....   In fact, this is something that's on my 
>queue of things to hack on.  PSL (Portable Standard Lisp) under Un*x 
>and VMS has something similar, that allows you to link in arbitrary 
>code into a running Lisp system.  I did the VMS implementation myself, and
>I expect the same approach would work on the ST:  you run the files through
>the linker to resolve external references between them, then load the
>result into memory and return the addresses of the global symbols it
>defines.

One of the few astonishingly nice features of VMS is that it has a linker
and runtime library which support any known language. This is true in UNIX
as well, if you define "any language" to mean "any language whose compiler 
is based on pcc" (i.e., C, f77, and Pascal). This is emphatically not so
on micros (more's the pity). For instance, my preferred programming
environments are Mark Williams C and TDI Modula-2, both of which have their
own linkers. Mark Williams C can handle (with limitations) DRI object
modules, but it's not very nice. On the other hand, Simon uses Personal 
Pascal (I believe), so I wouldn't want to depend on his compiler generating
code which my linker can process (even in some compatibility mode).

I wish there were a standard ST linker format (I used to do a lot of
computing on IBM 360's and 370's, using a brain-damaged operating system
called MTS; it was common to take object code from an OS/VS or CMS system,
link it with assembler I/O code, and execute with no errors.) However, there
isn't. I respect Simon's decision not to distribute source code. In that
case, an executable program format is fine. 

One other point: the ST does support a system call called Pexec. There's no
reason that optional utility modules could not be supported as stand-alone 
programs. (I've got a tangle of programs which run together under
Micro-Emacs that way). I don't see how to structure a terminal emulator 
this way (though maybe the Kermit and Xmodem packages might be candidates), 
but it is a good solution in general.

-----
Vincent Manis                {seismo,uw-beaver}!ubc-vision!ubc-cs!manis
Dept. of Computer Science    manis@cs.ubc.cdn
Univ. of British Columbia    manis%ubc.csnet@csnet-relay.arpa  
Vancouver, B.C. V6T 1W5      manis@ubc.csnet
(604) 228-6770 or 228-3061

"BASIC is the Computer Science equivalent of 'Scientific Creationism'."
Technical Details
Message-ID: <993@ubc-cs.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!rutgers!mit-eddie!uw-beaver!ubc-vision!ubc-cs!manis
References: <282@tutor.tut.UUCP> <4468@utah-cs.UUCP> <812@viper.UUCP> <4475@utah-cs.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!rutgers!mit-eddie!uw-beaver!ubc-vision!ubc-cs!manis
From: manis@ubc-cs.UUCP
Newsgroups: comp.sys.atari.st
Subject: Re: uniterm size
Message-ID: <993@ubc-cs.UUCP>
Date: Sun, 12-Apr-87 12:43:58 EST
Article-I.D.: ubc-cs.993
Posted: Sun Apr 12 12:43:58 1987
Date-Received: Tue, 14-Apr-87 00:46:02 EST
References: <282@tutor.tut.UUCP> <4468@utah-cs.UUCP> <812@viper.UUCP> <4475@utah-cs.UUCP>
Reply-To: manis@ubc-cs.UUCP (Vincent Manis)
Distribution: comp
Organization: UBC Department of Computer Science
Lines: 47