1%if false  
2  Copyright (c) 2009, ETH Zurich.
3  All rights reserved.
4  
5  This file is distributed under the terms in the attached LICENSE file.
6  If you do not find this file, copies can be found by writing to:
7  ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
8%endif
9
10\documentclass{report}
11\usepackage[english]{babel}
12\usepackage{fullpage}
13
14%include polycode.fmt
15
16\usepackage{epigraph}
17\setlength{\epigraphrule}{0pt}
18\setlength{\beforeepigraphskip}{0pt}
19\setlength{\afterepigraphskip}{2\baselineskip}
20
21\usepackage{tikz}
22\usetikzlibrary{matrix,arrows}
23
24
25\title{\Huge{Filet-o-Fish}\\
26      \large{When French Cuisine Meets Swiss Fishes}
27}
28\author{\Large{Pierre-Evariste \sc{Dagand}}}
29\date{}
30
31\begin{document}
32
33\maketitle
34
35\newpage
36
37
38\tableofcontents
39
40\input{Introduction}
41
42%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
43\part{The Filet-o-Fish Language}
44%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
45
46\input{IntroLanguage}
47
48%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
49\chapter{Filet-o-Fish Syntax}
50\label{chap:fof_syntax}
51\epigraph{- None shall pass.\\
52          - I have no quarrel with you, good Sir Knight, but I must cross this bridge.\\
53          - Then you shall die.}{Monty Python}
54%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
55
56\input{PureExpressions}
57\input{Constructs}
58
59%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
60\chapter{Filet-o-Fish Semantics}
61\label{chap:fof_semantics}
62\epigraph{So, logically...\\
63          If...\\
64          she...\\ weighs...\\
65          the same as a duck,...\\
66          she's made of wood.}{Monty Python}
67%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
68
69\input{Eval}
70\input{Expressions}
71\input{Semantics}
72
73%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
74\chapter{Filet-o-Fish Operators}
75\label{chap:fof_operators}
76\epigraph{Listen. \\
77          Strange women lying in ponds distributing swords 
78          is no basis for a system of government. 
79          Supreme executive power derives from a mandate from the masses, 
80          not from some farcical aquatic ceremony.}{Monty Python}
81%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
82
83\input{./Constructs/Arrays}
84\input{./Constructs/Conditionals}
85\input{./Constructs/Enumerations}
86\input{./Constructs/Functions}
87\input{./Constructs/References}
88\input{./Constructs/Strings}
89\input{./Constructs/Structures}
90\input{./Constructs/Typedef}
91\input{./Constructs/Unions}
92
93%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
94\chapter{Lib-C Operators}
95\label{chap:fof_libc}
96\epigraph{Mortician: Bring out your dead! [clang] \ldots \\
97          Customer:  Here's one -- nine pence. \\
98          Dead person: I'm not dead!\\
99          Mortician: What?\\
100          Customer: Nothing -- here's your nine pence.}{Monty Python}
101
102%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
103
104\input{./Libc/Printf}
105\input{./Libc/Assert}
106
107%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108\chapter{Lib-barrefish Operators}
109\label{chap:fof_libbarrelfish}
110\epigraph{Here may be found the last words of Joseph of Aramathea.  He
111  who is valiant and pure of spirit may find the Holy Grail in the
112  Castle of uuggggggh}{Monty Python}
113%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
114
115\input{./Libbarrelfish/HasDescendants}
116\input{./Libbarrelfish/MemToPhys}
117
118
119%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
120\part{The Filet-o-Fish Compiler}
121%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
122
123\input{Compile}
124
125%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
126\chapter{The FoF Intermediate Language}
127\label{chap:il_fof}
128\epigraph{- [...] For, since the tragic death of her father -- \\
129          - He's not quite dead!\\
130          - Since the near fatal wounding of her father--\\
131          - He's getting better!\\
132          - For, since her own father\ldots who, when he seemed about to
133            recover, suddenly felt the icy hand of death upon him,\ldots\\
134          - Oh, he's died!\\
135          - And I want his only daughter to look upon me\ldots as her own
136            dad -- in a very real, and legally binding sense.
137            And I feel sure that the merger -- uh, the union -- between the
138            Princess and the brave, but dangerous, Sir Launcelot of Camelot...}{Monty Python}
139
140%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
141
142\input{./IL/FoF/FoF}
143\input{./IL/FoF/Compile}
144\input{./IL/FoF/Run}
145
146%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
147\chapter{The Paka Intermediate Language}
148\label{chap:il_paka}
149\epigraph{Listen, lad. \\
150  I've built this kingdom up from nothing.  When
151  I started here, all there was was swamp.  All the kings said I was
152  daft to build a castle in a swamp, but I built it all the same,
153  just to show 'em.  It sank into the swamp.\\
154  So, I built a second one. That sank into the swamp. \\
155  So I built a third one.  That burned down,
156  fell over, then sank into the swamp.  \\
157  But the fourth one stayed up. An' that's what your gonna get, lad -- the strongest castle in these
158  islands.}{Monty Python}
159%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
160
161\input{./IL/Paka/Syntax}
162\input{./IL/Paka/Builders}
163\input{./IL/Paka/Paka}
164\input{./IL/Paka/Compile}
165\input{./IL/Paka/Optimizer}
166
167
168%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
169\appendix
170\part{Appendix}
171%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
172
173\input{FutureWork}
174
175%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
176%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
177
178
179\bibliographystyle{plain}
180\bibliography{FiletOFish}
181
182
183\end{document}
184