Abstract
Legal contracts can be amended during their lifetime through the agreement of the parties or in accordance with the doctrines of force majeure and hardship. When legal contracts are defined using a programming language, amendments are made through runtime adjustments to the contract’s behavior and must be expressed by means of appropriate language features. In this paper, we examine the extension of Stipula, a formal language for legal contracts, with higher-order functionality to enable the dynamic updating of contract codes. We discuss the semantics of the language when amendments either extend or override the contract’s functionality. Additionally, we study two techniques for constraining amendments, one using annotations within the contract and another that allows for runtime agreements between parties.
Supported by the SERICS project (PE00000014) under the MUR National Recovery and Resilience Plan funded by the European Union – NextGenerationEU – and by the H2020 ERC Project CompuLaw (G.A. 833647).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Basu, S., Foster, N., Grimmelmann, J.: Property conveyances as a programming language. In: Proceedings of 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software, Onward! 2019, pp. 128–142. Association for Computing Machinery, New York (2019)
Basu, S., Mohan, A., Grimmelmann, J., Foster, N.: Legal calculi. Technical report, ProLaLa 2022 ProLaLa Programming Languages and the Law (2022). https://popl22.sigplan.org/details/prolala-2022-papers/6/Legal-Calculi
Bortolotti, F.: Force Majeure and Hardship Clauses - Introductory note and commentary. Technical report, International Chamber of Commerce (2020)
Vitalik Buterin. Ethereum white paper (2013). https://github.com/ethereum/wiki/wiki/White-Paper
Crafa, S., Laneve, C.: Liquidity analysis in resource-aware programming. In: Proc. 18th Int. Conference, FACS 2022, vol. 13712. LNCS, pp. 205–221. Springer (2022)
Crafa, S., Laneve, C., Sartor, G.: Stipula: a domain specific language for legal contracts. Presented at the Int. Workshop Programming Languages and the Law, January 16, 2022
Crafa, S., Laneve, C., Sartor, G., Veschetti, A.: Pacta sunt servanda: legal contracts in Stipula. Science of Computer Programming, 225, January 2023
Crafa, S., Laneve, C., Veschetti, A.: The Higher-order Stipula Prototype, July 2022. Available on github: https://github.com/stipula-language
de Kruijff, J.T., Hans Weigand, H.: An introduction to commitment based smart contracts using reactionruleml. In: Proc. 12th Int. Workshop on Value Modeling and Business Ontologies (VMBO), vol. 2239, pp. 149–157. CEUR-WS.org (2018)
de Kruijff, J.T., Hans Weigand, H.: Introducing commitruleml for smart contracts. In: Proc. 13th Int. Workshop on Value Modeling and Business Ontologies (VMBO), vol. 2383. CEUR-WS.org (2019)
Fontaine, M., De Ly, F.: Drafting International Contracts. BRILL (2006)
Ethereum Foundation. Upgrading smart contracts (2023). https://ethereum.org/en/developers/docs/smart-contracts/upgrading
Frantz, C.K., Nowostawski, M.: From institutions to code: Towards automated generation of smart contracts. In: 2016 IEEE 1st International Workshops on Foundations and Applications of Self* Systems (FAS*W), pp. 210–215 (2016)
He, X., Qin, B., Zhu, Y., Chen, X., Liu, Y.: Spesc: a specification language for smart contracts. In: 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC), vol. 01, pp. 132–137 (2018)
Lopez-Herrejon, R.E., Batory, D., Cook, W.: Evaluating support for features in advanced modularization technologies. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 169–194. Springer, Heidelberg (2005). https://doi.org/10.1007/11531142_8
Lexon Foundation. Lexon Home Page (2019). http://www.lexon.tech
Merigoux, D., Chataing, N., Protzenko, J.: Catala: a programming language for the law. In: Proceedings of ACM Program. Lang., 5(ICFP), Aug 2021
Mik, E.: Smart contracts terminology, technical limitations and real world complexity. Law Innov. Technol. 9, 269–300 (2017)
Mudge, N.: How diamond upgrades work (2022). https://dev.to/mudgen/how-diamond-upgrades-work-417j
Sangiorgi, D.: From π-calculus to higher-order π-calculus — and back. In: Gaudel, M.-C., Jouannaud, J.-P. (eds.) CAAP 1993. LNCS, vol. 668, pp. 151–166. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-56610-4_62
Weingaertner, T., Rao, R., Ettlin, J., Suter, P., Dublanc, P.: Smart contracts using blockly: Representing a purchase agreement using a graphical programming language. In: 2018 Crypto Valley Conference on Blockchain Technology (CVCBT), pp. 55–64 (2018)
Wright, A., Roon, D., ConsenSys AG.: OpenLaw Web Site (2019). https://www.openlaw.io
Acknowledgements
We are grateful to Silvia Crafa for the many insightful discussions about Stipula and Adele Veschetti for prototyping both Stipula and higher-order Stipula. We also thank the anonymous Coordination referees for the detailed suggestions that considerably improved the paper.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 IFIP International Federation for Information Processing
About this paper
Cite this paper
Laneve, C., Parenti, A., Sartor, G. (2023). Legal Contracts Amending with . In: Jongmans, SS., Lopes, A. (eds) Coordination Models and Languages. COORDINATION 2023. Lecture Notes in Computer Science, vol 13908. Springer, Cham. https://doi.org/10.1007/978-3-031-35361-1_14
Download citation
DOI: https://doi.org/10.1007/978-3-031-35361-1_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35360-4
Online ISBN: 978-3-031-35361-1
eBook Packages: Computer ScienceComputer Science (R0)