Type-Safe Dynamic Placement with First-Class Placed Values

Several distributed programming language solutions have been proposed to reason about the placement of data, computations, and peers interaction. Such solutions include, among the others, multitier programming, choreographic programming and various approaches based on behavioral types. These methods...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Proceedings of ACM on programming languages Ročník 7; číslo OOPSLA2; s. 2142 - 2170
Hlavní autoři: Zakhour, George, Weisenburger, Pascal, Salvaneschi, Guido
Médium: Journal Article
Jazyk:angličtina
Vydáno: New York, NY, USA ACM 16.10.2023
Témata:
ISSN:2475-1421, 2475-1421
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract Several distributed programming language solutions have been proposed to reason about the placement of data, computations, and peers interaction. Such solutions include, among the others, multitier programming, choreographic programming and various approaches based on behavioral types. These methods statically ensure safety properties thanks to a complete knowledge about placement of data and computation at compile time. In distributed systems, however, dynamic placement of computation and data is crucial to enable performance optimizations, e.g., driven by data locality or in presence of a number of other constraints such as security and compliance regarding data storage location. Unfortunately, in existing programming languages, dynamic placement conflicts with static reasoning about distributed programs: the flexibility required by dynamic placement hinders statically tracking the location of data and computation. In this paper we present Dyno, a programming language that enables static reasoning about dynamic placement. Dyno features a type system where values are explicitly placed, but in contrast to existing approaches, placed values are also first class, ensuring that they can be passed around and referred to from other locations. Building on top of this mechanism, we provide a novel interpretation of dynamic placement as unions of placement types. We formalize type soundness, placement correctness (as part of type soundness) and architecture conformance. In case studies and benchmarks, our evaluation shows that Dyno enables static reasoning about programs even in presence of dynamic placement, ensuring type safety and placement correctness of programs at negligible performance cost. We reimplement an Android app with ∼ 7 K LOC in Dyno, find a bug in the existing implementation, and show that the app's approach is representative of a common way to implement dynamic placement found in over 100 apps in a large open-source app store.
AbstractList Several distributed programming language solutions have been proposed to reason about the placement of data, computations, and peers interaction. Such solutions include, among the others, multitier programming, choreographic programming and various approaches based on behavioral types. These methods statically ensure safety properties thanks to a complete knowledge about placement of data and computation at compile time. In distributed systems, however, dynamic placement of computation and data is crucial to enable performance optimizations, e.g., driven by data locality or in presence of a number of other constraints such as security and compliance regarding data storage location. Unfortunately, in existing programming languages, dynamic placement conflicts with static reasoning about distributed programs: the flexibility required by dynamic placement hinders statically tracking the location of data and computation. In this paper we present Dyno, a programming language that enables static reasoning about dynamic placement. Dyno features a type system where values are explicitly placed, but in contrast to existing approaches, placed values are also first class, ensuring that they can be passed around and referred to from other locations. Building on top of this mechanism, we provide a novel interpretation of dynamic placement as unions of placement types. We formalize type soundness, placement correctness (as part of type soundness) and architecture conformance. In case studies and benchmarks, our evaluation shows that Dyno enables static reasoning about programs even in presence of dynamic placement, ensuring type safety and placement correctness of programs at negligible performance cost. We reimplement an Android app with ∼ 7 K LOC in Dyno, find a bug in the existing implementation, and show that the app's approach is representative of a common way to implement dynamic placement found in over 100 apps in a large open-source app store.
Several distributed programming language solutions have been proposed to reason about the placement of data, computations, and peers interaction. Such solutions include, among the others, multitier programming, choreographic programming and various approaches based on behavioral types. These methods statically ensure safety properties thanks to a complete knowledge about placement of data and computation at compile time. In distributed systems, however, dynamic placement of computation and data is crucial to enable performance optimizations, e.g., driven by data locality or in presence of a number of other constraints such as security and compliance regarding data storage location. Unfortunately, in existing programming languages, dynamic placement conflicts with static reasoning about distributed programs: the flexibility required by dynamic placement hinders statically tracking the location of data and computation. In this paper we present Dyno, a programming language that enables static reasoning about dynamic placement. Dyno features a type system where values are explicitly placed, but in contrast to existing approaches, placed values are also first class, ensuring that they can be passed around and referred to from other locations. Building on top of this mechanism, we provide a novel interpretation of dynamic placement as unions of placement types. We formalize type soundness, placement correctness (as part of type soundness) and architecture conformance. In case studies and benchmarks, our evaluation shows that Dyno enables static reasoning about programs even in presence of dynamic placement, ensuring type safety and placement correctness of programs at negligible performance cost. We reimplement an Android app with ∼ 7 K LOC in Dyno, find a bug in the existing implementation, and show that the app's approach is representative of a common way to implement dynamic placement found in over 100 apps in a large open-source app store.
ArticleNumber 297
Author Zakhour, George
Weisenburger, Pascal
Salvaneschi, Guido
Author_xml – sequence: 1
  givenname: George
  orcidid: 0009-0000-5042-1207
  surname: Zakhour
  fullname: Zakhour, George
  email: george.zakhour@unisg.ch
  organization: University of St. Gallen, St. Gallen, Switzerland
– sequence: 2
  givenname: Pascal
  orcidid: 0000-0003-1288-1485
  surname: Weisenburger
  fullname: Weisenburger, Pascal
  email: pascal.weisenburger@unisg.ch
  organization: University of St. Gallen, St. Gallen, Switzerland
– sequence: 3
  givenname: Guido
  orcidid: 0000-0002-9324-8894
  surname: Salvaneschi
  fullname: Salvaneschi, Guido
  email: guido.salva@gmail.com
  organization: University of St. Gallen, St. Gallen, Switzerland
