\relax \ifx\hyper@anchor\@undefined \global \let \oldcontentsline\contentsline \gdef \contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} \global \let \oldnewlabel\newlabel \gdef \newlabel#1#2{\newlabelxx{#1}#2} \gdef \newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} \AtEndDocument{\let \contentsline\oldcontentsline \let \newlabel\oldnewlabel} \else \global \let \hyper@last\relax \fi \citation{harel:sta} \@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction}{1}{chapter.1}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {1.1}Overview}{1}{section.1.1}} \@writefile{toc}{\contentsline {section}{\numberline {1.2}Motivation}{1}{section.1.2}} \@writefile{toc}{\contentsline {section}{\numberline {1.3}Hierarchical State Machines}{1}{section.1.3}} \@writefile{toc}{\contentsline {chapter}{\numberline {2}Hierarchical State Machine Compiler}{2}{chapter.2}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {2.1}Overview}{2}{section.2.1}} \@writefile{toc}{\contentsline {section}{\numberline {2.2}Running the Compiler}{2}{section.2.2}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Compiler Options}{3}{subsection.2.2.1}} \newlabel{hsmc:options}{{2.2.1}{3}{Compiler Options\relax }{subsection.2.2.1}{}} \newlabel{opt:p}{{2.2.1}{3}{Compiler Options\relax }{subsection.2.2.1}{}} \@writefile{toc}{\contentsline {section}{\numberline {2.3}Compiler Output}{3}{section.2.3}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.3.1}Header File}{3}{subsection.2.3.1}} \@writefile{toc}{\contentsline {subsubsection}{Event Enumeration}{4}{section*.3}} \newlabel{hsmc:events}{{2.3.1}{4}{Event Enumeration\relax }{section*.3}{}} \@writefile{toc}{\contentsline {subsubsection}{State Enumeration}{4}{section*.4}} \newlabel{hsmc:states}{{2.3.1}{4}{State Enumeration\relax }{section*.4}{}} \@writefile{toc}{\contentsline {subsubsection}{Common Method Declaration}{5}{section*.5}} \@writefile{toc}{\contentsline {subsubsection}{Action Method Declarations}{6}{section*.6}} \@writefile{toc}{\contentsline {subsection}{\numberline {2.3.2}Source File}{7}{subsection.2.3.2}} \@writefile{toc}{\contentsline {section}{\numberline {2.4}Compiler Errors}{7}{section.2.4}} \@writefile{toc}{\contentsline {chapter}{\numberline {3}Implementing a Machine}{8}{chapter.3}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {3.1}Design}{8}{section.3.1}} \@writefile{toc}{\contentsline {section}{\numberline {3.2}Compile}{8}{section.3.2}} \@writefile{toc}{\contentsline {section}{\numberline {3.3}Implement}{8}{section.3.3}} \@writefile{toc}{\contentsline {chapter}{\numberline {4}Examples}{9}{chapter.4}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {4.1}Traffic Signal}{9}{section.4.1}} \@writefile{toc}{\contentsline {section}{\numberline {4.2}Soda Machine}{9}{section.4.2}} \@writefile{toc}{\contentsline {chapter}{\numberline {A}Frequently Asked Questions}{10}{appendix.A}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {A.1}FAQ Category}{10}{section.A.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {A.1.1}Question number 1?}{10}{subsection.A.1.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {A.1.2}Question number 2?}{10}{subsection.A.1.2}} \citation{harel:sta} \@writefile{toc}{\contentsline {chapter}{\numberline {B}HSM Language Reference}{11}{appendix.B}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {B.1}General}{11}{section.B.1}} \@writefile{toc}{\contentsline {section}{\numberline {B.2}Lexical Elements}{11}{section.B.2}} \newlabel{hsm:lexical}{{B.2}{11}{Lexical Elements\relax }{section.B.2}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.1}Character Set}{11}{subsection.B.2.1}} \newlabel{list:casesensitivity}{{B.1}{12}{Case Sensitivity\relax }{lstlisting.B.1}{}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {B.1}Case Sensitivity on Identifiers}{12}{lstlisting.B.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.2}Case Sensitivity}{12}{subsection.B.2.2}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.3}Line Format}{12}{subsection.B.2.3}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.4}Source Layout}{12}{subsection.B.2.4}} \newlabel{hsm:file}{{B.2.4}{12}{Source Layout\relax }{subsection.B.2.4}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.5}Keywords}{12}{subsection.B.2.5}} \newlabel{hsm:keywords}{{B.2.5}{12}{Keywords\relax }{subsection.B.2.5}{}} \newlabel{list:keywords}{{B.2}{13}{Keywords\relax }{lstlisting.B.2}{}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {B.2}Keywords}{13}{lstlisting.B.2}} \newlabel{list:identifiers}{{B.3}{13}{Identifiers\relax }{lstlisting.B.3}{}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {B.3}Identifier Examples}{13}{lstlisting.B.3}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.6}Identifiers}{13}{subsection.B.2.6}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.7}Numeric Literals}{13}{subsection.B.2.7}} \citation{harel:sta} \citation{samek:psc} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.8}Reserved Words}{14}{subsection.B.2.8}} \newlabel{hsm:reserved}{{B.2.8}{14}{Reserved Words\relax }{subsection.B.2.8}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.2.9}Comments}{14}{subsection.B.2.9}} \@writefile{toc}{\contentsline {section}{\numberline {B.3}Scope}{14}{section.B.3}} \@writefile{toc}{\contentsline {section}{\numberline {B.4}Machines}{14}{section.B.4}} \newlabel{hsm:machines}{{B.4}{14}{Machines\relax }{section.B.4}{}} \@writefile{toc}{\contentsline {section}{\numberline {B.5}States}{14}{section.B.5}} \newlabel{hsm:states}{{B.5}{14}{States\relax }{section.B.5}{}} \@writefile{toc}{\contentsline {section}{\numberline {B.6}Actions}{15}{section.B.6}} \newlabel{hsm:actions}{{B.6}{15}{Actions\relax }{section.B.6}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.6.1}Normal}{15}{subsection.B.6.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.6.2}Timed}{15}{subsection.B.6.2}} \newlabel{hsm:actionstimed}{{B.6.2}{15}{Timed\relax }{subsection.B.6.2}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.6.3}Special}{15}{subsection.B.6.3}} \@writefile{toc}{\contentsline {section}{\numberline {B.7}Transitions}{15}{section.B.7}} \newlabel{hsm:transitions}{{B.7}{15}{Transitions\relax }{section.B.7}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.7.1}Normal}{15}{subsection.B.7.1}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.7.2}Timed}{15}{subsection.B.7.2}} \newlabel{hsm:transitionstimed}{{B.7.2}{15}{Timed\relax }{subsection.B.7.2}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.7.3}Default}{15}{subsection.B.7.3}} \newlabel{hsm:default}{{B.7.3}{15}{Default\relax }{subsection.B.7.3}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {B.7.4}Termination}{15}{subsection.B.7.4}} \newlabel{hsm:termination}{{B.7.4}{15}{Termination\relax }{subsection.B.7.4}{}} \@writefile{toc}{\contentsline {chapter}{\numberline {C}HSMC lex and yacc Source}{16}{appendix.C}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \@writefile{toc}{\contentsline {section}{\numberline {C.1}lex, lexical scanner}{16}{section.C.1}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {C.1}hsmc.l (lex source)}{16}{lstlisting.C.1}} \@writefile{toc}{\contentsline {section}{\numberline {C.2}yacc, parser}{18}{section.C.2}} \@writefile{lol}{\contentsline {lstlisting}{\numberline {C.2}hsmc.y (yacc source)}{18}{lstlisting.C.2}} \@writefile{toc}{\contentsline {chapter}{Glossary}{21}{lstnumber.C.2.128}} \bibstyle{alpha} \bibdata{doc} \bibcite{harel:sta}{Har87} \bibcite{samek:psc}{Sam02} \@writefile{toc}{\contentsline {chapter}{Bibliography}{22}{appendix*.7}} \@writefile{toc}{\contentsline {chapter}{Index}{23}{appendix*.8}}