Re: Linker ... still useful ?

andrew@cee.hw.ac.uk (Andrew Dinn)
Fri, 30 Sep 1994 11:54:30 GMT

          From comp.compilers

Related articles
[5 earlier articles]
Re: Linker ... still useful ? baynes@mulsoc2.serigate.philips.nl (1994-09-26)
Re: Linker ... still useful ? ram+@cs.cmu.edu (Rob MacLachlan) (1994-09-27)
Re: Linker ... still useful ? steve@cegelecproj.co.uk (1994-09-28)
Re: Linker ... still useful ? jan@neuroinformatik.ruhr-uni-bochum.de (1994-09-28)
Linker ... still useful ? Roger@natron.demon.co.uk (1994-09-28)
Re: Linker ... still useful ? gnb@bby.com.au (1994-09-29)
Re: Linker ... still useful ? andrew@cee.hw.ac.uk (1994-09-30)
Re: Linker ... still useful ? marks@orb.mincom.oz.au (1994-10-05)
Re: Linker ... still useful ? ok@cs.rmit.oz.au (1994-10-06)
Re: Linker ... still useful ? monnier@di.epfl.ch (1994-10-07)
Re: Linker ... still useful ? baynes@ukpsshp1.serigate.philips.nl (1994-10-10)
Re: Linker ... still useful ? dmason@uwaterloo.ca (1994-10-15)
| List of all articles for this month |
Newsgroups: comp.compilers
From: andrew@cee.hw.ac.uk (Andrew Dinn)
Keywords: linker
Organization: Dept of Computing and Elec. Engineering, Heriot-Watt University
References: 94-09-122 94-09-170
Date: Fri, 30 Sep 1994 11:54:30 GMT

: Rob MacLachlan <ram+@cs.cmu.edu> writes:


: 3] Initialization -- Most modern languages have a concept of more-or-less
: anonymous chunks of initialization code which are run before the main
: entry.


Jan Vorbrueggen (jan@neuroinformatik.ruhr-uni-bochum.de) wrote:
: The VMS linker has supported this very early on, in a very flexible way. Only
: few compilers seem to make use of this. Probably ADA does, and FORTRAN seems
: to do in some situations.


: [C++ needs this feature for global class instances with initializers. ...


This is an even bigger issue for persistent programming as global
initialization needs to be done as a one-off when the global variable
is persistent but e.g. needs to cope with redefinition of the global
variable. Furthermore, initialisation usually needs to be done inside
a transaction so the linker needs to know how to place things in the
object code so they can be picked up from a dynamically allocated
transaction before any program transaction is created. Lots of hair.
See the Exodus E compiler from Wisconsin (a persistent C++) for an
example implementation.




Andrew Dinn
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.