Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
corba or sockets?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 26 - 50 of 99 - Collapse all  -  Translate all to Translated (View all originals) < Older  Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Marc Battyani  
View profile  
 More options Oct 30 2000, 4:28 pm
Newsgroups: comp.lang.lisp
From: "Marc Battyani" <Marc.Batty...@fractalconcept.com>
Date: Mon, 30 Oct 2000 22:27:15 +0100
Local: Mon, Oct 30 2000 4:27 pm
Subject: Re: corba or sockets?

"Will Hartung" <will.hart...@havasint.com> wrote in message

news:8tkk7g06cm@news1.newsguy.com...

Sure. I do agree with all this and this is why I think that for easy tasks
(T.B.D.) it's better to use sockets than CORBA (or COM for M$ fans). When I
don't write Lisp, I write VHDL where I implement lots of (fast!) protocols
at the bit/hardware level. Well, it seems that I should communicate in VHDL
or Lisp rather than English today...

Another communication channel I used between applications is mapped memory +
system events. This gives the fastest communication I could achieve between
2 applications.

Marc Battyani


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marc Battyani  
View profile  
 More options Oct 30 2000, 4:46 pm
Newsgroups: comp.lang.lisp
From: "Marc Battyani" <Marc.Batty...@fractalconcept.com>
Date: Mon, 30 Oct 2000 22:45:18 +0100
Local: Mon, Oct 30 2000 4:45 pm
Subject: Re: corba or sockets?

"William Deakin" <w.dea...@pindar.com> wrote in message

news:39FDA10C.C0655AD1@pindar.com...

> Tim wrote:
> > So I suppose either SW people will have to work out that you can't
> > program network protocols as if they were memory access on a PDP11, or
> > some *really* cool HW people will manage to make RPC look like is *is*
> > memory access on a PDP11!

> Is this because most SW people are stupid and most HW people are clever?
> Is this why SW people like java, C++ ... and not Common Lisp?

Now that HW is written in VHDL (SW) the frontier is becoming rather fuzzy.
Lisp has been very present in the electronics CAD software industry and the
standard file format (EDIF) should look familiar here. See yourself, here
are the first lines of an EDIF file...

