Packed with code examples, this comprehensive book shows you how to be productive with the language and ecosystem right away, and explains why Scala is ideal for today´s highly scalable, data-centric applications that support concurrency and distribution.
Adopted as the undisputed Perl bible soon after the first edition appeared in 1991, Programming Perl is still the go-to guide for this highly practical language. In this much-anticipated update to ´´the Camel,´´ three renowned Perl authors cover the language up to its current version, Perl 5.14, with a preview of features in the upcoming 5.16. Introduces the programming language to beginners and provides a Perl language reference for experienced users, covering operators, statements, formats, modules, objects, threads, tied variables, debugging, and security.
Based on the latest version of the language, this book offers a self-contained, concise and coherent introduction to programming with Python. The books primary focus is on realistic case study applications of Python. Each practical example is accompanied by a brief explanation of the problem-terminology and concepts, followed by necessary program development in Python using its constructs, and simulated testing. Given the open and participatory nature of development, Python has a variety of incorporated data structures, which has made it difficult to present it in a coherent manner. Further, some advanced concepts (super, yield, generator, decorator, etc.) are not easy to explain. The book specially addresses these challenges; starting with a minimal subset of the core, it offers users a step-by-step guide to achieving proficiency. Dr. T. R. Padmanabhan was formerly Professor Emeritus at Amrita Vishwa Vidyapeetham, Coimbatore. He taught at the IIT Kharagpur, before doing R & D for private companies for several years. He is a Senior Member of the IEEE and a Fellow of both the Institution of Engineers (IEI) and the Institution of Electronics and Telecommunication Engineers (IETE). He has previously published books with Wiley, Tata McGraw-Hill, and Springer Verlag.
Parallel Programming with OpenACC is a modern, practical guide to implementing dependable computing systems. The book explains how anyone can use OpenACC to quickly ramp-up application performance using high-level code directives called pragmas. The OpenACC directive-based programming model is designed to provide a simple, yet powerful, approach to accelerators without significant programming effort. Author Rob Farber, working with a team of expert contributors, demonstrates how to turn existing applications into portable GPU accelerated programs that demonstrate immediate speedups. The book also helps users get the most from the latest NVIDIA and AMD GPU plus multicore CPU architectures (and soon for Intel® Xeon PhiT as well). Downloadable example codes provide hands-on OpenACC experience for common problems in scientific, commercial, big-data, and real-time systems. Topics include writing reusable code, asynchronous capabilities, using libraries, multicore clusters, and much more. Each chapter explains how a specific aspect of OpenACC technology fits, how it works, and the pitfalls to avoid. Throughout, the book demonstrates how the use of simple working examples that can be adapted to solve application needs. Presents the simplest way to leverage GPUs to achieve application speedups Shows how OpenACC works, including working examples that can be adapted for application needs Allows readers to download source code and slides from the book´s companion web page
Get started using the C# programming language. Based on the author´s 15 years of experience teaching beginners, the book provides you with a step-by-step introduction to the principles of programming, or rather, how to think like a programmer. The task-solution approach will get you immersed, with minimum theory and maximum action. What You Will Learn Understand what programming is all about Write simple, but non-trivial, programs Become familiar with basic programming constructs such as statements, types, variables, conditions, and loops Learn to think like a programmer and combine these programming constructs in new ways Get to know C# as a modern, mainstream programming language, and Visual Studio as one of the world´s most popular programming tools Who This Book Is For Those with very little or no experience in computer programming, who know how to use a computer, install a program, and navigate the web.
Paradigms of AI Programming is the first text to teach advanced Common Lisp techniques in the context of building major AI systems. By reconstructing authentic, complex AI programs using state-of-the-art Common Lisp, the book teaches students and professionals how to build and debug robust practical programs, while demonstrating superior programming style and important AI concepts. The author strongly emphasizes the practical performance issues involved in writing real working programs of significant size. Chapters on troubleshooting and efficiency are included, along with a discussion of the fundamentals of object-oriented programming and a description of the main CLOS functions. This volume is an excellent text for a course on AI programming, a useful supplement for general AI courses and an indispensable reference for the professional programmer.
This book constitutes the refereed proceedings of the 8th International Symposium on Parallel Architecture, Algorithm and Programming, PAAP 2017, held in Haikou, China, in June 2017. The 50 revised full papers and 7 revised short papers presented were carefully reviewed and selected from 192 submissions. The papers deal with research results and development activities in all aspects of parallel architectures, algorithms and programming techniques.
Programming Massively Parallel Processors: A Hands-on Approach, Third Edition shows both student and professional alike the basic concepts of parallel programming and GPU architecture, exploring, in detail, various techniques for constructing parallel programs. Case studies demonstrate the development process, detailing computational thinking and ending with effective and efficient parallel programs. Topics of performance, floating-point format, parallel patterns, and dynamic parallelism are covered in-depth. For this new edition, the authors have updated their coverage of CUDA, including coverage of newer libraries, such as CuDNN, moved content that has become less important to appendices, added two new chapters on parallel patterns, and updated case studies to reflect current industry practices. Teaches computational thinking and problem-solving techniques that facilitate high-performance parallel computing Utilizes CUDA version 7.5, NVIDIA´s software development tool created specifically for massively parallel environments Contains new and updated case studies Includes coverage of newer libraries, such as CuDNN for Deep Learning