Michael Hicks

ABSTRACT Title of dissertation: Directed by: Language-based Enforcement of User-defined Security Policies As Applied to Multi-tier Web Programs (2009)

Michael Hicks

Over the last 35 years, researchers have proposed many different forms of security policies to control how information is managed by software, e.g., multi-level information flow policies, role-based...

Verified Enforcement of Stateful Information Release Policies (2009)

Nikhil Swamy, Michael Hicks

Many organizations specify information release policies to describe the terms under which sensitive information may be released to other organizations. This paper presents a new approach for ensuring...

Locksmith: Practical Static Race Detection for C (2009)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks

Locksmith is a static analysis tool for automatically detecting data races in C programs. In this paper, we describe each of Locksmith’s component analyses precisely, and present systematic...

Path Projection for User-Centered Static Analysis Tools (2009)

Khoo Yit, Phang Jeffrey, S. Foster, Michael Hicks, Vibha Sazawal

The research and industrial communities have made great strides in developing sophisticated defect detection tools based on static analysis. However, to date most of the work in this area has focused...

Contextual effects for versionconsistent dynamic software updating and safe concurrent programming (2009)

Iulian Neamtiu, Michael Hicks, Jeffrey S. Foster, Polyvios Pratikakis

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

Path Projection for User-Centered Static Analysis Tools (2009)

Khoo Yit, Phang Jeffrey, S. Foster, Michael Hicks, Vibha Sazawal

The research and industrial communities have made great strides in developing sophisticated defect detection tools based on static analysis. To date most of the work in this area has focused on...

Formalizing Soundness of Contextual Effects (2009)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks, Iulian Neamtiu

Abstract. A contextual effect system generalizes standard type and effect systems: where a standard effect system computes the effect of an expression e, a contextual effect system additionally...

Abstract Dynamic Software Updates for Java: A VM-Centric Approach (2009)

Suriya Subramanian, Michael Hicks, Kathryn S. Mckinley

Software evolves to fix bugs and add features, but stopping and restarting existing programs to take advantage of these changes can be inconvenient and costly. Dynamic software updating (DSU)...

Formalizing Soundness of Contextual Effects (2009)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks, Iulian Neamtiu

Abstract. A contextual effects system generalizes standard type and effect systems: where a standard effects system computes the effect of an expression e, a contextual effects system additionally...

The Design of Distributed Programming Languages (2008)

Peter Sewell, John Billings, Steve Bishop, Matthew Fairbairn, Pierre Habouzit, Michael Hicks, ...

High-level programming languages For non-distributed, non-concurrent programming, they’re pretty good. We have ML (SML/OCaml), Haskell, Java, C#, with: • type safety • rich concrete types –...

Formalizing Soundness of Contextual Effects (2008)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks, Iulian Neamtiu

Abstract. A contextual effects system generalizes standard type and effect systems: where a standard effects system computes the effect of an expression e, a contextual effects system additionally...

DRAFT Abstract (2008)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks

One common technique for preventing data races in multi-threaded programs is to ensure that all accesses to shared locations are consistently protected by a lock. We present a tool called Locksmith...

Contextual Effects for Version-Consistent Dynamic Software Updating and Safe Concurrent Programming ∗ Abstract (2008)

Iulian Neamtiu, Michael Hicks, Jeffrey S. Foster, Polyvios Pratikakis

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

ABSTRACT Cross-tier, Label-based Security Enforcement for Web Applications (2008)

Brian J. Corcoran, Nikhil Swamy, Michael Hicks

This paper presents SELinks, an extension of the Links web programming language, that allows a database and web server to collaboratively enforce a security policy with high assurance. Our approach...

Abstract Chunks in PLAN: Language Support for Programs as Packets (2008)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Chunks are a programming construct in PLAN, the Packet Language for Active Networks, comprised of a code segment and a suspended function call. In PLAN, chunks provide support for encapsulation and...

Abstract Safe Manual Memory Management in Cyclone (2008)

Nikhil Swamy, Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate how to make a low-level C-like language safe. Our most difficult challenge has been providing programmers control over memory management while...

Contextual Effects for Version-Consistent Dynamic Software Updating and Safe Concurrent Programming ∗ Abstract (2008)

Iulian Neamtiu, Michael Hicks, Jeffrey S. Foster, Polyvios Pratikakis

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

Directing JavaScript with Arrows (Functional Pearl) (2008)

Khoo, Yit Phang, Hicks, Michael, Foster, Jeffrey S., Sazawal, Vibha

JavaScript, being a single-threaded language, makes extensive use of event-driven programming to enable responsive web applications. However, standard approaches to sequencing events are messy, and...

Path Projection for User-Centered Static Analysis Tools (2008)

Khoo, Yit-Phang, Foster, Jeffrey S., Hicks, Michael, Sazawal, Vibha

The research and industrial communities have made great strides in developing sophisticated defect detection tools based on static analysis. However, to date most of the work in this area has focused...

Merging Network Measurement with Data Transport (2008)

Pavlos Papageorgiou, Michael Hicks

Abstract. The tasks of measurement and data transport are often treated independently, but we believe there are benefits to bringing them together. This paper proposes the simple idea of a transport...

Reducing the Branch Power Cost In Embedded Processors Through Static Scheduling, Profiling and SuperBlock Formation (2008)

Michael Hicks, Colin Egan, Bruce Christianson, Patrick Quick

Abstract. Dynamic branch predictor logic alone accounts for approximately 10 % of total processor power dissipation. Recent research indicates that the power cost of a large dynamic branch predictor...

Contextual Effects for Version-Consistent Dynamic Software Updating and Safe Concurrent Programming ∗ Abstract (2008)

Iulian Neamtiu, Michael Hicks, Jeffrey S. Foster, Polyvios Pratikakis

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