(edif time_sim
  (edifVersion 2 0 0)
  (edifLevel 0)
  (keywordMap (keywordLevel 0))
  (status
    (written
      (timestamp 2000 5 24 12 0 29)
      (program "Xilinx NGD2EDIF" (version "C.18"))
      (comment "Command line: -w -v fndtn testus.nga time_sim.edn ")))
  (external SIMPRIMS
    (edifLevel 0)
    (technology (numberDefinition
      (scale 1 (E 1 -12) (unit TIME))))
    (cell x_and3
      (cellType GENERIC)
      (view view_1
        (viewType NETLIST)
        (interface
          (port IN0
            (direction INPUT))
          (port IN1
            (direction INPUT))
          (port IN2
            (direction INPUT))
          (port OUT
            (direction OUTPUT))
....

Looks like HW guys don't need XML though I'm sure some brilliant SW guy will
explain some day that these file should be written in XML to be used by
C#.NET...
When this arrives we could start to have to reboot, several time per day,
our watches, radio receivers, phones, lifts, flash lights,...

Marc Battyani


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marc Battyani  
View profile  
 More options Oct 30 2000, 5:17 pm
Newsgroups: comp.lang.lisp
From: "Marc Battyani" <Marc.Batty...@fractalconcept.com>
Date: Mon, 30 Oct 2000 23:15:19 +0100
Local: Mon, Oct 30 2000 5:15 pm
Subject: Re: corba or sockets?

"Erik Naggum" <e...@naggum.net> wrote in message

news:3181926696765923@naggum.net...

Ok, I fully agree with this. I missed the emphasis you made on the
difficulty of designing a correct protocol, and I thought you were against
using Lisp based protocols.

Marc Battyani


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Oct 30 2000, 5:49 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: 30 Oct 2000 22:41:40 +0000
Local: Mon, Oct 30 2000 5:41 pm
Subject: Re: corba or sockets?
* Paolo Amoroso <amor...@mclink.it>
| Could you please mention a few examples of well designed protocols
| that are worth studying?  Thanks in advance.

  TCP and IPv4 are _very_ good protocols.  (I don't know enough about
  IPv6 to rate it.)  The telecommunications protocols used on the
  gigabit trunks and on the long-haul high-speed interconnects are
  amazing feats of science.  Of the really, _really_ large protocol
  suites, I find ITU's Signalling System #7, the Digital Subscriber
  Signalling System, and the Integrated Digital Services Network
  protocols as well-designed as they are complex.  The Telecom people
  have probably done some of the best work there is in protocol
  design.  Just take a look at how they started out with very low
  speeds, like 300 bps, but over time managed to squeeze 56kbps
  through the feeble phone lines that were not upgraded, then got DSL
  to work across that same old copper wire.  Impresses me, anyway.

  FTP and SMTP are well-designed and fairly small protocols, too.
  (Small does not mean quick-and-dirty: If you spend less than 3
  months implementing a server or client for either of them, however,
  you're doing it wrong, as almost every implementation that is not
  regarded as a huge monstrosity are.)

  As an example of a very good way of separating abstractions and
  representation, ASN.1 and its encoding rules are worth a study, such
  as what is done with SNMP.

  Finally, if you don't know X.25, you don't know packet exchange, but
  it's _real_ old, now, and probably doesn't bring anything directly
  applicable to people who think in streams implemented on top of
  record-based protocols, except what _not_ to do with streams and
  when it really does make sense to use records.

  _Very_ few of the recent application-level Internet protocols are
  worth the paper they aren't published on.  The sheer lack of design
  behind the protocol that is _actually_ at work in the MIME cruft is
  astonishing, but trying to track that braindamaged piece of shit
  from its inception to its current specification level through the
  numerous RFCs will tell you what a few over-sized egos who had no
  clue what they were doing can do to a conceptually _very_ simple
  thing: Wrap various objects in a textual representation.

  On the other hand, the Network Time Protocol was done by people who
  really cared and also who managed to keep the dolts out of the way.

#:Erik
--
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jon S Anthony  
View profile  
 More options Oct 30 2000, 6:14 pm
Newsgroups: comp.lang.lisp
From: Jon S Anthony <j...@synquiry.com>
Date: Mon, 30 Oct 2000 18:10:30 -0500
Local: Mon, Oct 30 2000 6:10 pm
Subject: Re: corba or sockets?

Erik Naggum wrote:

> * Philip Lijnzaad <lijnz...@ebi.ac.uk>
> | Unless the communication involves simple but big data (kind of like ftp,
> | say), use CORBA, by a very long shot.  

>   Really?  I'd use CORBA for fairly simple stuff and roll my own if I
>   get above a fairly low complexity threshold, but I know I'm about
>   three orders of magnitude better at protocol design than the CORBA

The real question should be whether you believe your new protocol adds
real value to what it is you are producing.  If you are in the
protocol business this is obvious.  If you are in something else
entirely and only need to make use of protocols, it is highly unlikely
that the time spent on inventing yet another one will be of any real
value for your project/product.

CORBA is _not_ anything like the best distributed object protocol that
one could define - probably a legacy of the C++ mentality of most of
the original vendors involved.  However, it _does_ work rather well
for many scenarios - most any that someone not in the protocol tool
business would care about.

>   team could ever dream of becoming.  For instance, CORBA is a single-
>   threaded protocol, with lock-step properties where you wait for the
>   answer before you continue with the next transaction.  This is of
>   course a consequence of serial computations and CORBA being a very,
>   very slow way of doing serial computations on disjoint processes and
>   processors.

This has not been true since at least CORBA 2.0.  That's not to say
that you have "true" asynchronous communication (request and asynch
notification of completion) out of the box (certainly not in any of
the ORBs we've used).  However, you certainly have one way calls
(basically datagrams...) and can also use of these, or more likely
synchronous "posts", to get this.  We've done this here and the
results are actually _very_ good.

The nice thing about using CORBA to do this is that it at least
eliminates all the marshalling and unmarshalling of data items
(primitive and structured) in a platform independent way.  Unless your
business is really line protocols or something similar, rolling your
own here with sockets is just a distracting waste of resources.

>   the software world?  People who use all this new hardware power
>   only to wait for ages for incoming data before they turn around
>   _real_ fast to send something that did not even need to wait for
>   that value and then proceed to wait for ages, again,

Only if you don't make use of threads in making the calls in the first
place.  If each call is a thread, the "waiting for the synchronous
reply" is irrelevant.  Most ORBs are multithreaded and can easily
handle this.

>   E.g, how many applications do you know which continue to work just
>   as well if you move one of the computers 3000 miles away?  Do you
>   think CORBA handles this situation well?  From what I have seen, the

Well we have done it at 2000 miles and the results were basically
"instantaneous" (well under a second).  Using straight X was death.
Using HTTP was (of course) worse than death.

/Jon

--
Jon Anthony
Synquiry Technologies, Ltd. Belmont, MA 02478, 617.484.3383
"Nightmares - Ha!  The way my life's been going lately,
 Who'd notice?"  -- Londo Mollari


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Oct 30 2000, 8:01 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: 31 Oct 2000 00:56:07 +0000
Local: Mon, Oct 30 2000 7:56 pm
Subject: Re: corba or sockets?
* Jon S Anthony <j...@synquiry.com>
| The real question should be whether you believe your new protocol adds
| real value to what it is you are producing.  If you are in the
| protocol business this is obvious.  If you are in something else
| entirely and only need to make use of protocols, it is highly unlikely
| that the time spent on inventing yet another one will be of any real
| value for your project/product.

  I disagree with this assessment.  It is the same argument that can
  be made for something overly complex and badly implemented, like
  SGML,  It has also been touted as solving problems that people would
  not be able to solve cheaper by themselves.  That was just plain
  false.  Similar problems crop up with other committee products that
  have tried to solve overly broad and thus non-existing problems
  instead of trying to solve real problems of real complexity.

  How much effort does it take a good system designer to come up with
  something better than XML for any _particular_ purpose?  If he
  grasps the good and useful qualities of SGML, a simplified syntax,
  slightly general tools, etc, can be written in a fairly short amount
  of time, and it costs less to develop, maintain, and use than a
  full-fledged SGML system does, because, importantly, SGML's full
  generality has surpassed the point where additional features bring
  nothing but more costs than benefits to the equation..  A particular
  markup language (or something similar) is also easier to learn for
  someone who has _not_ spent much too much time studying the original
  -- like one one who is only moderately familiar with the original.

| CORBA is _not_ anything like the best distributed object protocol
| that one could define - probably a legacy of the C++ mentality of
| most of the original vendors involved.  However, it _does_ work
| rather well for many scenarios - most any that someone not in the
| protocol tool business would care about.

  Precisely, but having designed a few protocols that have been in
  wide use for over a decade each, just how much effort do you think
  it is to design new ones?  The reason protocol design is hard is
  that people are told not to do it, and thus do not investigate the
  issues involved.  This also leads to incredibly bad protocols in
  use, because the users are told they are too hard to understand.

| This has not been true since at least CORBA 2.0.

  I'm "happy" to hear that.

| The nice thing about using CORBA to do this is that it at least
| eliminates all the marshalling and unmarshalling of data items
| (primitive and structured) in a platform independent way.

  You know, this is _not_ a hard problem.  It is a hard problem in C++
  and the like, but that is because those languages have lost every
  trace of the information the compiler had when building the code.
  That design mistakes has cost the world _billions_ of dollars.  If
  you don't make that design mistake, you don't have to worry.  I
  know, this sounds "too good to be true", but the inability of any
  small C++ program to read C++ source code and do useful things with
  it is the reason for all these weird data-oriented languages.

| Unless your business is really line protocols or something similar,
| rolling your own here with sockets is just a distracting waste of
| resources.

  Well, I have tried both approaches.  Have you?

| Only if you don't make use of threads in making the calls in the
| first place.  If each call is a thread, the "waiting for the
| synchronous reply" is irrelevant.  Most ORBs are multithreaded and
| can easily handle this.

  Right.  Not my experience.  Of course, everything gets better in the
  mythical "future", so do stay with CORBA if you have other things to
  do while waiting for the synchronous request for more features sees
  a response from the CORBA people.  (Sorry, a tad rambling here.)

| Well we have done it at 2000 miles and the results were basically
| "instantaneous" (well under a second).  Using straight X was death.
| Using HTTP was (of course) worse than death.

  How long time do you think you would have spent designing a protocol
  that would have been just as good?

#:Erik
--
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Christopher Browne  
View profile  
 More options Oct 30 2000, 11:12 pm
Newsgroups: comp.lang.lisp
From: cbbro...@news.hex.net (Christopher Browne)
Date: Tue, 31 Oct 2000 04:12:09 GMT
Local: Mon, Oct 30 2000 11:12 pm
Subject: Re: corba or sockets?
In our last episode (30 Oct 2000 16:34:26 +0100),
the artist formerly known as Eric Marsden said:

>>>>>> "en" == Erik Naggum <e...@naggum.net> writes:

>  en> For instance, CORBA is a single- threaded protocol, with
>  en> lock-step properties where you wait for the answer before you
>  en> continue with the next transaction.

>this is no longer true. While the standard CORBA communication model
>is synchonous twoway (the client thread which sends the request is
>blocked while waiting for the server to answer), several other types
>of communication are possible:

> * oneway invocations, where the client doesn't wait for a response

Deprecated, due to the availability of AMI...

> * deferred synchonous, where the client invokes a request and can
>   poll the server later to see whether a response is available (this
>   is available by using the dynamic invocation interface)
> * over EventChannels specified by the CORBA Event Service, or the more
>   recent Notification Service. The Event Channel mediates
>   communication between consumers and suppliers, and allows push,
>   pull, push/pull and pull/push interactions.

Essentially, these two approaches amount to a _simulation_ of
asynchronous communications by using some sort of "proxy" to manage
the connection.  They still use synchronous twoway communications; if
whatever server is sitting there ready to accept the requests can
queue them so they _appear_ async, then you get something that _looks_
async.

Reality doesn't change...

> * asynchronous method invocations provided by CORBA Messaging,
>   either by polling or with callbacks. [This has been specified
>   fairly recently, so isn't supported by all implementations.]

Are there any non-C++ implementations of AMI?  All the documentation
I've seen on AMI has been quite tightly tied to C++...

>See <URL:http://www.iona.com/hyplan/vinoski/> for some excellent
>papers on these subjects (from the C/C++ Users Journal :-).

The thing that is irritating about CORBA is that once you start trying
to get into anything that deviates from "just plain vanilla
synchronous connections," it gets _real_ complex and _real_ strongly
tied to platform-dependancies _real_ fast.  They've got a standard for
everything, but only a few that are ubiquitously available.

It's a bit like comparing CL to Scheme; both involve standards; the
problem with Scheme, like CORBA, is that getting Full Functionality
means having to have huge quantities of extensions that don't work
with all the implementaitons.  (Contrast with the fact that the SERIES
extension for CL can at least be _hoped_ to work with many CL
implementations...)
--
(concatenate 'string "cbbrowne" "@" "acm.org")
<http://www.hex.net/~cbbrowne/corba.html>
"Popularity is the hallmark of mediocrity."  --Niles Crane, "Frasier"


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
William Deakin  
View profile  
 More options Oct 31 2000, 4:13 am
Newsgroups: comp.lang.lisp
From: William Deakin <w.dea...@pindar.com>
Date: Tue, 31 Oct 2000 09:14:53 +0000
Local: Tues, Oct 31 2000 4:14 am
Subject: Re: corba or sockets?

Erik wrote:
>   Is that a SW person or a HW person asking?

Clearly a SW person or else I wouldn't be talking about it :)

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Peter Vaneynde  
View profile  
 More options Oct 31 2000, 5:12 am
Newsgroups: comp.lang.lisp
From: Peter Vaneynde <Peter.VanEy...@lant.be>
Date: Tue, 31 Oct 2000 10:12:45 GMT
Local: Tues, Oct 31 2000 5:12 am
Subject: Re: corba or sockets?

Erik Naggum <e...@naggum.net> writes:
> * Fernando Rodríguez <spam...@must.die>
> | I have to comunicate a lisp process with a c++ app and I was
> | considering corba or using sockets. Both are rather new to me, so
> | wich one would you recommend and why? O:-)

>   CORBA is already badly designed, so if you are new to sockets and

IMHO CORBA is badly designed, and the problems this produces are only
amplified by the legions of C++ "programmers" that want to design
systems using only the knownledge of "Corba in 21 days".

Network programming isn't easy, and using CORBA in a slightly
different way the designers immagined will get you into a world of
pain. But it all appears so easy in the examples people are lured into
a false sense of security...

I think CORBA should be seen as "just" a RPC call round ASN.1, and
people should use its 'oo'-ness as sparingly as possible. Just have a
Server object replying to simple (non-object) commands with simple
(structure) replies. Stick to this and you'll be safe. Ignore the
C++/java people why cry you don't know OOP and want to make everything
an object. Remember that a RPC is inherently slow, so limit the amount
of calls needed to do a typical operation, also (unless you use
advanced stuff, not implemented in the lisp servers AFAIK) objects in
CORBA as horribly costly: they take about 1K of space on the wire and
most deadly of all *the never, ever die*. An object in CORBA, once
created and given out *has* to remain alive for the duration of the
lisp process.

>   If you are very dedicated, you will probably spend a few months just
>   getting up to speed with protocol design before you can do something
>   that is not a total drag, and upwards of a year to get it fully
>   right.

Right. Be prepared to junk the first few versions of your code. (or
just give up and leave that project)

>   Security problems in protocols are so common and so hard to avoid
>   that you _really_ don't want to expose yourself to the process of
>   learning by doing.

In my experience people don't care, and I don't expect this to change
soon :-(.

Groetjes, Peter

--
LANT nv/sa, Research Park Haasrode, Interleuvenlaan 15H, B-3001 Leuven
mailto:Peter.VanEy...@lant.be                       Phone: ++32 16 405140
http://www.lant.be/                                 Fax: ++32 16 404961


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eric Marsden  
View profile  
 More options Oct 31 2000, 5:45 am
Newsgroups: comp.lang.lisp
From: Eric Marsden <emars...@mail.dotcom.fr>
Date: 31 Oct 2000 11:44:39 +0100
Local: Tues, Oct 31 2000 5:44 am
Subject: Re: corba or sockets?

>>>>> "cb" == Christopher Browne <cbbro...@news.hex.net> writes:

  ecm> asynchronous method invocations provided by CORBA Messaging,
  ecm> either by polling or with callbacks. [This has been specified
  ecm> fairly recently, so isn't supported by all implementations.]

  cb> Are there any non-C++ implementations of AMI? All the
  cb> documentation I've seen on AMI has been quite tightly tied to
  cb> C++...

not that I know of. Probably future releases of Orbix2000 for Java
will include AMI.

--
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eric Marsden  
View profile  
 More options Oct 31 2000, 8:00 am
Newsgroups: comp.lang.lisp
From: Eric Marsden <emars...@mail.dotcom.fr>
Date: 31 Oct 2000 13:51:51 +0100
Local: Tues, Oct 31 2000 7:51 am
Subject: Re: corba or sockets?

>>>>> "pve" == Peter Vaneynde <Peter.VanEy...@lant.be> writes:

  pve> Remember that a RPC is inherently slow, so limit the amount of
  pve> calls needed to do a typical operation

a CORBA method invocation does not necessarily involve network
communication: if the client and server are collocated (reside in the
same address space), the ORB can use a simple method call.

  pve> objects in CORBA as horribly costly: they take about 1K of
  pve> space on the wire and most deadly of all *the never, ever die*.
  pve> An object in CORBA, once created and given out *has* to remain
  pve> alive for the duration of the lisp process.

I haven't used the commercial CL ORB implementations, so I don't know
what they are capable of. However, I don't see anything in the CORBA
specifications which requires an object to stay alive indefinitely.

You publish the availability of a service through an object reference.
On the host+port specified by that object reference, the object
adapter is responsible for dispatching incoming invocations to the
appropriate servant (a programming language entity which implements
the service). In CL, a servant is probably represented by an instance
of a CLOS class.

The object adapter maintains a mapping between object identifiers (the
server-specific component of an object reference) and servants. When
publishing a service, the only thing which has to remain alive
server-side is its object identifier (a key in a hashtable, say). You
aren't obliged immediately to incarnate a servant: the object adapter
can do so on-demand. Once a servant has serviced a request the object
adapter can decide to kill it (called "etherealization"), to be
restarted when a new request comes in. You can also have one servant
which services requests for multiple objects.

--
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Peter Vaneynde  
View profile  
 More options Oct 31 2000, 10:28 am
Newsgroups: comp.lang.lisp
From: Peter Vaneynde <Peter.VanEy...@lant.be>
Date: Tue, 31 Oct 2000 15:27:59 GMT
Local: Tues, Oct 31 2000 10:27 am
Subject: Re: corba or sockets?

Eric Marsden <emars...@mail.dotcom.fr> writes:
> a CORBA method invocation does not necessarily involve network
> communication: if the client and server are collocated (reside in the
> same address space), the ORB can use a simple method call.

AFAIK no common lisp ORB can collocate.

>   pve> objects in CORBA as horribly costly: they take about 1K of
>   pve> space on the wire and most deadly of all *the never, ever die*.
>   pve> An object in CORBA, once created and given out *has* to remain
>   pve> alive for the duration of the lisp process.

> I haven't used the commercial CL ORB implementations, so I don't know
> what they are capable of. However, I don't see anything in the CORBA
> specifications which requires an object to stay alive indefinitely.

In at least one cl-ORB you can force the deletion of the object (this
was added on request) and further operations on the object result in
an exception. This was only added later and I don't know how well it
works, nor if it is in the base product now (doesn't seem to be). The
position of the designers was that after publication something had to
be there to reply to RPC's. Note that the published CORBA mapping
claims that Lisp  objects do not need the destroy method (sorry don't
know the exact name) as Lisp doesn't need it...

> The object adapter maintains a mapping between object identifiers (the
> server-specific component of an object reference) and servants. When
> publishing a service, the only thing which has to remain alive
> server-side is its object identifier (a key in a hashtable, say). You
> aren't obliged immediately to incarnate a servant: the object adapter
> can do so on-demand. Once a servant has serviced a request the object

The POA right?

> adapter can decide to kill it (called "etherealization"), to be
> restarted when a new request comes in. You can also have one servant
> which services requests for multiple objects.

Not implemented AFAIK. IMHO if you have a need for a large number of
objects in your design it's likely you're doing something wrong.

See:
http://www.franz.com/support/documentation/6.0/orblink/doc/orblink-id...
http://www.franz.com/support/documentation/6.0/orblink/doc/standards.htm

Groetjes, Peter

--
LANT nv/sa, Research Park Haasrode, Interleuvenlaan 15H, B-3001 Leuven
mailto:Peter.VanEy...@lant.be                       Phone: ++32 16 405140
http://www.lant.be/                                 Fax: ++32 16 404961


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Wade Humeniuk  
View profile  
 More options Oct 31 2000, 11:30 am
Newsgroups: comp.lang.lisp
From: Wade Humeniuk <humen...@cadvision.com>
Date: Tue, 31 Oct 2000 09:31:05 -0700
Local: Tues, Oct 31 2000 11:31 am
Subject: Re: corba or sockets?

>   TCP and IPv4 are _very_ good protocols.  (I don't know enough about
>   IPv6 to rate it.)  The telecommunications protocols used on the
>   gigabit trunks and on the long-haul high-speed interconnects are
>   amazing feats of science.  Of the really, _really_ large protocol

They are fine protocols, but only as transport and network layer
protocols.  The whole conceptual framework of protocols I think is best
described by the OSI reference model.  TCP and IPv4 only live within the
context of the data link and physical layer protocols that carry them.
All the issues of reliability, delivery and such need to be looked at as
protocol stacks.  

For those that want to learn about protocols break open the OSI spec on
the reference model. Anybody remember the ISO spec number? I don't have
it handy anymore.

When I think what are good protocols I think they should have state
models that are totally defined.  Modern protocols seem to be lacking
proper definitions of their state machines and are more ambiguous in
their specification.  X.25 is very well defined with state tables
unambiguously placed in the specification.  Also I have found a good
feature of a protocol is that is does not try to do too much.  This
means that its finite state machine does not exceed 15 states with about
15 events.  Do not ask me to justify these arbitrary numbers.  I have
just found from experience that if the state machine exceeds these
limits there is probably more than one state machine that can be layered
into a protocol stack.

>   protocols as well-designed as they are complex.  The Telecom people
>   have probably done some of the best work there is in protocol

The major problem with the Telecom protocols I have found has been their
defintions of their protocol data units which place a premimum on
reducing the number of bits in network traffic.  This makes the PDUs
hard to parse.  A great example of this, if you can get the spec is
IS-634, the control protocol between Cellular Base Stations and
Management systems.  Whoever dreamed that up has never programmed a
computer before.  Also the telecom protocols (at least the cellular
ones) are tending to define the protocol state machines in SDL which
allows protocol designers to leave gaps of what happens when error
conditions occur.

>   As an example of a very good way of separating abstractions and
>   representation, ASN.1 and its encoding rules are worth a study, such
>   as what is done with SNMP.

ASN.1, what can I say, another language to learn.  Liking Lisp, I think
a Lisp external syntax should be used for a platform independent
encoding of PDUs.  It takes more bytes but it transports well (and I can
see it clearly on a data scope).

I am still divided on the issue of creating protocols between
cooperative machines/processes or going for a distributed OS view where
everything is one large memory space. I thought that is what CORBA is
offering, one large memory space.  There is room for both of them, a
distributed OS at some lower level must implement protocols.  Does a
programmer have to see that?

Wade


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Philip Lijnzaad  
View profile  
 More options Oct 31 2000, 11:36 am
Newsgroups: comp.lang.lisp
From: Philip Lijnzaad <lijnz...@ebi.ac.uk>
Date: 31 Oct 2000 16:36:54 +0000
Local: Tues, Oct 31 2000 11:36 am
Subject: Re: corba or sockets?

pve> objects in CORBA as horribly costly: they take about 1K of
pve> space on the wire

You're talking about object references, which can actually be much smaller
than 1 k (IOR strings don't tell you that much); it depends a bit on the ORB
vendor. The minimum it must contain (for IIOP) is protocol name +version,
hostname, portnumber, adaptor name and object identifier (the last two are
mangled into the object key, in a vendor-specific fashion). These components
would be necessary for any object reference that is supposed to work across a
network. I believe I read that an estimate of the lower bound on the data in
of an object reference is below 100 bytes (sorry, no 'references').

pve> and most deadly of all *the never, ever die*.
pve> An object in CORBA, once created and given out *has* to remain
pve> alive

Same is true for telephone numbers and URLs ... Somehow, the real world isn't
quite aware of this :-)

pve> for the duration of the lisp process.

Peter> In at least one cl-ORB you can force the deletion of the object (this
Peter> was added on request)

This sounds very suspicious to me. If an object should be deletable by a
client, then it's interface should bloody well have a delete() or destroy()
method or some such (and many do).

Peter> and further operations on the object result in
Peter> an exception.

exactly.

Peter> Note that the published CORBA mapping claims that Lisp objects do not
Peter> need the destroy method (sorry don't know the exact name)

'the destroy method' ? There is no such thing. It depends on the IDL, which
has nothing to do with languages.

Peter> as Lisp
Peter> doesn't need it...

??? If an IDL has interface Car { ...; destroy(); }

then this has nothing to do with Lisp garbage collection: it's simply a
method to have clients delete a particular Car object.

>> The object adapter maintains a mapping between object identifiers (the
>> server-specific component of an object reference) and servants. When
>> publishing a service, the only thing which has to remain alive
>> server-side is its object identifier (a key in a hashtable, say). You
>> aren't obliged immediately to incarnate a servant: the object adapter
>> can do so on-demand. Once a servant has serviced a request the object

Peter> The POA right?

(yes)

>> adapter can decide to kill it (called "etherealization"), to be
>> restarted when a new request comes in. You can also have one servant
>> which services requests for multiple objects.

Peter> Not implemented AFAIK.

This so-called DefaultServant approach is part of the POA, and therefore must
be implemented in _all_ ORBs that CORBA 2.1 compliant (were now at version
2.3a, btw). If not, they are not compliant. Incidentally, the DefaultServant
can be simulated by using a ServantLocator approach, where the preinvoke()
method always returns the same servant. It prolly is slightly more costly
though.

Peter> IMHO if you have a need for a large number of objects in your design
Peter> it's likely you're doing something wrong.

Why? It turns out that using objects in our field (bioinformatics) is very
natural and does make things easier. Since we're talking biggish databases
(1.5 million biological sequences, with many more sub-objects) here, we
inevitably have large numbers of objects. This has nothing to do with the
design: using 1.5 million little pieces of text (which is actually were we
come from) is no option.

When you're talking about large number of objects (all of them being equally
important), you _must_ have persistency behind it. Given this, CORBA
makes it easy to -- completely transparently to clients -- instantiate
some 'working set' of all those objects on demand (which, BTW, no other
distributed (object?) technology comes close to provding).

                                                                      Philip
--
Time passed, which, basically, is its job. -- Terry Pratchett (in: Equal Rites)
--------------------------------------------------------------------------- --
Philip Lijnzaad, lijnz...@ebi.ac.uk \ European Bioinformatics Institute,rm A2-24
+44 (0)1223 49 4639                 / Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax)           \ Cambridgeshire CB10 1SD,  GREAT BRITAIN
PGP fingerprint: E1 03 BF 80 94 61 B6 FC  50 3D 1F 64 40 75 FB 53


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Lieven Marchand  
View profile  
 More options Oct 31 2000, 12:07 pm
Newsgroups: comp.lang.lisp
From: Lieven Marchand <m...@bewoner.dma.be>
Date: 30 Oct 2000 23:00:51 +0100
Local: Mon, Oct 30 2000 5:00 pm
Subject: Re: corba or sockets?

Erik Naggum <e...@naggum.net> writes:
> * Eric Marsden <emars...@mail.dotcom.fr>
> | this is no longer true.

>   I appreciate the update.

>   I _still_ think CORBA sucks, though.

If you want to see protocol design gone berserk, try ASN.1. They
haven't solved any of the real problems but they added heaps of
complexity in the process. Unfortunately, it's caught on in some part
of the IETF world, so I'm considering writing some tools in CL to make
it livable.

--
Lieven Marchand <m...@bewoner.dma.be>
Lambda calculus - Call us a mad club


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Rainer Joswig  
View profile  
 More options Oct 31 2000, 12:18 pm
Newsgroups: comp.lang.lisp
From: Rainer Joswig <jos...@corporate-world.lisp.de>
Date: Tue, 31 Oct 2000 18:17:59 +0100
Local: Tues, Oct 31 2000 12:17 pm
Subject: Re: corba or sockets?
In article <m3n1fmhtv0....@localhost.localdomain>, Lieven Marchand

<m...@bewoner.dma.be> wrote:
> Erik Naggum <e...@naggum.net> writes:

> > * Eric Marsden <emars...@mail.dotcom.fr>
> > | this is no longer true.

> >   I appreciate the update.

> >   I _still_ think CORBA sucks, though.

> If you want to see protocol design gone berserk, try ASN.1. They
> haven't solved any of the real problems but they added heaps of
> complexity in the process. Unfortunately, it's caught on in some part
> of the IETF world, so I'm considering writing some tools in CL to make
> it livable.

Have you looked at http://www.switch.ch/misc/leinen/snmp/sysman.html ?

--
Rainer Joswig, Hamburg, Germany
Email: mailto:jos...@corporate-world.lisp.de
Web: http://corporate-world.lisp.de/


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jason Trenouth  
View profile  
 More options Oct 31 2000, 1:48 pm
Newsgroups: comp.lang.lisp
From: Jason Trenouth <ja...@harlequin.com>
Date: Tue, 31 Oct 2000 16:53:12 +0000
Local: Tues, Oct 31 2000 11:53 am
Subject: Re: corba or sockets?
On Tue, 31 Oct 2000 15:27:59 GMT, Peter Vaneynde <Peter.VanEy...@lant.be>
wrote:

> Eric Marsden <emars...@mail.dotcom.fr> writes:

> > a CORBA method invocation does not necessarily involve network
> > communication: if the client and server are collocated (reside in the
> > same address space), the ORB can use a simple method call.

> AFAIK no common lisp ORB can collocate.

Xanalys HCL ORB does co-location optimization for Common Lisp clients and
servers within the same LispWorks process.

__Jason


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Oct 31 2000, 2:04 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: 31 Oct 2000 18:50:58 +0000
Local: Tues, Oct 31 2000 1:50 pm
Subject: Re: corba or sockets?
* Lieven Marchand
| If you want to see protocol design gone berserk, try ASN.1.

  ASN.1 is not a protocol design.  It's a data description language.
  The full name is Abstract Syntax Notation #1.  It does no more than
  define structures that are named and identified by mutual agreement.
  To use ASN.1, you have to choose some encoding rules, and there are
  unfortunately too many of them, but the Basic and Distinguished
  Encoding Rules are actually OK.  (C programmers hate them, because
  they make life so much harder in an untyped language like theirs,
  but if you know what kinds of objects you get, as in dynamic types,
  you can easily deal with these things.)

| They haven't solved any of the real problems but they added heaps of
| complexity in the process.

  I can't agree with your assessment.  Would you like to explain what
  you consider the real problems they have not solved and what the
  heaps of complexity added have been?

| Unfortunately, it's caught on in some part of the IETF world, so I'm
| considering writing some tools in CL to make it livable.

  I'm surprised that you haven't, already.  ASN.1 is about typed data.
  It does not live well in a "typed variable" approach to programming.

#:Erik
--
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Oct 31 2000, 2:04 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: 31 Oct 2000 18:36:55 +0000
Local: Tues, Oct 31 2000 1:36 pm
Subject: Re: corba or sockets?
* Wade Humeniuk <humen...@cadvision.com>
| They are fine protocols, but only as transport and network layer
| protocols.

  What does this mean?  It makes absolutely no sense at it stands.

| The whole conceptual framework of protocols I think is best
| described by the OSI reference model.

  Not at all.  Only some frameworks are describable in ISORMOSI,
  specifically those that actually used it while being described.

  Please note that the full name is the _ISO_ Reference Model for Open
  Systems Interconnection.  It's their model.  It is _not_ a model
  that explains or can describe all Open Systems Interconnection.

  See The Elements of Networking Style: And Other Essays &
  Animadversions on the Art of Intercomputer Networking by
  M. A. Padlipsky for a full coverage of this.  ISBN 0-595-08879-1.

| TCP and IPv4 only live within the context of the data link and
| physical layer protocols that carry them.

  This is false.

| All the issues of reliability, delivery and such need to be looked
| at as protocol stacks.

  If you use the ISORMOSI on the Internet, you will end up with very,
  very weird attitudes towards a very fine technology, sort of like
  the people who believe that now that we have 8-bit byte-adressable
  machines, the concept "byte" is conflatable with "octet", and then
  their heads explode when other concepts of "byte" present themselves
  to them.

| For those that want to learn about protocols break open the OSI spec
| on the reference model.  Anybody remember the ISO spec number?  I
| don't have it handy anymore.

  I would recommend against ISORMOSI until you understand whence it
  came, that is: the history of protocol design preceding it, both
  within the CCITT/ITU and the ISO camps and without either.  There
  are very different cultures at work, here.  That's a contributory
  reason that TCP/IP won.  "If ISORMOSI really was so great, how come
  nobody talks their protocols?" actually applies.

| The major problem with the Telecom protocols I have found has been
| their defintions of their protocol data units which place a premimum
| on reducing the number of bits in network traffic.

  You _really_ want this, but perhaps you need to work with these guys
  to realize that 1% more protocol overhead means 1% more money to buy
  the same bandwidth, or slower deployment due to higher costs, etc.

| This makes the PDUs hard to parse.

  That does not follow _at_all_.

| A great example of this, if you can get the spec is IS-634, the
| control protocol between Cellular Base Stations and Management
| systems.   Whoever dreamed that up has never programmed a computer
| before.

  I'm making an unsubstantiated guess here, much like you do, and
  would counter that he probably does protocol implementation in
  dedicated chips.  So would you if you dealt that these things.

| Also the telecom protocols (at least the cellular ones) are tending
| to define the protocol state machines in SDL which allows protocol
| designers to leave gaps of what happens when error conditions occur.

  I have worked a little with SDL, but that is years ago, but most of
  what I have worked with in the Telecom world has been described with
  SDL (Z.100) or 'variations" like Estelle.

| ASN.1, what can I say, another language to learn.  Liking Lisp, I
| think a Lisp external syntax should be used for a platform
| independent encoding of PDUs.  It takes more bytes but it transports
| well (and I can see it clearly on a data scope).

  Notice that ASN.1's encoding rules are actually parsable with the
  same ease as (most) Lisp objects (that is, excluding symbols, which
  are a pain insofar as they overlap syntactically with numbers).

  I see a very clean mapping between ASN.1 and Lisp, qua languages to
  describe and encode data.

| I am still divided on the issue of creating protocols between
| cooperative machines/processes or going for a distributed OS view
| where everything is one large memory space.  I thought that is what
| CORBA is offering, one large memory space.  There is room for both
| of them, a distributed OS at some lower level must implement
| protocols.  Does a programmer have to see that?

  If you do the global memory thing, at least figure out the need for
  cache coherence and propagation protocols.  Nobody I talked to about
  CORBA have had the faintest clue what that would entail for CORBA,
  so I gave up talking to these guys.  (This was not in a Lisp
  context, BTW.)

  About half of what I have done over the years has had to do with
  ensuring that lots of computers very far apart agree to what the
  world looks like at exactly the same time.  "One large memory space"
  sort of covers it, since the idea is that through intelligent
  protocols and very careful programming, lots of computers actually
  get the same values without having to ask anyone _else_ for them.
  There are several interesting products that offer some of this
  functionality for databases, messages servers, etc, these days.

  I'm not sure a programmer needs to see everything, but being able to
  ensure that you have the information you need in time requires work,
  and I fail to see how anyone but programmers should do that.  Like
  TCP and IP do not live quietly down in the basement, but actually
  extend their services and _presence_ all the way up to the
  "application layer" (and you _really_ want this, by the way), there
  is no way you can avoid knowing about "the underworld" relative to
  your actual interests.  If you think you can avoid it, you are only
  saying that you are willing to accept some set of default behaviors,
  but if you don't know what they are, you are also likely to be wrong.

  The belief in cleanly separated layers is almost a religion.  It has
  no basis in reality or experience, but there is nothing that can
  make someone who believes in it stop believing in it.  There's
  always an answer for why it's a good idea despite all the hairy
  stuff they have to deal with.  Just like the whole ISORMOSI thing.
  And almost like the belief in structured programming and object
  orientation where the only time anyone can be trusted to use them
  well is when they know when _not_ to use them.

  Make that a more general assertion: If you think you have an answer
  for everything, the answer is probably not right for anything.  If
  you have an answer for some things, the answer is probably right for
  those things.

#:Erik
--
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fernando Rodríguez  
View profile  
 More options Oct 31 2000, 3:51 pm
Newsgroups: comp.lang.lisp
From: Fernando Rodríguez <spam...@must.die>
Date: Tue, 31 Oct 2000 20:51:31 GMT
Local: Tues, Oct 31 2000 3:51 pm
Subject: Re: corba or sockets?
On Tue, 31 Oct 2000 16:53:12 +0000, Jason Trenouth <ja...@harlequin.com>
wrote:

>> > a CORBA method invocation does not necessarily involve network
>> > communication: if the client and server are collocated (reside in the
>> > same address space), the ORB can use a simple method call.

>> AFAIK no common lisp ORB can collocate.

>Xanalys HCL ORB does co-location optimization for Common Lisp clients and
>servers within the same LispWorks process.

        Sorry, but what's the need to use something like corba within a single
process? =:-O

TIA O:-)

//-----------------------------------------------
//      Fernando Rodriguez Romero
//
//      frr at mindless dot com
//------------------------------------------------


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Oct 31 2000, 4:45 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: 31 Oct 2000 21:43:13 +0000
Local: Tues, Oct 31 2000 4:43 pm
Subject: Re: corba or sockets?
* Fernando Rodríguez
| Sorry, but what's the need to use something like corba within a single
| process? =:-O

  Well, besides the hammer, nail/thumb analogy, you might decide not
  to "know" where your objects are.  This could lead to all _kinds_ of
  interesting performance pessimizations, just one of which is CORBA.

#:Erik
--
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marius Vollmer  
View profile  
 More options Oct 31 2000, 5:51 pm
Newsgroups: comp.lang.lisp
From: Marius Vollmer <m...@zagadka.ping.de>
Date: 31 Oct 2000 22:22:03 +0100
Local: Tues, Oct 31 2000 4:22 pm
Subject: Re: corba or sockets?

Erik Naggum <e...@naggum.net> writes:
>   The Telecom people have probably done some of the best work there
>   is in protocol design.  Just take a look at how they started out
>   with very low speeds, like 300 bps, but over time managed to
>   squeeze 56kbps through the feeble phone lines that were not
>   upgraded, then got DSL to work across that same old copper wire.

I don't know how 56kbps or ISDN etc really work, but I guess they are
more about very high modulation schemes, good channel estimations and
equalizations, error correcting codes and data compression than they
are about clever protocols.

And the old copper wires aren't probably the problem, anyway.  They
should not be much worse than your ordinary 10Base-T twisted pair
ethernet wire.  The problems are probably more with the filters along
the way that have been optimized for base-band speech signals.

I'm very impressed by these techniques as well, but I don't think you
can learn from them how to design a better CORBA.  They are just
worlds apart.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jon S Anthony  
View profile  
 More options Oct 31 2000, 7:14 pm
Newsgroups: comp.lang.lisp
From: Jon S Anthony <j...@synquiry.com>
Date: Tue, 31 Oct 2000 19:09:42 -0500
Local: Tues, Oct 31 2000 7:09 pm
Subject: Re: corba or sockets?

Erik Naggum wrote:

> * Jon S Anthony <j...@synquiry.com>
> | The real question should be whether you believe your new protocol adds
> | real value to what it is you are producing.  If you are in the
> | protocol business this is obvious.  If you are in something else
> | entirely and only need to make use of protocols, it is highly unlikely
> | that the time spent on inventing yet another one will be of any real
> | value for your project/product.

>   I disagree with this assessment.  It is the same argument that can
>   be made for something overly complex and badly implemented, like
>   SGML,  It has also been touted as solving problems that people would
>   not be able to solve cheaper by themselves.  That was just plain

Yes, this is the obvious counter argument, but it really doesn't
address the issue.  Those involved in things like defining and
implementing SGML (or <fill in the blank>) _should_ be concerned about
"doing it right" because the result of that work _is_ their primary
value added (it _is_ their product/project).

Everyone going off and reinventing this stuff on their own, _even if
they know they can do a better job of it_, when it is not the primary
work they are involved in, and when the available offerings will not
negatively impact this primary work is just counter productive.

This in no way suggests that it is not appropriate or sensible or even
"a good thing" for someone to focus on defining and producing better
such offerings and making them generally available.

>   How much effort does it take a good system designer to come up with
>   something better than XML for any _particular_ purpose?  If he
>   grasps the good and useful qualities of SGML, a simplified syntax,
>   slightly general tools, etc, can be written in a fairly short amount
>   of time, and it costs less to develop, maintain, and use than a
>   full-fledged SGML system does,...

This assumes that the tradeoff analysis for use is clearly negatively
disposed towards the available offering.  For XML and SGML this is
likely true for most of the suggested uses as most of the suggested
uses are simply inappropriate.  Perhaps you would include CORBA as
well, but I would not.

>   Precisely, but having designed a few protocols that have been in
>   wide use for over a decade each, just how much effort do you think
>   it is to design new ones?  The reason protocol design is hard is

If it doesn't provide you any advantage, the amount of effort it would
take is irrelevant.  Again, if you're interested in getting into the
protocol business, that's a different story.

> | The nice thing about using CORBA to do this is that it at least
> | eliminates all the marshalling and unmarshalling of data items
> | (primitive and structured) in a platform independent way.

>   You know, this is _not_ a hard problem.  It is a hard problem in C++
>   and the like, but that is because those languages have lost every

Whether it is hard or not is irrelevant.  It still needs to be done
and it still needs to be maintained and it still needs all this on
various platforms.  And for what?  Additionally, you then need to make
it available for use in things like C++, Java, Perl, etc., at least
this is true for the sort of positioning we need. With CORBA all of
this is already done, and it just works.  Let the armies of drones
hacking at C++, Java and the rest spend their time doing this.

> | Unless your business is really line protocols or something similar,
> | rolling your own here with sockets is just a distracting waste of
> | resources.

>   Well, I have tried both approaches.  Have you?

Yes.

> | Only if you don't make use of threads in making the calls in the
> | first place.  If each call is a thread, the "waiting for the
> | synchronous reply" is irrelevant.  Most ORBs are multithreaded and
> | can easily handle this.

>   Right.  Not my experience.  Of course, everything gets better in the
>   mythical "future", so do stay with CORBA if you have other things to

Just to be clear, the multithreaded ORBs are available now and have
been for years.

> | Well we have done it at 2000 miles and the results were basically
> | "instantaneous" (well under a second).  Using straight X was death.
> | Using HTTP was (of course) worse than death.

>   How long time do you think you would have spent designing a protocol
>   that would have been just as good?

Designing is only a fraction of the effort.  You then need to
implement it across several platforms and make it available for use in
an effectively open ended set of languages (at the least C++ and
Java).  Given what we are doing, I would guess it would have taken
well over a person year or more of resources.  And for what?  To get
something just as good?  Probably not even as good if you factor in
such things as the IDL compilers, exceptions, and the like.

Now, an order of magnitude better (depending on how that gain is
distribted), that would be a different story, but the effort would go
up dramatically and you are then basically in the distributed object
protocol _business_ (or at least you _should_ be).

/Jon

--
Jon Anthony
Synquiry Technologies, Ltd. Belmont, MA 02478, 617.484.3383
"Nightmares - Ha!  The way my life's been going lately,
 Who'd notice?"  -- Londo Mollari


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Bruce Hoult  
View profile  
 More options Oct 31 2000, 8:11 pm
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Wed, 01 Nov 2000 14:11:45 +1300
Local: Tues, Oct 31 2000 8:11 pm
Subject: Re: corba or sockets?
In article <87itq8ln9g....@zagadka.ping.de>, Marius Vollmer

<m...@zagadka.ping.de> wrote:
> And the old copper wires aren't probably the problem, anyway.  They
> should not be much worse than your ordinary 10Base-T twisted pair
> ethernet wire.  The problems are probably more with the filters along
> the way that have been optimized for base-band speech signals.

Well there is the minor detail that 10baseT is only specced to go 100m
while ADSL has to go for several km.

Humble old AppleTalk has been quietly driving up to 2 km of phone wire
(using the Farallon "PhoneNet" adaptors) for nearly 15 years now at
230,400 bps.  That's the same speed as a lot of people's budget-price
ADSL runs at, acheived using a handful of simple passive components
(transformer, resistor, capacitor) plugged into a serial port.  Now of
course ADSL can do better than that -- more like 2 Mbps - 6 Mbps -- if
the telco wants you to (or you pay them enough), but it *has* had a few
more years of development and those Nokia M10's aren't cheap at all.

-- Bruce


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Christopher Browne  
View profile  
 More options Oct 31 2000, 8:29 pm
Newsgroups: comp.lang.lisp
From: cbbro...@news.hex.net (Christopher Browne)
Date: Wed, 01 Nov 2000 01:28:58 GMT
Local: Tues, Oct 31 2000 8:28 pm
Subject: Re: corba or sockets?
In our last episode (Tue, 31 Oct 2000 20:51:31 GMT),
the artist formerly known as Fernando Rodríguez said:

>On Tue, 31 Oct 2000 16:53:12 +0000, Jason Trenouth <ja...@harlequin.com>
>wrote:
>>> > a CORBA method invocation does not necessarily involve network
>>> > communication: if the client and server are collocated (reside in the
>>> > same address space), the ORB can use a simple method call.

>>> AFAIK no common lisp ORB can collocate.

>>Xanalys HCL ORB does co-location optimization for Common Lisp clients and
>>servers within the same LispWorks process.

>Sorry, but what's the need to use something like corba within a
>single process? =:-O

Um.  Because that provides the highest conceivable speed of access
between client and server?

I might have an application that is distributable via CORBA so that
parts can run on separate hosts _if need be_; efficient colocation
means that this results in minimal degradation of performance if the
components run on the same host.
--
(concatenate 'string "cbbrowne" "@" "ntlug.org")
<http://www.ntlug.org/~cbbrowne/corba.html>
C is almost a real language. (see assembler) Even the name sounds like
it's  gone through an  optimizing compiler.  Get rid  of all  of those
stupid brackets and we'll talk. (see LISP)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 26 - 50 of 99 < Older  Newer >
« Back to Discussions « Newer topic     Older topic »