BookMark eNptz8tLAzEQBvAgFay1ePe0N0_RPM3Gm6xWhYKC1esymwdG9lGSiOx_b6VVRDzNwPdjmO8QTfqhdwgdU3JGqZDn_IKxUvE9NGVCSUwFo5Nf-wGap_RGCKGai5LrKbpcjWuHn8C74nrsoQumeGzBuM71ufgI-bVYhJgyrlpIaRvZ4gXad5eO0L6HNrn5bs7Q8-JmVd3h5cPtfXW1xMCUyhgEA-OtBWOdazbvac8Ms6ppvGeklECIo1oaT6VstC05oaUC5SwDzYSwfIbw9q6JQ0rR-dqEDDkMfY4Q2pqS-qt7veu-8ad__DqGDuL4jzzZSjDdD_oOPwF1qWGv
CitedBy_id crossref_primary_10_1109_TSE_2024_3393070
Cites_doi 10.1007/978-3-319-11245-9_14
10.4230/LIPIcs.ECOOP.2021.22
10.1145/233269.233346
10.1145/2661136.2661146
10.1109/LICS.2004.1319623
10.1145/3397495
10.1109/NOMS.2014.6838412
10.4230/LIPIcs.ECOOP.2022.20
10.4230/LIPIcs.ECOOP.2019.3
10.1145/1135777.1135865
10.14778/2876473.2876477
10.1016/j.tcs.2004.07.036
10.1007/978-3-662-44202-9_13
10.1007/978-3-319-33612-1_1
10.3929/ethz-a-007086593
10.1109/PERCOM.2004.1276864
10.1006/inco.1994.1093
10.5281/zenodo.8148841
10.3233/JCS-15805
10.22152/programming-journal.org/2018/2/3
10.1007/978-3-319-47958-3_20
10.22152/programming-journal.org/2020/4/6
10.1145/3285956
10.1145/3276499
10.1007/978-3-540-78663-4_9
10.1145/2509578.2509582
10.1007/978-3-030-55814-7_20
10.1108/IJWIS-06-2020-0032
10.1145/2951913.2951916
10.1145/1629575.1629606
10.1016/j.jlamp.2019.100486
10.1007/978-3-540-74792-5_12
10.1007/978-3-319-39570-8_8
10.1142/S0218843017500010
10.23638/LMCS-13(1:13)2017
10.1145/566340.566343
10.1109/ICDE.2005.54
10.1145/1328438.1328472
10.23638/LMCS-13(2:1)2017
10.1145/2676726.2677004
10.1007/978-3-319-23165-5_20
10.4230/LIPIcs.SNAPL.2015.294
10.1145/3607849
10.1109/SEFM.2008.11
ContentType Journal Article
Copyright Owner/Author
Copyright_xml – notice: Owner/Author
DBID AAYXX
CITATION
DOI 10.1145/3622873
DatabaseName CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
CrossRef
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 2475-1421
EndPage 2170
ExternalDocumentID 10_1145_3622873
3622873
GrantInformation_xml – fundername: Basic Research Fund of the University of St. Gallen (GFF)
  grantid: IPF 1031569
  funderid: https://doi.org/10.13039/
– fundername: Swiss National Science Foundation (SNSF)
  grantid: 200429
  funderid: https://doi.org/10.13039/
GroupedDBID AAKMM
AAYFX
ACM
ADPZR
AIKLT
ALMA_UNASSIGNED_HOLDINGS
GUFHI
LHSKQ
M~E
OK1
ROL
AAYXX
AEFXT
AEJOY
AKRVB
CITATION
ID FETCH-LOGICAL-a277t-a42acfddacdeeb2289f2c2d7bbff2085a00e195cf155b9d830187a7ed2a9244d3
ISICitedReferencesCount 1
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001087279100077&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 2475-1421
IngestDate Sun Nov 09 14:46:52 EST 2025
Tue Nov 18 21:50:07 EST 2025
Fri Feb 21 01:29:13 EST 2025
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Issue OOPSLA2
Keywords Multitier Programming
Union Types
Dynamic Placement
Distributed Programming
Scala
Placement Types
Language English
License This work is licensed under a Creative Commons Attribution 4.0 International License.
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-a277t-a42acfddacdeeb2289f2c2d7bbff2085a00e195cf155b9d830187a7ed2a9244d3
ORCID 0000-0003-1288-1485
0000-0002-9324-8894
0009-0000-5042-1207
OpenAccessLink https://dl.acm.org/doi/10.1145/3622873
PageCount 29
ParticipantIDs crossref_citationtrail_10_1145_3622873
crossref_primary_10_1145_3622873
acm_primary_3622873
PublicationCentury 2000
PublicationDate 2023-10-16
PublicationDateYYYYMMDD 2023-10-16
PublicationDate_xml – month: 10
  year: 2023
  text: 2023-10-16
  day: 16
