Bounded Abstract Effects

Effect systems have been a subject of active research for nearly four decades, with the most notable practical example being checked exceptions in programming languages such as Java. While many exception systems support abstraction, aggregation, and hierarchy (e.g., via class declaration and subclas...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on programming languages and systems 2022-03, Vol.44 (1), p.1-48
Hauptverfasser: Melicher, Darya, Xu, Anlun, Zhao, Valerie, Potanin, Alex, Aldrich, Jonathan
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 48
container_issue 1
container_start_page 1
container_title ACM transactions on programming languages and systems
container_volume 44
creator Melicher, Darya
Xu, Anlun
Zhao, Valerie
Potanin, Alex
Aldrich, Jonathan
description Effect systems have been a subject of active research for nearly four decades, with the most notable practical example being checked exceptions in programming languages such as Java. While many exception systems support abstraction, aggregation, and hierarchy (e.g., via class declaration and subclassing mechanisms), it is rare to see such expressive power in more generic effect systems. We designed an effect system around the idea of protecting system resources and incorporated our effect system into the Wyvern programming language. Similar to type members, a Wyvern object can have effect members that can abstract lower-level effects, allow for aggregation, and have both lower and upper bounds, providing for a granular effect hierarchy. We argue that Wyvern’s effects capture the right balance of expressiveness and power from the programming language design perspective. We present a full formalization of our effect-system design, showing that it allows reasoning about authority and attenuation. Our approach is evaluated through a security-related case study.
doi_str_mv 10.1145/3492427
format Article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_1145_3492427</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_1145_3492427</sourcerecordid><originalsourceid>FETCH-LOGICAL-c220t-b49a97defa942c761f32680caccb3620495f5602c35087e17c677761f7d6e46d3</originalsourceid><addsrcrecordid>eNotjz1LRDEQABdR8HmKreV1VtFNspuP8jzODziw0fqRt0lAUU-SZ-G_l8OrphkGBuBS443WxLeWoiHjj2DQzEERR3sMA2pHCqPhUzjr_R0RdeAwwNXd7ucrl7xcTX1uSeblptYicz-Hk5o-erk4cAGv95uX9aPaPj88rVdbJcbgrCaKKfpcaopkxDtdrXEBJYlM1hmkyJUdGrGMwRftxXm_13x2hVy2C7j-70rb9d5KHb_b22dqv6PGcT80HobsHxtnOkc</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Bounded Abstract Effects</title><source>ACM Digital Library</source><source>Business Source Complete</source><creator>Melicher, Darya ; Xu, Anlun ; Zhao, Valerie ; Potanin, Alex ; Aldrich, Jonathan</creator><creatorcontrib>Melicher, Darya ; Xu, Anlun ; Zhao, Valerie ; Potanin, Alex ; Aldrich, Jonathan</creatorcontrib><description>Effect systems have been a subject of active research for nearly four decades, with the most notable practical example being checked exceptions in programming languages such as Java. While many exception systems support abstraction, aggregation, and hierarchy (e.g., via class declaration and subclassing mechanisms), it is rare to see such expressive power in more generic effect systems. We designed an effect system around the idea of protecting system resources and incorporated our effect system into the Wyvern programming language. Similar to type members, a Wyvern object can have effect members that can abstract lower-level effects, allow for aggregation, and have both lower and upper bounds, providing for a granular effect hierarchy. We argue that Wyvern’s effects capture the right balance of expressiveness and power from the programming language design perspective. We present a full formalization of our effect-system design, showing that it allows reasoning about authority and attenuation. Our approach is evaluated through a security-related case study.</description><identifier>ISSN: 0164-0925</identifier><identifier>EISSN: 1558-4593</identifier><identifier>DOI: 10.1145/3492427</identifier><language>eng</language><ispartof>ACM transactions on programming languages and systems, 2022-03, Vol.44 (1), p.1-48</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c220t-b49a97defa942c761f32680caccb3620495f5602c35087e17c677761f7d6e46d3</cites><orcidid>0000-0003-0631-5591 ; 0000-0003-3166-4777 ; 0000-0003-2263-7339</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27922,27923</link.rule.ids></links><search><creatorcontrib>Melicher, Darya</creatorcontrib><creatorcontrib>Xu, Anlun</creatorcontrib><creatorcontrib>Zhao, Valerie</creatorcontrib><creatorcontrib>Potanin, Alex</creatorcontrib><creatorcontrib>Aldrich, Jonathan</creatorcontrib><title>Bounded Abstract Effects</title><title>ACM transactions on programming languages and systems</title><description>Effect systems have been a subject of active research for nearly four decades, with the most notable practical example being checked exceptions in programming languages such as Java. While many exception systems support abstraction, aggregation, and hierarchy (e.g., via class declaration and subclassing mechanisms), it is rare to see such expressive power in more generic effect systems. We designed an effect system around the idea of protecting system resources and incorporated our effect system into the Wyvern programming language. Similar to type members, a Wyvern object can have effect members that can abstract lower-level effects, allow for aggregation, and have both lower and upper bounds, providing for a granular effect hierarchy. We argue that Wyvern’s effects capture the right balance of expressiveness and power from the programming language design perspective. We present a full formalization of our effect-system design, showing that it allows reasoning about authority and attenuation. Our approach is evaluated through a security-related case study.</description><issn>0164-0925</issn><issn>1558-4593</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2022</creationdate><recordtype>article</recordtype><recordid>eNotjz1LRDEQABdR8HmKreV1VtFNspuP8jzODziw0fqRt0lAUU-SZ-G_l8OrphkGBuBS443WxLeWoiHjj2DQzEERR3sMA2pHCqPhUzjr_R0RdeAwwNXd7ucrl7xcTX1uSeblptYicz-Hk5o-erk4cAGv95uX9aPaPj88rVdbJcbgrCaKKfpcaopkxDtdrXEBJYlM1hmkyJUdGrGMwRftxXm_13x2hVy2C7j-70rb9d5KHb_b22dqv6PGcT80HobsHxtnOkc</recordid><startdate>20220301</startdate><enddate>20220301</enddate><creator>Melicher, Darya</creator><creator>Xu, Anlun</creator><creator>Zhao, Valerie</creator><creator>Potanin, Alex</creator><creator>Aldrich, Jonathan</creator><scope>AAYXX</scope><scope>CITATION</scope><orcidid>https://orcid.org/0000-0003-0631-5591</orcidid><orcidid>https://orcid.org/0000-0003-3166-4777</orcidid><orcidid>https://orcid.org/0000-0003-2263-7339</orcidid></search><sort><creationdate>20220301</creationdate><title>Bounded Abstract Effects</title><author>Melicher, Darya ; Xu, Anlun ; Zhao, Valerie ; Potanin, Alex ; Aldrich, Jonathan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c220t-b49a97defa942c761f32680caccb3620495f5602c35087e17c677761f7d6e46d3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2022</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Melicher, Darya</creatorcontrib><creatorcontrib>Xu, Anlun</creatorcontrib><creatorcontrib>Zhao, Valerie</creatorcontrib><creatorcontrib>Potanin, Alex</creatorcontrib><creatorcontrib>Aldrich, Jonathan</creatorcontrib><collection>CrossRef</collection><jtitle>ACM transactions on programming languages and systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Melicher, Darya</au><au>Xu, Anlun</au><au>Zhao, Valerie</au><au>Potanin, Alex</au><au>Aldrich, Jonathan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Bounded Abstract Effects</atitle><jtitle>ACM transactions on programming languages and systems</jtitle><date>2022-03-01</date><risdate>2022</risdate><volume>44</volume><issue>1</issue><spage>1</spage><epage>48</epage><pages>1-48</pages><issn>0164-0925</issn><eissn>1558-4593</eissn><abstract>Effect systems have been a subject of active research for nearly four decades, with the most notable practical example being checked exceptions in programming languages such as Java. While many exception systems support abstraction, aggregation, and hierarchy (e.g., via class declaration and subclassing mechanisms), it is rare to see such expressive power in more generic effect systems. We designed an effect system around the idea of protecting system resources and incorporated our effect system into the Wyvern programming language. Similar to type members, a Wyvern object can have effect members that can abstract lower-level effects, allow for aggregation, and have both lower and upper bounds, providing for a granular effect hierarchy. We argue that Wyvern’s effects capture the right balance of expressiveness and power from the programming language design perspective. We present a full formalization of our effect-system design, showing that it allows reasoning about authority and attenuation. Our approach is evaluated through a security-related case study.</abstract><doi>10.1145/3492427</doi><tpages>48</tpages><orcidid>https://orcid.org/0000-0003-0631-5591</orcidid><orcidid>https://orcid.org/0000-0003-3166-4777</orcidid><orcidid>https://orcid.org/0000-0003-2263-7339</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 0164-0925
ispartof ACM transactions on programming languages and systems, 2022-03, Vol.44 (1), p.1-48
issn 0164-0925
1558-4593
language eng
recordid cdi_crossref_primary_10_1145_3492427
source ACM Digital Library; Business Source Complete
title Bounded Abstract Effects
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-14T15%3A23%3A49IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Bounded%20Abstract%20Effects&rft.jtitle=ACM%20transactions%20on%20programming%20languages%20and%20systems&rft.au=Melicher,%20Darya&rft.date=2022-03-01&rft.volume=44&rft.issue=1&rft.spage=1&rft.epage=48&rft.pages=1-48&rft.issn=0164-0925&rft.eissn=1558-4593&rft_id=info:doi/10.1145/3492427&rft_dat=%3Ccrossref%3E10_1145_3492427%3C/crossref%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true