Abstract PLAN � A Packet Language for Active Networks (2008)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

PLAN �Packet Language for Active Networks � is a new lan� guage for programs that form the packets of a programmable network. These programs replace the packet headers �which can be viewed as...

Abstract Dynamic Inference of Polymorphic Lock Types (2008)

James Rose, Nikhil Swamy, Michael Hicks

We present an FindLocks, an approach for automatically proving the absence of data races in multi-threaded Java programs, using a combination of dynamic and static analysis. The program in question...

DRAFT Abstract (2008)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks

One common technique for preventing data races in multi-threaded programs is to ensure that all accesses to shared locations are consistently protected by a lock. We present a tool called Locksmith...

Abstract Toward Practical Dynamic Software Updating (2008)

Iulian Neamtiu, Gareth Stoyle, Manuel Oriol, Michael Hicks

Software systems are imperfect, so software updates are a fact of life. While typical software updates require stopping and restarting the program in question, many systems cannot afford to halt...

Merging Network Measurement with Data Transport (Extended Abstract) (2008)

Pavlos Papageorgiou, Michael Hicks

Abstract. The tasks of measurement and data transport are often treated independently, but we believe there are benefits to bringing them together. This paper proposes the simple idea of a transport...

Specifying the PLAN Network Programming Langauge (2008)

Pankaj Kakkar, Michael Hicks, Jon Moore, Carl A. Gunter

We discuss how the speci cation of the PLAN programming language supports the design objectives of the language. The speci cation aims to provide a mathematically precise operational semantics that...

Abstract Safe Manual Memory Management in Cyclone (2008)

Nikhil Swamy, Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate how to make a low-level C-like language safe. Our most difficult challenge has been providing programmers control over memory management while...

Abstract (2008)

Michael Hicks, Dan Grossman

Cyclone is a type-safe programming language intended for applications requiring control over memory management. Our previous work on Cyclone included support for stack allocation, lexical region...

Abstract Cyclone: A safe dialect of C (2008)

Trevor Jim, Greg Morrisett, Dan Grossman, Michael Hicks

Cyclone is a safe dialect of C. It has been designed from the ground up to prevent the buffer overflows, format string attacks, and memory management errors that are common in C programs, while...

Fable: A language for enforcing user-defined security policies (2008)

Nikhil Swamy, Brian J. Corcoran, Michael Hicks

This paper presents FABLE, a core formalism for a programming language in which programmers may specify security policies and reason that these policies are properly enforced. In FABLE, security...

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING 1 Modular Information Hiding and Type-Safe Linking for C (2008)

Saurabh Srivastava, Michael Hicks, Jeffrey S. Foster, Patrick Jenkins

This paper presents CMOD, a novel tool that provides a sound module system for C. CMOD works by enforcing a set of four rules that are based on principles of modular reasoning and on current...

Fable: A language for enforcing user-defined security policies (2008)

Nikhil Swamy, Brian J. Corcoran, Michael Hicks

This paper presents FABLE, a core formalism for a programming language in which programmers may specify security policies and reason that these policies are properly enforced. In FABLE, security...

Fable: A language for enforcing user-defined security policies (2008)

Nikhil Swamy, Brian J. Corcoran, Michael Hicks

This paper presents FABLE, a core formalism for a programming language in which programmers may specify security policies and reason that these policies are properly enforced. In FABLE, security...

Verified enforcement of automaton-based information release policies (2008)

Nikhil Swamy, Michael Hicks

Many organizations specify information release policies to describe the terms under which sensitive information may be released to other organizations. This paper presents a new approach for ensuring...

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING 1 Modular Information Hiding and Type-Safe Linking for C (2008)

Saurabh Srivastava, Michael Hicks, Jeffrey S. Foster, Patrick Jenkins

This paper presents CMOD, a novel tool that provides a sound module system for C. CMOD works by enforcing a set of four rules that are based on principles of modular reasoning and on current...

Adapting Scrum to Managing a Research Group (2008)

Michael Hicks, Jeffrey S. Foster

Working with and mentoring Ph.D. students is the central activity in running an academic research group, with two broad goals: (1) to collaboratively produce high-quality research results, and (2) to...

Adapting Scrum to Managing a Research Group (2008)

Michael Hicks, Jeffrey S. Foster

Working with and mentoring Ph.D. students is the central activity in running an academic research group, with two broad goals: (1) to collaboratively produce high-quality research results, and (2) to...

Abstract Active Networking Means Evolution (or Enhanced Extensibility Required) (2007)

Michael Hicks

The primary goal of active networking is to increase the pace of network evolution. The approach to achieving this goal, as well as the goal of enhancing customizability, is to allow network nodes to...

ABSTRACT (2007)

Michael Hicks

Many important applications must run continuously and without interruption, yet must be changed to fix bugs or upgrade functionality. To date, no existing dynamic updating system has achieved a...

Specifying the PLAN Network Programming Langauge (2007)

Pankaj Kakkar Michael, Michael Hicks, Jon Moore, Carl A. Gunter

We discuss how the specification of the PLAN programming language supports the design objectives of the language. The specification aims to provide a mathematically precise operational semantics that...

A History of High-Temperature Io Volcanism: February 1995 to May 1997. (2007)

John Spencer John, John A. Stansberry, Christophe Dumas, David Vakil, Randy Pregler, Michael Hicks, ...

Ground-based observations of Io's infrared thermal emission between February 1995 and May 1997, preceding and spanning the first part of Galileo's orbital tour, show several discrete...

Specifying the PLAN Network Programming Langauge (2007)

Pankaj Kakkar Michael, Michael Hicks, Jon Moore, Carl A. Gunter

We discuss how the specification of the PLAN programming language supports the design objectives of the language. The specification aims to provide a mathematically precise operational semantics that...

Types and Intermediate Representations (2007)

