source code size metric: Python and modern C++

Ian Bicking ianb at colorstudy.com
Wed Dec 4 22:34:15 EST 2002


On Wed, 2002-12-04 at 07:56, Duncan Grisby wrote:
> In article <mailman.1038954486.29692.python-list at python.org>,
> Brian Quinlan  <brian at sweetapp.com> wrote:
> 
> >If you have to write/use IDL code then you've already lost the coding
> >convenience war.
> 
> I disagree. You are going to have to tell people writing clients to
> your services what their interfaces are, otherwise they won't be able
> to understand how to use them. Given that you've got to do that, and
> you've got to make sure you are unambiguous in your descriptions, a
> formal interface definition language is a huge benefit.

But the IDL doesn't describe the service either -- because it's so
formal, it's not tremendously helpful for documenting the interface in a
way that's useful for the programmer.

Also, the interface is usually nowhere close to being specified simply
because you've specified types.  In your IDL you can specify integer,
but you can't necessarily specify positive integer, or prime integer, or
or integer within some range, or integer that is specifically to be used
in conjunction with another interface.

All the hard and important and subtle parts of specifying an interface
aren't part of the IDL.  Just like static typing at compile time only
catches easy bugs, I think static typing over a network interface will
mostly catch easy bugs.

That said, I don't think an XMLRPC example is really fair -- XMLRPC was
designed for languages like Python, not languages like C++.  It may very
well be superior than CORBA in many domains -- very possibly because
it's designed for languages like Python -- but even if it wasn't it
would still be easier to use in Python than C++.

-- 
Ian Bicking           Colorstudy Web Development
ianb at colorstudy.com   http://www.colorstudy.com
PGP: gpg --keyserver pgp.mit.edu --recv-keys 0x9B9E28B7
4869 N Talman Ave, Chicago, IL 60625 / (773) 275-7241





More information about the Python-list mailing list