aboutsummaryrefslogtreecommitdiffstats
path: root/docs/teaching
diff options
context:
space:
mode:
Diffstat (limited to 'docs/teaching')
-rw-r--r--docs/teaching/demos/oopsla2001-script.html310
-rw-r--r--docs/teaching/demos/oopsla2002-script.html671
2 files changed, 981 insertions, 0 deletions
diff --git a/docs/teaching/demos/oopsla2001-script.html b/docs/teaching/demos/oopsla2001-script.html
new file mode 100644
index 000000000..1c506956c
--- /dev/null
+++ b/docs/teaching/demos/oopsla2001-script.html
@@ -0,0 +1,310 @@
+<html>
+
+<head>
+<meta http-equiv="Content-Language" content="en-us">
+<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
+<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
+<meta name="ProgId" content="FrontPage.Editor.Document">
+<title>AspectJ Installation Note</title>
+<STYLE TYPE="text/css">
+<!--
+
+ /* FOR THE SDA PAGE */
+
+ /*
+ BODY {margin-top: 15px; margin-left: 15px; margin-right: 15px;}
+ */
+
+ A:link {
+ color:#4756AC;
+ }
+ A:visited {
+ color:#60657B;
+ }
+ A:hover {
+ color:red
+ }
+
+ INPUT {font:12px "Courier New", sans-serif;}
+
+ H2 {
+ font:18px/18px Verdana, Arial, Helvetica, sans-serif;
+ color:black;
+ font-weight:bold;
+ margin-left: 10px;
+ line-height:110%;
+ }
+ H3 {
+ font:18px/18px Verdana, Arial, Helvetica, sans-serif;
+ color:black;
+ font-weight:bold;
+ margin-left: 10px;
+ line-height:110%;
+ }
+ H4 {
+ font:15px/16px Verdana, Arial, Helvetica, sans-serif;
+ color:black;
+ font-weight:bold;
+ margin-left: 10px;
+ line-height:140%;
+ }
+ P {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ margin-right: 10px;
+ margin-left: 10px;
+ line-height:130%;
+ }
+ .paragraph {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ margin-right: 10px;
+ margin-left: 10px;
+ line-height:130%;
+ }
+ .smallParagraph {
+ font:11px/11px Verdana, Arial, Helvetica, sans-serif;
+ margin-right: 10px;
+ margin-left: 10px;
+ line-height:130%;
+ }
+ LI {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ text-align:justify;
+ margin-right: 10px;
+ margin-left: 15px;
+ line-height:120%;
+ }
+ /*
+ UL {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ text-align:justify;
+ margin-right: 10px;
+ margin-left: 15px;
+ line-height:120%;
+ }*/
+
+ DL {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ text-align:justify;
+ margin-right: 10px;
+ margin-left: 15px;
+ line-height:120%;
+ }
+ B { font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ font-weight:bold;
+ line-height:140%;
+ }
+ .footer {
+ font:10px/10px Verdana, Arial, Helvetica, sans-serif;
+ color:#888888;
+ text-align:left
+ }
+ .figureTitle {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ text-align:justify;
+ text-align:center
+ }
+ .copyrightNotice {
+ font:10px/10px Verdana, Arial, Helvetica, sans-serif;
+ color:#999999;
+ line-height:110%;
+ }
+ .smallHeading {
+ font:13px/13px Verdana, Arial, Helvetica, sans-serif;
+ font-weight:bold;
+ line-height:110%;
+ }
+ .tinyHeading {
+ font:11px/11px Verdana, Arial, Helvetica, sans-serif;
+ font-weight:bold;
+ line-height:120%;
+ }
+ .newsText {
+ font:11px/11px Verdana, Arial, Helvetica, sans-serif;
+ line-height:130%;
+ }
+ .smallParagraph {
+ font:11px/11px Verdana, Arial, Helvetica, sans-serif;
+ line-height:130%;
+ }
+ .fancyHeading {
+ font:20px/20px Chantilly, Arial, Helvetica, sans-serif;
+ margin-right: 10px;
+ color:#6f7a92;
+ margin-left: 10px;
+ line-height:130%;
+ }
+
+-->
+</STYLE>
+</head>
+
+<BODY BGCOLOR="white">
+
+<h3 align="center">AspectJ Demo</h3>
+
+<h4>1. Installing the Demo</h4>
+
+<ul>
+ <li>Extract the contents of &quot;aspectj-demo.zip&quot; to
+ &quot;C:\aspectj-demo&quot;, resulting in the following directory structure:
+ <ul>
+ <li>C:\aspectj-demo
+ <ul>
+ <li>apps</li>
+ <li>bin</li>
+ <li>examples</li>
+ <li>slides</li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ <li>Verify that JBuilder 4 is using the correct project by opening it, closing
+ all of the current projects
+ <ul>
+ <li>Under the &quot;File&quot; menu select &quot;Close Projects...&quot;,
+ select all of the open projects and close them</li>
+ <li>Under the &quot;File&quot; menu select &quot;Open Project...&quot;,
+ and open &quot;C:\aspectj-demo\examples\jbuilder\Spacewar.jpr&quot;</li>
+ <li>You should now be able to compile &quot;Spacewar&quot;.&nbsp; If
+ ajdeForJBuilder reports any problems refer to
+ &quot;C:\aspectj-demo\apps\aspectj0.8\doc\primer\tools\ajdeForJBuilder.html&quot;</li>
+ </ul>
+ </li>
+ <li>Set up your &quot;Windows Taskbar&quot; to be permanently visible by
+ right-clicking the bar, selecting &quot;Properties&quot;, and un-checking
+ &quot;Auto hide&quot;</li>
+ <li>From your &quot;Windows Explorer&quot; drag the
+ &quot;C:\aspectj-demo\bin\Demo&quot; folder to the &quot;Windows
+ Taskbar&quot;.&nbsp; This will have the effect of placing the demo buttons
+ on the taskbar.&nbsp; To remove the buttons drag off the &quot;Demo&quot;
+ toolbar and close the resulting floating toolbar window.</li>
+ <li>It is useful to have the &quot;Task Manager&quot; running in the
+ &quot;System Tray&quot; during the demo in order to see when the debugger is
+ loading since it is slow.&nbsp; To launch it right-click the &quot;Windows
+ Taskbar&quot; and select &quot;Task Manager&quot;, then minimize the window.
+ </li>
+</ul>
+<h4>2. Initial Setup</h4>
+<ul>
+ <li>Emacs Setup
+ <ul>
+ <li>Click &quot;Emacs&quot;, and move the cursor to the beginning of the
+ &quot;spacewar.Ship.fire&quot; method</li>
+ </ul>
+ </li>
+ <li>JBuilder Setup
+ <ul>
+ <li>Click &quot;JBuilder&quot;, open the &quot;AspectJ Structure
+ View&quot;, and bring the editor to the &quot;spacewar.Ship.fire&quot;
+ method</li>
+ <li>under the &quot;Spacewar.jpr&quot; node in the &quot;Project
+ Explorer&quot; (left pane of main window) expand the &quot;spacewar&quot;
+ package to see its classes</li>
+ <li>ensure that the last compile was done without &quot;Debug.java&quot;
+ in the build configuration</li>
+ </ul>
+ </li>
+ <li>Forte Setup
+ <ul>
+ <li>Click &quot;Forte&quot;, click the &quot;AspectJ Structure View&quot;
+ button, and navigate the editor to the &quot;spacewar.EnsureShipIsAlive&quot;
+ class </li>
+ </ul>
+ </li>
+ <li>AJDoc Setup
+ <ul>
+ <li>click &quot;AJDoc&quot;, browse to the &quot;spacewar/Ship.java&quot;
+ class</li>
+ </ul>
+ </li>
+</ul>
+<h4>3. Running the Demo</h4>
+<ul>
+ <li>Emacs
+ <ul>
+ <li>At the declaration of the &quot;spacewar.Ship.fire&quot; method hit
+ &quot;&lt;cntrl&gt;x, &lt;cntrl&gt;j&quot;</li>
+ <li>Follow the resulting popup menu to the &quot;EnsureShipIsAlive&quot;
+ advice</li>
+ <li>Navigate back to &quot;spacewar.Ship.fire&quot; using the same method</li>
+ </ul>
+ </li>
+ <li>JBuilder
+ <ul>
+ <li>Navigation
+ <ul>
+ <li>In the &quot;Structure View&quot; select the &quot;fire&quot;
+ method and expand it's children to reveal &quot;EnsureShipIsAlive:
+ around...&quot;</li>
+ <li>Double-click &quot;EnsureShipIsAlive: around...&quot; to navigate
+ to that advice declaration</li>
+ <li>Navigate back using the same method, or using the
+ &quot;Back&quot;, then &quot;Forward&quot; method in conjuntion with
+ the structure tree (this navigation can also be done by
+ right-clicking the inline advice icons in the editor's gutter)</li>
+ </ul>
+ </li>
+ <li>Compilation
+ <ul>
+ <li>In &quot;EnsureShipIsAlive&quot; remove &quot;ship&quot; from the
+ &quot;proceed(ship)&quot; call and recompile.</li>
+ <li>When the error message pops up fix it by replacing
+ &quot;ship&quot;</li>
+ </ul>
+ </li>
+ <li>Build Configuration
+ <ul>
+ <li>Double-click &quot;Default.lst&quot; and select the &quot;lst
+ Designer&quot; tab at the bottom of the editor pane</li>
+ <li>Expand the &quot;spacewar&quot; node</li>
+ <li>Click &quot;Debug.java&quot; in order to add it to the
+ configuration</li>
+ <li>Navigate to the &quot;Ship.java&quot; class so that the effects of
+ the new compilation are visible in the &quot;Structure View&quot;
+ when the compilation completes</li>
+ <li>Compile &quot;Default.lst&quot;</li>
+ <li>Run the project (top the execution of the project by clicking the
+ red stop button in the run messages pane)</li>
+ </ul>
+ </li>
+ <li>Debugging
+ <ul>
+ <li>Start the debugger</li>
+ <li>When the &quot;Please select launch parameters...&quot; dialog
+ pops up click &quot;OK&quot;</li>
+ <li>Select the &quot;Classes&quot; tab (4th tab from the top)</li>
+ <li>When the game starts, expand &quot;spacewar&quot;, expand &quot;Ship.java&quot;</li>
+ <li>Browse to the &quot;fire&quot; method and expand it</li>
+ <li>Right-click on the &quot;fire&quot; method and select &quot;stop
+ in spaceawar.Ship.fire&quot;</li>
+ <li>Wait for the breakpoint to be hit</li>
+ <li>Use the &quot;Step Into&quot; button (5th button on the bottom
+ from the left) to single step the file until you step through the
+ advice and into the body of the fire method</li>
+ <li>Click the red stop button (1st button) in order to stop the
+ debugging</li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ <li>Forte
+ <ul>
+ <li>Currently no Forte demo (fyi: navigate the structure the same way as
+ in JBuilder, and right-click the LST files to compile them, right click
+ &quot;Game.java&quot; to execute it)</li>
+ </ul>
+ </li>
+ <li>AJDoc
+ <ul>
+ <li>Scroll down to the &quot;fire&quot; method, and follow it's
+ &quot;Advised by: &quot; link to get to the &quot;EnsureShipIsAlive&quot;
+ aspect</li>
+ </ul>
+ </li>
+</ul>
+<p>&nbsp;</p>
+
+
+</body>
+
+</html>
diff --git a/docs/teaching/demos/oopsla2002-script.html b/docs/teaching/demos/oopsla2002-script.html
new file mode 100644
index 000000000..310505196
--- /dev/null
+++ b/docs/teaching/demos/oopsla2002-script.html
@@ -0,0 +1,671 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
+<meta name=ProgId content=Word.Document>
+<meta name=Generator content="Microsoft Word 11">
+<meta name=Originator content="Microsoft Word 11">
+<link rel=File-List href="oopsla2002-script_files/filelist.xml">
+<title>demo: OO IDE</title>
+<!--[if gte mso 9]><xml>
+ <o:DocumentProperties>
+ <o:Author>Mik Kersten</o:Author>
+ <o:LastAuthor>Mik Kersten</o:LastAuthor>
+ <o:Revision>2</o:Revision>
+ <o:TotalTime>91</o:TotalTime>
+ <o:LastPrinted>2002-09-06T19:46:00Z</o:LastPrinted>
+ <o:Created>2003-11-11T03:52:00Z</o:Created>
+ <o:LastSaved>2003-11-11T03:52:00Z</o:LastSaved>
+ <o:Pages>1</o:Pages>
+ <o:Words>320</o:Words>
+ <o:Characters>1829</o:Characters>
+ <o:Company>Xerox PARC</o:Company>
+ <o:Lines>15</o:Lines>
+ <o:Paragraphs>4</o:Paragraphs>
+ <o:CharactersWithSpaces>2145</o:CharactersWithSpaces>
+ <o:Version>11.5606</o:Version>
+ </o:DocumentProperties>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:WordDocument>
+ <w:ValidateAgainstSchemas/>
+ <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
+ <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
+ <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
+ <w:Compatibility>
+ <w:BreakWrappedTables/>
+ <w:SnapToGridInCell/>
+ <w:WrapTextWithPunct/>
+ <w:UseAsianBreakRules/>
+ <w:UseWord2002TableStyleRules/>
+ </w:Compatibility>
+ <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
+ </w:WordDocument>
+</xml><![endif]--><!--[if gte mso 9]><xml>
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
+ </w:LatentStyles>
+</xml><![endif]-->
+<style>
+<!--
+ /* Font Definitions */
+ @font-face
+ {font-family:Courier;
+ panose-1:2 7 4 9 2 2 5 2 4 4;
+ mso-font-alt:"Courier New";
+ mso-font-charset:0;
+ mso-generic-font-family:modern;
+ mso-font-format:other;
+ mso-font-pitch:fixed;
+ mso-font-signature:3 0 0 0 1 0;}
+@font-face
+ {font-family:Wingdings;
+ panose-1:5 0 0 0 0 0 0 0 0 0;
+ mso-font-charset:2;
+ mso-generic-font-family:auto;
+ mso-font-pitch:variable;
+ mso-font-signature:0 268435456 0 0 -2147483648 0;}
+@font-face
+ {font-family:Tahoma;
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-generic-font-family:swiss;
+ mso-font-pitch:variable;
+ mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
+@font-face
+ {font-family:Verdana;
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-generic-font-family:swiss;
+ mso-font-pitch:variable;
+ mso-font-signature:536871559 0 0 0 415 0;}
+ /* Style Definitions */
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ font-family:"Times New Roman";
+ mso-fareast-font-family:"Times New Roman";}
+p.MsoHeader, li.MsoHeader, div.MsoHeader
+ {margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ tab-stops:center 3.0in right 6.0in;
+ font-size:12.0pt;
+ font-family:"Times New Roman";
+ mso-fareast-font-family:"Times New Roman";}
+p.MsoFooter, li.MsoFooter, div.MsoFooter
+ {margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ tab-stops:center 3.0in right 6.0in;
+ font-size:12.0pt;
+ font-family:"Times New Roman";
+ mso-fareast-font-family:"Times New Roman";}
+ /* Page Definitions */
+ @page
+ {mso-footnote-separator:url("oopsla2002-script_files/header.html") fs;
+ mso-footnote-continuation-separator:url("oopsla2002-script_files/header.html") fcs;
+ mso-endnote-separator:url("oopsla2002-script_files/header.html") es;
+ mso-endnote-continuation-separator:url("oopsla2002-script_files/header.html") ecs;}
+@page Section1
+ {size:8.5in 11.0in;
+ margin:.5in 1.25in .5in 1.25in;
+ mso-header-margin:.2in;
+ mso-footer-margin:.2in;
+ mso-header:url("oopsla2002-script_files/header.html") h1;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+ /* List Definitions */
+ @list l0
+ {mso-list-id:68115525;
+ mso-list-type:hybrid;
+ mso-list-template-ids:858938398 1703206876 -2139089146 -2064071216 1691643238 1804361448 1106935208 795498688 1114022646 513440110;}
+@list l0:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+@list l1
+ {mso-list-id:149487999;
+ mso-list-type:hybrid;
+ mso-list-template-ids:996163290 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l1:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:40.5pt;
+ mso-level-number-position:left;
+ margin-left:40.5pt;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l2
+ {mso-list-id:285232438;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1431031654 -726899658 -63553996 -873671648 -1949522634 -2029475690 883689166 1438958244 -911152764 -143889788;}
+@list l2:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+@list l3
+ {mso-list-id:666597725;
+ mso-list-type:hybrid;
+ mso-list-template-ids:1496319566 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l3:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:40.5pt;
+ mso-level-number-position:left;
+ margin-left:40.5pt;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l4
+ {mso-list-id:829760420;
+ mso-list-type:hybrid;
+ mso-list-template-ids:697599534 737209016 718337656 126128176 699144238 -186582856 2015656828 -573567698 -98694796 -102872622;}
+@list l4:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+@list l5
+ {mso-list-id:1175682958;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1913763548 1683933168 -207477172 -1896716198 -1685027206 1819944446 78184194 2140690680 2113166228 -1703233950;}
+@list l5:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+@list l6
+ {mso-list-id:1372803880;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1464406574 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l6:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:40.5pt;
+ mso-level-number-position:left;
+ margin-left:40.5pt;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l7
+ {mso-list-id:1447773079;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1699440192 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l7:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l8
+ {mso-list-id:1451361852;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1759205440 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l8:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:40.5pt;
+ mso-level-number-position:left;
+ margin-left:40.5pt;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l9
+ {mso-list-id:1524708695;
+ mso-list-type:hybrid;
+ mso-list-template-ids:343073212 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l9:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l10
+ {mso-list-id:1659534521;
+ mso-list-type:hybrid;
+ mso-list-template-ids:291794924 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
+@list l10:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:\F0B7;
+ mso-level-tab-stop:40.5pt;
+ mso-level-number-position:left;
+ margin-left:40.5pt;
+ text-indent:-.25in;
+ font-family:Symbol;}
+@list l11
+ {mso-list-id:1796213947;
+ mso-list-type:hybrid;
+ mso-list-template-ids:286165626 -348468910 -768843216 1184416038 1188434802 1919294230 -1935737384 -448084024 -1107797042 -1968251254;}
+@list l11:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+@list l12
+ {mso-list-id:1823081790;
+ mso-list-type:hybrid;
+ mso-list-template-ids:-1570481774 -1554755134 -381011836 -1997633904 -940664112 -1372821974 -923489310 2081716164 235678500 2136529842;}
+@list l12:level1
+ {mso-level-number-format:bullet;
+ mso-level-text:•;
+ mso-level-tab-stop:.5in;
+ mso-level-number-position:left;
+ text-indent:-.25in;
+ font-family:"Times New Roman";}
+ol
+ {margin-bottom:0in;}
+ul
+ {margin-bottom:0in;}
+-->
+</style>
+<!--[if gte mso 10]>
+<style>
+ /* Style Definitions */
+ table.MsoNormalTable
+ {mso-style-name:"Table Normal";
+ mso-tstyle-rowband-size:0;
+ mso-tstyle-colband-size:0;
+ mso-style-noshow:yes;
+ mso-style-parent:"";
+ mso-padding-alt:0in 5.4pt 0in 5.4pt;
+ mso-para-margin:0in;
+ mso-para-margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:10.0pt;
+ font-family:"Times New Roman";
+ mso-ansi-language:#0400;
+ mso-fareast-language:#0400;
+ mso-bidi-language:#0400;}
+</style>
+<![endif]-->
+</head>
+
+<body lang=EN-US style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<div align=center>
+
+<table class=MsoNormalTable border=0 cellspacing=3 cellpadding=0 width=709
+ style='width:531.65pt;mso-cellspacing:2.2pt;margin-left:-7.95pt;mso-padding-alt:
+ 1.5pt 1.5pt 1.5pt 1.5pt'>
+ <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes;height:14.3pt'>
+ <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:14.3pt'>
+ <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
+ 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
+ line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
+ font-family:Verdana;color:#383E4C'>demo: object-oriented IDE</span></b><span
+ style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:1;height:33.45pt'>
+ <td width=703 colspan=3 style='width:527.25pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <ul style='margin-top:0in' type=disc>
+ <li class=MsoNormal style='mso-list:l9 level1 lfo7;tab-stops:list .5in'><span
+ style='font-size:10.0pt;font-family:Tahoma'>good at showing hierarchical
+ OO structure…<o:p></o:p></span></li>
+ </ul>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:2;height:10.45pt'>
+ <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:10.45pt'>
+ <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
+ 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
+ line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
+ font-family:Verdana;color:#383E4C'>demo: modularize concern</span></b><span
+ style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:3;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Show FigureEd running<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Inspect Point.java<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Use joinpoint probe to find<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>call(void figures.Canvas.updateHistory())
+ &amp;&amp; within(*)<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:4;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Describe places that it’s called<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>create aspect (defines a special class that can crosscut other
+ classes)<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>aspect HistoryUpdating <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>write pointcut (has name and parameters)<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>pointcut moves(): <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'>    </span>call(void
+ Line.setP1(Point)) || <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'>    </span>call(void
+ Line.setP2(Point));<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:5;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>write after advice (runs “on the way back out”)<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>after() returning: move() { <br>
+ <span style='mso-spacerun:yes'>   </span>&lt;runs after each move&gt; }<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:6;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>extend advice to Point setters (multi-class)<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>call(void FigureElement+.set*(..))<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:7;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>capture context &amp; use interface<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>move(FigureElement fe): target(fe) &amp;&amp;..<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:8;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Show structure, note that SlothfulPoint is now included<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Run &amp; show effect<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><o:p>&nbsp;</o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:9;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Show Point.moveBy history violoation<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Want to make sure that sets of private fields of classes implementing
+ FigureElement only happen from within the set methods<b style='mso-bidi-font-weight:
+ normal'><o:p></o:p></b></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'>declare warning: <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
+ </span>set(private * FigureElement+.*) <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
+ </span>&amp;&amp; !(withincode(* FigureElement+.set*(..)) || <span
+ style='mso-tab-count:1'>     </span><span style='mso-spacerun:yes'>  </span><span
+ style='mso-tab-count:2'>        </span><span
+ style='mso-spacerun:yes'>  </span>withincode(FigureElement+.new(..))):<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
+ mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>   
+ </span>&quot;should only assign to fields from set methods&quot;;<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:10;height:33.45pt'>
+ <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l3 level1 lfo13;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Write before advice that does precondition checking on Points.<o:p></o:p></span></p>
+ </td>
+ <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
+ <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:"Courier New"'>before(int
+ newValue): <br>
+ <span style='mso-spacerun:yes'>    </span>set(int Point.*) &amp;&amp;
+ args(newValue) {<br>
+ &nbsp;&nbsp;&nbsp; if (newValue &lt; 0) {<br>
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw new IAE(&quot;too
+ small&quot;);<br>
+ &nbsp;&nbsp;&nbsp; } <br>
+ }</span><span style='font-size:10.0pt;font-family:Tahoma'><o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:11;height:15.85pt'>
+ <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:15.85pt'>
+ <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
+ 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
+ line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
+ font-family:Verdana;color:#383E4C'>demo: pluggable aspects</span></b><span
+ style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:12;height:33.45pt'>
+ <td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>World’s first fully interactive video game, now 41 years old..<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Explain spacewar <o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
+ l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
+ style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
+ mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
+ style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
+ Tahoma'>Launch with Ship.java and &quot;Release.lst&quot; selected and compiled.<span
+ style='mso-spacerun:yes'>  </span><o:p></o:p></span></p>
+ </td>
+ <td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <ul style='margin-top:0in' type=disc>
+ <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
+ style='font-size:10.0pt;font-family:Tahoma'>Run <o:p></o:p></span></li>
+ <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
+ style='font-size:10.0pt;font-family:Tahoma'>Show debug configuration in
+ config designer<o:p></o:p></span></li>
+ <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
+ style='font-size:10.0pt;font-family:Tahoma'>Select
+ &quot;Debug.lst&quot;, compile, and run again <o:p></o:p></span></li>
+ <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
+ style='font-size:10.0pt;font-family:Tahoma'>Show debug window, menu, and
+ method tracing<o:p></o:p></span></li>
+ </ul>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:13;height:13.15pt'>
+ <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
+ 1.5pt 1.5pt 1.5pt 1.5pt;height:13.15pt'>
+ <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
+ 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
+ line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
+ font-family:Verdana;color:#383E4C'>demo: crosscutting structure</span></b><span
+ style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
+ </td>
+ </tr>
+ <tr style='mso-yfti-irow:14;mso-yfti-lastrow:yes;height:33.45pt'>
+ <td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
+ annotations over program structure<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
+ links and associations, inheritance links<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Explain
+ model genericity, different views<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
+ inline annotations<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
+ history navigation<o:p></o:p></span></p>
+ </td>
+ <td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
+ height:33.45pt'>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
+ global views (multiple views of your code)<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show
+ refactoring by changing helmCommandsCut<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Show view
+ synchronization, task-oriented views<o:p></o:p></span></p>
+ <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
+ font-family:Tahoma'>•<span style='mso-tab-count:1'>         </span>Discuss
+ how it is harder in AJ (implicit invocation)<o:p></o:p></span></p>
+ <p class=MsoNormal><span style='font-size:10.0pt;font-family:Tahoma'><span
+ style='mso-spacerun:yes'>  </span>•<span style='mso-tab-count:1'>         </span>Show
+ fluid documents (ISTL project)<o:p></o:p></span></p>
+ </td>
+ </tr>
+ <![if !supportMisalignedColumns]>
+ <tr height=0>
+ <td width=257 style='border:none'></td>
+ <td width=97 style='border:none'></td>
+ <td width=354 style='border:none'></td>
+ </tr>
+ <![endif]>
+</table>
+
+</div>
+
+<p class=MsoNormal style='margin-right:-45.0pt'><o:p>&nbsp;</o:p></p>
+
+</div>
+
+</body>
+
+</html>