home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / ai / shells / 377 < prev    next >
Encoding:
Internet Message Format  |  1992-07-27  |  2.9 KB

  1. Xref: sparky comp.ai.shells:377 comp.programming:2140 comp.software-eng:3022
  2. Path: sparky!uunet!ogicse!usenet.coe.montana.edu!caen!zaphod.mps.ohio-state.edu!menudo.uh.edu!sugar!claird
  3. From: claird@NeoSoft.com (Cameron Laird)
  4. Newsgroups: comp.ai.shells,comp.programming,comp.software-eng
  5. Subject: Commercial exception-handling as rule evaluation [LONG]
  6. Message-ID: <1992Jul31.145835.27035@NeoSoft.com>
  7. Date: 31 Jul 92 14:58:35 GMT
  8. Article-I.D.: NeoSoft.1992Jul31.145835.27035
  9. Organization: NeoSoft Communications Services -- (713) 684-5900
  10. Lines: 49
  11.  
  12. I have a precise situation in mind, but the questions I have about it
  13. are open-ended.
  14.  
  15. I program a lot of exception-handling into the commercial applications
  16. for which I have responsibility.  Examples:
  17.  
  18.     a.  if a resource manager in the process of initializing
  19.         shared-memory communications detects what appears to
  20.         be an orphaned shared-memory segment, then it writes
  21.         an announcement of that observation to a log file;
  22.     b.  if a user specifies a perfume recipe with a negative
  23.         quantity of verbena extract, then the application
  24.         prints a diagnostic to the screen, and halts;
  25.     c.  if an operator requests the manifests for the con-
  26.         tents of a rail car that in fact is idle, a diagnostic
  27.         appears, along with a pop-up listing likely identifiers
  28.         for cars that *are* in transit.
  29.  
  30. This if-then formulation suggests that an expert system--perhaps just a
  31. small one--should come into play somewhere.  My first question, then, is
  32. I.  What do people think of engineering (some? all?) exception-handling
  33.     as an expert system?
  34.  
  35. Advantages:  I just feel good about a structure which emphasizes the
  36. uniformity of an approach.  I can derive all sorts of division-of-labor
  37. advantages by partitioning exception-handling in this way, and a rule-
  38. manipulation system seems quite natural.  In particular, a uniform
  39. approach will streamline effective communication with the user; if he
  40. or she comes to expect that faults will be reported in a more-or-less
  41. uniform way, then he or she will understand the reports better, and
  42. trust them more.
  43.  
  44. Disadvantages:  folklore has it that exception-handling is hard to
  45. automate; for example, even fans of yacc(1) and lex(1) complain that
  46. error-recovery is next-to-impossible.  That's not really the same
  47. issue, but part of the yacc-lex history is the realization that users
  48. deserve a variety of different approaches to reporting errors.  Another
  49. disadvantage, of course, is that I'll need to make some changes if I
  50. aim to engineer this better.  This leads to
  51. II.  what's opinions do folks have on available are engines
  52.     ns, with techniques andwhich can be linked in with C++  results
  53. which are specific, but accessible to alert
  54. high-school students.
  55.         
  56. -- 
  57.  
  58. Cameron Laird
  59. claird@Neosoft.com (claird%Neosoft.com@uunet.uu.net)    +1 713 267 7966
  60. claird@litwin.com (claird%litwin.com@uunet.uu.net)      +1 713 996 8546
  61.