Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleSeptember 2024
Existential Containers in Scala
MPLR 2024: Proceedings of the 21st ACM SIGPLAN International Conference on Managed Programming Languages and RuntimesSeptember 2024, Pages 55–64https://doi.org/10.1145/3679007.3685056Type classes have been well-established as a powerful tool to write generic algorithms and data structures while escaping vexing limitations of subtyping with respect to extensibility, binary methods, and partial abstractions. Unfortunately, type classes ...
- research-articleAugust 2024JUST ACCEPTED
Smooth approximations: An algebraic approach to CSPs over finitely bounded homogeneous structures
We introduce the novel machinery of smooth approximations to provide a systematic algebraic approach to the complexity of CSPs over finitely bounded homogeneous structures. We apply smooth approximations to confirm the CSP dichotomy conjecture for first-...
- research-articleAugust 2024
Call-by-Unboxed-Value
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue ICFPArticle No.: 265, Pages 845–879https://doi.org/10.1145/3674654Call-By-Push-Value has famously subsumed both call-by-name and call-by-value by decomposing programs along the axis of "values" versus "computations." Here, we introduce Call-By-Unboxed-Value which further decomposes programs along an orthogonal axis ...
- short-paperJuly 2024
Property Prediction of Functional Organic Molecular Crystals with Graph Neural Networks
PEARC '24: Practice and Experience in Advanced Research Computing 2024: Human Powered ComputingJuly 2024, Article No.: 50, Pages 1–4https://doi.org/10.1145/3626203.3670584Predicting the properties of molecular crystals is imperative to the field of materials design. In lieu of alternative methods, advances in machine learning have made it possible to predict the properties of materials before synthesis. This is ...
- research-articleJuly 2024
Quantum advantage and CSP complexity
LICS '24: Proceedings of the 39th Annual ACM/IEEE Symposium on Logic in Computer ScienceJuly 2024, Article No.: 23, Pages 1–15https://doi.org/10.1145/3661814.3662118Information-processing tasks modelled by homomorphisms between relational structures can witness quantum advantage when entanglement is used as a computational resource. We prove that the occurrence of quantum advantage is determined by the same type of ...
-
- research-articleJuly 2024
Local consistency as a reduction between constraint satisfaction problems
LICS '24: Proceedings of the 39th Annual ACM/IEEE Symposium on Logic in Computer ScienceJuly 2024, Article No.: 29, Pages 1–15https://doi.org/10.1145/3661814.3662068We study the use of local consistency methods as reductions between constraint satisfaction problems (CSPs), and promise version thereof, with the aim to classify these reductions in a similar way as the algebraic approach classifies gadget reductions ...
- research-articleMay 2024
TypeQL: A Type-Theoretic & Polymorphic Query Language
Proceedings of the ACM on Management of Data (PACMMOD), Volume 2, Issue 2Article No.: 110, Pages 1–27https://doi.org/10.1145/3651611Relational data modeling can often be restrictive as it provides no direct facility for modeling polymorphic types, reified relations, multi-valued attributes, and other common high-level structures in data. This creates many challenges in data modeling ...
- research-articleApril 2024
Towards Finding the Sources of Polymorphism in Polymorphic Gates (Invited)
ASPDAC '24: Proceedings of the 29th Asia and South Pacific Design Automation ConferenceJanuary 2024, Pages 319–324https://doi.org/10.1109/ASP-DAC58780.2024.10473830A polymorphic gate can change its functionality based on external conditions such as temperature, voltage, and external signals. Although this concept was proposed more than two decades ago and has found success in designing circuits for area ...
Polymorphic Type Inference for Dynamic Languages
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue POPLArticle No.: 40, Pages 1179–1210https://doi.org/10.1145/3632882We present a type system that combines, in a controlled way, first-order polymorphism with intersection types, union types, and subtyping, and prove its safety. We then define a type reconstruction algorithm that is sound and terminating. This yields a ...
- research-articleJanuary 2024
Polymorphic Reachability Types: Tracking Freshness, Aliasing, and Separation in Higher-Order Generic Programs
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue POPLArticle No.: 14, Pages 393–424https://doi.org/10.1145/3632856Fueled by the success of Rust, many programming languages are adding substructural features to their type systems. The promise of tracking properties such as lifetimes and sharing is tremendous, not just for low-level memory management, but also for ...
- ArticleMay 2024
Internal Reading and Reciprocity
Logic and Engineering of Natural Language SemanticsNov 2023, Pages 155–174https://doi.org/10.1007/978-3-031-60878-0_9AbstractThis paper first points out that the internal reading of sentences containing certain reciprocal items such as “the same” carries a reciprocal meaning. It then provides a uniform formal treatment for these items that reflects the reciprocal ...
- research-articleOctober 2023
Polymorphic Typestate for Session Types
PPDP '23: Proceedings of the 25th International Symposium on Principles and Practice of Declarative ProgrammingOctober 2023, Article No.: 12, Pages 1–15https://doi.org/10.1145/3610612.3610624Session types provide a principled approach to typed communication protocols that guarantee type safety and protocol fidelity. Formalizations of session-typed communication are typically based on process calculi, concurrent lambda calculi, or linear ...
- research-articleOctober 2023
Transpiling Slang Methods to C Functions: An Example of Static Polymorphism for Smalltalk VM Objects
VMIL 2023: Proceedings of the 15th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate LanguagesOctober 2023, Pages 88–93https://doi.org/10.1145/3623507.3623548The OpenSmalltalk-VM is written in a subset of Smalltalk which gets transpiled to C. Developing the VM in Smalltalk allows to use the Smalltalk developer tooling and brings a fast feedback cycle. However, transpiling to C requires mapping ...
- research-articleOctober 2023
Structural Subtyping as Parametric Polymorphism
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue OOPSLA2Article No.: 260, Pages 1093–1121https://doi.org/10.1145/3622836Structural subtyping and parametric polymorphism provide similar flexibility and reusability to programmers. For example, both features enable the programmer to provide a wider record as an argument to a function that expects a narrower one. However, ...
- research-articleAugust 2023
Types that Change: The Extensible Type Design Pattern
FUNARCH 2023: Proceedings of the 1st ACM SIGPLAN International Workshop on Functional Software ArchitectureAugust 2023, Pages 49–62https://doi.org/10.1145/3609025.3609475Compilers are often structured as chains of transformations, from source code to object code, through multiple intermediate representations. The existence of different representations of the same program presents challenges both for code maintenance and ...
- research-articleJuly 2023
Solving Novel Program Synthesis Problems with Genetic Programming using Parametric Polymorphism
GECCO '23: Proceedings of the Genetic and Evolutionary Computation ConferenceJuly 2023, Pages 1175–1183https://doi.org/10.1145/3583131.3590502Contemporary genetic programming (GP) systems for general program synthesis have been primarily concerned with evolving programs that can manipulate values from a standard set of primitive data types and simple indexed data structures. In contrast, ...
A Bowtie for a Beast: Overloading, Eta Expansion, and Extensible Data Types in F⋈
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue POPLArticle No.: 18, Pages 515–543https://doi.org/10.1145/3571211The typed merge operator offers the promise of a compositional style of statically-typed programming in which solutions to the expression problem arise naturally. This approach, dubbed compositional programming, has recently been demonstrated by Zhang et ...
- research-articleOctober 2022
Gradual System F
Journal of the ACM (JACM), Volume 69, Issue 5Article No.: 38, Pages 1–78https://doi.org/10.1145/3555986Bringing the benefits of gradual typing to a language with parametric polymorphism like System F, while preserving relational parametricity, has proven extremely challenging: first attempts were formulated a decade ago, and several designs have been ...
- research-articleJune 2023
A Structure Editor with Type-Safe Copy/Paste
- Hans Hüttel,
- Anja Elisasen Lumholtz Nielsen,
- Nana Gjerulf Sandberg,
- Christoffer Lind Andersen,
- Peter Mikkelsen
IFL '22: Proceedings of the 34th Symposium on Implementation and Application of Functional LanguagesAugust 2022, Article No.: 5, Pages 1–11https://doi.org/10.1145/3587216.3587221The editor calculus of Godiksen et al [2] describes the edit primitives of a syntax-directed editor for functional programs in a simply typed lambda calculus. However, a main shortcoming is that only top-down programming is allowed, meaning that we can ...
- research-articleJuly 2022
Nested Session Types
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 44, Issue 3Article No.: 19, Pages 1–45https://doi.org/10.1145/3539656Session types statically describe communication protocols between concurrent message-passing processes. Unfortunately, parametric polymorphism even in its restricted prenex form is not fully understood in the context of session types. In this article, we ...