Michael Hicks

The design objectives and the mechanisms for achieving those objectives are considered for each of three systems, Java, Erlang, and TIL. In particular, I examine the use of types and intermediate...

y (2007)

Trevor Jim, Greg Morrisett, Dan Grossman, Michael Hicks, James Cheney, Yanling Wang

Cyclone is a safe dialect of C. It has been designed from the ground up to prevent the buer over ows, format string attacks, and memory management errors that are common in C programs, while...

1 (2007)

Michael Hicks, Jonathan T. Moore, Scott Nettles

Abstract. PLAN (Packet Language for Active Networks) [4] is a highly exible and usable active packet language, whereas SNAP (Safe and Nimble Active Packets) [11] oers signicant resource usage safety...

y (2007)

Trevor Jim, Greg Morrisett, Dan Grossman, Michael Hicks, James Cheney, Yanling Wang

Cyclone is a safe dialect of C. It has been designed from the ground up to prevent the buer over ows, format string attacks, and memory management errors that are common in C programs, while...

Abstract (2007)

Michael Hicks, Stephanie Weirich

We present the load-calculus, used to model dynamic loading, and prove it sound. The calculus extends the polymorphic λ-calculus with a load primitive that dynamically loads terms that are closed,...

Short Presentation: Combining Garbage Collection and Safe Manual Memory Management (2007)

Michael Hicks, Dan Grossman, Trevor Jim

Garbage collection (GC) provides an elegant, convenient, and safe approach to managing memory. For many applications, it is an appropriate technique for all data. For other applications, it works...

Contextual Effects for Version-Consistent Dynamic Software Updating and Safe Concurrent Programming (2007)

Neamtiu, Iulian, Hicks, Michael, Foster, Jeffrey S., Pratikakis, Polyvios

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

Contextual Effects for Version-Consistent Dynamic Software Updating and Safe Concurrent Programming (2007)

Neamtiu, Iulian, Hicks, Michael, Foster, Jeffrey S., Pratikakis, Polyvios

This paper presents a generalization of standard effect systems that we call contextual effects. A traditional effect system computes the effect of an expression e. Our system additionally computes...

Toward Specifying and Validating Cross-Domain Policies (2007)

Hicks, Michael, Swamy, Nikhil, Tsang, Simon

Formal security policies are extremely useful for two related reasons. First, they allow a policy to be considered in isolation, separate from programs under the purview of the policy and separate...

Toward Specifying and Validating Cross-Domain Policies (2007)

Hicks, Michael, Swamy, Nikhil, Tsang, Simon

Formal security policies are extremely useful for two related reasons. First, they allow a policy to be considered in isolation, separate from programs under the purview of the policy and separate...

The Second Anonymous Continuation of the Crowland Abbey Chronicle 1459-86 Revisited (2007)

Hicks, Michael

The most important narrator of Yorkist politics is the Second Anonymous Continuation of the chronicle of Crowland Abbey. Hence Yorkist historians need to understand the chronicle and the chronicler...

Mutatis Mutandis: safe and predictable dynamic software updating (2007)

Bierman, Gavin, Neamtiu, Iulian, Hicks, Michael, Sewell, Peter, Stoyle, Gareth

http://portal.acm.org/ft_gateway.cfm?id=1255455&type=pdf&coll=portal&dl=ACM&CFID=381409&CFTOKEN=93597745This article presents Proteus, a core calculus that models dynamic software updating, a service...

Verified enforcement of security policies for cross-domain information flows (2007)

Nikhil Swamy, Michael Hicks

analysis to show that security-critical programs, such as cross-domain guards, correctly enforce crossdomain security policies. We are enhancing existing techniques from the field of...

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING 1 Modular Information Hiding and Type-Safe Linking for C (2007)

Saurabh Srivastava, Michael Hicks, Jeffrey S. Foster, Patrick Jenkins

This paper presents CMOD, a novel tool that provides a sound module system for C. CMOD works by enforcing a set of four rules that are based on principles of modular reasoning and on current...

Defeating Script Injection Attacks with Browser-Enforced Embedded Policies (2007)

Trevor Jim, Nikhil Swamy, Michael Hicks

Web sites that accept and display content such as wiki articles or comments typically filter the content to prevent injected script code from running in browsers that view the site. The diversity of...

Defeating Script Injection Attacks with Browser Enforced Embedded Policies (2006)

Trevor, Jim, Swamy, Nikhil, Hicks, Michael

Web sites that accept and display content such as wiki articles or comments typically filter the content to prevent injected script code from running in browsers that view the site. The diversity of...

Defeating Script Injection Attacks with Browser Enforced Embedded Policies (2006)

Trevor, Jim, Swamy, Nikhil, Hicks, Michael

Web sites that accept and display content such as wiki articles or comments typically filter the content to prevent injected script code from running in browsers that view the site. The diversity of...

Lock Inference for Atomic Sections (2006)

Hicks, Michael, Foster, Jeffrey S., Pratikakis, Polyvios

To prevent unwanted interactions in multithreaded programs, programmers have traditionally employed pessimistic, blocking concurrency primitives. Using such primitives correctly and efficiently is...

Locksmith: Context-Sensitive Correlation Analysis for Race Detection (2006)

Pratikakis, Polyvios, Foster, Jeffrey S., Hicks, Michael

One common technique for preventing data races in multi-threaded programs is to ensure that all accesses to shared locations are consistently protected by a lock. We present a tool called Locksmith...

Locksmith: Context-Sensitive Correlation Analysis for Race Detection (2006)

Pratikakis, Polyvios, Foster, Jeffrey S., Hicks, Michael

One common technique for preventing data races in multi-threaded programs is to ensure that all accesses to shared locations are consistently protected by a lock. We present a tool called Locksmith...

Practical Dynamic Software Updating for C (2006)