PublicationDecade 2020
PublicationPlace New York, NY, USA
PublicationPlace_xml – name: New York, NY, USA
PublicationTitle Proceedings of ACM on programming languages
PublicationTitleAbbrev ACM PACMPL
PublicationYear 2023
Publisher ACM
Publisher_xml – name: ACM
References Gabriel Radanne, Jérôme Vouillon, and Vincent Balat. 2016. Eliom: A core ML language for Tierless Web Programming. In Proceedings of the 14th Asian Symposium on Programming Languages and Systems, Atsushi Igarashi (Ed.) (APLAS ’16). Springer-Verlag, Berlin, Heidelberg. 377–397. isbn:978-3-319-47957-6 https://doi.org/10.1007/978-3-319-47958-3_20 10.1007/978-3-319-47958-3_20
Pascal Weisenburger, Mirko Köhler, and Guido Salvaneschi. 2018. Distributed System Development with ScalaLoci. Proceedings of the ACM on Programming Languages, 2, OOPSLA (2018), Article 129, Oct., 30 pages. issn:2475-1421 https://doi.org/10.1145/3276499 10.1145/3276499
Manuel Serrano, Erick Gallesio, and Florian Loitsch. 2006. Hop, A Language for Programming the Web 2.0. In Companion to the 21th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA Companion ’06). ACM, New York, NY, USA.
Saverio Giallorenzo, Fabrizio Montesi, Marco Peressotti, David Richter, Guido Salvaneschi, and Pascal Weisenburger. 2021. Multiparty Languages: The Choreographic and Multitier Cases. In Proceedings of the 35th European Conference on Object-Oriented Programming (ECOOP ’21), Anders Møller and Manu Sridharan (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 194). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. Article 22, 27 pages. isbn:978-3-95977-190-0 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2021.22 10.4230/LIPIcs.ECOOP.2021.22
Emilien Kenler and Federico Razzoli. 2015. MariaDB Essentials. Packt Publishing Ltd. isbn:978-1-78398-286-8
Mulki Indana Zulfa, Rudy Hartanto, and Adhistya Erna Permanasari. 2020. Caching strategy for Web application – a systematic literature review. International Journal of Web Information Systems, 16, 5 (2020), Jan., 545–569. issn:1744-0084 https://doi.org/10.1108/IJWIS-06-2020-0032 10.1108/IJWIS-06-2020-0032
Laure Philips, Coen De Roover, Tom Van Cutsem, and Wolfgang De Meuter. 2014. Towards Tierless Web Development without Tierless Languages. In Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! ’14). ACM, New York, NY, USA. 69–81. isbn:978-1-4503-3210-1 https://doi.org/10.1145/2661136.2661146 10.1145/2661136.2661146
Stephanie Balzer. 2011. Rumer: A programming language and modular verification technique based on relationships. Ph. D. Dissertation. Zürich, Switzerland. https://doi.org/10.3929/ethz-a-007086593 10.3929/ethz-a-007086593
Tom Murphy VII, Karl Crary, Robert Harper, and Frank Pfenning. 2004. A Symmetric Modal Lambda Calculus for Distributed Computing. In Proceedings of the 19th IEEE Symposium on Logic in Computer Science (LICS ’04). IEEE, Piscataway, NJ, USA. 286–295. https://doi.org/10.1109/LICS.2004.1319623 10.1109/LICS.2004.1319623
David Rajchenbach-Teller and Franois-Régis Sinot. 2010. Opa: Language Support for a Sane, Safe and Secure Web. http://owasp.org/www-pdf-archive/OWASP_AppSec_Research_2010_OPA_by_Rajchenbach-Teller.pdf In Proceedings of the OWASP AppSec Research. Accessed: 2023-07-30
Tiago Macedo and Fred Oliveira. 2011. Redis Cookbook: Practical Techniques for Fast Data Manipulation. O’Reilly Media. isbn:978-1-4493-0504-8
Ezra Cooper, Sam Lindley, Philip Wadler, and Jeremy Yallop. 2006. Links: Web Programming without Tiers. In Proceedings of the 5th International Conference on Formal Methods for Components and Objects, Frank S. de Boer, Marcello M. Bonsangue, Susanne Graf, and Willem P. de Roever (Eds.) (FMCO ’06). Springer-Verlag, Berlin, Heidelberg. 266–296. isbn:978-3-540-74791-8 https://doi.org/10.1007/978-3-540-74792-5_12 10.1007/978-3-540-74792-5_12
B. Liskov, A. Adya, M. Castro, S. Ghemawat, R. Gruber, U. Maheshwari, A. C. Myers, M. Day, and L. Shrira. 1996. Safe and Efficient Sharing of Persistent Objects in Thor. In Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data (SIGMOD ’96). ACM, New York, NY, USA. 318–329. isbn:978-0-89791-794-0 https://doi.org/10.1145/233269.233346 10.1145/233269.233346
Mastodon. 2016. Mastodon: Your self-hosted, globally interconnected microblogging community. https://github.com/mastodon/mastodon Accessed: 2023-07-30
Pascal Weisenburger, Johannes Wirth, and Guido Salvaneschi. 2020. A Survey of Multitier Programming. Comput. Surveys, 53, 4 (2020), Article 81, Sept., 35 pages. issn:0360-0300 https://doi.org/10.1145/3397495 10.1145/3397495
Alberto Lluch Lafuente, Flemming Nielson, and Hanne Riis Nielson. 2015. Discretionary Information Flow Control for Interaction-Oriented Specifications (Lecture Notes in Computer Science, Vol. 9200). Springer-Verlag, Berlin, Heidelberg. 427–450. isbn:978-3-319-23164-8 https://doi.org/10.1007/978-3-319-23165-5_20 10.1007/978-3-319-23165-5_20
Friedrich Steimann. 2013. Content over Container: Object-Oriented Programming with Multiplicities. In Proceedings of the 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! ’13). ACM, New York, NY, USA. 173–186. isbn:978-1-4503-2472-4 https://doi.org/10.1145/2509578.2509582 10.1145/2509578.2509582
George Zakhour, Pascal Weisenburger, and Guido Salvaneschi. 2023. Type-Safe Dynamic Placement with First-Class Placed Values. https://doi.org/10.5281/zenodo.8148841 10.5281/zenodo.8148841
AntennaPod Developers. 2011. AntennaPod – The Open Podcast Player. https://antennapod.org Accessed: 2023-07-30, Commit: 88289d0
Daco Harkes and Eelco Visser. 2014. Unifying and Generalizing Relations in Role-Based Data Modeling and Navigation. In Software Language Engineering, Benoît Combemale, David J. Pearce, Olivier Barais, and Jurgen J. Vinju (Eds.). Springer International Publishing, Cham. 241–260. isbn:978-3-319-11245-9 https://doi.org/10.1007/978-3-319-11245-9_14 10.1007/978-3-319-11245-9_14
Steve Zdancewic, Lantian Zheng, Nathaniel Nystrom, and Andrew C. Myers. 2002. Secure Program Partitioning. ACM Transactions on Computer Systems, 20, 3 (2002), Aug., 283–328. issn:0734-2071 https://doi.org/10.1145/566340.566343 10.1145/566340.566343
Hana Teyeb, Nejib Ben Hadj-Alouane, Samir Tata, and Ali Balma. 2017. Optimal Dynamic Placement of Virtual Machines in Geographically Distributed Cloud Data Centers. International Journal of Cooperative Information Systems, 26, 03 (2017), https://doi.org/10.1142/S0218843017500010 10.1142/S0218843017500010
Jed Liu, Owen Arden, Michael D. George, Andrew C. Myers, Toby Murray, Andrei Sabelfeld, and Lujo Bauer. 2017. Fabric: Building Open Distributed Systems Securely by Construction. Journal of Computer Security, 25, 4–5 (2017), Jan., 367–426. issn:0926-227X https://doi.org/10.3233/JCS-15805 10.3233/JCS-15805
Saverio Giallorenzo, Fabrizio Montesi, and Marco Peressotti. 2020. Choreographies as Objects. arxiv:2005.09520.
Gan Shen, Shun Kashiwa, and Lindsey Kuper. 2023. HasChor: Functional Choreographic Programming for All (Functional Pearl). Proceedings of the ACM on Programming Languages, 7, ICFP (2023), Article 207, Aug., 25 pages. https://doi.org/10.1145/3607849 10.1145/3607849
Mila Dalla Preda, Maurizio Gabbrielli, Saverio Giallorenzo, Ivan Lanese, and Jacopo Mauro. 2017. Dynamic Choreographies: Theory And Implementation. Logical Methods in Computer Science, 13, 2 (2017), April, 57 pages. https://doi.org/10.23638/LMCS-13(2:1)2017 10.23638/LMCS-13(2:1)2017
Giorgio Audrito, Roberto Casadei, Ferruccio Damiani, Guido Salvaneschi, and Mirko Viroli. 2022. Functional Programming for Distributed Systems with XC. In Proceedings of the 36th European Conference on Object-Oriented Programming (ECOOP ’22), Karim Ali and Jan Vitek (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 222). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. Article 20, 28 pages. isbn:978-3-95977-225-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2022.20 10.4230/LIPIcs.ECOOP.2022.20
Tom Murphy VII, Karl Crary, and Robert Harper. 2008. Type-Safe Distributed Programming with ML5. In Trustworthy Global Computing, Gilles Barthe and Cédric Fournet (Eds.). Springer-Verlag, Berlin, Heidelberg. 108–123. isbn:978-3-540-78663-4 https://doi.org/10.1007/978-3-540-78663-4_9 10.1007/978-3-540-78663-4_9
Fan Yang, Jinfeng Li, and James Cheng. 2016. Husky: Towards a More Efficient and Expressive Distributed Computing Framework. Proceedings of the VLDB Endowment, 9, 5 (2016), Jan., 420–431. issn:2150-8097 https://doi.org/10.14778/2876473.2876477 10.14778/2876473.2876477
Laure Philips, Joeri De Koster, Wolfgang De Meuter, and Coen De Roover. 2018. Search-based Tier Assignment for Optimising Offline Availability in Multi-tier Web Applications. The Art, Science, and Engineering of Programming, 2, 2 (2018), Article 3, Dec., 29 pages. issn:2473-7321 https://doi.org/10.22152/programming-journal.org/2018/2/3 10.22152/programming-journal.org/2018/2/3
Alex K. Simpson. 1994. The Proof Theory and Semantics of Intuitionistic Modal Logic. Ph. D. Dissertation. http://hdl.handle.net/1842/407
Bob Reynders, Frank Piessens, and Dominique Devriese. 2020. Gavial: Programming the Web with Multi-Tier FRP. The Art, Science, and Engineering of Programming, 4, 3 (2020), Article 6, Feb., 32 pages. issn:2473-7321 https://doi.org/10.22152/programming-journal.org/2020/4/6 10.22152/programming-journal.org/2020/4/6
Yongluan Zhou, Beng Chin Ooi, and Kian-Lee Tan. 2005. Dynamic Load Management for Distributed Continuous Query Systems. In 21st International Conference on Data Engineering (ICDE ’05). 322–323. https://doi.org/10.1109/ICDE.2005.54 10.1109/ICDE.2005.54
Troy Bryan Downing. 1998. Java RMI: Remote Method Invocation (1st ed.). IDG Books Worldwide, Inc., USA. isbn:978-0-7645-8043-7
Alberto Lluch Lafuente, Michele Loreti, and Ugo Montanari. 2017. Asynchronous Distributed Execution of Fixpoint-Based Computational Fields. Logical Methods in Computer Science, 13 (2017), https://doi.org/10.23638/LMCS-13(1:13)2017 10.23638/LMCS-13(1:13)2017
Heather Miller, Philipp Haller, and Martin Odersky. 2014.
e_1_2_1_20_1
(e_1_2_1_30_1) 2016
Macedo Tiago (e_1_2_1_28_1) 2011
e_1_2_1_45_1
e_1_2_1_43_1
Downing Troy Bryan (e_1_2_1_12_1)
e_1_2_1_49_1
e_1_2_1_26_1
e_1_2_1_47_1
Amiri Khalil (e_1_2_1_1_1) 2000
e_1_2_1_31_1
e_1_2_1_54_1
e_1_2_1_8_1
e_1_2_1_56_1
e_1_2_1_6_1
e_1_2_1_35_1
e_1_2_1_50_1
e_1_2_1_4_1
e_1_2_1_10_1
e_1_2_1_33_1
e_1_2_1_52_1
e_1_2_1_2_1
e_1_2_1_16_1
e_1_2_1_14_1
e_1_2_1_37_1
e_1_2_1_58_1
e_1_2_1_18_1
Serrano Manuel (e_1_2_1_41_1)
Rajchenbach-Teller David (e_1_2_1_39_1) 2010
e_1_2_1_42_1
e_1_2_1_40_1
e_1_2_1_23_1
e_1_2_1_46_1
e_1_2_1_21_1
e_1_2_1_44_1
e_1_2_1_27_1
e_1_2_1_25_1
e_1_2_1_48_1
e_1_2_1_29_1
e_1_2_1_7_1
Liskov Barbara (e_1_2_1_24_1) 1995
e_1_2_1_55_1
e_1_2_1_5_1
Lightbend Inc. (e_1_2_1_22_1) 2020; 2
e_1_2_1_57_1
e_1_2_1_3_1
e_1_2_1_13_1
e_1_2_1_34_1
e_1_2_1_51_1
e_1_2_1_11_1
e_1_2_1_32_1
e_1_2_1_53_1
e_1_2_1_17_1
e_1_2_1_38_1
e_1_2_1_15_1
e_1_2_1_36_1
e_1_2_1_9_1
e_1_2_1_19_1
References_xml – reference: Zachary Arani, Drake Chapman, Chenxiao Wang, Le Gruenwald, Laurent d’Orazio, and Taras Basiuk. 2020. A Scored Semantic Cache Replacement Strategy for Mobile Cloud Database Systems. In ADBIS, TPDL and EDA 2020 Common Workshops and Doctoral Consortium, Ladjel Bellatreche, Mária Bieliková, Omar Boussaïd, Barbara Catania, Jérôme Darmont, Elena Demidova, Fabien Duchateau, Mark Hall, Tanja Merčun, Boris Novikov, Christos Papatheodorou, Thomas Risse, Oscar Romero, Lucile Sautot, Guilaine Talens, Robert Wrembel, and Maja Žumer (Eds.). Springer International Publishing, Cham. 237–248. isbn:978-3-030-55814-7 https://doi.org/10.1007/978-3-030-55814-7_20 10.1007/978-3-030-55814-7_20
– reference: Heather Miller, Philipp Haller, and Martin Odersky. 2014. Spores: A Type-Based Foundation for Closures in the Age of Concurrency and Distribution. In ECOOP ’14, Richard Jones (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg. 308–333. isbn:978-3-662-44202-9 https://doi.org/10.1007/978-3-662-44202-9_13 10.1007/978-3-662-44202-9_13
– reference: Alex K. Simpson. 1994. The Proof Theory and Semantics of Intuitionistic Modal Logic. Ph. D. Dissertation. http://hdl.handle.net/1842/407
– reference: Yongluan Zhou, Beng Chin Ooi, and Kian-Lee Tan. 2005. Dynamic Load Management for Distributed Continuous Query Systems. In 21st International Conference on Data Engineering (ICDE ’05). 322–323. https://doi.org/10.1109/ICDE.2005.54 10.1109/ICDE.2005.54
– reference: B. Liskov, A. Adya, M. Castro, S. Ghemawat, R. Gruber, U. Maheshwari, A. C. Myers, M. Day, and L. Shrira. 1996. Safe and Efficient Sharing of Persistent Objects in Thor. In Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data (SIGMOD ’96). ACM, New York, NY, USA. 318–329. isbn:978-0-89791-794-0 https://doi.org/10.1145/233269.233346 10.1145/233269.233346
– reference: A. Karve, T. Kimbrel, G. Pacifici, M. Spreitzer, M. Steinder, M. Sviridenko, and A. Tantawi. 2006. Dynamic Placement for Clustered Web Applications. In Proceedings of the 15th International Conference on World Wide Web (WWW ’06). ACM, New York, NY, USA. 595–604. isbn:978-1-59593-323-2 https://doi.org/10.1145/1135777.1135865 10.1145/1135777.1135865
– reference: A.K. Wright and M. Felleisen. 1994. A Syntactic Approach to Type Soundness. Information and Computation, 115, 1 (1994), 38–94. issn:0890-5401 https://doi.org/10.1006/inco.1994.1093 10.1006/inco.1994.1093
– reference: Mulki Indana Zulfa, Rudy Hartanto, and Adhistya Erna Permanasari. 2020. Caching strategy for Web application – a systematic literature review. International Journal of Web Information Systems, 16, 5 (2020), Jan., 545–569. issn:1744-0084 https://doi.org/10.1108/IJWIS-06-2020-0032 10.1108/IJWIS-06-2020-0032
– reference: Manuel Serrano, Erick Gallesio, and Florian Loitsch. 2006. Hop, A Language for Programming the Web 2.0. In Companion to the 21th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA Companion ’06). ACM, New York, NY, USA.
– reference: Giorgio Audrito, Mirko Viroli, Ferruccio Damiani, Danilo Pianini, and Jacob Beal. 2019. A Higher-Order Calculus of Computational Fields. ACM Transactions on Computational Logic, 20, 1 (2019), Article 5, Jan., 55 pages. issn:1529-3785 https://doi.org/10.1145/3285956 10.1145/3285956
– reference: Stephanie Balzer. 2011. Rumer: A programming language and modular verification technique based on relationships. Ph. D. Dissertation. Zürich, Switzerland. https://doi.org/10.3929/ethz-a-007086593 10.3929/ethz-a-007086593
– reference: Barbara Liskov, Dorothy Curtis, Mark Day, Sanjay Ghemawat, Robert Gruber, Paul Johnson, and Andrew C. Myers. 1995. Theta Reference Manual. http://www.cs.cornell.edu/andru/papers/thetaref.pdf Accessed: 2023-07-30
– reference: Pascal Weisenburger and Guido Salvaneschi. 2019. Multitier Modules. In Proceedings of the 33rd European Conference on Object-Oriented Programming (ECOOP ’19), Alastair F. Donaldson (Ed.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 134). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. Article 3, 29 pages. isbn:978-3-95977-111-5 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2019.3 10.4230/LIPIcs.ECOOP.2019.3
– reference: Saverio Giallorenzo, Fabrizio Montesi, and Marco Peressotti. 2020. Choreographies as Objects. arxiv:2005.09520.
– reference: Luís Cruz-Filipe and Fabrizio Montesi. 2016. Choreographies in Practice. In Proceedings of the 36th IFIP International Conference on Formal Techniques for Distributed Objects, Components, and Systems, Elvira Albert and Ivan Lanese (Eds.) (FORTE ’16). Springer-Verlag, Berlin, Heidelberg. 114–123. isbn:978-3-319-39569-2 https://doi.org/10.1007/978-3-319-39570-8_8 10.1007/978-3-319-39570-8_8
– reference: Saverio Giallorenzo, Fabrizio Montesi, Marco Peressotti, David Richter, Guido Salvaneschi, and Pascal Weisenburger. 2021. Multiparty Languages: The Choreographic and Multitier Cases. In Proceedings of the 35th European Conference on Object-Oriented Programming (ECOOP ’21), Anders Møller and Manu Sridharan (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 194). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. Article 22, 27 pages. isbn:978-3-95977-190-0 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2021.22 10.4230/LIPIcs.ECOOP.2021.22
– reference: Friedrich Steimann. 2015. None, One, Many – What’s the Difference, Anyhow? In 1st Summit on Advances in Programming Languages (SNAPL ’15), Thomas Ball, Rastislav Bodik, Shriram Krishnamurthi, Benjamin S. Lerner, and Greg Morrisett (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 32). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. 294–308. isbn:978-3-939897-80-4 issn:1868-8969 https://doi.org/10.4230/LIPIcs.SNAPL.2015.294 10.4230/LIPIcs.SNAPL.2015.294
– reference: Daco Harkes and Eelco Visser. 2014. Unifying and Generalizing Relations in Role-Based Data Modeling and Navigation. In Software Language Engineering, Benoît Combemale, David J. Pearce, Olivier Barais, and Jurgen J. Vinju (Eds.). Springer International Publishing, Cham. 241–260. isbn:978-3-319-11245-9 https://doi.org/10.1007/978-3-319-11245-9_14 10.1007/978-3-319-11245-9_14
– reference: Troy Bryan Downing. 1998. Java RMI: Remote Method Invocation (1st ed.). IDG Books Worldwide, Inc., USA. isbn:978-0-7645-8043-7
– reference: Adam Chlipala. 2015. Ur/Web: A Simple Model for Programming the Web. In Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL ’15). ACM, New York, NY, USA. 153–165. isbn:978-1-4503-3300-9 https://doi.org/10.1145/2676726.2677004 10.1145/2676726.2677004
– reference: Kohei Honda, Nobuko Yoshida, and Marco Carbone. 2008. Multiparty Asynchronous Session Types. In Proceedings of the 35th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL ’08). ACM, New York, NY, USA. 273–284. isbn:978-1-59593-689-9 https://doi.org/10.1145/1328438.1328472 10.1145/1328438.1328472
– reference: Laure Philips, Coen De Roover, Tom Van Cutsem, and Wolfgang De Meuter. 2014. Towards Tierless Web Development without Tierless Languages. In Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! ’14). ACM, New York, NY, USA. 69–81. isbn:978-1-4503-3210-1 https://doi.org/10.1145/2661136.2661146 10.1145/2661136.2661146
– reference: Friedrich Steimann. 2013. Content over Container: Object-Oriented Programming with Multiplicities. In Proceedings of the 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! ’13). ACM, New York, NY, USA. 173–186. isbn:978-1-4503-2472-4 https://doi.org/10.1145/2509578.2509582 10.1145/2509578.2509582
– reference: Ezra Cooper, Sam Lindley, Philip Wadler, and Jeremy Yallop. 2006. Links: Web Programming without Tiers. In Proceedings of the 5th International Conference on Formal Methods for Components and Objects, Frank S. de Boer, Marcello M. Bonsangue, Susanne Graf, and Willem P. de Roever (Eds.) (FMCO ’06). Springer-Verlag, Berlin, Heidelberg. 266–296. isbn:978-3-540-74791-8 https://doi.org/10.1007/978-3-540-74792-5_12 10.1007/978-3-540-74792-5_12
– reference: Fabrizio Montesi. 2014. Kickstarting Choreographic Programming. In Proceedings of the 13th International Workshop on Web Services and Formal Methods, Thomas Hildebrandt, António Ravara, Jan Martijn van der Werf, and Matthias Weidlich (Eds.) (WS-FM ’14). Springer-Verlag, Berlin, Heidelberg. 3–10. isbn:978-3-319-33611-4 https://doi.org/10.1007/978-3-319-33612-1_1 10.1007/978-3-319-33612-1_1
– reference: J. C. M. Baeten. 2005. A Brief History of Process Algebra. Theoretical Computer Science, 335, 2–113 (2005), May, 131–146. issn:0304-3975 https://doi.org/10.1016/j.tcs.2004.07.036 10.1016/j.tcs.2004.07.036
– reference: Mirko Viroli, Jacob Beal, Ferruccio Damiani, Giorgio Audrito, Roberto Casadei, and Danilo Pianini. 2019. From Distributed Coordination to Field Calculus and Aggregate Computing. Journal of Logical and Algebraic Methods in Programming, 109 (2019), issn:2352-2208 https://doi.org/10.1016/j.jlamp.2019.100486 10.1016/j.jlamp.2019.100486
– reference: Bob Reynders, Frank Piessens, and Dominique Devriese. 2020. Gavial: Programming the Web with Multi-Tier FRP. The Art, Science, and Engineering of Programming, 4, 3 (2020), Article 6, Feb., 32 pages. issn:2473-7321 https://doi.org/10.22152/programming-journal.org/2020/4/6 10.22152/programming-journal.org/2020/4/6
– reference: Hana Teyeb, Nejib Ben Hadj-Alouane, Samir Tata, and Ali Balma. 2017. Optimal Dynamic Placement of Virtual Machines in Geographically Distributed Cloud Data Centers. International Journal of Cooperative Information Systems, 26, 03 (2017), https://doi.org/10.1142/S0218843017500010 10.1142/S0218843017500010
– reference: Lightbend Inc. 2020. Akka Scala Documentation, Release 2.4.20. Accessed: 2023-07-30
– reference: Jed Liu, Michael D. George, K. Vikram, Xin Qi, Lucas Waye, and Andrew C. Myers. 2009. Fabric: A Platform for Secure Distributed Computation and Storage. In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (SOSP ’09). ACM, New York, NY, USA. 321–334. isbn:978-1-60558-752-3 https://doi.org/10.1145/1629575.1629606 10.1145/1629575.1629606
– reference: Mastodon. 2016. Mastodon: Your self-hosted, globally interconnected microblogging community. https://github.com/mastodon/mastodon Accessed: 2023-07-30
– reference: Khalil Amiri, David Petrou, Gregory R. Ganger, and Garth A. Gibson. 2000. Dynamic Function Placement for Data-Intensive Cluster Computing. In Proceedings of the 2000 USENIX Annual Technical Conference (USENIX ATC ’00). USENIX Association, San Diego, CA. 16 pages. https://www.usenix.org/conference/2000-usenix-annual-technical-conference/dynamic-function-placement-data-intensive-cluster
– reference: Jim Waldo, Geoff Wyant, Ann Wollrath, and Sam Kendall. 1994. A Note on Distributed Computing. https://scholar.harvard.edu/waldo/publications/note-distributed-computing Sun Microsystems Laboratories, Accessed: 2023-07-30
– reference: AntennaPod Developers. 2011. AntennaPod – The Open Podcast Player. https://antennapod.org Accessed: 2023-07-30, Commit: 88289d0
– reference: Jed Liu, Owen Arden, Michael D. George, Andrew C. Myers, Toby Murray, Andrei Sabelfeld, and Lujo Bauer. 2017. Fabric: Building Open Distributed Systems Securely by Construction. Journal of Computer Security, 25, 4–5 (2017), Jan., 367–426. issn:0926-227X https://doi.org/10.3233/JCS-15805 10.3233/JCS-15805
– reference: Marco Mamei and Franco Zambonelli. 2004. Programming Pervasive and Mobile Computing Applications with the TOTA Middleware. In Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications. IEEE Press, Piscataway, NJ, USA. 263–273. isbn:0-7695-2090-1 https://doi.org/10.1109/PERCOM.2004.1276864 10.1109/PERCOM.2004.1276864
– reference: Pascal Weisenburger, Johannes Wirth, and Guido Salvaneschi. 2020. A Survey of Multitier Programming. Comput. Surveys, 53, 4 (2020), Article 81, Sept., 35 pages. issn:0360-0300 https://doi.org/10.1145/3397495 10.1145/3397495
– reference: George Zakhour, Pascal Weisenburger, and Guido Salvaneschi. 2023. Type-Safe Dynamic Placement with First-Class Placed Values. https://doi.org/10.5281/zenodo.8148841 10.5281/zenodo.8148841
– reference: Laure Philips, Joeri De Koster, Wolfgang De Meuter, and Coen De Roover. 2018. Search-based Tier Assignment for Optimising Offline Availability in Multi-tier Web Applications. The Art, Science, and Engineering of Programming, 2, 2 (2018), Article 3, Dec., 29 pages. issn:2473-7321 https://doi.org/10.22152/programming-journal.org/2018/2/3 10.22152/programming-journal.org/2018/2/3
– reference: Tiago Macedo and Fred Oliveira. 2011. Redis Cookbook: Practical Techniques for Fast Data Manipulation. O’Reilly Media. isbn:978-1-4493-0504-8
– reference: Tom Murphy VII, Karl Crary, Robert Harper, and Frank Pfenning. 2004. A Symmetric Modal Lambda Calculus for Distributed Computing. In Proceedings of the 19th IEEE Symposium on Logic in Computer Science (LICS ’04). IEEE, Piscataway, NJ, USA. 286–295. https://doi.org/10.1109/LICS.2004.1319623 10.1109/LICS.2004.1319623
– reference: Stuart Clayman, Elisa Maini, Alex Galis, Antonio Manzalini, and Nicola Mazzocca. 2014. The Dynamic Placement of Virtual Network Functions. In 2014 IEEE Network Operations and Management Symposium (NOMS ’14). 1–9. https://doi.org/10.1109/NOMS.2014.6838412 10.1109/NOMS.2014.6838412
– reference: Pascal Weisenburger, Mirko Köhler, and Guido Salvaneschi. 2018. Distributed System Development with ScalaLoci. Proceedings of the ACM on Programming Languages, 2, OOPSLA (2018), Article 129, Oct., 30 pages. issn:2475-1421 https://doi.org/10.1145/3276499 10.1145/3276499
– reference: Tom Murphy VII, Karl Crary, and Robert Harper. 2008. Type-Safe Distributed Programming with ML5. In Trustworthy Global Computing, Gilles Barthe and Cédric Fournet (Eds.). Springer-Verlag, Berlin, Heidelberg. 108–123. isbn:978-3-540-78663-4 https://doi.org/10.1007/978-3-540-78663-4_9 10.1007/978-3-540-78663-4_9
– reference: Steve Zdancewic, Lantian Zheng, Nathaniel Nystrom, and Andrew C. Myers. 2002. Secure Program Partitioning. ACM Transactions on Computer Systems, 20, 3 (2002), Aug., 283–328. issn:0734-2071 https://doi.org/10.1145/566340.566343 10.1145/566340.566343
– reference: Ciaran Gultnieks. 2010. F-Droid – Free and Open Source Android App Repository. https://f-droid.org Accessed: 2023-07-30
– reference: Mila Dalla Preda, Maurizio Gabbrielli, Saverio Giallorenzo, Ivan Lanese, and Jacopo Mauro. 2017. Dynamic Choreographies: Theory And Implementation. Logical Methods in Computer Science, 13, 2 (2017), April, 57 pages. https://doi.org/10.23638/LMCS-13(2:1)2017 10.23638/LMCS-13(2:1)2017
– reference: Fan Yang, Jinfeng Li, and James Cheng. 2016. Husky: Towards a More Efficient and Expressive Distributed Computing Framework. Proceedings of the VLDB Endowment, 9, 5 (2016), Jan., 420–431. issn:2150-8097 https://doi.org/10.14778/2876473.2876477 10.14778/2876473.2876477
– reference: Giorgio Audrito, Roberto Casadei, Ferruccio Damiani, Guido Salvaneschi, and Mirko Viroli. 2022. Functional Programming for Distributed Systems with XC. In Proceedings of the 36th European Conference on Object-Oriented Programming (ECOOP ’22), Karim Ali and Jan Vitek (Eds.) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 222). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany. Article 20, 28 pages. isbn:978-3-95977-225-9 issn:1868-8969 https://doi.org/10.4230/LIPIcs.ECOOP.2022.20 10.4230/LIPIcs.ECOOP.2022.20
– reference: Ivan Lanese, Claudio Guidi, Fabrizio Montesi, and Gianluigi Zavattaro. 2008. Bridging the Gap between Interaction- and Process-Oriented Choreographies. In Proceedings of the 6th IEEE International Conference on Software Engineering and Formal Methods (SEFM ’08). IEEE Computer Society, Washington, DC, USA. 323–332. isbn:978-0-7695-3437-4 https://doi.org/10.1109/SEFM.2008.11 10.1109/SEFM.2008.11
– reference: Gabriel Radanne, Jérôme Vouillon, and Vincent Balat. 2016. Eliom: A core ML language for Tierless Web Programming. In Proceedings of the 14th Asian Symposium on Programming Languages and Systems, Atsushi Igarashi (Ed.) (APLAS ’16). Springer-Verlag, Berlin, Heidelberg. 377–397. isbn:978-3-319-47957-6 https://doi.org/10.1007/978-3-319-47958-3_20 10.1007/978-3-319-47958-3_20
– reference: Alberto Lluch Lafuente, Michele Loreti, and Ugo Montanari. 2017. Asynchronous Distributed Execution of Fixpoint-Based Computational Fields. Logical Methods in Computer Science, 13 (2017), https://doi.org/10.23638/LMCS-13(1:13)2017 10.23638/LMCS-13(1:13)2017
– reference: Gan Shen, Shun Kashiwa, and Lindsey Kuper. 2023. HasChor: Functional Choreographic Programming for All (Functional Pearl). Proceedings of the ACM on Programming Languages, 7, ICFP (2023), Article 207, Aug., 25 pages. https://doi.org/10.1145/3607849 10.1145/3607849
– reference: David Rajchenbach-Teller and Franois-Régis Sinot. 2010. Opa: Language Support for a Sane, Safe and Secure Web. http://owasp.org/www-pdf-archive/OWASP_AppSec_Research_2010_OPA_by_Rajchenbach-Teller.pdf In Proceedings of the OWASP AppSec Research. Accessed: 2023-07-30
– reference: Emilien Kenler and Federico Razzoli. 2015. MariaDB Essentials. Packt Publishing Ltd. isbn:978-1-78398-286-8
– reference: Alberto Lluch Lafuente, Flemming Nielson, and Hanne Riis Nielson. 2015. Discretionary Information Flow Control for Interaction-Oriented Specifications (Lecture Notes in Computer Science, Vol. 9200). Springer-Verlag, Berlin, Heidelberg. 427–450. isbn:978-3-319-23164-8 https://doi.org/10.1007/978-3-319-23165-5_20 10.1007/978-3-319-23165-5_20
– reference: Manuel Serrano and Vincent Prunet. 2016. A Glimpse of Hopjs. In Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming (ICFP ’16). ACM, New York, NY, USA. 180–192. isbn:978-1-4503-4219-3 https://doi.org/10.1145/2951913.2951916 10.1145/2951913.2951916
– ident: e_1_2_1_16_1
  doi: 10.1007/978-3-319-11245-9_14
