Controlling Opaque-Component Effects with Semisolates and Try
Evangelos Lamprou, Tianyu (Ezri) Zhu, Di Jin, Grigoris Ntousakis, Georgios Liargkovas, Calvin Eng, Konstantinos Kallas, Michael Greenberg, Nikos Vasilakis
Abstract
Many developers and systems today rely on opaque software components. When executing, these components affect each other and the broader environment in which they execute. Some of these effects are expected and desired; others not so. This paper introduces semisolates, an abstraction and corresponding subsystem for controlling and manipulating the effects of opaque components. Available as an unprivileged, higher-order, language-agnostic command, try interposes on a component’s execution to automatically capture and control its effects. Effect control includes introspection, optional application, effect stacking, and further manipulation—all driven by several real-world case studies. Today try is used in research and production applications across several organizations, mediating potentially undesired effects, maintaining full compatibility with real-world components, and incurring a modest performance overhead well within each case’s acceptable levels.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 381b4e42-dae6-4aa9-b363-1eb9f82fff53Cited by top-tier papers1
Ask how each one uses itBuilds on8
- POSH: A Data-Aware ShellDeepti Raghavan, Sadjad Fouladi, Philip Alexander Levis, Matei ZahariaUSENIX ATC 2020 · 33 citations
- Draco: Architectural and Operating System Support for System Call SecurityDimitrios Skarlatos, Qingrong Chen, Jianyan Chen, Tianyin Xu et al.MICRO 2020 · 17 citations
- Practically Correct, Just-in-Time Shell Script ParallelizationKonstantinos Kallas, Tammam Mustafa, Jan Bielak, Dimitris Karnikis et al.OSDI 2022 · 13 citations
- The Koala Benchmarks for the Shell: Characterization and ImplicationsEvangelos Lamprou, Ethan Williams, Georgios Kaoukis, Zhuoxuan Zhang et al.USENIX ATC 2025 · 12 citations
- Riker: Always-Correct and Fast Incremental Builds from Simple SpecificationsCharlie Curtsinger, Daniel W. BarowyUSENIX ATC 2022 · 12 citations
Related papers
- Effectful Software ContractsCameron Moy, Christos Dimoulas, Matthias FelleisenPOPL 2024 · 1 citation
- Pushing Performance Isolation Boundaries into Application with pBoxYigong Hu, Gongqi Huang, Peng HuangSOSP 2023 · 2 citations
- Highly Automated Verification of Security Properties for Unmodified System SoftwareGanxiang Yang, Wei Qiang, Yi Rong, Xuheng Li et al.ASPLOS 2026 · 1 citation
- Operating System Support for Safe and Efficient Auxiliary ExecutionYuzhuo Jing, Peng HuangOSDI 2022 · 6 citations
- hS: Speculative Script Reordering at Subprocess GranularityGeorgios Liargkovas, Di Jin, Tianyu (Ezri) Zhu, Dan Liu et al.OSDI 2026 · 3 citations