Neamtiu, Iulian, Hicks, Michael, Stoyle, Gareth, Oriol, Manuel

Software updates typically require stopping and restarting an application, but many systems cannot afford to halt service, or would prefer not to. Dynamic software updating (DSU) addresses this...

Practical Dynamic Software Updating for C (2006)

Neamtiu, Iulian, Hicks, Michael, Stoyle, Gareth, Oriol, Manuel

Software updates typically require stopping and restarting an application, but many systems cannot afford to halt service, or would prefer not to. Dynamic software updating (DSU) addresses this...

Managing policy updates in security-typed languages (2006)

Nikhil Swamy, Michael Hicks

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Managing policy updates in security-typed languages (2006)

Nikhil Swamy, Michael Hicks

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Managing Policy Updates in Security-Typed Languages (2006)

Nikhil Swamy Michael, Michael Hicks

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Safe manual memory management in Cyclone (2006)

Nikhil Swamy, Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate how to make a low-level C-like language safe. Our most difficult challenge has been providing programmers control over memory management while...

Managing policy updates in security-typed languages (2006)

Nikhil Swamy, Michael Hicks

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Managing policy updates in security-typed languages (2006)

Nikhil Swamy, Michael Hicks

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Practical dynamic software updating for c (2006)

Iulian Neamtiu, Michael Hicks, Gareth Stoyle, Manuel Oriol

Software updates typically require stopping and restarting an application, but many systems cannot afford to halt service, or would prefer not to. Dynamic software updating (DSU) addresses this...

Practical dynamic software updating for c (2006)

Iulian Neamtiu, Michael Hicks, Gareth Stoyle, Manuel Oriol

Software updates typically require stopping and restarting an application, but many systems cannot afford to halt service, or would prefer not to. Dynamic software updating (DSU) addresses this...

Transportation and Infrastructure, Retail Clustering, and Local Public Finance: Evidence from Wal-Mart's Expansion (2006)

Hicks, Michael

The author examines the role highway infrastructure and local property tax rate variability play in retail agglomeration in Indiana from 1988 through 2003. To account for data errors and the...

Managing policy updates in security-typed languages (2006)

Nikhil Swamy, Michael Hicks, Stephen Tse, Steve Zdancewic

This paper presents RX, a new security-typed programming language with features intended to make the management of information-flow policies more practical. Security labels in RX, in contrast to...

Existential Label Flow Inference via CFL Reachability (2005)

Pratikakis, Polyvios, Hicks, Michael, Foster, Jeffrey S.

Label flow analysis is a fundamental static analysis problem with a wide variety of applications. Previous work by Mossin developed a polynomial time subtyping-based label flow inference that...

Existential Label Flow Inference via CFL Reachability (2005)

Pratikakis, Polyvios, Hicks, Michael, Foster, Jeffrey S.

Label flow analysis is a fundamental static analysis problem with a wide variety of applications. Previous work by Mossin developed a polynomial time subtyping-based label flow inference that...

HEXPAK – A FLEXIBLE, SCALABLE ARCHITECTURE FOR RESPONSIVE SPACECRAFT (2005)

Michael Hicks, Michael Enoch, Larry Capots, Michael Hicks, Michael Enoch, Larry Capots

HexPak 2 is a deployable space structure that provides the characteristics essential for successful responsive space missions, including ease of scalability, a geometry naturally adapted for...

Tagged sets: A secure and transparent coordination medium (2005)

Manuel Oriol, Michael Hicks

Abstract. A simple and effective way of coordinating distributed, mobile, and parallel applications is to use a virtual shared memory (VSM), such as a Linda tuple-space. In this paper, we propose a...

Existential Label Flow Inference via CFL Reachability (2005)

Polyvios Pratikakis, Michael Hicks, Jeffrey S. Foster

Label flow analysis is a fundamental static analysis problem with a wide variety of applications. Previous work by Mossin developed a polynomial time subtyping-based label flow inference that...

Mutatis Mutandis: Safe and predictable dynamic software updating (2005)

Gareth Stoyle, Michael Hicks, Gavin Bierman, Peter Sewell

This article presents Proteus, a core calculus that models dynamic software updating, a service for fixing bugs and adding features to a running program. Proteus permits a program’s type structure...

Existential Label Flow Inference via CFL Reachability (2005)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks

Abstract. In programming languages, existential quantification is useful for describing relationships among members of a structured type. For example, we may have a list in which there exists some...

Mutatis Mutandis: Safe and predictable dynamic software updating (2005)

Gareth Stoyle, Michael Hicks, Gavin Bierman, Peter Sewell

This paper presents Proteus, a core calculus that models dynamic software updating, a service for fixing bugs and adding features to a running program. Proteus permits a program’s type structure to...

Mutatis Mutandis: (2005)

Safe And Predictable, Gareth Stoyle, Michael Hicks, Gavin Bierman, Peter Sewell, Iulian Neamtiu

Dynamic software updates can be used to fix bugs or add features to a running program without downtime. Essential for some applications and convenient for others, low-level dynamic updating has been...

Dynamic updating of information-flow policies (2005)

Michael Hicks, Stephen Tse, Boniface Hicks, Steve Zdancewic

Applications that manipulate sensitive information should ensure end-to-end security by satisfying two properties: sound execution and some form of noninterference. By the former, we mean the program...

Existential Label Flow Inference via CFL Reachability (2005)

Polyvios Pratikakis, Jeffrey S. Foster, Michael Hicks

Abstract. In programming languages, existential quantification is useful for describing relationships among members of a structured type. For example, we may have a list in which there exists some...

Existential Label Flow Inference via CFL Reachability (2005)

Polyvios Pratikakis, Michael Hicks, Jeffrey S. Foster