– ident: e_1_2_1_14_1
  doi: 10.4230/LIPIcs.ECOOP.2021.22
– ident: e_1_2_1_49_1
– ident: e_1_2_1_23_1
  doi: 10.1145/233269.233346
– ident: e_1_2_1_36_1
  doi: 10.1145/2661136.2661146
– ident: e_1_2_1_34_1
  doi: 10.1109/LICS.2004.1319623
– ident: e_1_2_1_19_1
– ident: e_1_2_1_52_1
  doi: 10.1145/3397495
– volume: 2
  start-page: 20
  issue: 4
  year: 2020
  ident: e_1_2_1_22_1
  article-title: Akka Scala Documentation
  publication-title: Release
– ident: e_1_2_1_9_1
  doi: 10.1109/NOMS.2014.6838412
– ident: e_1_2_1_4_1
  doi: 10.4230/LIPIcs.ECOOP.2022.20
– ident: e_1_2_1_51_1
  doi: 10.4230/LIPIcs.ECOOP.2019.3
– ident: e_1_2_1_18_1
  doi: 10.1145/1135777.1135865
– ident: e_1_2_1_54_1
  doi: 10.14778/2876473.2876477
– ident: e_1_2_1_6_1
  doi: 10.1016/j.tcs.2004.07.036
