home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / archives / 3339 < prev    next >
Encoding:
Internet Message Format  |  1992-09-10  |  5.4 KB

  1. Path: sparky!uunet!spool.mu.edu!agate!agate!usenet
  2. From: rogerr@NETCOM.COM (roger reynolds)
  3. Newsgroups: comp.archives
  4. Subject: [comp.windows.x.announce] ANNOUNCING RIL - a resource file pre-processor
  5. Followup-To: comp.windows.x.announce
  6. Date: 11 Sep 1992 10:42:30 GMT
  7. Organization: Netcom - Online Communication Services  (408 241-9760 guest)
  8. Lines: 111
  9. Approved: adam@soda.berkeley.edu
  10. Distribution: world
  11. Message-ID: <18pt6mINNr2n@agate.berkeley.edu>
  12. References: <9209091540.AA23729@expo.lcs.mit.edu>
  13. NNTP-Posting-Host: soda.berkeley.edu
  14. X-Original-Newsgroups: comp.windows.x.announce
  15. X-Original-Date: 9 Sep 92 15:40:44 GMT
  16.  
  17. Archive-name: auto/comp.windows.x.announce/ANNOUNCING-RIL-a-resource-file-pre-processor
  18.  
  19.  
  20. I FINALLY have gotten a chance to release RIL for general use.
  21. You can ftp ril.tar.Z from export.lcs.mit.edu in /contrib,
  22. or you can get it from alt.sources.
  23.  
  24. Here is the README file for RIL, version 1:
  25.  
  26. What is RIL?
  27.     RIL - "Roger's Interface Language", is basically a "preprocessor" 
  28.     for Resource files.  At a minimum, RIL allows you to write resource
  29.     files in a clean, easy to read and edit style, as "source code"
  30.     for the generation of a true "app-defaults" file.  
  31.  
  32.     Taken to extremes, RIL allows you to use conditional statements,
  33.     flow control constructs, user-definable procedures and variables,
  34.     and a whole lotta other neat stuff, to specify your interface.
  35.     
  36.     RIL is based on TCL.  If you do not have TCL, you need to get it.
  37.     TCL can be FTP'd from sprite.berkely.edu, among other places.
  38.     TCL is really the guts behind RIL, and it comes with reasonable
  39.     documentation on the details of the language.
  40.     If you already use TCL, you can use the version that you already have
  41.     with some minor edits in the Imakefile.
  42.  
  43.     RIL has about 3 "modes" of operation:
  44.     1. Write ril scripts and "compile" them to app-defaults files
  45.        These app-defaults files can be used any place an ordinary
  46.        resource file can be used. (as app-defaults, fallbacks, Mri...)
  47.        Usually by the end of a project, I have several .ril source files
  48.        which are used to create a .ad file for the application.
  49.  
  50.     2. Use the program "ril" to run an application from its ril source.
  51.        This is analagous to using Mri on a plain resource file, and is
  52.        an excellent way to quickly prototype an interface.
  53.     
  54.     3. Link libril.a with an application, and use ril source instead
  55.        of resource files.  This is most useful if you are already using
  56.        WCL.  This is how I build all my Motif apps these days.
  57.        This provides a very convenient cycle for developing interfaces,
  58.        there is no "compiling" of the ril files.  They are read each
  59.        time the program runs.  It takes a few seconds longer at start
  60.        up time, but it beats forgetting to "make" the .ad file and
  61.        then wondering why your changes didn't show up!
  62.  
  63.     Please be aware that this is the first release of RIL, and
  64.     has some rough edges, especially in the area of documentation.
  65.     I have chosen to make RIL available at this early stage, in order
  66.     to get user feedback that will help me to see better what is needed
  67.     the most.  Future revisions of RIL will include better documentation,
  68.     and more examples which better show the "fine points" of RIL.
  69.  
  70.     I WELCOME your comments and suggestions!!!
  71.  
  72. Who should use RIL?
  73.     Anybody that generates complex resource files can benefit from 
  74.     using RIL.  In particular,  users of WCL will find RIL an
  75.     invaluable tool,  because WCL allows/demands "complete" resource
  76.     files, which can get really large and ugly.
  77.  
  78.     Also, you can think of RIL as a kind of substitute for UIL.
  79.     This is may especially interesting for OLIT and ATHENA users.
  80.  
  81. What do I need to get to use RIL, and where do I get it?
  82.     You need to get ril.tar.Z from ftp on export.lcs.mit.edu in /contrib
  83.     or from alt.sources.
  84.  
  85.     RIL requires TCL 6.3. If you already have TCL 6.3 or later, you can
  86.     use that. Otherwise, get it from sprite.berkely.edu
  87.  
  88.     RIL works best in conjunction with WCL, though WCL is not required.
  89.     If you don't have WCL you should get it, whether you use RIL or not!
  90.     The most recent version is also available on export.
  91.  
  92. How do I learn to use RIL?
  93.     There are some demo "programs" in the distribution which should
  94.     serve as a guide to using RIL, and the basics of TCL.
  95.     For a more complete description of the full potential of RIL,
  96.     you can read the TCL documentation included in the TCL distribution.
  97.     If you already use WCL, you should be able to get quite a long 
  98.     very quickly just by looking over the examples.
  99.  
  100.     The file ril_main.c is a demonstration of how you would incorporate
  101.     the use of ril into an application, as suggested in method 3 above.
  102.  
  103.  
  104. What is the future of RIL?
  105.     Well, thats a good question.  RIL is only a few months old, and
  106.     I myself have not had a chance to try all of the things which I
  107.     have tried to provide hooks to do.
  108.  
  109.     Some things that sould be possible with RIL, but I have not yet
  110.     tried, or don't have examples of, are:
  111.         Building a library of re-usable high-level interface components.
  112.         Defining and using resource "styles".
  113.         
  114.     Some features that I had envisioned, but have not yet implemented
  115.     are:
  116.         Genereate C-code from ril source.
  117.         Error checking on resource specifications.
  118.         Additional language features.
  119.         Suggestions from the world...
  120.  
  121. Sytems tested:
  122.     I use RIL extensively on a Sun Sparcstation 2, with SunOs 4.1.1,
  123.     X11r5, and Motif 1.1.4
  124.     I have used it with other versions of X and Motif on Suns.
  125.     I have used it on HPUX something or other.
  126.     I would like to hear of other platforms on which it runs successfully.
  127.  
  128.