home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / sys / transput / 1187 < prev    next >
Encoding:
Text File  |  1992-11-13  |  2.1 KB  |  58 lines

  1. Newsgroups: comp.sys.transputer
  2. Path: sparky!uunet!mcsun!sun4nl!sci.kun.nl!nuntius
  3. From: Marco Kesseler <marcok@cs.kun.nl>
  4. Subject: Re: IS Occam3 recursive?
  5. Message-ID: <BxnGAH.3t9@sci.kun.nl>
  6. Sender: news@sci.kun.nl (NUnet News Owner)
  7. Organization: University of Nijmegen
  8. X-Useragent: Nuntius v1.1
  9. References: <1992Nov11.033835.21118@netcom.com>
  10. Date: Fri, 13 Nov 1992 10:11:04 GMT
  11. Lines: 45
  12.  
  13.  
  14. In article <1992Nov12.094835.8563@wraxall.inmos.co.uk> Geoff Barrett,
  15. geoffb@inmos.co.uk writes:
  16. >More seriously, it does illustrate an important property of occam
  17. >processes, namely that their workspace requirements can be determined
  18. >statically.  If you can't do this, then the implementation of parallel
  19. >processes becomes much more difficult. In current implementations of
  20. >occam, it is possible to allocate a fixed amount of workspace for each
  21. >parallel process.  If you allow recursive processes you cannot
  22. >determine statically how much workspace each process will need.  This
  23. >means that you have to know what to do with stack overflow when the
  24. >obvious place to extend it has been allocated to something else
  25. >already.
  26.  
  27. Sofar, I agree.
  28.  
  29. >If you think you have a solution to this, and it does not
  30. >have an adverse affect on the context switch time, then I will be
  31. >interested to hear it.
  32.  
  33. I am confused. What do you mean when you talk about a 'context
  34. switch'? It is clear that recursion implies additional overheads
  35. at runtime during function calls. That it affects the time to
  36. timeslice processes is totally new to me. Perhaps I am missing
  37. a point here.
  38.  
  39. >In general, it is more important for an
  40. >embedded application to be sure of enough space in which to run.  After
  41. >all, you don't want to run out of memory just as you reach a critical
  42. >section of control code.
  43.  
  44. Yes, but knowing how much stack space the embedded application needs
  45. is no reason to rule out the possibility to use recursion in some
  46. language:
  47. If you don't need it, don't use it.
  48.  
  49. Marco Kesseler
  50.  
  51. Faculty of Mathematics and Computer Science
  52. University of Nijmegen
  53. Toernooiveld 1
  54. 6525 ED Nijmegen
  55. The Netherlands
  56.  
  57. marcok@cs.kun.nl
  58.