– ident: e_1_2_1_31_1
  doi: 10.1007/978-3-662-44202-9_13
– ident: e_1_2_1_32_1
  doi: 10.1007/978-3-319-33612-1_1
– volume-title: Mastodon: Your self-hosted, globally interconnected microblogging community. https://github.com/mastodon/mastodon Accessed: 2023-07-30
  year: 2016
  ident: e_1_2_1_30_1
– ident: e_1_2_1_7_1
  doi: 10.3929/ethz-a-007086593
– ident: e_1_2_1_29_1
  doi: 10.1109/PERCOM.2004.1276864
– ident: e_1_2_1_53_1
  doi: 10.1006/inco.1994.1093
– ident: e_1_2_1_55_1
  doi: 10.5281/zenodo.8148841
– ident: e_1_2_1_25_1
  doi: 10.3233/JCS-15805
– volume-title: Java RMI: Remote Method Invocation
  ident: e_1_2_1_12_1
– ident: e_1_2_1_2_1
– ident: e_1_2_1_35_1
  doi: 10.22152/programming-journal.org/2018/2/3
– volume-title: Companion to the 21th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA Companion ’06)
  ident: e_1_2_1_41_1
– ident: e_1_2_1_13_1
– volume-title: Myers
  year: 1995
  ident: e_1_2_1_24_1
