1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--Converted with LaTeX2HTML 2002-2-1 (1.70)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>IOR as single point of access</TITLE>
<META NAME="description" CONTENT="IOR as single point of access">
<META NAME="keywords" CONTENT="users_guide">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="users_guide.css">
<LINK REL="previous" HREF="node191.html">
<LINK REL="up" HREF="node189.html">
<LINK REL="next" HREF="node193.html">
</HEAD>
<BODY >
<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html3593"
HREF="node193.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html3587"
HREF="node189.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html3583"
HREF="node191.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html3589"
HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<A NAME="tex2html3591"
HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html3594"
HREF="node193.html">Dynamic vs. Static Linking</A>
<B> Up:</B> <A NAME="tex2html3588"
HREF="node189.html">Grouping compiled assets into</A>
<B> Previous:</B> <A NAME="tex2html3584"
HREF="node191.html">Circular Dependencies and Single-Pass</A>
<B> <A NAME="tex2html3590"
HREF="node14.html">Contents</A></B>
<B> <A NAME="tex2html3592"
HREF="node317.html">Index</A></B>
<BR>
<BR></DIV>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION04123000000000000000"></A><A NAME="ss:IORsinglepointaccess"></A>
<BR>
IOR as single point of access
</H2>
<P>
When building a Babelized library, its also important to note if your code has
dependencies to other Babel types not in your library. These types often appear as
base classes, argument types, or even exception types. Your library will need
stubs corresponding to all these types, so it is best to put these in your library
as well. We call these external stubs.
<P>
Many have tried to minimize replication of Babel stubs by removing the external stubs
and letting the library link directly against the stubs in an external library.
This is a mistake because the external library may be implemented in a different
language, and the stubs may be for a different language binding. By bundling
the external stubs specific to your implementation with the implementation's library,
you are ensuring that the only access your library has with any other Babelized library
is through the IOR. This is a good thing. The Babel IOR is the same for all language
bindings and essentially forms the binary interface by which all Babel objects interact.
<P>
<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html3593"
HREF="node193.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html3587"
HREF="node189.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html3583"
HREF="node191.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html3589"
HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<A NAME="tex2html3591"
HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html3594"
HREF="node193.html">Dynamic vs. Static Linking</A>
<B> Up:</B> <A NAME="tex2html3588"
HREF="node189.html">Grouping compiled assets into</A>
<B> Previous:</B> <A NAME="tex2html3584"
HREF="node191.html">Circular Dependencies and Single-Pass</A>
<B> <A NAME="tex2html3590"
HREF="node14.html">Contents</A></B>
<B> <A NAME="tex2html3592"
HREF="node317.html">Index</A></B> </DIV>
<!--End of Navigation Panel-->
<ADDRESS>
<br><br>babel-0.10.2<br>users_guide Last Modified 2005-03-23<br><br><a href="http://www.llnl.gov/CASC/components">http://www.llnl.gov/CASC/components</a><br><a href="mailto:components@llnl.gov">components@llnl.gov</a>
</ADDRESS>
</BODY>
</HTML>
|