Index: doc/theses/andrew_beach_MMath/cfalab.sty
===================================================================
--- doc/theses/andrew_beach_MMath/cfalab.sty	(revision 9b0bb792bd70586c431f8c723443af01cbc51a9d)
+++ doc/theses/andrew_beach_MMath/cfalab.sty	(revision 887fc79b4f901d20d2921039f1552cd2d9e2c2dd)
@@ -126,4 +126,21 @@
 }
 
+% \snake{<identifier>}
+% Improves writing of snake case (or any convention that uses _) by allowing
+% line breaks after _. Disables commands inside the block and formats the
+% identifier to look like code.
+\newcommand*\snake[1]{\snakefont{\expandafter\snake@next\detokenize{#1}\@nil}}
+
+% \snakefont{<text>}
+% Command used by \snake, you may renew the command to change its formating.
+\newcommand*\snakefont[1]{\texttt{#1}}
+
+% Thanks Manuel of TeX Stack exchange. (I got the base pattern from one of
+% their answers.) Note: \@nil should never be defined.
+\newcommand*\snake@next[1]{\ifx\@nil#1\else
+  \expandafter\ifx\string_#1\string_\allowbreak\else#1\fi
+  \expandafter\snake@next\fi
+}
+
 % common.tex Compatablity ===================================================
 % Below this line is for compatability with the old common.tex file.
Index: doc/theses/andrew_beach_MMath/features.tex
===================================================================
--- doc/theses/andrew_beach_MMath/features.tex	(revision 9b0bb792bd70586c431f8c723443af01cbc51a9d)
+++ doc/theses/andrew_beach_MMath/features.tex	(revision 887fc79b4f901d20d2921039f1552cd2d9e2c2dd)
@@ -115,5 +115,5 @@
 
 \paragraph{Communication}
-For effective exception handling, additional information is usually passed
+For effective exception handling, additional information is often passed
 from the raise to the handler.
 So far only communication of the exceptions' identity has been covered.
@@ -327,5 +327,5 @@
 \end{cfa}
 When viewed on its own, a try statement will simply execute the statements
-in @GUARDED_BLOCK@ and when those are finished the try statement finishes.
+in \snake{GUARDED_BLOCK} and when those are finished the try statement finishes.
 
 However, while the guarded statements are being executed, including any
@@ -343,5 +343,5 @@
 
 If no termination handler is found during the search then the default handler
-(@defaultTerminationHandler@) is run.
+(\defaultTerminationHandler) is run.
 Through \CFA's trait system the best match at the throw sight will be used.
 This function is run and is passed the copied exception. After the default
@@ -421,9 +421,9 @@
 execution continues after the raise statement.
 
-There is a global @defaultResumptionHandler@ is polymorphic over all
+There is a global \defaultResumptionHandler{} is polymorphic over all
 termination exceptions and preforms a termination throw on the exception.
-The @defaultTerminationHandler@ for that raise is matched at the original
-raise statement (the resumption @throwResume@) and it can be customized by
-introducing a new or better match as well.
+The \defaultTerminationHandler{} for that raise is matched at the
+original raise statement (the resumption @throw@\-@Resume@) and it can be
+customized by introducing a new or better match as well.
 
 \subsubsection{Resumption Marking}
@@ -681,5 +681,5 @@
 @CoroutineCancelled@ exception, which contains a references to the cancelled
 coroutine and the exception used to cancel it.
-The resume function also takes the @defaultResumptionHandler@ from the
+The resume function also takes the \defaultResumptionHandler{} from the
 caller's context and passes it to the internal report.
 
Index: doc/theses/andrew_beach_MMath/implement.tex
===================================================================
--- doc/theses/andrew_beach_MMath/implement.tex	(revision 9b0bb792bd70586c431f8c723443af01cbc51a9d)
+++ doc/theses/andrew_beach_MMath/implement.tex	(revision 887fc79b4f901d20d2921039f1552cd2d9e2c2dd)
@@ -16,5 +16,5 @@
 Virtual types only have one change to their structure: the addition of a
 pointer to the virtual table, which is called the \emph{virtual-table pointer}.
-Internally, the field is called @virtual_table@.
+Internally, the field is called \snake{virtual_table}.
 The field is fixed after construction. It is always the first field in the
 structure so that its location is always known.
@@ -321,5 +321,5 @@
 To get full unwinding support all of this has to be done directly with
 assembly and assembler directives. Partiularly the cfi directives
-\texttt{.cfi\_lsda} and \texttt{.cfi\_personality}.
+\snake{.cfi_lsda} and \snake{.cfi_personality}.
 
 \subsection{Personality Functions}
@@ -437,7 +437,7 @@
 \begin{sloppypar}
 Its arguments are the same as the paired personality function. The actions
-@_UA_CLEANUP_PHASE@ and @_UA_FORCE_UNWIND@ are always set when it is
+\snake{_UA_CLEANUP_PHASE} and \snake{_UA_FORCE_UNWIND} are always set when it is
 called. Beyond the libunwind standard, both GCC and Clang add an extra action
-on the last call at the end of the stack: @_UA_END_OF_STACK@.
+on the last call at the end of the stack: \snake{_UA_END_OF_STACK}.
 \end{sloppypar}
 
@@ -456,5 +456,6 @@
 
 The exception context should be retrieved by calling the function
-@this_exception_context@. For sequential execution, this function is defined as
+\snake{this_exception_context}.
+For sequential execution, this function is defined as
 a weak symbol in the \CFA system-library, @libcfa@. When a \CFA program is
 concurrent, it links with @libcfathread@, where this function is defined with a
@@ -640,5 +641,6 @@
 	{
 		Exception1 * name1;
-		if (name1 = (virtual Exception1 *)__exception_inst && check(name1)) {
+		if (name1 = (virtual Exception1 *)__exception_inst
+				&& check(name1)) {
 			return 1;
 		}
@@ -725,5 +727,6 @@
 	{
 		Exception1 * name1;
-		if (name1 = (virtual Exception1 *)__exception_inst && check(name1)) {
+		if (name1 = (virtual Exception1 *)__exception_inst
+				&& check(name1)) {
 			// CATCH BLOCK 1
 			return 1;
Index: doc/theses/andrew_beach_MMath/uw-ethesis.tex
===================================================================
--- doc/theses/andrew_beach_MMath/uw-ethesis.tex	(revision 9b0bb792bd70586c431f8c723443af01cbc51a9d)
+++ doc/theses/andrew_beach_MMath/uw-ethesis.tex	(revision 887fc79b4f901d20d2921039f1552cd2d9e2c2dd)
@@ -202,4 +202,9 @@
 \makeglossaries
 
+% New commands/options for this document alone:
+% Code snipits with formating and line-breaks.
+\newcommand\defaultResumptionHandler{\texttt{default\-Resumption\-Handler}}
+\newcommand\defaultTerminationHandler{\texttt{default\-Termination\-Handler}}
+
 % listings package configuation:
 \lstMakeShortInline@