– ident: e_1_2_1_38_1
  doi: 10.1007/978-3-319-47958-3_20
– ident: e_1_2_1_40_1
  doi: 10.22152/programming-journal.org/2020/4/6
– volume-title: Opa: Language Support for a Sane, Safe and Secure Web
  year: 2010
  ident: e_1_2_1_39_1
– ident: e_1_2_1_5_1
  doi: 10.1145/3285956
– ident: e_1_2_1_50_1
  doi: 10.1145/3276499
– ident: e_1_2_1_33_1
  doi: 10.1007/978-3-540-78663-4_9
– volume-title: Proceedings of the 2000 USENIX Annual Technical Conference (USENIX ATC ’00)
  year: 2000
  ident: e_1_2_1_1_1
– ident: e_1_2_1_45_1
  doi: 10.1145/2509578.2509582
– ident: e_1_2_1_3_1
  doi: 10.1007/978-3-030-55814-7_20
– ident: e_1_2_1_58_1
  doi: 10.1108/IJWIS-06-2020-0032
– ident: e_1_2_1_42_1
  doi: 10.1145/2951913.2951916
– ident: e_1_2_1_26_1
  doi: 10.1145/1629575.1629606
– ident: e_1_2_1_48_1
  doi: 10.1016/j.jlamp.2019.100486
