comp.lang.ada
 help / color / mirror / Atom feed
From: tmoran@bix.com
Subject: Re: What  is differance between thick and thin binding?
Date: 1999/08/10
Date: 1999-08-10T00:00:00+00:00	[thread overview]
Message-ID: <Rh%r3.25$Zm.7422@typhoon-sf.snfc21.pbi.net> (raw)
In-Reply-To: 37B0429C.EA2184F1@pwfl.com

>Or maybe we need degrees of thickness? When does a body of software stop being a
>binding and start being an entity in its own right?
   I propose R-values, like insulation.  A really thin (machine
produced?) binding is R-1.  Tcl/Tk is R50 (your environment is the
same whether you are in Alaska or the tropics, Windows or ...).
>I'd consider a thick binding to be one which provided a parallel set of
>subprogram interfaces to the Win32api (as an example) but which provided
>parameter types and passing mechanisms more suited to Ada. The best example is
>the nuisance of trying to turn an Ada string into a C string where a thick
>binding would just accept the Ada string and translate for you.
  That would be, say, R-2.  It still operates with the same abstract
objects as the original and you still need to read the same C books
on Windows programming.  But if, say, the binding uses a Controlled
object for a Windows Pen, so it can prevent "object-leaks" by
automatically doing the DeleteObject when (and if) that is
appropriate, the level goes up.
  Another measure is the ratio of spec code to body code.  In Claw,
which I'd call about R-10, the total *.adb files add up to about twice
the *.ads files.




  reply	other threads:[~1999-08-10  0:00 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <934219556.19836@www.remarq.com>
1999-08-09  0:00 ` What is differance between thick and thin binding? John Duncan
1999-08-10  0:00   ` Marin David Condic
1999-08-10  0:00     ` tmoran [this message]
1999-08-10  0:00     ` Stephen Leake
1999-08-11  0:00     ` John Duncan
1999-08-09  0:00 ` tmoran
1999-08-10  0:00 ` David Botton
1999-08-12  0:00 ` David Emery
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox