Article View: comp.lang.misc
Article #7067Re: Metalanguages in environments where code is data. Re: GNU Script isn't fixing something that's broken, so is doomed
From: Gerald W. Lester
Date: Tue, 08 Nov 1994 02:19
Date: Tue, 08 Nov 1994 02:19
87 lines
5946 bytes
5946 bytes
In article <2WIENBE.94Nov7144319@rzdspc46.informatik.uni-hamburg.de>, 2wienbe@rzdspc46.informatik.uni-hamburg.de (Axel Wienberg) writes: > >In article <1994Nov4.224514.16731@cpu.com> gwlester@CAPTAINHOOK.CPU.COM (Gerald W. Lester) writes: > > If you write modular applications where the application runs as > multiple processes, tcl is good (at least good enough to control an > oil and gas production facility in the Gulf of Mexico). > >You are speaking hypothetically, aren't you? No! It is real, it is working, it is growing, and the client loves it! > > I'd defining large as over 100,000 lines of tcl/tk code. > >How did they do that ?! Can you tell us some of the experience, >like, is it still maintainable, how reliable is it, how flexible is >it, how much external documentation/specification do you need to >understand the code, ... ? Standard structured design techniques. Break things down into systems/modules. Define the interfaces and write the modules (most as separate programs using message passing). It has been running for several months now. It appears to be very reliable. Of course with less than a year running we don't have enough data to really say (previous VMS based systems we've done measure down time in hours/year). The system is extreamly flexiable. Most changes are done and *tested* in only a day or two. We have very little external documentation. However every program has a comment block at the beginning and every procedure has a comment block at its begining. Most procedures are only a dozen or so lines long and don't need more comments. Longer procedures have additional embedded comments. In general I find the code easier to follow than C/Fortran/Pascal because their is less of it. I'm attaching a little write up that mentions the project. ----------------------------- A T T A C H M E N T ----------------------------- Let me tell you a little about what we do. After giving some background, I show where tcl/tk comes in. Our primary business is Systems Integration Consulting, especially in the area of Supervisory Control And Data Aquisition (SCADA) systems. Our traditional area of business is in Oil & Gas Production and Pipelines, but we also do SCADA outside of that, from Electric Utilities to Food Processing control systems. Our current generation SCADA system is based on a product from HP called RTAP. This is toolkit for building SCADA systems, not a complete SCADA package. One is expected to write the remaining applications, including the GUI, to make it a SCADA system. What we have done is to bring all of RTAP's API (call interface) up into tcl as tcl commands (this is the only C/C++ programming we do anymore). All of our GUI and any application programs we now write are in SCL Plus (tcl/tk with our RTAP extensions). Our current system is a distributed client/server model. We have deployed this system at client sites, the most notable one being the Shell Auger production platform in the Gulf of Mexico. Auger is a Tension Leg Platform (TLP) that is expected to produce 150 million cubic feet of natural gas and 40,000 barrels of crude oil per day. The total cost of Auger was $1.35 billion, of which about $5 million was for the control systems we put on the platform. Our control systems operate all aspects of the platform. We currently have produced over 250,000 lines of tcl/tk code, counting comments. This, to the best of my knowledge, is the largest tcl/tk project to date. A second area of business that we are in is tcl/tk training and consulting. The expertise that we developed for our SCL Plus product (the tcl/tk based SCADA system) provided the opportunity to move into this area. We offer both public and private/custom tcl/tk training. If you will send me your address and phone number, I can send you more detailed information about what we do, including our tcl/tk offerings, and information on the Auger project. ========================================================================== * Gerald W. Lester ! Voice: (504)-889-2784 * * Computerized Processes Unlimited ! FAX: (504)-889-2799 * * 4200 S. I-10 Service Road, Suite #205 ! E-Mail: gwl@cpu.com * * Metairie, LA 70001 ! Hours: 09:00-17:00 CDT * ==========================================================================
Technical Details
Message-ID:
<1994Nov8.021922.7271@cpu.com>Path:
arc1-ca.pugleaf.net!nntp.gmd.de!xlink.net!howland.reston.ans.net!news.sprintlink.net!hookup!ames!tulane!cpu.com!CAPTAINHOOK.CPU.COM!GWLESTERReferences:
<394kll$kso@csnews.cs.Colorado.EDU> <id.IWEE1.A3H@nmti.com> <39bo03$d4e@csnews.cs.colorado.edu> <id.QQFE1.XIE@nmti.com>,<39dr6b$77q@csnews.cs.Colorado.EDU> <1994Nov4.224514.16731@cpu.com>,<2WIENBE.94Nov7144319@rzdspc46.informatik.uni-hamburg.de>Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f891f,9bda08f2f068881f X-Google-Attributes: gidf891f,public X-Google-Thread: 10eb76,9bda08f2f068881f X-Google-Attributes: gid10eb76,public X-Google-Thread: 103d24,9bda08f2f068881f X-Google-Attributes: gid103d24,public X-Google-Thread: 10259a,9bda08f2f068881f X-Google-Attributes: gid10259a,public X-Google-Thread: 1025b4,9bda08f2f068881f X-Google-Attributes: gid1025b4,public X-Google-ArrivalTime: 1994-11-07 23:21:39 PST Newsgroups: comp.lang.misc,gnu.misc.discuss,comp.lang.scheme,comp.lang.tcl,comp.lang.perl Path: arc1-ca.pugleaf.net!nntp.gmd.de!xlink.net!howland.reston.ans.net!news.sprintlink.net!hookup!ames!tulane!cpu.com!CAPTAINHOOK.CPU.COM!GWLESTER From: gwlester@CAPTAINHOOK.CPU.COM (Gerald W. Lester) Subject: Re: Metalanguages in environments where code is data. Re: GNU Script isn't fixing something that's broken, so is doomed Nntp-Posting-Host: captainhook.cpu.com References: <394kll$kso@csnews.cs.Colorado.EDU> <id.IWEE1.A3H@nmti.com> <39bo03$d4e@csnews.cs.colorado.edu> <id.QQFE1.XIE@nmti.com>,<39dr6b$77q@csnews.cs.Colorado.EDU> <1994Nov4.224514.16731@cpu.com>,<2WIENBE.94Nov7144319@rzdspc46.informatik.uni-hamburg.de> Sender: usenet@cpu.com (Usenet administrator) Organization: Computerized Processes Unlimited, Metairie, LA, (504)-889-2784 Date: Tue, 8 Nov 1994 02:19:22 GMT Message-ID: <1994Nov8.021922.7271@cpu.com> Reply-To: gwlester@CAPTAINHOOK.CPU.COM Lines: 88