– ident: e_1_2_1_10_1
  doi: 10.1007/978-3-540-74792-5_12
– ident: e_1_2_1_11_1
  doi: 10.1007/978-3-319-39570-8_8
– ident: e_1_2_1_15_1
– ident: e_1_2_1_47_1
  doi: 10.1142/S0218843017500010
– ident: e_1_2_1_20_1
  doi: 10.23638/LMCS-13(1:13)2017
– ident: e_1_2_1_56_1
  doi: 10.1145/566340.566343
– ident: e_1_2_1_57_1
  doi: 10.1109/ICDE.2005.54
– ident: e_1_2_1_17_1
  doi: 10.1145/1328438.1328472
– ident: e_1_2_1_37_1
  doi: 10.23638/LMCS-13(2:1)2017
– volume-title: Redis Cookbook: Practical Techniques for Fast Data Manipulation. O’Reilly Media. isbn:978-1-4493-0504-8
  year: 2011
  ident: e_1_2_1_28_1
– ident: e_1_2_1_44_1
– ident: e_1_2_1_8_1
  doi: 10.1145/2676726.2677004
– ident: e_1_2_1_27_1
  doi: 10.1007/978-3-319-23165-5_20
– ident: e_1_2_1_46_1
  doi: 10.4230/LIPIcs.SNAPL.2015.294
