4 Search Results for "Lieberman, Henry"


Document
Garbage-Free Abstract Interpretation Through Abstract Reference Counting

Authors: Noah Van Es, Quentin Stiévenart, and Coen De Roover

Published in: LIPIcs, Volume 134, 33rd European Conference on Object-Oriented Programming (ECOOP 2019)


Abstract
Abstract garbage collection is the application of garbage collection to an abstract interpreter. Existing work has shown that abstract garbage collection can improve both the interpreter’s precision and performance. Current approaches rely on heuristics to decide when to apply abstract garbage collection. Garbage will build up and impact precision and performance when the collection is applied infrequently, while too frequent applications will bring about their own performance overhead. A balance between these tradeoffs is often difficult to strike. We propose a new approach to cope with the buildup of garbage in the results of an abstract interpreter. Our approach is able to eliminate all garbage, therefore obtaining the maximum precision and performance benefits of abstract garbage collection. At the same time, our approach does not require frequent heap traversals, and therefore adds little to the interpreters’s running time. The core of our approach uses reference counting to detect and eliminate garbage as soon as it arises. However, reference counting cannot deal with cycles, and we show that cycles are much more common in an abstract interpreter than in its concrete counterpart. To alleviate this problem, our approach detects cycles and employs reference counting at the level of strongly connected components. While this technique in general works for any system that uses reference counting, we argue that it works particularly well for an abstract interpreter. In fact, we show formally that for the continuation store, where most of the cycles occur, the cycle detection technique only requires O(1) amortized operations per continuation push. We present our approach formally, and provide a proof-of-concept implementation in the Scala-AM framework. We empirically show our approach achieves both the optimal precision and significantly better performance compared to existing approaches to abstract garbage collection.

Cite as

Noah Van Es, Quentin Stiévenart, and Coen De Roover. Garbage-Free Abstract Interpretation Through Abstract Reference Counting. In 33rd European Conference on Object-Oriented Programming (ECOOP 2019). Leibniz International Proceedings in Informatics (LIPIcs), Volume 134, pp. 10:1-10:33, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2019)


Copy BibTex To Clipboard

@InProceedings{vanes_et_al:LIPIcs.ECOOP.2019.10,
  author =	{Van Es, Noah and Sti\'{e}venart, Quentin and De Roover, Coen},
  title =	{{Garbage-Free Abstract Interpretation Through Abstract Reference Counting}},
  booktitle =	{33rd European Conference on Object-Oriented Programming (ECOOP 2019)},
  pages =	{10:1--10:33},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-111-5},
  ISSN =	{1868-8969},
  year =	{2019},
  volume =	{134},
  editor =	{Donaldson, Alastair F.},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2019.10},
  URN =		{urn:nbn:de:0030-drops-108022},
  doi =		{10.4230/LIPIcs.ECOOP.2019.10},
  annote =	{Keywords: abstract interpretation, abstract garbage collection, reference counting}
}
Document
Adaptive Context-sensitive Analysis for JavaScript

Authors: Shiyi Wei and Barbara G. Ryder

Published in: LIPIcs, Volume 37, 29th European Conference on Object-Oriented Programming (ECOOP 2015)


Abstract
Context sensitivity is a technique to improve program analysis precision by distinguishing between function calls. A specific context-sensitive analysis is usually designed to accommodate the programming paradigm of a particular programming language. JavaScript features both the object-oriented and functional programming paradigms. Our empirical study suggests that there is no single context-sensitive analysis that always produces precise results for JavaScript applications. This observation motivated us to design an adaptive analysis, selecting a context-sensitive analysis from multiple choices for each function. Our two-staged adaptive context-sensitive analysis first extracts function characteristics from an inexpensive points-to analysis and then chooses a specialized context-sensitive analysis per function based on the heuristics. The experimental results show that our adaptive analysis achieved more precise results than any single context-sensitive analysis for several JavaScript programs in the benchmarks.

Cite as

