Rast: A Language for Resource-Aware Session Types
Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to the protocols. However, simple session types cannot capture properties beyond the basic type of the exchanged messages. In response, recent wor...
Uložené v:
| Vydané v: | Logical methods in computer science Ročník 18, Issue 1 |
|---|---|
| Hlavní autori: | , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
Logical Methods in Computer Science e.V
01.01.2022
|
| Predmet: | |
| ISSN: | 1860-5974, 1860-5974 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | Traditional session types prescribe bidirectional communication protocols for
concurrent computations, where well-typed programs are guaranteed to adhere to
the protocols. However, simple session types cannot capture properties beyond
the basic type of the exchanged messages. In response, recent work has extended
session types with refinements from linear arithmetic, capturing intrinsic
attributes of processes and data. These refinements then play a central role in
describing sequential and parallel complexity bounds on session-typed programs.
The Rast language provides an open-source implementation of session-typed
concurrent programs extended with arithmetic refinements as well as ergometric
and temporal types to capture work and span of program execution. To further
support generic programming, Rast also enhances arithmetically refined session
types with recently developed nested parametric polymorphism. Type checking
relies on Cooper's algorithm for quantifier elimination in Presburger
arithmetic with a few significant optimizations, and a heuristic extension to
nonlinear constraints. Rast furthermore includes a reconstruction engine so
that most program constructs pertaining the layers of refinements and resources
are inserted automatically. We provide a variety of examples to demonstrate the
expressivity of the language. |
|---|---|
| AbstractList | Traditional session types prescribe bidirectional communication protocols for
concurrent computations, where well-typed programs are guaranteed to adhere to
the protocols. However, simple session types cannot capture properties beyond
the basic type of the exchanged messages. In response, recent work has extended
session types with refinements from linear arithmetic, capturing intrinsic
attributes of processes and data. These refinements then play a central role in
describing sequential and parallel complexity bounds on session-typed programs.
The Rast language provides an open-source implementation of session-typed
concurrent programs extended with arithmetic refinements as well as ergometric
and temporal types to capture work and span of program execution. To further
support generic programming, Rast also enhances arithmetically refined session
types with recently developed nested parametric polymorphism. Type checking
relies on Cooper's algorithm for quantifier elimination in Presburger
arithmetic with a few significant optimizations, and a heuristic extension to
nonlinear constraints. Rast furthermore includes a reconstruction engine so
that most program constructs pertaining the layers of refinements and resources
are inserted automatically. We provide a variety of examples to demonstrate the
expressivity of the language. Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to the protocols. However, simple session types cannot capture properties beyond the basic type of the exchanged messages. In response, recent work has extended session types with refinements from linear arithmetic, capturing intrinsic attributes of processes and data. These refinements then play a central role in describing sequential and parallel complexity bounds on session-typed programs. The Rast language provides an open-source implementation of session-typed concurrent programs extended with arithmetic refinements as well as ergometric and temporal types to capture work and span of program execution. To further support generic programming, Rast also enhances arithmetically refined session types with recently developed nested parametric polymorphism. Type checking relies on Cooper's algorithm for quantifier elimination in Presburger arithmetic with a few significant optimizations, and a heuristic extension to nonlinear constraints. Rast furthermore includes a reconstruction engine so that most program constructs pertaining the layers of refinements and resources are inserted automatically. We provide a variety of examples to demonstrate the expressivity of the language. |
| Author | Das, Ankush Pfenning, Frank |
| Author_xml | – sequence: 1 givenname: Ankush surname: Das fullname: Das, Ankush – sequence: 2 givenname: Frank surname: Pfenning fullname: Pfenning, Frank |
| BookMark | eNpNkE1rAjEURUOxUGv9Ad3Nsl1Mm5dM3iTuRPohCAVr1yGTeZERNZIoxX_fakvp3dzLXZzFuWa9bdwSY7fAHyoURj-uNz6XoO9gZO4FF-KC9UEjL5Wpq96_fcWGOa_4d6QELbDPYO7yflSMi5nbLg9uSUWIqZhTjofkqRx_ukTFO-XcxW2xOO4o37DL4NaZhr89YB_PT4vJazl7e5lOxrPSS477MniHSqBC1fAAGDiaBrg2NRdcc6MkCO-bmlMIbdAuNDVJbAzWjfINGZIDNv3httGt7C51G5eONrrOno-YltalfefXZJVRLYLQFQJWQpNplVYojW6lCq0_seCH5VPMOVH44wG3Z4X2pNCCtmCNPSmUX1LVZME |
| ContentType | Journal Article |
| DBID | AAYXX CITATION DOA |
| DOI | 10.46298/lmcs-18(1:9)2022 |
| DatabaseName | CrossRef DOAJ Directory of Open Access Journals |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| Database_xml | – sequence: 1 dbid: DOA name: DOAJ Directory of Open Access Journals url: https://www.doaj.org/ sourceTypes: Open Website |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1860-5974 |
| ExternalDocumentID | oai_doaj_org_article_595d61284616428e9d5856398d35fdce 10_46298_lmcs_18_1_9_2022 |
| GroupedDBID | .4S .DC 29L 2WC 5GY 5VS AAFWJ AAYXX ADBBV ADMLS ADQAK AENEX AFPKN ALMA_UNASSIGNED_HOLDINGS ARCSS BCNDV CITATION EBS EJD FRP GROUPED_DOAJ J9A KQ8 MK~ ML~ M~E OK1 OVT P2P TR2 TUS XSB |
| ID | FETCH-LOGICAL-c306t-fca6526565b0f16f069b108970208095312ccb70effdf8afb7e36b967b5cbe9e3 |
| IEDL.DBID | DOA |
| ISICitedReferencesCount | 11 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000744089600001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1860-5974 |
| IngestDate | Fri Oct 03 12:32:17 EDT 2025 Sat Nov 29 06:21:51 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Language | English |
| License | https://creativecommons.org/licenses/by/4.0 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c306t-fca6526565b0f16f069b108970208095312ccb70effdf8afb7e36b967b5cbe9e3 |
| OpenAccessLink | https://doaj.org/article/595d61284616428e9d5856398d35fdce |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_595d61284616428e9d5856398d35fdce crossref_primary_10_46298_lmcs_18_1_9_2022 |
| PublicationCentury | 2000 |
| PublicationDate | 2022-01-01 |
| PublicationDateYYYYMMDD | 2022-01-01 |
| PublicationDate_xml | – month: 01 year: 2022 text: 2022-01-01 day: 01 |
| PublicationDecade | 2020 |
| PublicationTitle | Logical methods in computer science |
| PublicationYear | 2022 |
| Publisher | Logical Methods in Computer Science e.V |
| Publisher_xml | – name: Logical Methods in Computer Science e.V |
| SSID | ssj0000331826 |
| Score | 2.3371615 |
| Snippet | Traditional session types prescribe bidirectional communication protocols for
concurrent computations, where well-typed programs are guaranteed to adhere to... Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to... |
| SourceID | doaj crossref |
| SourceType | Open Website Index Database |
| SubjectTerms | computer science - logic in computer science computer science - programming languages |
| Title | Rast: A Language for Resource-Aware Session Types |
| URI | https://doaj.org/article/595d61284616428e9d5856398d35fdce |
| Volume | 18, Issue 1 |
| WOSCitedRecordID | wos000744089600001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAON databaseName: DOAJ Directory of Open Access Journals customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: DOA dateStart: 20040101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: M~E dateStart: 20040101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV07T8MwELZQxcDCG1Fe8sAASFbtPGxft4KoGKBCPKRuVvySkKCgNsDGb8eOU1QmFpYMUWQ53yV333eJvkPo2GfgXVZUhObekoIXQEAyRwI1opWRDqhOwybEaCTHY7hdGPUV_wlL9sAJuF4JpeUxiXIWqbIDGwhuKKvS5qW3xsXsSwUsiKkmB-d5JM7pM2bBM5C95xczI0yesD6cBsWf_SpEC379TWEZrqPVlhHiQdrJBlpyk020Np-2gNuXbwuxu2pW9_EAX7ctRhz4Jp6338ngs5o6fJ9sNnCUl7Nt9Di8fLi4Iu3AA2ICc6-JNxWPdvW81NQz7ikHzagEESdpRmM4lhmjBXXeWy8rr4XLuQYudGm0A5fvoM7kdeJ2EaZxKSs8zQtTiJxVGRTaC-1t4ENBxHTR2fzu1VvytVBBDzRQqQiVYlIxBSpC1UXnEZ-fC6MldXMiBEq1gVJ_BWrvPxbZRytxQ6kHcoA69fTdHaJl81E_zaZHzTMQjjdfl99tb7Qt |
| linkProvider | Directory of Open Access Journals |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Rast%3A+A+Language+for+Resource-Aware+Session+Types&rft.jtitle=Logical+methods+in+computer+science&rft.au=Das%2C+Ankush&rft.au=Pfenning%2C+Frank&rft.date=2022-01-01&rft.issn=1860-5974&rft.eissn=1860-5974&rft.volume=18%2C+Issue+1&rft_id=info:doi/10.46298%2Flmcs-18%281%3A9%292022&rft.externalDBID=n%2Fa&rft.externalDocID=10_46298_lmcs_18_1_9_2022 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1860-5974&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1860-5974&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1860-5974&client=summon |