home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / windows / x / 19218 < prev    next >
Encoding:
Internet Message Format  |  1992-11-17  |  5.0 KB

  1. Path: sparky!uunet!usc!sdd.hp.com!caen!destroyer!gumby!yale!yale.edu!ira.uka.de!math.fu-berlin.de!unidui!rrz.uni-koeln.de!Germany.EU.net!murignis!horus.ap.mchp.sni.de!breslau!david
  2. From: david@breslau.ap.mchp.sni.de (David Smyth)
  3. Newsgroups: comp.windows.x
  4. Subject: Re: Opinion of O'Reilly Guides to the X Window System (UIL)
  5. Date: 17 Nov 1992 08:47:03 GMT
  6. Organization: Siemens-Nixdorf AG
  7. Lines: 97
  8. Message-ID: <1eabi7INN7hs@horus.ap.mchp.sni.de>
  9. References: <BwA8Du.4yw@dcs.ed.ac.uk> <2AE31AD9.2711@deneva.sdd.trw.com> <1992Nov12.013019.920@mjs486.uucp>
  10. NNTP-Posting-Host: breslau.ap.mchp.sni.de
  11. Keywords: UIL, Motif
  12.  
  13. martin@mjs486.UUCP (Martin J. Schedlbauer) writes:
  14. >helding@pooh.sdd.trw.com (steve helding) writes:
  15. >>pdc@dcs.ed.ac.uk (Paul Crowley) writes:
  16. >>
  17. >>>UIL seems pretty well universally acknowledged to be unusable, and
  18. >>>inferior in every respect to other application builders such as the free
  19. >>>Wcl 2.0.  I guess O'Reilly are going for completeness, but I can see no
  20. >>>reason why any but a very few people might want to know how to use it.
  21. >>
  22. >>Being somewhat new to X and Motif I was wondering about the assertion made
  23. >>above.  We use Builder Xcessory which optionally generates UIL.  UIL seems
  24. >
  25. >I have recently developed an advanced Motif course that teaches UIL in
  26. >detail. Although I've run into a few attendees that don't much care for UIL,
  27. >the majority of attendees appreciate the simplicity of UIL. ...
  28. >
  29. >I've also found that for those folks that program in a language other than
  30. >C (e.g. Ada) that they prefer UIL. They don't have to learn the Ada-Motif/X
  31. >bindings.
  32. >
  33. >I suspect much of the dislike for UIL stems from ...
  34.  
  35. First, thanks for the complement, Paul.
  36.  
  37. Wcl and UIL are, in many ways, very similar.  The basic idea of both is
  38. to specify the look and feel of the user interface in a form
  39. independent of the logic of the application.
  40.  
  41. Wcl is a thin layer over Xrm, while UIL is a complete "replacement"
  42. for Xrm - but Xrm is not replaced, it still exists and still is
  43. used IN ADDITION TO UIL.
  44.  
  45. Xrm is loaded during XtInitialize, and is searched when each widget
  46. is created.  Xt always fetches all widget resources from Xrm when
  47. each widget is created.
  48.  
  49. Wcl simply also fetches the widget types, and the widget heirarchy
  50. from Xrm. For example:
  51.  
  52.     foo.wcCreate:      SomeWidgetClass
  53.     *foo.wcPopups:     dialog1 dialog2
  54.     *foo.wcChildren:   manager1 manager2 buttonA buttonB
  55.  
  56. UIL, on the other hand, DUPLICATES everything Xrm does in addition to
  57. adding widget type and heirarchy specifications.  Xrm is not
  58. eliminated: Xt and the widgets still access the Xrm database.  Whether
  59. or not the resource value is specified in resources (as one would do it
  60. using Wcl) or is set by UIL or by arguments passed to XtCreateWidget(),
  61. the resource values are still fetched from the resource database.  The
  62. UIL values, or the arguments passed to XtCreateWidget() simply override
  63. the resource values.
  64.  
  65. Programmers still need to know about Xrm.  Users still need to know about
  66. Xrm.  But with UIL, programmers ALSO need to learn about UIL.
  67.  
  68.  
  69. The worst part is that not only does UIL simply add (significantly)
  70. to the run-time overhead, but it also adds to the hassle people must
  71. endure to use new widgets.  Again, the difference between UIL and
  72. Wcl is that UIL duplicates information and capability, Wcl simply
  73. uses what it already there.  Take a widget: Wcl only needs the name
  74. and the widget class pointer.  Period.  UIL needs to know about all
  75. the resources and their types.  This is silly, because the Widgets
  76. already know their resources and types.  Wcl lets the widgets get
  77. the right types from the Xrm database, UIL needs to do everything the
  78. widget+Xrm+converters already do.
  79.  
  80. This is an important point.  I doubt if anyone can do anything serious
  81. without special widget classes.  At least, one must deal with new releases
  82. of widget classes during the life of the application. 
  83.  
  84. > ... My course addresses those issues and quite often
  85. >former UIL-bashers are won over (or at least they tolerate my teaching of
  86. >UIL :)
  87.  
  88. An interesting thing happened last year about this time.  Some guy
  89. attended a Motif programming course where they presented UIL.  He
  90. figured we should not use some home-brew Wcl thingy, we should use the
  91. standard UIL.  He organized a meeting with organizational Brass to get
  92. a mandate to stop Wcl and get everyone to use UIL.  He came in and
  93. asked me about Wcl.  I said "Love to help, but I'm busy this week -
  94. here's the distribution on floppy, build it and play with it."  I heard
  95. nothing more until the meeting...
  96.  
  97. The next Monday morning when we had this meeting, he had become (and
  98. still is) a big booster for Wcl.  I had to stand up for UIL just so it
  99. did not look TOO bad!
  100.  
  101. >P.S. Please watch for my UIL tutorial at the X conference.
  102.  
  103. ... and my tutorial and BOF on Wcl
  104.  
  105. ---------------------------------------------------------------------------
  106. David E. Smyth            David.Smyth@ap.mchp.sni.de
  107. Object/X Researcher        AP 154, Carl-Wery-Str 22, Munich 83 Germany
  108.     Research Grant provided by Esprit Investments Ltd, 
  109.     major sponsor Siemens Nixdorf Informationssysteme AG
  110.