Re: The Protocol [was: Syntax] is API Fallacy
David Brownwell wrote: > >There's a signifcant issue with the quality of the linking. RPC systems >hide significant parts of the network, which need to be surfaced. They >don't expose faults well, or recovery mechanisms; they complicate callback >style messaging patterns unduly; they bury encoding issues, and impose >specific protocol-to-API mappings even in environments where they're not >at all appropriate. > This isn't the problem with RPC systems at all (including CORBA, Java RMI, DCOM, DCE-RPC etc), and certainly the current defacto web 'protocol' namely a form and www-form-encoding or a CGI query string is hardly a robust way for programs to communicate. Rather, the ubiquity of firewalls allows HTTP and SMTP traffic to flow where no RPC can go. You are missing the picture. Designing your own network protocol for each new application is as useful as writing your own XML parser for each new application. We have learned something from layering, interfaces and code reuse (despite your protests). Why should a developer need understand network issues etc when all they wish to do is send a message across the network. This is what libraries are for. All modern languages are object oriented (e.g. Java, Python, C++ etc.). One of the hallmarks of object orientation is enabling code reuse. Why reinvent a protocol when a library implements it? >Consider that no RPC system in the world (CORBA, ONC, DCE, etc) has had >the reach of some rather basic non-RPC systems like E-Mail (SMTP, POP, >IMAP) or the web (HTTP, HTML, XML, etc). For folk who have spent a lot >of time working on architectural issues, this is telling: it says that >there's quite likely a problem with the RPC approach. > That's exactly my point, there is no reason not to layer IDL on top of perfectly good protocols such as HTTP and SMTP. There is no reason not to use perfectly good standards such as MIME. Why reinvent the wheel when you can *interface* to the wheel. Change the body of the car and reuse the wheel. This is what layering is all about. Why do you compare RPC to XML? They are different species. This confuses the issue. XML and HTML are document standards, CORBA is a distributed object standard. The fact that SMTP can punch through firewalls like no CORBA is important (and one reason why the reach is so extended). I'm suggesting that HTTP and SMTP are to be used as the protocol. Are you suggesting otherwise? I'm suggesting that the abstraction afforded by IDL and RPC can be layered on top of HTTP and SMTP via XML? Do you have a problem with this? Web native distributed computing means using XML and HTTP and SMTP. This doesn't replace the need to specify interfaces (for example the DOM is delivered as an IDL specification). The point here is whether distributed objects are good or bad (this becomes nothing more than your personal opinion ... others would differ) rather how can object technology, including distributed objects and object modelling be integrated with internet standards such as XML,RDF,HTTP and SMTP. This is my suggestion (feel free to propose another): Distributed systems can communicate via HTTP and SMTP using XML documents as the contents of their MIME messages and function in the same fashion as distributed systems which employ IIOP or DCE-RPC. xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To (un)subscribe, mailto:majordomo@i... the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format