Author image not provided
 Peter Thiemann

 homepage
 thiemannatacm.org

  Affiliation history
· Ludwig Maximilian University of Munich
· University of Tubingen
· University of Nottingham
· University of Freiburg
· Technische Universitat Bergakademie Freiberg
Bibliometrics: publication history
Average citations per article6.67
Citation Count707
Publication count106
Publication years1991-2016
Available for download43
Average downloads per article340.67
Downloads (cumulative)14,649
Downloads (12 Months)703
Downloads (6 Weeks)167
Professional ACM Member
SEARCH
ROLE
Arrow RightAuthor only
· Editor only
· Other only
· All roles


AUTHOR'S COLLEAGUES
See all colleagues of this author

SUBJECT AREAS
See all subject areas




BOOKMARK & SHARE


110 results found Export Results: bibtexendnoteacmrefcsv

Result 1 – 20 of 110
Result page: 1 2 3 4 5 6

Sort by:

1 published by ACM
Gradual session types
August 2017 Proceedings of the ACM on Programming Languages: Volume 1 Issue ICFP, September 2017
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 74,   Downloads (12 Months): 74,   Downloads (Overall): 74

Full text available: PDFPDF
Session types are a rich type discipline, based on linear types, that lift the sort of safety claims that come with type systems to communications. However, web-based applications and micro services are often written in a mix of languages, with type disciplines in a spectrum between static and dynamic typing. ...
Keywords: semantics, session types, gradual types, type checking

2
Partial Derivatives for Context-Free Languages
April 2017 Proceedings of the 20th International Conference on Foundations of Software Science and Computation Structures - Volume 10203
Publisher: Springer-Verlag New York, Inc.
Bibliometrics:
Citation Count: 0

We extend Antimirov's partial derivatives from regular expressions to $$\mu $$-regular expressions that describe context-free languages. We prove the correctness of partial derivatives as well as the finiteness of the set of iterated partial derivatives. The latter are used as pushdown symbols in our construction of a nondeterministic pushdown automaton, ...
Keywords: Pushdown automata, Regular languages, Automata and logic, Context-free languages, Derivatives

3 published by ACM
April 2017 SAC '17: Proceedings of the Symposium on Applied Computing
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 10,   Downloads (12 Months): 10,   Downloads (Overall): 10

Full text available: PDFPDF
We propose an extension of binary session types with interleaved sessions that work similar to interrupts. The participants in a session register a set of trigger predicates that are associated with local protocols. When a trigger fires, all participants switch simultaneously to the interleaved protocol and return to the original ...
Keywords: message-passing concurrency, session types

4 published by ACM
Context-free session types
September 2016 ICFP 2016: Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming
Publisher: ACM
Bibliometrics:
Citation Count: 2
Downloads (6 Weeks): 8,   Downloads (12 Months): 122,   Downloads (Overall): 122

Full text available: PDFPDF
Session types describe structured communication on heterogeneously typed channels at a high level. Their tail-recursive structure imposes a protocol that can be described by a regular language. The types of transmitted values are drawn from the underlying functional language, abstracting from the details of serializing values of structured data types. ...
Keywords: type checking, semantics, session types
Also published in:
December 2016  ACM SIGPLAN Notices - ICFP '16: Volume 51 Issue 9, September 2016

5 published by ACM
Blame assignment for higher-order contracts with intersection and union
August 2015 ICFP 2015: Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming
Publisher: ACM
Bibliometrics:
Citation Count: 3
Downloads (6 Weeks): 1,   Downloads (12 Months): 26,   Downloads (Overall): 173

Full text available: PDFPDF
We present an untyped calculus of blame assignment for a higher-order contract system with two new operators: intersection and union. The specification of these operators is based on the corresponding type theoretic constructions. This connection makes intersection and union contracts their inevitable dynamic counterparts with a range of desirable properties ...
Keywords: Union, Blame, Intersection, Higher-Order Contracts
Also published in:
December 2015  ACM SIGPLAN Notices - ICFP '15: Volume 50 Issue 9, September 2015

6 published by ACM
Blame and coercion: together again for the first time
June 2015 PLDI '15: Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation
Publisher: ACM
Bibliometrics:
Citation Count: 4
Downloads (6 Weeks): 3,   Downloads (12 Months): 52,   Downloads (Overall): 241

Full text available: PDFPDF
C#, Dart, Pyret, Racket, TypeScript, VB: many recent languages integrate dynamic and static types via gradual typing. We systematically develop three calculi for gradual typing and the relations between them, building on and strengthening previous work. The calculi are: λB, based on the blame calculus of Wadler and Findler (2009); ...
Keywords: Blame, gradual typing, lambda calculus
Also published in:
August 2015  ACM SIGPLAN Notices - PLDI '15: Volume 50 Issue 6, June 2015

