Adrienne G. Bloss

dblp:28/6773 · DBLP profile ↗
← Back
4ranked-venue papers
2as first author
0since 2021 · last 2003
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1Applied, interdisciplinary, general and emerging computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Program analysis · 52% Programming languages and type systems · 41% Compilers and program optimization · 7%

Topics — the 4 heaviest of 6, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › data flow analysis
path-sensitive analysis
0.011994
Path Analysis and the Optimization of Nonstrict Functional Programs · ACM Trans. Program. Lang. Syst. 1994
Program analysis › static analysis › abstract interpretation
strictness analysis
0.011994
Path Analysis and the Optimization of Nonstrict Functional Programs · ACM Trans. Program. Lang. Syst. 1994
Programming languages and type systems › computational effects
destructive update
0.011985
The Aggregate Update Problem in Functional Programming Systems · POPL 1985
Programming languages and type systems
functional programming
0.011985
The Aggregate Update Problem in Functional Programming Systems · POPL 1985

Methods — techniques the papers use, named apart from their topics

path semantics · 0.0abstract interpretation · 0.0
YearPublicationVenuePosition
2003 How departments are responding to the mathematics recommendations in CC2001
abstract
No abstract available.
William A. Marion, Adrienne G. Bloss, Kris D. Powers, Douglas Baldwin
SIGCSE2
1994 Path Analysis and the Optimization of Nonstrict Functional Programs
abstract
The functional programming style is increasingly popular in the research world, but functional languages still execute slowly relative to imperative languages. This is largely because the power and flexibility of functional languages restrict the amount of information readily available to the compiler, hindering its ability to generate good code. This article demonstrates that information aboutorder of evaluation of expressionscan be statically inferred for nonstrict functional programs and that optimizations based on this information can provide substantial speedups at runtime. We present an exact, nonstandard semantics calledpath semanticsthat models order of evaluation in a nonstrict, sequential functional language, and its computable abstraction,path analysis. We show how the information inferred by path analysis can be used to implement destructive aggregate updating, in which updates on functional aggregates that are provably not live are done destructively. We also demonstrate a new approach to strictness analysis and show that strictness analysis is subsumed by path analysis. Benchmarks are presented.
Adrienne G. Bloss
ACM Trans. Program. Lang. Syst.1
1989 An Optimising Compiler for a Modern Functional Language
abstract
One of the factor hindering the use of functional languages has been their relatively poor performance in comparison to more traditional languages such as C and Pascal. During the last decade tremendous progress has been made in building implementations of functional languages but the approaches adopted have employed specialist hardware and/or compiler optimisations that have been developed specifically for functional languages. Building specialist hardware may be the best long-term solution but in the short run it is possible to increase the use and acceptance of functional languages by exploiting the performance of commercially available machines. The goal of the project described in this paper has been to design an optimising compiler that produces fast code for functional languages on conventional sequential and parallel machines.
Adrienne G. Bloss, Paul Hudak
Comput. J.1
1985 The Aggregate Update Problem in Functional Programming Systems
abstract
We discuss the problem of efficiently implementing aggregates (contiguous data structures) such as arrays in functional programming systems. Simple changes to an aggregate conceptually involve making a new copy of the aggregate differing only in the changed component, but such copying can be expensive. We present both static and dynamic techniques for avoiding this copying, and argue that they allow one to program functionally using aggregates, without loss of efficiency over conventional programs.1
Paul Hudak, Adrienne G. Bloss
POPL2