.Open CS320/05 The Unified Modeling Language (UML) .Table .Row Prev 04 Syntax: grammars, EBNF, parsing Chapter 3 sections 1 to 3 + Chapter 4 sections 1 to 3 + XBNF & LRM Handouts lab04 BNF on the web .Row 05 Semantics: UML UML handout lab05 UML + Graphics .Row Next 06 Names Chapter 5 sections 1 to10 lab06 C/C++ Scoping .Close.Table We will use UML in place of the abstract semantic techniques mentioned at the end of Chapter 3 in the text. We will use the UML in notes, projects, labs, and final questions. It is perfect for describing:(1) the structure of a language, (2) the internal data structures used in compilers and interpreters, and (3) the meaning of each part of the language. In any session or anywhere in the final I may ask you to draw and/or interpret diagrams using the UML. Here is a question on semantics that I ask on finals: "Give an example of how your project team described the semantics of its language". 1. Study the handouts. This and other resources can be found on the WWW via the CS320 index: .See http://cse.csusb.edu/dick/cs320/resources.html#UML 2. Answer as many of the review questions at the end of the handout as you have time. 3. Hand in written answers for 2 review questions at the start of the next class. . Class Work Exercises and questions will be published .See http://www/dick/cs320/05q.html at the start of the class. . CS320 Project Phase 1 You have a specification for a small language with a large number of defects. Here is the link .See ./A.html Your first task is to draw a UML diagram of the concepts used in the language. Drawing this diagram should help you spot some things that you'd like to change in the original specification. Your second task is to prepare a list of improvements you would make to the language. Your third task is to give a name to the language that you will produce. Fourth Task: write up your results: diagram, improvements, language name, and the people in the group. Finally: hand it in. Plain paper, stapled please. No cover sheets, folders, etc. .Close . Lab Work .See ./lab/05.html . Next .See ./06.html