7 published by ACM
Side effect monitoring for Java using bytecode rewriting
Manuel Geffken, Peter Thiemann
September 2014 PPPJ '14: Proceedings of the 2014 International Conference on Principles and Practices of Programming on the Java platform: Virtual machines, Languages, and Tools
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 2,   Downloads (12 Months): 17,   Downloads (Overall): 55

Full text available: PDFPDF
A side effect of a method in Java is a read or write operation that the method may perform on an object in the heap. Methods with side effects are more difficult to understand and to reason about than pure methods, in particular in the presence of aliasing. While both, ...
Keywords: Java, semantics, side effects, assertion checkers, contracts, runtime verification

8 published by ACM
A Type Theoretic Specification of Partial Evaluation
Kenichi Asai, Luminous Fennell, Peter Thiemann, Yang Zhang
September 2014 PPDP '14: Proceedings of the 16th International Symposium on Principles and Practice of Declarative Programming
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 1,   Downloads (12 Months): 14,   Downloads (Overall): 20

Full text available: PDFPDF
We develop a type theoretic specification of offline partial evaluation for the simply-typed lambda calculus in the dependently-typed programming language Agda. We establish the correctness of the specification by proving termination, typing preservation, and semantics preservation using logical relations. Typing preservation is achieved by relying on a typed syntax representation ...
Keywords: typed metaprogramming, dependently-typed programming, partial evaluation

9
Gradual Typing for Annotated Type Systems
Peter Thiemann, Luminous Fennell
April 2014 Proceedings of the 23rd European Symposium on Programming Languages and Systems - Volume 8410
Publisher: Springer-Verlag New York, Inc.
Bibliometrics:
Citation Count: 1

Annotated type systems include additional information in types to make them more expressive and to gather intensional information about programs. Gradual types enable a seamless transition between statically and dynamically checked properties of values. Gradual annotation typing applies the ideas of gradual typing to the annotation part of a type ...

10 published by ACM
October 2013 DLS '13: Proceedings of the 9th symposium on Dynamic languages
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 5,   Downloads (12 Months): 15,   Downloads (Overall): 125

Full text available: PDFPDF
JSConTest introduced the notions of effect monitoring and dynamic effect inference for JavaScript. It enables the description of effects with path specifications resembling regular expressions. It is implemented by an offline source code transformation. To overcome the limitations of the JSConTest implementation, we redesigned and reimplemented effect monitoring by taking ...
Keywords: javascript, access permission contracts, proxies
Also published in:
February 2014  ACM SIGPLAN Notices - DLS '13: Volume 49 Issue 2, February 2014

11 published by ACM
Circularity and Lambda Abstraction: From Bird to Pettorossi and back
Olivier Danvy, Peter Thiemann, Ian Zerny
August 2013 IFL '13: Proceedings of the 25th symposium on Implementation and Application of Functional Languages
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 1,   Downloads (12 Months): 8,   Downloads (Overall): 21

Full text available: PDFPDF
We present a transformation between lazy circular programs à la Bird and strict circular programs à la Pettorossi. Circular programs à la Bird rely on lazy recursive binding: they involve circular unknowns and make sense equationally. Circular programs à la Pettorossi rely on the inductive construction of functions and their ...
Keywords: circular programs, functional programming, laziness, attribute grammars

12
Gradual Security Typing with References
Luminous Fennell, Peter Thiemann
June 2013 CSF '13: Proceedings of the 2013 IEEE 26th Computer Security Foundations Symposium
Publisher: IEEE Computer Society
Bibliometrics:
Citation Count: 7

Type systems for information-flow control (IFC) are often inflexible and too conservative. On the other hand, dynamic run-time monitoring of information flow is flexible and permissive but it is difficult to guarantee robust behavior of a program. Gradual typing for IFC enables the programmer to choose between permissive dynamic checking ...
Keywords: gradual typing, security typing, ML, references

13 published by ACM
Type-based dependency analysis for javascript
June 2013 PLAS '13: Proceedings of the Eighth ACM SIGPLAN workshop on Programming languages and analysis for security
Publisher: ACM
Bibliometrics:
Citation Count: 1
Downloads (6 Weeks): 2,   Downloads (12 Months): 19,   Downloads (Overall): 131

Full text available: PDFPDF
Dependency analysis is a program analysis that determines potential data flow between program points. While it is not a security analysis per se, it is a viable basis for investigating data integrity, for ensuring confidentiality, and for guaranteeing sanitization. A noninterference property can be stated and proved for the dependency ...
Keywords: type-based analysis, dependency, javascript

14 published by ACM
Partially static operations
January 2013 PEPM '13: Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
Publisher: ACM
Bibliometrics:
Citation Count: 4
Downloads (6 Weeks): 1,   Downloads (12 Months): 12,   Downloads (Overall): 60

Full text available: PDFPDF
Partial evaluation distinguishes between different binding times when manipulating values in a program. A partial evaluator performs evaluation steps on values with a static binding time whereas it generates code for values with a dynamic binding time. Binding time descriptions have evolved from monolithic to fine grained, partially static data ...
Keywords: algebraic simplification, partial evaluation