Label flow analysis is a fundamental static analysis problem with a wide variety of applications. Previous work by Mossin developed a polynomial time subtyping-based label flow inference that...

Tagged sets: A secure and transparent coordination medium (2005)

Manuel Oriol, Michael Hicks

Abstract. A simple and effective way of coordinating distributed, mobile, and parallel applications is to use a virtual shared memory (VSM), such as a Linda tuple-space. In this paper, we propose a...

Tumbling asteroids (2004)

Pravec, Petr, Harris, Alan W., Scheirich, P., Kušnirák, P., Šarounová, L., Hergenrother, Cark W., ...

We present both a review of earlier data and new results on non-principal axis rotators (tumblers) among asteroids. Among new tumblers found, the best data we have are for 2002 TD60, 2000WL107, and...

Transparent Proxies for Java Futures (2004)

Pratikakis, Polyvios, Spacco, Jaime, Hicks, Michael

A proxy object is a surrogate or placeholder that controls access to another target object. Proxies can be used to support distributed programming, lazy or parallel evaluation, access control, and...

Transparent Proxies for Java Futures (2004)

Pratikakis, Polyvios, Spacco, Jaime, Hicks, Michael

A proxy object is a surrogate or placeholder that controls access to another target object. Proxies can be used to support distributed programming, lazy or parallel evaluation, access control, and...

Transparent proxies for java futures (2004)

Polyvios Pratikakis, Michael Hicks, Jaime Spacco

A proxy object is a surrogate or placeholder that controls access to another target object. Proxies can be used to support distributed programming, lazy or parallel evaluation, access control, and...

Transparent Proxies for Java Futures (2004)

Polyvios Pratikakis, Michael Hicks, Jaime Spacco

A proxy object is a surrogate or placeholder that controls access to another target object. Proxies can be used to support distributed programming, lazy or parallel evaluation, access control, and...

Dynamic Rebinding for Marshalling and Update, with Destruct-time λ (2004)

Gavin Bierman, Gavin Bierman, Michael Hicks, Michael Hicks, Peter Sewell, Peter Sewell, ...

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Advisory Committee: (2004)

Jeremy Manson, Michael Hicks, Pete Keleher, Adam Porter, William Pugh Chair/advisor, ...

After many years, support for multithreading has been integrated into main-stream programming languages. Inclusion of this feature brings with it a need for a clear and direct explanation of how...

Experience with safe manual memory-management in Cyclone (2004)

Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate type safety for lowlevel languages such as C. Our most difficult challenge has been providing programmers control over memory management while...

Transparent proxies for java futures (2004)

Polyvios Pratikakis, Michael Hicks, Jaime Spacco

A proxy object is a surrogate or placeholder that controls access to another target object. Proxies can be used to support distributed programming, lazy or parallel evaluation, access control, and...

Experience with safe manual memory-management in Cyclone (2004)

Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate type safety for lowlevel languages such as C. Our most difficult challenge has been providing programmers control over memory management while...

Experience with safe manual memory-management in Cyclone (2004)

Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

The goal of the Cyclone project is to investigate type safety for low-level languages such as C. Our hardest challenge has been providing programmers control over memory management while retaining...

A Secure PLAN (2003)

Hicks, Michael, Keromytis, Angelos D, Smith, Jonathan M

Active networks, being programmable, promise greater flexibility than current networks. Programmability, however, may introduce safety and security risks. This correspondence describes the design and...

Safe and Flexible Memory Management in Cyclone (2003)

Hicks, Michael, Morrisett, Greg, Grossman, Dan, Jim, Trevor

Cyclone is a type-safe programming language intended for applications requiring control over memory management. Our previous work on Cyclone included support for stack allocation, lexical region...

Safe and Flexible Memory Management in Cyclone (2003)

Hicks, Michael, Morrisett, Greg, Grossman, Dan, Jim, Trevor

Cyclone is a type-safe programming language intended for applications requiring control over memory management. Our previous work on Cyclone included support for stack allocation, lexical region...

User-specified adaptive scheduling in a streaming media network (2003)

Michael Hicks, Adithya Nagarajan, Robbert Renesse

Abstract — In disaster and combat situations, mobile cameras and other sensors transmit real-time data, used by many operators or analysis tools. Unfortunately, in the face of limited, unreliable...

User-specified adaptive scheduling in a streaming media network (2003)

Michael Hicks, Adithya Nagarajan, Robbert Renesse

In disaster and combat situations, mobile cameras and other sensors transmit real-time data, used by many operators and/or analysis tools. Unfortunately, in the face of limited, unreliable resources,...

User-specified adaptive scheduling in a streaming media network (2003)

Michael Hicks, Adithya Nagarajan, Robbert Renesse

Abstract — In disaster and combat situations, mobile cameras and other sensors transmit real-time data, used by many operators or analysis tools. Unfortunately, in the face of limited, unreliable...

