Why Functional Programming (Still) Matters
Erik Meijer, Microsoft SQL server division
In 1984, John Hughes wrote a seminal paper "Why Functional Programming Matters" in which he eloquently explained the value of pure and lazy functional programming. Due the increasing importance of the Web and the introduction of many-core machines, in the quarter century since the appearance of the paper the problems associated with effectful imperative languages have reached a point where we hit a brick wall. We argue that fundamentalist functional programming, that is radically eliminating all side-effects from our programming languages, including strict evaluation, is what it takes to conquer the concurrency and parallelism dragon. We must embrace pure lazy functional programming "all the way," with all effects apparent in the type system of the host language using monads. Only a radical paradigm shift can save us, but does that mean that we will lose all current programmers along the way? Fortunately not. By design, LINQ is based on monadic principles. The success of LINQ proves that the world does not fear the monads.
Software Tools in the Days of Software Agents
John Mylopoulos, University of Trento
There is growing interest within the Software Engineering community in an agent-oriented software paradigm. We review some of the principles of this paradigm, and briefly overview the state-of-the-art in Agent-Oriented Software Engineering (AOSE). We then sketch some threads of long-term research on formal analysis techniques for agent-oriented software, including simulation, goal analysis, actor task assignment analysis and risk analysis. We also present tools that have been developed to support these techniques.
Model Transformation: Sketching the Landscape
Krzysztof Czarnecki, University of Waterloo
Model transformation is the engine under the hood of model-driven engineering. It is the medium for realizing operations on models, such as view extraction, model refinement and compilation, model evolution, and consistency management. On a closer look, these operations have been previously studied in other areas, with examples being database views, specification refinement, program transformations, database schema evolution, and data replication and synchronization.
In this talk, I will attempt to sketch the landscape of model transformations in space and time. What is the essence of the field? How is it connected to other fields? What are its roots and where is it headed? I will start by identifying the drivers of the field, as rooted in the challenges faced by modern software development, and will continue to sketch its core, its relation to other fields, the mathematical methods for analyzing and understanding model transformation, and the state of the art and practice in model transformation technology and engineering. I will close with a personal view on the challenges ahead, both the technical ones and those facing the emerging community.
The End of the Computing Era: Hephaestus meets The Olympians
Michael L. Brodie, Chief Scientist, Verizon Communications, USA
Our Digital World is becoming increasingly real (and vice versa), is being extended to include the physical world, and is growing in size, scope, and significance apparently on its own trajectory. The elimination of the ancient boundaries of time, space, location, and organizational structure appear to be unleashing social and other forces that threaten to disrupt real and automated systems replacing them with organically evolving digital ecosystems. Yet at the threshold of these amazing changes do we have the tools to understand, design, or harness these changes for safety, improvement, innovation, and economic growth? In ancient times, Hephaestus, the Greek god of technology, devised cunning machines with which to right transgressions only to find that his machines aggravated problems that were beyond his understanding. This talk will briefly review the amazing growth of the Web and of our increasingly digital world as indicators of two fundamental shifts. We will first look at the End of the Computing Era and the emergence of the Problem Solving Era in which the problem owners attempt to solve problems with increasing realism and complexity aided by technology - not vice versa. Second, we will examine the emergence of a fundamentally more flexible, adaptive, and dynamic computing, Computer Science 2.0, and how it might serve the next generation of problem solving with its pillars of semantic technologies, service-oriented computing, and the semantic web.
Ashish Arora is Professor of Economics and Public Policy in the Heinz School. He served as a co-director of the Software Industry Center at Carnegie Mellon University till 2006. He is on the editorial board of six academic journals, and has served on a number of committees for bodies such as the National Academy of Sciences and the Association of Computing Machinery.
Arora's research focuses on the economics of technology and technical change. His research interests include the study of technology intensive industries such as software, biotechnology and chemicals, the role of patents and licensing in promoting technology startups, and the economics of information technology. His work has been published in journals such Management Science, Research Policy, Strategic Management Journal, Journal of Industrial Economics, The Journal of Industrial Economics and Journal of Economic Behavior and Organization. His recent book is on the growth of the software industries in emerging economies: From Underdogs to Tigers? The Rise and Growth of the Software Industry in Brazil, China, India, Ireland, and Israel, (edited with Alfonso Gambardella), Oxford University Press, February, 2005.
Dr. Michael L. Brodie is Chief Scientist of Verizon Services Operations in Verizon Communications, one of the world's leading providers of communications services.
Dr. Brodie works on large-scale strategic Information Technology opportunities and challenges to deliver business value from advanced and emerging technologies and practices. He is concerned with the Big Picture, core technologies, and integration within a large scale, operational telecommunications environment.
Dr. Brodie holds a PhD in Databases from the University of Toronto and has active interests in the Semantic Web, SOA, and other advanced technologies to address secure, interoperable information systems, databases, infrastructure and application architectures. Dr. Brodie has authored over 150 books, chapters, and articles and has presented over 100 keynotes or invited lectures in over 30 countries. Dr. Brodie is a member of the United States of America National Academies Committee on Technical and Privacy Dimensions of Information for Terrorism Prevention and other National Goals, co-chaired by Dr. Charles Vest, president emeritus of MIT and Dr. William Perry, former Secretary of Defense, and commissioned by the Department of Homeland Security and the National Science Foundation. He is Adjunct Professor, National University of Ireland, Galway; on several advisory boards: Semantic Technology Institutes International, European Research Consortium for Informatics and Mathematics; School of Computer and Communication Sciences, École Polytechnique Fédérale de Lausanne, Switzerland; Digital Enterprise Research Institute, National University of Ireland; European Commission′s Information Society Technologies priority of the Framework Programmes; Forrester Research, Inc.; VLDB (Very Large Databases) Endowment; editorial boards of several research journals. Dr. Brodie is Assistant Scout Master in Troop63 Sudbury, MA.
Krzysztof Czarnecki is Associate Professor in the Department of Electrical and Computer Engineering at the University of Waterloo and NSERC/Bank of Nova Scotia Industrial Research Chair in Requirements Engineering of Service-oriented Software Systems. He received the MS degree in Computer Science from California State University, Sacramento, and his PhD in Computer Science from Technical University of Ilmenau, Germany. Before coming to University of Waterloo in 2003, he worked eight years at DaimlerChrysler Research, Germany, focusing on improving software development practices and technologies in enterprise and embedded software. He is a co-author of the book "Generative Programming" (Addison-Wesley, 2000), which is regarded as founding work of the area and is used as a graduate text at universities around the world. He was a keynote speaker the 2006 International Conference on Generative Programming and Component Engineering and will be the program chair of 11th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems in 2008. He received the Premier´s Research Excellence Award in 2004 and the British Computing Society in Upper Canada Award for Outstanding Contributions to IT Industry in 2008. He is currently the Principal Investigator of a $9.3 million project on "Model-Based Software Service Engineering", which was recently funded by the Province of Ontario (2008-2013). His current work focuses on improving the productivity and quality of software development using domain-specific abstractions and program generation.
Erik Meijer Erik Meijer is an architect in the Microsoft SQL server division where he currently works together with the Microsoft Visual C# and the Microsoft Visual Basic language design teams on data integration in programming languages.
Prior to joining Microsoft he was an associate professor at Utrecht University and adjunct professor at the Oregon Graduate Institute.
Erik is one of the designers of the standard functional programming language Haskell98 and more recently the Cw language.
John Mylopoulos earned a PhD degree from Princeton University in 1970 and has been professor of Computer Science at the University of Toronto since that year. His research interests include conceptual modelling, requirements engineering, data semantics and knowledge management. Mylopoulos is a fellow of the Association for the Advancement of Artificial Intelligence (AAAI, aka American Association for Artificial Intelligence) and the Royal Society of Canada (Academy of Sciences). He has served as programme/general chair of international conferences in Artificial Intelligence, Databases and Software Engineering, including IJCAI (1991), Requirements Engineering (1997), and VLDB (2004). He is currently serving as series co-editor of the Lecture Notes in Business Information Processing (LNBIP) series published by Springer-Verlag.
Since September 2005 Mylopoulos is distinguished professor (chiara fama) of Science at the University of Trento.
Dick Simmons is professor emeritus at the department of computer science, Texas A&M University, 1976 - present. He is director and Co-PI, Shared Software Infrastructure Program, from 2004 - present. He was president of Software Commercialization and Innovation Center, Inc., 2001-2003. His award includes IEEE Third Millennium Medal 2000, IEEE Golden Core Member 1996, IEEE Fellow 1988, IEEE Computer Society Distinguished Service Award 1987 and IEEE Centennial Medal 1984.