Ignore:
Timestamp:
Jan 31, 2019, 9:58:34 PM (5 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
8d752592
Parents:
21cf101
Message:

thesis: Started Experiments chapter

Location:
doc/theses/aaron_moss_PhD/phd
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • doc/theses/aaron_moss_PhD/phd/Makefile

    r21cf101 r0e6a0be  
    2323background \
    2424generic-types \
     25resolution-heuristics \
    2526type-environment \
    26 resolution-heuristics \
     27experiments \
    2728conclusion \
    2829}
  • doc/theses/aaron_moss_PhD/phd/background.tex

    r21cf101 r0e6a0be  
    11\chapter{\CFA{}}
     2\label{cfa-chap}
    23
    34\CFA{} adds a number of features to C, some of them providing significant increases to the expressive power of the language, but all designed to maintain the existing procedural programming paradigm of C and to be as orthogonal as possible to each other.
  • doc/theses/aaron_moss_PhD/phd/resolution-heuristics.tex

    r21cf101 r0e6a0be  
    293293If the assertions of the minimal-cost top-level interpretation cannot be satisfied then the next-most-minimal-cost interpretation's assertions are checked, and so forth until a minimal-cost satisfiable interpretation (or ambiguous set thereof) is found, or no top-level interpretations are found to have satisfiable assertions.
    294294In the common case where the code actually does compile this saves the work of checking assertions for ultimately-rejected interpretations, though it does rule out some pruning opportunities for subinterpretations with unsatisfiable assertions or which are more expensive than a minimal-cost polymorphic function with the same return type.
    295 The experimental results in Section~\ref{resn-expr-sec} indicate that this is a worthwhile trade-off.
     295The experimental results in Chapter~\ref{expr-chap} indicate that this is a worthwhile trade-off.
    296296
    297297Optimizing assertion satisfaction for common idioms has also proved effective in \CFA{}; the code below is an unexceptional print statement derived from the \CFA{} test suite that nonetheless is a very difficult instance of expression resolution:
     
    326326As such, I opted to continue Bilson's approach of designing a bespoke solver for \CFA{} assertion satisfaction, rather than attempting to re-express the problem in some more general formalism.
    327327
    328 \section{Experimental Results} \label{resn-expr-sec}
    329 
    330 % use Jenkins daily build logs to rebuild speedup graph with more data
    331 
    332 % look back at Resolution Algorithms section for threads to tie up "does the algorithm look like this?"
    333 
    334328\section{Conclusion \& Future Work}
    335329
  • doc/theses/aaron_moss_PhD/phd/thesis.tex

    r21cf101 r0e6a0be  
    132132\input{resolution-heuristics}
    133133\input{type-environment}
     134\input{experiments}
    134135\input{conclusion}
    135136
  • doc/theses/aaron_moss_PhD/phd/type-environment.tex

    r21cf101 r0e6a0be  
    265265Persistent union-find, as the name suggests, is more optimized, with $O(1)$ cost to $save$ a backtrack-capable reference to the current environment state, and $O(p)$ cost to revert to that state (possibly destroying no-longer-used edit nodes along the path).
    266266
    267 \section{Experiments}
    268 
    269267% Future work: design multi-threaded version of C&F persistent map --- core idea is some sort of thread-boundary edit node
Note: See TracChangeset for help on using the changeset viewer.