Shiyi Wei and Barbara G. Ryder. Adaptive Context-sensitive Analysis for JavaScript. In 29th European Conference on Object-Oriented Programming (ECOOP 2015). Leibniz International Proceedings in Informatics (LIPIcs), Volume 37, pp. 712-734, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2015)


Copy BibTex To Clipboard

@InProceedings{wei_et_al:LIPIcs.ECOOP.2015.712,
  author =	{Wei, Shiyi and Ryder, Barbara G.},
  title =	{{Adaptive Context-sensitive Analysis for JavaScript}},
  booktitle =	{29th European Conference on Object-Oriented Programming (ECOOP 2015)},
  pages =	{712--734},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-939897-86-6},
  ISSN =	{1868-8969},
  year =	{2015},
  volume =	{37},
  editor =	{Boyland, John Tang},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ECOOP.2015.712},
  URN =		{urn:nbn:de:0030-drops-52446},
  doi =		{10.4230/LIPIcs.ECOOP.2015.712},
  annote =	{Keywords: Context Sensitivity, JavaScript, Static Program Analysis}
}
Document
End-User Software Engineering Position Paper

Authors: Henry Lieberman

Published in: Dagstuhl Seminar Proceedings, Volume 7081, End-User Software Engineering (2007)


Abstract
End-user software engineering position paper.

Cite as

Henry Lieberman. End-User Software Engineering Position Paper. In End-User Software Engineering. Dagstuhl Seminar Proceedings, Volume 7081, p. 1, Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2007)


Copy BibTex To Clipboard

@InProceedings{lieberman:DagSemProc.07081.15,
  author =	{Lieberman, Henry},
  title =	{{End-User Software Engineering Position Paper}},
  booktitle =	{End-User Software Engineering},
  pages =	{1--1},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2007},
  volume =	{7081},
  editor =	{Margaret H. Burnett and Gregor Engels and Brad A. Myers and Gregg Rothermel},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.07081.15},
  URN =		{urn:nbn:de:0030-drops-10920},
  doi =		{10.4230/DagSemProc.07081.15},
  annote =	{Keywords: End-user programming}
}
Document
Semantics for the Web (Dagstuhl Seminar 00121)

Authors: Dieter Fensel, Jim Hendler, Henry Lieberman, and Wolfgang Wahlster

Published in: Dagstuhl Seminar Reports. Dagstuhl Seminar Reports, Volume 1 (2021)


Abstract

Cite as

Dieter Fensel, Jim Hendler, Henry Lieberman, and Wolfgang Wahlster. Semantics for the Web (Dagstuhl Seminar 00121). Dagstuhl Seminar Report 269, pp. 1-19, Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2000)


Copy BibTex To Clipboard

@TechReport{fensel_et_al:DagSemRep.269,
  author =	{Fensel, Dieter and Hendler, Jim and Lieberman, Henry and Wahlster, Wolfgang},
  title =	{{Semantics for the Web (Dagstuhl Seminar 00121)}},
  pages =	{1--19},
  ISSN =	{1619-0203},
  year =	{2000},
  type = 	{Dagstuhl Seminar Report},
  number =	{269},
  institution =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemRep.269},
  URN =		{urn:nbn:de:0030-drops-151547},
  doi =		{10.4230/DagSemRep.269},
}
  • Refine by Author
  • 2 Lieberman, Henry
  • 1 De Roover, Coen
  • 1 Fensel, Dieter
  • 1 Hendler, Jim
  • 1 Ryder, Barbara G.
  • Show More...

  • Refine by Classification
  • 1 Theory of computation → Program analysis

  • Refine by Keyword
  • 1 Context Sensitivity
  • 1 End-user programming
  • 1 JavaScript
  • 1 Static Program Analysis
  • 1 abstract garbage collection
  • Show More...

  • Refine by Type
  • 4 document

  • Refine by Publication Year
  • 1 2000
  • 1 2007
  • 1 2015
  • 1 2019

Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail