home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / specific / 537 < prev    next >
Encoding:
Text File  |  1992-11-17  |  3.7 KB  |  73 lines

  1. Newsgroups: comp.specification
  2. Path: sparky!uunet!usc!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!seal.cis.ohio-state.edu!ogden
  3. From: ogden@seal.cis.ohio-state.edu (William F Ogden)
  4. Subject: Re: Semantic definition style
  5. Message-ID: <1992Nov18.010421.11712@cis.ohio-state.edu>
  6. Keywords: structural operational semantics, denotational semantics
  7. Sender: news@cis.ohio-state.edu (NETnews        )
  8. Organization: The Ohio State University Dept. of Computer and Info. Science
  9. References: <720801988.16035@minster.york.ac.uk> <1992Nov11.195443.23006@cis.ohio-state.edu> <1992Nov13.084826.26088@daimi.aau.dk>
  10. Date: Wed, 18 Nov 1992 01:04:21 GMT
  11. Lines: 60
  12.  
  13. In article <1992Nov13.084826.26088@daimi.aau.dk> pdm@daimi.aau.dk (Peter D. Mosses) writes:
  14.    ...
  15. >The style of `structural' operational semantics advocated by Plotkin
  16. >et al. does *not* involve any translation!  The main point is
  17. >precisely to avoid consideration of all the small, boring steps that
  18. >low-level machines make, and to specify only the bigger transitions
  19. >that are of interest at the programming language level.
  20.  
  21. Depending upon what you're willing to accept as operational semantics, I
  22. suppose that the most austere forms might just reduce to denotational
  23. semantics. I.e., the input/output pairs from sequential denotational
  24. semantics (yes, pairs involving extended states which include auxillary
  25. components such as environments) could be viewed as just very short
  26. operational semantics history sequences which `specify only the bigger
  27. transitions that are of interest at the programming language level.'
  28.  
  29. Moreover, it does seem likely that, whenever we finally discover
  30. an appropriate set of language constructs to handle concurrency cleanly,
  31. their denotational semantics will probably involve something comparable to
  32. the state sequence notion which shows up in operational semantics.
  33.  
  34.    ...
  35.  
  36. >The use of minimal fixed points is neither more nor less difficult to
  37. >explain than that of recursive (i.e., self-calling) procedures.
  38. >Readers of semantic descriptions don't usually need to understand
  39. >*why* things with certain desirable properties exist.  In fact in the
  40. >mid '60s, Strachey was happily using minimal fixed point operators in
  41. >denotational descriptions, long before the existence of a mathematical
  42. >model for them was shown!
  43.  
  44. Minimal fixed point operators may be no more difficult to _explain_ than
  45. recursive procedures, but when used with higher order functionals, they
  46. do seem to be more difficult for most people to _understand_.
  47.  
  48. I never met Strachey, but from his writings at least, he doesn't strike me
  49. as an example of the ordinary programmers who comprise one of the three
  50. audiences for semantics whom we must consider.
  51.  
  52. >Another, more technical drawback of the use of Scott domains in
  53. >denotational semantics is the following.  A semantics is usually
  54. >intended to specify a *class* of implementations, not just one
  55. >implementation.  I don't see any reason why a class of continuous
  56. >functions should be representable by a single continuous function.
  57. >E.g., consider a language where the value in an uninitialized variable
  58. >is an arbitrary number (not necessarily the same one each time); to
  59. >represent this denotationally involves unbounded nondeterminism, which
  60. >conflicts with the usual continuity assumption.
  61.  
  62. Indeed. You don't get very far into object based programming before
  63. you notice that functions just don't provide an adequate base for
  64. the semantics of even sequential programming with objects. The
  65. abstraction process that permits alternative realizations of operations
  66. as well as information hiding inherently leads to what appears at the
  67. abstract object level to be nondeterminism. The obvious denotational
  68. semantics to cover this are relational and not functional.
  69. -- 
  70.  
  71. /Bill
  72.  
  73.