Select this to skip to main content [CSUSB] >> [CNS] >> [Comp Sci Dept] >> [R J Botting] >> [CSci620] >> lab10 [Source]
[Index] [Schedule] [Syllabi] [Text] [Labs] [Projects] [Resources] [Search] [Grading]
Tue Apr 27 11:56:05 PDT 2004

Contents


    CSci620 Laboratory 10 Functions in C++

      1 Recursion and activation records

      Download, compile and run [ 10fibo.cpp ] and trace the activation records as it executes.

      2 Parameter passing

      Here are some examples of how a parameter handling works in C++. Download, compile and test [ 10flipper.cpp ] which use pass by reference.

      Recode it using pass by value of a pointer. In other words, you may not put & in the header of the function, and when the program is changed it still does the same thing.

      Note. Call by name is alive and well in C++, if you have time look at [ name.cpp ] for an example of Jensen's device from Algol 60.

    . . . . . . . . . ( end of section CSci620 Laboratory 10 Functions in C++) <<Contents | Index>>

    Glossary

  1. BNF::="Backus-Naur Form", for syntax and grammar, developed by Backus and Naur.
  2. EBNF::="Extended " BNF.
  3. HTML::= "HyperText Markup Language", used on the WWW.
  4. HTML_page::syntax= "<HTML>" head body.
  5. Java::="An " OO " Language from Sun".
  6. LISP::= "LISt Processing Language".
  7. LRM::="Language Reference Manual".
  8. OO::="Object-Oriented".
  9. Prolog::="Programming in Logic".
  10. TBA::="To Be Announced".
  11. UML::="Unified Modeling Language".
  12. URL::=Universal_Resource_Locator,
  13. Universal_Resource_Locator::syntax= protocol ":" location, where
    Net
    1. protocol::= "http" | "ftp" | "mailto" | ... ,
    2. location::= O( "//" host) O(pathname).

    (End of Net)
  14. WWW::= See http://www.csci.csusb.edu/dick/cs620/, index to web site for this class.
  15. XBNF::="eXtreme" BNF, developed by the teacher from EBNF, designed to ASCII input of syntax, semantics, and other formal specifications.


Formulae and Definitions in Alphabetical Order