15
The Blame Theorem for a Linear Lambda Calculus with Type Dynamic
Luminous Fennell, Peter Thiemann
June 2012 TFP 2012: Proceedings of the 2012 Conference on Trends in Functional Programming - Volume 7829
Publisher: Springer-Verlag New York, Inc.
Bibliometrics:
Citation Count: 0

Scripting languages have renewed the interest in languages with dynamic types. For various reasons, realistic programs comprise dynamically typed components as well as statically typed ones. Safe and seamless interaction between these components is achieved by equipping the statically typed language with a type Dynamic and coercions that map between ...
Keywords: linear typing, gradual typing, subtyping

16 published by ACM
Rethinking Java call stack design for tiny embedded devices
Faisal Aslam, Ghufran Baig, Mubashir Adnan Qureshi, Zartash Afzal Uzmi, Luminous Fennell, Peter Thiemann, Christian Schindelhauer, Elmar Haussmann
June 2012 LCTES '12: Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems
Publisher: ACM
Bibliometrics:
Citation Count: 0
Downloads (6 Weeks): 1,   Downloads (12 Months): 9,   Downloads (Overall): 205

Full text available: PDFPDF
The ability of tiny embedded devices to run large feature-rich programs is typically constrained by the amount of memory installed on such devices. Furthermore, the useful operation of these devices in wireless sensor applications is limited by their battery life. This paper presents a call stack redesign targeted at an ...
Keywords: TakaTuka, memory management, wireless sensor networks, JVM, Java Virtual Machine, call stack
Also published in:
May 2012  ACM SIGPLAN Notices - LCTES '12: Volume 47 Issue 5, MAY 2012

17
The interaction of contracts and laziness
Markus Degen, Peter Thiemann, Stefan Wehr
March 2012 Higher-Order and Symbolic Computation: Volume 25 Issue 1, March 2012
Publisher: Kluwer Academic Publishers
Bibliometrics:
Citation Count: 0

Contract monitoring for strict higher-order functional languages has an intuitive meaning, an established theoretical basis, and a standard implementation. For lazy functional languages, the situation is less clear-cut. There is no agreed-upon intended meaning or theory, and there are competing implementations with subtle semantic differences. This paper proposes meaning preservation ...
Keywords: Laziness, Contracts

18 published by ACM
Access permission contracts for scripting languages
Phillip Heidegger, Annette Bieniusa, Peter Thiemann
January 2012 ACM SIGPLAN Notices - POPL '12: Volume 47 Issue 1, January 2012
Publisher: ACM
Bibliometrics:
Citation Count: 9
Downloads (6 Weeks): 4,   Downloads (12 Months): 25,   Downloads (Overall): 384

Full text available: PDFPDF
The ideal software contract fully specifies the behavior of an operation. Often, in particular in the context of scripting languages, a full specification may be cumbersome to state and may not even be desired. In such cases, a partial specification, which describes selected aspects of the behavior, may be used ...
Keywords: javascript, scripting languages, contracts
Also published in:
January 2012  POPL '12: Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages

19 published by ACM
The interaction of contracts and laziness
Markus Degen, Peter Thiemann, Stefan Wehr
January 2012 PEPM '12: Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
Publisher: ACM
Bibliometrics:
Citation Count: 3
Downloads (6 Weeks): 1,   Downloads (12 Months): 5,   Downloads (Overall): 89

Full text available: PDFPDF
Contract monitoring for strict higher-order functional languages has an intuitive meaning, an established theoretical basis, and a standard implementation. For lazy functional languages, the situation is less clear-cut. There is no agreed-upon intended meaning or theory, and there are competing implementations with subtle semantic differences. This paper proposes meaning preservation ...
Keywords: laziness, haskell, contracts

20 published by ACM
Offline GC: trashing reachable objects on tiny devices
Faisal Aslam, Luminous Fennell, Christian Schindelhauer, Peter Thiemann, Zartash Afzal Uzmi
November 2011 SenSys '11: Proceedings of the 9th ACM Conference on Embedded Networked Sensor Systems
Publisher: ACM
Bibliometrics:
Citation Count: 1
Downloads (6 Weeks): 4,   Downloads (12 Months): 10,   Downloads (Overall): 221

Full text available: PDFPDF
The ability of tiny embedded devices to run large and feature-rich Java programs is typically constrained by the amount of memory installed on those devices. Furthermore, the useful operation of such devices in a wireless sensor application is limited by their battery life. We propose a garbage collection (GC) scheme ...
Keywords: TakaTuka, offline memory management, sensor networks, grabage collection, JVM, Java virtual machine



The ACM Digital Library is published by the Association for Computing Machinery. Copyright © 2017 ACM, Inc.
Terms of Usage   Privacy Policy   Code of Ethics   Contact Us