@conference {14670,
	title = {Cross-tier, label-based security enforcement for web applications},
	booktitle = {Proceedings of the 35th SIGMOD international conference on Management of data},
	series = {SIGMOD {\textquoteright}09},
	year = {2009},
	month = {2009///},
	pages = {269 - 282},
	publisher = {ACM},
	organization = {ACM},
	address = {New York, NY, USA},
	abstract = {This paper presents SELinks, a programming language focused on building secure multi-tier web applications. SELinks provides a uniform programming model, in the style of LINQ and Ruby on Rails, with language syntax for accessing objects residing either in the database or at the server. Object-level security policies are expressed as fully-customizable, first-class labels which may themselves be subject to security policies. Access to labeled data is mediated via trusted, user-provided policy enforcement functions. SELinks has two novel features that ensure security policies are enforced correctly and efficiently. First, SELinks implements a type system called Fable that allows a protected object{\textquoteright}s type to refer to its protecting label. The type system can check that labeled data is never accessed directly by the program without first consulting the appropriate policy enforcement function. Second, SELinks compiles policy enforcement code to database-resident user-defined functions that can be called directly during query processing. Database-side checking avoids transferring data to the server needlessly, while still allowing policies to be expressed in a customizable and portable manner. Our experience with two sizable web applications, a modelhealth-care database and a secure wiki with fine-grained security policies, indicates that cross-tier policy enforcement in SELinks is flexible, relatively easy to use, and, when compared to a single-tier approach, improves throughput by nearly an order of magnitude. SELinks is freely available.},
	keywords = {compilers, database programming, security enforcement, type systems, web applications},
	isbn = {978-1-60558-551-2},
	doi = {10.1145/1559845.1559875},
	url = {http://doi.acm.org/10.1145/1559845.1559875},
	author = {Corcoran,Brian J. and Swamy,Nikhil and Hicks, Michael W.}
}
@article {18411,
	title = {PIT: A macro-implemented implementation language},
	journal = {Software: Practice and Experience},
	volume = {2},
	year = {2006},
	month = {2006/10/27/},
	pages = {337 - 346},
	abstract = {An implementation technique called PIT, for pseudo instructional technique, is described which utilizes the macro capabilities of most macro assemblers. A low level machine architecture is described via a set of macros that include some {\textquoteleft}high level{\textquoteright} features. Since the macros manipulate computer words, and refer to actual registers, their implementation in a system is relatively efficient, but since they do not reflect any one particular hardware design, they can be implemented by almost any macro assembler. Tests are built into the macros so that a PIT program will run without change on any machine that has defined these macrosThis technique should provide an alternative to using higher level languages as implementation languages if the object code produced by those compilers is deemed too slow (or too large) for the application that is being programmed.
},
	keywords = {compilers, Implementation languages, Macros},
	isbn = {1097-024X},
	doi = {10.1002/spe.4380020405},
	url = {http://onlinelibrary.wiley.com/doi/10.1002/spe.4380020405/abstract},
	author = {Zelkowitz, Marvin V}
}
@conference {14814,
	title = {Parallel Parameter Tuning for Applications with Performance Variability},
	booktitle = {Proceedings of the 2005 ACM/IEEE conference on Supercomputing},
	series = {SC {\textquoteright}05},
	year = {2005},
	month = {2005///},
	pages = {57{\textendash} - 57{\textendash}},
	publisher = {IEEE Computer Society},
	organization = {IEEE Computer Society},
	abstract = {In this paper, we present parallel on-line optimization algorithms for parameter tuning of parallel programs. We employ direct search algorithms that update parameters based on real-time performance measurements. We discuss the impact of performance variability on the accuracy and efficiency of the optimization algorithms and proposed modified versions of the direct search algorithms to cope with it. The modified version uses multiple samples instead of single sample to estimate the performance more accurately.We present preliminary results that the performance variability of applications on clusters is heavy tailed. Finally, we studay and demonstrate the performance ofthe proposed algorithms for real scientific application.},
	keywords = {algorithms, compilers, design},
	isbn = {1-59593-061-2},
	doi = {http://dx.doi.org/10.1109/SC.2005.52},
	url = {http://dx.doi.org/10.1109/SC.2005.52},
	author = {Tabatabaee, Vahid and Tiwari, Ananta and Hollingsworth, Jeffrey K}
}
