home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / fj / maillis / xwindow / 17576 < prev    next >
Encoding:
Internet Message Format  |  1992-11-17  |  5.1 KB

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