– ident: e_1_2_1_43_1
  doi: 10.1145/3607849
– ident: e_1_2_1_21_1
  doi: 10.1109/SEFM.2008.11
SSID ssj0001934839
Score 2.2418365
Snippet Several distributed programming language solutions have been proposed to reason about the placement of data, computations, and peers interaction. Such...
SourceID crossref
acm
SourceType Enrichment Source
Index Database
Publisher
StartPage 2142
SubjectTerms Distributed computing models
Distributed programming languages
Domain specific languages
Software and its engineering
Theory of computation
SubjectTermsDisplay Software and its engineering -- Distributed programming languages
Software and its engineering -- Domain specific languages
Theory of computation -- Distributed computing models
Title Type-Safe Dynamic Placement with First-Class Placed Values
URI https://dl.acm.org/doi/10.1145/3622873
Volume 7
WOSCitedRecordID wos001087279100077&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: PRVHPJ
  databaseName: ROAD: Directory of Open Access Scholarly Resources
  customDbUrl:
  eissn: 2475-1421
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0001934839
  issn: 2475-1421
  databaseCode: M~E
  dateStart: 20170101
  isFulltext: true
  titleUrlDefault: https://road.issn.org
  providerName: ISSN International Centre
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1LbxMxELagcODCo4AoL_mAuFQWWce7XnOLCoVDH5FSqopLNH6JiHRbNQnqid_O-LEPUA9w4LKK1paz8eeMv5md8UfIG2GtNdbVyNwUZ6KqPIMKLKt0NeJaac-j1uHpgTw6qs_O1DTXnqyinIBsmvr6Wl3-V6jxHoIdSmf_Ae5uULyBnxF0vCLseP074NGzZDPwbvdDUpsPwkQmRgFT1HV_gYyPRTXM1GR3T2G5ycmEmahOu40t5npM9g7Da4WczXUe4gttpLMj5V_h-zd8wD7S3r_1WazSEQtpfUxhZaDL7JjBEtm8Qy87JhZ82izsxTAWwWNWWyqVzKsn57dH-8WFLFkhUgF0a2zlYE0dH09nBxP-m_lMR23lrRjdpdHNZl6EEzFw70V_b9zvZF1-YW65Te5wWapg7A5_DkJvaiyQF6YS6jDWu9w_MBRzPmAoA6px8pDczz4CnSRsH5FbrtkmD1r9DZrN8WPyvoOaZqhpBzUNUNMB1KnJ0gT1E_Jl_-PJ3meWtTAYcCnXDAQH460F_GM5jU-rPDfcSq29DzKrMBq5QpXGIz_UytbjILYI0lkO6GELO35KtpqLxj0j1HIFStfOFBZ_O-BsFIWrS6Ti0lsBeods4yzML9NpJ_M8NzvkbTsrc5OPjw8qJst5Km0v-46069iO8UeX5zd-wwtyr19TL8nW-mrjXpG75sd6sbp6HSH8BYN6W6k
linkProvider ISSN International Centre
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=Type-Safe+Dynamic+Placement+with+First-Class+Placed+Values&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Zakhour%2C+George&rft.au=Weisenburger%2C+Pascal&rft.au=Salvaneschi%2C+Guido&rft.date=2023-10-16&rft.pub=ACM&rft.eissn=2475-1421&rft.volume=7&rft.issue=OOPSLA2&rft.spage=2142&rft.epage=2170&rft_id=info:doi/10.1145%2F3622873&rft.externalDocID=3622873
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2475-1421&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2475-1421&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2475-1421&client=summon