Rev and Externals (Was Re: OT: Analyzing competitors - In this case Real Software)

Andre Garzia soapdog at mac.com
Wed Mar 23 00:52:26 EST 2005


On Mar 22, 2005, at 10:34 PM, Dar Scott wrote:

> As long as we have the external interface we have now, I'd rather 
> 'start using' a library that uses an external.  The library can do 
> things that don't need to be done in an external and can act as the 
> sugar-coating glue to the external.
>
> Dar

I usually go even further and create proxy functions that wrap around 
third party transcript libs. I always did that, but it was since my 
last talk with Trevor that I thought that this might be a good tip for 
the rest of the community.

Wherever I start using a lib made by a third party, I create a wrapper 
transcript lib arround it, in the case of Trevor libDatabase, I created 
a proxyLibDatabase that wrapped around Trevor libs. Why do this? Well, 
if Trevor changes anything in his API, my app will not break, I just 
need to change the proxy lib to match the current API. This was 
speacially usefull now for Trevor is indeed changing the API in a very 
sane way, but I have a software with hundreds (thousands?) lines 
rellying in the old API, with this proxy setup, I can update the lib 
and yet all my code will continue working.

This "syntatic sugar" things are a real mental health saver. I have 
here proxy libs for Shao Sean email stuff, for Trevor Database Stuff 
and lot's of others. I even went further and build proxy libs for my 
libs... I know it sounds paranoic but, hell, I am paranoid sometimes. 
When I first tweeked libCGI to add stuff from revHTTPd, I created a 
proxy lib glueing them, when I rewrote revHTTPd, I changed all the API, 
it was a complete rewrite. My tweeked libCGI continue to working, I 
just patched the glue lib and it's running better now and more secure 
and faster and it's smaller.... :D

Andre


-- 
Andre Alves Garzia ð 2004
Soap Dog Studios - BRAZIL
http://studio.soapdog.org



More information about the use-livecode mailing list