Abstract
Games are complex pieces of software which give life to animated virtual worlds. Game developers carefully search the difficult balance between quality and efficiency in their games.
In this paper we present the Casanova language. This language allows the building of games with three important advantages when compared to traditional approaches: simplicity, safety, and performance. We will show how to rewrite an official sample of the XNA framework, resulting in a smaller source and a higher performance.
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
Ampatzoglou, A., Chatzigeorgiou, A.: Evaluation of object-oriented design patterns in game development. Inf. Softw. Technol. 49, 445–454 (2007), http://dl.acm.org/citation.cfm?id=1230152.1230366
Buckland, M.: Programming Game AI by Example. 1 edn. Jones & Bartlett Publishers (September 2004), http://www.amazon.com/exec/obidos/redirect?tag=citeulike07-20&path=ASIN/1556220782
Casanova: Casanova project page, casanova.codeplex.com/
Elliott, C., Hudak, P.: Functional reactive animation. SIGPLAN Not. 32, 263–273 (1997), http://doi.acm.org/10.1145/258949.258973
ESA: Entertainment software association, http://www.theesa.com
Folmer, E.: Component Based Game Development – A Solution to Escalating Costs and Expanding Deadlines? In: Schmidt, H.W., Crnković, I., Heineman, G.T., Stafford, J.A. (eds.) CBSE 2007. LNCS, vol. 4608, pp. 66–73. Springer, Heidelberg (2007), http://portal.acm.org/citation.cfm?id=1770657.1770663
Gameobjects: Inheritance vs aggregation in game objects, http://gamearchitect.net/Articles/GameObjects1.html
Garcia-molina, H., Ullman, J.D., Widom, J.: Database System Implementation (2000)
Knuth, D.E.: The art of computer programming: Fundamental Algorithms, 3rd edn., vol. 1. Addison Wesley Longman Publishing Co., Inc., Redwood City (1997)
Maggiore, G., Costantini, G.: Friendly F# (fun with game programming). Smashwords (2011)
Maggiore, G., Orsini, R., Bugliesi, M.: Casanova: a declarative language for safe games. Tech. Rep. 2011-7, Ca’ Foscari - DAIS (2011)
Moggi, E.: Notions of computation and monads. Information and Computation 93, 55–92 (1989)
Wadler, P.: Linear types can change the world! In: Programming Concepts and Methods. North (1990)
Wadler, P.: Comprehending monads. In: Mathematical Structures in Computer Science, pp. 61–78 (1992)
White, W., Demers, A., Koch, C., Gehrke, J., Rajagopalan, R.: Scaling games to epic proportions. In: Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data, SIGMOD 2007, pp. 31–42. ACM, New York (2007), http://doi.acm.org/10.1145/1247480.1247486
XBOX: Slow garbage collection on the xbox, http://blogs.msdn.com/b/shawnhar/archive/2007/06/29/how-to-tell-if-your-xbox-garbage-collection-is-too-slow.aspx
XNA: The xna framework, http://msdn.microsoft.com/xna
XNA: Xna spacewar 4, http://create.msdn.com/education/catalog/sample/spacewar
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Maggiore, G., Spanò, A., Orsini, R., Costantini, G., Bugliesi, M., Abbadi, M. (2012). Designing Casanova: A Language for Games. In: van den Herik, H.J., Plaat, A. (eds) Advances in Computer Games. ACG 2011. Lecture Notes in Computer Science, vol 7168. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31866-5_27
Download citation
DOI: https://doi.org/10.1007/978-3-642-31866-5_27
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31865-8
Online ISBN: 978-3-642-31866-5
eBook Packages: Computer ScienceComputer Science (R0)