Dynamic rebinding for marshalling and update, with destruct-time λ (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Dynamic Rebinding for Marshalling and Update, with Destruct-time λ (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Dynamic Rebinding for Marshalling and Update, (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Dynamic Rebinding for Marshalling and Update, with Destruct-time (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Formalizing Dynamic Software Updating (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle

Dynamic software updating (DSU) enables running programs to be updated with new code and data without interrupting their execution. A number of DSU systems have been designed, but there is still...

Dynamic Rebinding for Marshalling and Update, (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

Safe and flexible memory management in Cyclone (2003)

Michael Hicks, Greg Morrisett, Dan Grossman, Trevor Jim

Cyclone is a type-safe programming language intended for applications requiring control over memory management. Our previous work on Cyclone included support for stack allocation, lexical region...

Dynamic Rebinding for Marshalling and Update, with Destruct-time λ (2003)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises, for example...

User-specified adaptive scheduling in a streaming media network (2003)

Michael Hicks, Robbert Van Renesse, Mark Bickford, Robert Constable, Christoph Kreitz, Lori Lorigo

In disaster and combat situations, mobile cameras and other types of sensors transmit real-time data, used by many operators and/or analysis tools. Unfortunately, in the face of limited, unreliable...

A Secure PLAN (Extended Version) (2002)

Hicks, Michael, Keromytis, Angelos D, Smith, Jonathan M

Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

Region-based memory management in Cyclone (2002)

Dan Grossman, Greg Morrisett, Trevor Jim, Michael Hicks, Yanling Wang, James Cheney

Cyclone is a type-safe programming language derived from C. The primary design goal of Cyclone is to let programmers control data representation and memory management without sacrificing type-safety....

Region-based memory management in Cyclone (2002)

Dan Grossman, Greg Morrisett, Trevor Jim, Michael Hicks, Yanling Wang, James Cheney

Cyclone is a type-safe programming language derived from C. The primary design goal of Cyclone is to let programmers control data representation and memory management without sacrificing type-safety....

Experiences with capsule-based active networking (2002)

Michael Hicks, Jonathan T. Moore, Scott Nettles, David Wetherall

Active Networking adds programmability to the elements of the network, most aggressively by using programmable packets, or capsules. ANTS [1, 2] and PLANet [3, 4] are the most mature examples of...

Cyclone: A safe dialect of C (2002)

Trevor Jim, Greg Morrisett, Dan Grossman, Michael Hicks, James Cheney, Yanling Wang

Cyclone is a safe dialect of C. It has been designed from the ground up to prevent the bu#er overflows, format string attacks, and memory management errors that are common in C programs, while...

Experiences with Capsule-based Active Networking (2002)

Michael Hicks, Jonathan T. Moore, Scott Nettles, David Wetherall

Active Networking adds programmability to the elements of the network, most aggressively by using programmable packets, or capsules. ANTS [1], [2] and PLANet [3], [4] are the most mature examples of...

Dynamic Rebinding for Distributed Programming (2002)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle, Keith Wansbrough

Most programming languages adopt static binding, but for distributed programming an exclusive reliance on static binding is too restrictive: dynamic binding is required in various guises. Typically...

A Secure PLAN (Extended Version) (2002)

Michael Hicks Computer, Michael Hicks, Angelos D. Keromytis, Jonathan M. Smith

Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

Cyclone User's Manual, Version 0.1.3 (2001)

Grossman, Dan, Jim, Trevor, Hicks, Michael, Wang, Yanling, Cheney, James

The current version of this manual should be available at http://www.cs.cornell.edu/projects/cyclone/ and http://www.research.att.com/projects/cyclone/. The version here describes Cyclone Version...

Cyclone User's Manual, Version 0.1.3 (2001)

Grossman, Dan, Jim, Trevor, Hicks, Michael, Wang, Yanling, Cheney, James

The current version of this manual should be available at http://www.cs.cornell.edu/projects/cyclone/ and http://www.research.att.com/projects/cyclone/. The version here describes Cyclone Version...

A Calculus for Dynamic Loading (2001)

Hicks, Michael, Weirich, Stephanie C

We present the load-calculus, used to model dynamic loading, and prove it sound. The calculus extends the polymorphic λ-calculus with a load primitive that dynamically loads terms that are closed,...

pland: The PLAN Active Router \Lambda for PLAN version 3.1 (2001)

Michael Hicks

Synopsis pland [-router] [-firewall d1,d2,...,dn] [-l log] [-ip port]

COPYRIGHT (2001)

Michael Hicks, Scott M. Nettles, Val Tannen, Michael Hicks

This dissertation, while an achievement that bears my name, would not have been possible without the help of others, who I would now like to thank. First and foremost, I thank God. He has been a...

Dynamic software updating (2001)

Michael Hicks, Jonathan T. Moore, Scott Nettles

Many important applications must run continuously and without interruption, yet must be changed to x bugs or upgrade functionality. No prior general-purpose methodology for dynamic updating achieves...

Dynamic software updating (2001)

Michael Hicks, Jonathan T. Moore, Scott Nettles

Many important applications must run continuously and without interruption, yet must be changed to x bugs or upgrade functionality. To date, no existing dynamic updating system has achieved a...

Practical programmable packets (2001)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Abstract--- We present SNAP (Safe and Nimble Active Packets), a new scheme for programmable (or active) packets centered around a new lowlevel packet language. Unlike previous active packet...

COPYRIGHT (2001)

Scott M. Nettles, Val Tannen, Michael Hicks, Michael Hicks

This dissertation, while an achievement that bears my name, would not have been possible without the help of others, who I would now like to thank. First and foremost, I thank God. He has been a...

Practical Programmable Packets (2001)

Jonathan Moore Michael, Michael Hicks, Scott Nettles

We present SNAP (Safe and Nimble Active Packets), a new scheme for programmable (or active) packets centered around a new low-level packet language. Unlike previous active packet approaches, SNAP is...

Practical Programmable Packets (2001)

Jonathan Moore Michael, Michael Hicks, Scott Nettles

We present SNAP (Safe and Nimble Active Packets), a new scheme for programmable (or active) packets centered around a new low-level packet language. Unlike previous active packet approaches, SNAP is...

Dynamic software updating (2001)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle

Dynamic software updating (DSU) enables running programs to be updated with new code and data without interrupting their execution. A number of DSU systems have been designed, but there is still...

Dynamic software updating (2001)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle

Dynamic software updating (DSU) enables running programs to be updated with new code and data without interrupting their execution. A number of DSU systems have been designed, but there is still...

Dynamic software updating (2001)

Gavin Bierman, Michael Hicks, Peter Sewell, Gareth Stoyle

Dynamic software updating (DSU) enables running programs to be updated with new code and data without interrupting their execution. A number of DSU systems have been designed, but there is still...

Practical Programmable Packets (2001)

Jonathan Moore Michael, Michael Hicks, Scott Nettles

We present SNAP (Safe and Nimble Active Packets), a new scheme for programmable (or active) packets centered around a new lowlevel packet language. Unlike previous active packet approaches, SNAP is...

Agents in Network Management (2000)

Ertugay, Osman, Hicks, Michael, Smith, Jonathan M, Kornblum, Jessica

The ubiquity and complexity of modern networks require automated management and control. With increases in scale, automated solutions based on simple data access models such as SNMP will give way to...

Practical Programmable Packets (2000)

Moore, Jonathan T, Hicks, Michael, Nettles, Scott

We present SNAP (Safe and Nimble Active Packets), a new scheme for programmable (or active) packets centered around a new lowlevel packet language. Unlike previous active packet approaches, SNAP is...

Safe and Flexible Dynamic Linking of Native Code (2000)

Crary, Karl, Hicks, Michael, Weirich, Stephanie C

We present the design and implementation of a framework for flexible and safe dynamic linking of native code. Our approach extends Typed Assembly Language with a primitive for loading and...

Safe and flexible dynamic linking of native code (2000)

Michael Hicks, Stephanie Weirich, Karl Crary

Abstract. We present the design and implementation of the first complete framework for flexible and safe dynamic linking of native code. Our approach extends Typed Assembly Language with a primitive...

A calculus for dynamic loading (2000)

Michael Hicks, Stephanie Weirich

A calculus for dynamic loading is presented and proved sound. The calculus extends the polymorphic -calculus with a load primitive that dynamically loads terms that are closed, with respect to...

Safe and Flexible Dynamic Linking of Native Code (2000)

Karl Crary, Michael Hicks, Stephanie Weirich

We present the design and implementation of a framework for flexible and safe dynamic linking of native code. Our approach extends Typed Assembly Language with a typechecking primitive, which is...

Safe and Flexible Dynamic Linking of Native Code (2000)

Michael Hicks, Stephanie Weirich, Karl Crary

We present the design and implementation of the first complete framework for exible and safe dynamic linking of native code. Our approach extends Typed Assembly Language with a primitive for loading...

Safe and flexible dynamic linking of native code (2000)

Michael Hicks, Stephanie Weirich, Karl Crary

Abstract. We present the design and implementation of the first complete framework for flexible and safe dynamic linking of native code. Our approach extends Typed Assembly Language with a primitive...

Chunks in PLAN: Language Support for Programs as Packets (1999)

Moore, Jonathan T, Hicks, Michael, Nettles, Scott

Chunks are a programming construct in PLAN, the Packet Language for Active Networks, comprised of a code segment and a suspended function call. In PLAN, chunks provide support for encapsulation and...

A Secure Plan (1999)

Hicks, Michael, Keromytis, Angelos D

Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

A secure PLAN (1999)

Michael Hicks, Angelos D. Keromytis

Abstract. Active Networks promise greater exibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and...

A secure PLAN (1999)

Michael Hicks, Angelos D. Keromytis, Jonathan M. Smith

Abstract—Active networks, being programmable, promise greater flexibility than current networks. Programmability, however, may introduce safety and security risks. This correspondence describes the...

A secure PLAN (1999)

Michael Hicks, Angelos D. Keromytis

Abstract. Active Networks promise greater exibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and...

PLANet: an Active Internetwork (1999)

Michael Hicks, Jonathan T. Moore, D. Scott Alex, Carl A. Gunter, Scott M. Nettles

We present PLANet: an active network architecture and implementation. In addition to a standard suite of Internetlike services, PLANet has two key programmability features: 1. all packets contain...

Dynamic Software Updating (1999)

Michael Hicks

A dynamically updateable system may be changed at runtime to add or alter functionality for the purpose of bug-fixes, improved efficiency, or customizability. We propose to improve on the practice of...

Transparent Communication for Distributed Objects in Java (1999)

Michael Hicks Suresh, Michael Hicks, Suresh Jagannathan, Richard Kelsey, Jonathan T. Moore, Cristian Ungureanu

We describe a native-code implementation of Java that supports distributed objects. In order to foster the correctness of distributed programs, remote access is syntactically and semantically...

Transparent Communication for Distributed Objects in Java (1999)

Michael Hicks, Suresh Jagannathan, Richard Kelsey, Jonathan T. Moore, Cristian Ungureanu

We describe a native-code implementation of Java that supports distributed objects. In order to foster the correctness of distributed programs, remote access is syntactically and semantically...

Chunks in PLAN: Language Support for Programs as Packets (1999)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Chunks are a programming construct in PLAN, the Packet Language for Active Networks, comprised of a code segment and a suspended function call. In PLAN, chunks provide support for encapsulation and...

A Secure Plan (1999)

Michael Hicks, Angelos D. Keromytis

. Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

PLANet: An Active Internetwork (1999)

Michael Hicks, Jonathan T. Moore, D. Scott Alex, Carl A. Gunter, Scott M. Nettles

We present PLANet: an active network architecture and implementation. In addition to a standard suite of Internet-like services, PLANet has two key programmability features: 1. all packets contain...

Transparent Communication for Distributed Objects in Java (1999)

Michael Hicks Suresh, Michael Hicks, Suresh Jagannathan, Richard Kelsey, Jonathan T. Moore, Cristian Ungureanu

We describe a native-code implementation of Java that supports distributed objects. In order to foster the correctness of distributed programs, remote access is syntactically and semantically...

PLANet: An Active Internetwork (1999)

Michael Hicks, Jonathan T. Moore, D. Scott Alex, Carl A. Gunter, Scott M. Nettles

We present PLANet: an active network architecture and implementation. In addition to a standard suite of Internet-like services, PLANet has two key programmability features: 1. all packets contain...

Chunks in PLAN: Language Support for Programs as Packets (1999)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Chunks are a programming construct in PLAN, the Packet Language for Active Networks, comprised of a code segment and a suspended function call. In PLAN, chunks provide support for encapsulation and...

A Secure Plan (1999)

Michael Hicks, Angelos D. Keromytis

. Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

A Taxonomy of Active Code (1999)

D. Scott Alexander, Michael Hicks, Angelos D. Keromytis, Jonathan T. Moore, Scott M. Nettles, Jonathan M. Smith

. We have developed a classification of active networking architectures which includes active packets and active extensions. This taxonomy is based on the nature of the programs used by programmers....

A Secure PLAN (1999)

Michael Hicks, Angelos D. Keromytis

Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

A Secure PLAN (1999)

Michael Hicks, Angelos D. Keromytis

Active Networks promise greater flexibility than current networks, but threaten safety and security by virtue of their programmability. In this paper, we describe the design and implementation of a...

PLAN Security System (1998)

Hicks, Michael

Active Networks offer the ability to program the network on a per-router, per-user, or even per-packet basis. Unfortunately, this added programmability compromises the security of the system by...

Types and Intermediate Representations (1998)

Hicks, Michael

The design objectives and the mechanisms for achieving those objectives are considered for each of three systems, Java, Erlang, and TIL. In particular, I examine the use of types and intermediate...

1 Introduction PLAN System Security (1998)

Michael Hicks

Active Networks o er the ability to program the network on a per-router, per-user, or even

PLAN System Security (1998)

Michael Hicks July, Michael Hicks

This paper presents a series of additions and changes to the PLAN system to implement this security architecture. In particular, we desire to

PLAN: A Packet Language for Active Networks (1998)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

PLAN (Packet Language for Active Networks) is a new language for programs that form the packets of a programmable network. These programs replace the packet headers (which can be viewed as very...

A Study of Large Object Spaces (1998)

Michael Hicks, Luke Hornof, Jonathan T. Moore, Scott M. Nettles

This paper examines the design space for copying garbage collectors (GCs) in which "large objects" are managed in a separate, non-copy-collected space. We focus on two main issues: 1. how...

A Study of Large Object Spaces (1998)

Michael Hicks, Luke Hornof, Jonathan T. Moore, Scott M. Nettles

This paper surveys the LOS design space, and identifies a wide variety of issues that might affect their design. It then places the literature into this framework. The main contribution of the paper...

Network Programming Using PLAN (1998)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

. We present here a methodology for programming active networks in the environment defined by our new language PLAN (Packet Language for Active Networks). This environment presumes a two-level...

PLAN: A Programming Language for Active Networks (1998)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

PLAN (Programming Language for Active Networks) is a new language for programs that are carried in the packets of a programmable network. PLAN programs replace the packet headers (which can be viewed...

Network programming using PLAN (1998)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

fmwh�pankaj�jonm�gunter�nettlesg�dsl.cis.upenn.edu Abstract. We present here a methodology for programming active net� works in the environment de�ned by our new language PLAN �Packet...

PLAN: A packet language for active networks (1998)

Michael Hicks, Pankaj Kakkar, Jonathan T. Moore, Carl A. Gunter, Scott Nettles

PLAN (Packet Language for Active Networks) is a new language for programs that form the packets of a programmable network. These programs replace the packet headers (which can be viewed as very...

A Service Layer Routing Protocol for PLAN (1997)

Michael Hicks

1 Introduction PLAN (Programming Language for Active Networks) is designed to offer greater networking flexibility by providing the means to execute packet-carried programs in the network...

General-purpose persistence using flash memory (1997)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Flash memory is a solid-state semiconductor memory technology that has interesting price, performance, and semantic tradeoffs. We've developed Gordon, a generalpurpose persistence system for...

General-Purpose Persistence Using Flash Memory (1997)

Jonathan T. Moore, Michael Hicks, Scott Nettles

Flash memory is a semiconductor memory technology that has interesting price, performance, and semantic tradeoffs. We have developed Gordon, a general-purpose persistence system for Standard ML that...

The Measured Cost of Copying Garbage Collection Mechanisms (1997)

Michael Hicks, Jonathan T. Moore, Scott M. Nettles

We examine the costs and benefits of a variety of copying garbage collection (GC) mechanisms across multiple architectures and programming languages. Our study covers both low-level object...

The Measured Cost of Copying Garbage Collection Mechanisms (1997)

Michael Hicks, Jonathan T. Moore, Scott M. Nettles

We examine the costs and benefits of a variety of copying garbage collection (GC) mechanisms across multiple architectures and programming languages. Our study covers both low-level object...

Design of a steel piled pier with a timber deck /--by Michael Hicks. (1989)

Hicks, Michael.

Thesis (M. Eng.)--California Polytechnic State University, 1989.

Transportation and Infrastructure, Retail Clustering, and Local Public Finance: Evidence from Wal-Mart's Expansion

Hicks, Michael

The author examines the role highway infrastructure and local property tax rate variability play in retail agglomeration in Indiana from 1988 through 2003. To account for data errors and the...

Wal-Mart’s Impact on Local Revenue and Expenditure Instruments in Ohio, 1988–2003

Michael Hicks

This research estimates fiscal impacts of Wal-Mart in Ohio from 1985 through 2003. Using a panel of counties, and accounting for spatial autocorrelation in an instrumental variable model I estimate...

Differential expectations in monetary theory /

Hicks, Michael.

Thesis (Ph. D.)--Harvard University, 1975.

Warfare, Civil Conflict and the Spatial Impacts on Domestic Investment: Evidence from South America, 1950-2000

Michael Hicks

This paper reports the effect of intra and international conflict on domestic investment in South America from 1950-2000. We combine data from the Penn World Table 6.1 and the Militarized Interstate...