Abstract
Software applications increasingly deploy scripting embedded languages for extensibility, letting introduce custom extensions on top of the original application components. This results in two language layers, the one in which the application is implemented and the embedded language itself in which the extensions are written. During runtime, active calls amongst these two layers may be naturally intermixed, posing challenges for intuitive cross-language exception handling. At present, besides all .NET languages which cooperate by relying on a common language infrastructure, cross-language exception handling is not supported by existing embedded languages like Python, Perl, Ruby and Lua. We discuss the requirements for cross-exception handling and we show how they are accommodated via small-scale amendments in the embedded language API and runtime.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Boost, boost.python (2003), http://www.boost.org/doc/libs/1_46_1/libs/python/doc/
Brito, P., de Lemos, R., Rubira, C., Martins, E.: Architecting Fault Tolerance with Exception Handling: Verification and Validation. Journal of Computer Science and Technology 24(2), 212–237 (2009)
Flanagan, D., Matsumoto, Y.: The Ruby Programming Language. O. Reilly, Sebastopol (2008)
Ierusalimschy, R.: Programming in Lua (2003), http://www.lua.org/pil/ ISBN 85-903798-1-7
Iliasov, A., Romanovsky, A.: Exception Handling in Coordination-Based Mobile Environments. COMPSAC (1), 341–350 (2005)
Loui, R.P.: In Praise of Scripting: Real Programming Pragmatism. IEEE Computer 41(7), 22–26 (2008)
Microsoft Corp., Cross-Language Interoperability, NET Framework 4, MSDN (2011)
Python language (2009), http://www.python.org/
Romanovsky, A.: Exception Handling in Component-Based System Development. In: COMPSAC, p. 580 (2001)
Savidis, A.: Delta Language (2010), http://www.ics.forth.gr/hci/files/plang/Delta/Delta.html
Wall, L., Christiansen, T., Orwant, J.: Programming Perl, 3rd edn. O’Reilly, Sebastopol (2000)
Walker, W., Koch, C., Gehrke, J., Demers, A.: Better Scripts, Better Games. Communications of the ACM 52(3), 42–47 (2009)
Xu, J., Romanovsky, A., Randell, B.: Concurrent Exception Handling and Resolution in Distributed Object Systems. IEEE Transactions on Parallel and Distributed Systems 11(10), 1019–1032 (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Savidis, A. (2011). Supporting Cross-Language Exception Handling When Extending Applications with Embedded Languages. In: Troubitsyna, E.A. (eds) Software Engineering for Resilient Systems. SERENE 2011. Lecture Notes in Computer Science, vol 6968. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24124-6_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-24124-6_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24123-9
Online ISBN: 978-3-642-24124-6
eBook Packages: Computer ScienceComputer Science (R0)