Programming and scripting languages: general Books
APress Python Data Analytics
Book Synopsis1. An Introduction to Data Analysis .- 2. Introduction to the Python's World.- 3. The NumPy Library .- 4. The pandas Library-- An Introduction.- 5. pandas: Reading and Writing Data .- 6. pandas in Depth: Data Manipulation .- 7. Data Visualization with matplotlib .- 8. Machine Learning with scikit-learn.- 9. Deep Learning with TensorFlow.- 10. An Example - Meteorological Data.- 11. Embedding the JavaScript D3 Library in IPython Notebook.- 12. Recognizing Handwritten Digits.- 13. Textual data Analysis with NLTK.- 14. Image Analysis and Computer Vision with OpenCV.- Appendix A.- Appendix B.Table of ContentsPython Data Analytics1. An Introduction to Data Analysis 2. Introduction to the Python's World3. The NumPy Library 4. The pandas Library-- An Introduction5. pandas: Reading and Writing Data 6. pandas in Depth: Data Manipulation 7. Data Visualization with matplotlib 8. Machine Learning with scikit-learn9. Deep Learning with TensorFlow10. An Example - Meteorological Data11. Embedding the JavaScript D3 Library in IPython Notebook12. Recognizing Handwritten Digits13. Textual data Analysis with NLTK 14. Image Analysis and Computer Vision with OpenCV Appendix A Appendix B
£46.74
APress Pro Spring 6 with Kotlin
Book SynopsisMaster the fundamentals of Spring Framework 6 while learning from the real-world experiences of Spring experts. Over the course of this book, you'll learn how to leverage Spring 6 in tandem with the Kotlin programming language to build complex enterprise applications from top to bottom. From monoliths to cloud native apps for streaming microservices, you'll gain insight into every aspect of the process, including transactions, data access, persistence, and web and presentation tiers. As you progress through the book, the authors demonstrate how to run Kotlin with a single command, deploy new utility methods in String class, use Local-Variable Syntax for Lambda Parameters Nested Based Access Control, read/write strings to and from files, and using Flight Recorder. Also, a whole new generation of dependencies are available, and you'll see exactly how to make optimal use of them. A full sample application will show you how to apply Spring 6's new tools and techniques and see how they woTable of ContentsChapter 01 Introducing Spring Framework 6Chapter 02 Getting Started with Spring and KotlinChapter 03 Introducing IoCChapter 04 Spring Configuration In Detail and Spring BootChapter 05 Introducing Spring AOPChapter 06 Using Spring Data JPA with KotlinChapter 07 Using Spring Data JDBC with KotlinChapter 08 Using other Spring Data and Integrating with HibernateChapter 09 Transaction ManagementChapter 10 Validation Conversion FormattingChapter 11 Task SchedulingChapter 12 Using Spring RemotingChapter 13 Spring TestingChapter 14 Scripting Support In SpringChapter 15 Application MonitoringChapter 16 Web Applications and Microservices with Spring MVC and WebFluxChapter 17 WebSocketsChapter 18 Spring Projects Batch, Integration and moreChapter 19. Spring Cloud for Cloud-Native AppsAppendix A Setting Up Your Development Environment
£49.49
APress Python Debugging for AI Machine Learning and
Book SynopsisThis book is for those who wish to understand how Python debugging is and can be used to develop robust and reliable AI, machine learning, and cloud computing software. It will teach you a novel pattern-oriented approach to diagnose and debug abnormal software structure and behavior. The book begins with an introduction to the pattern-oriented software diagnostics and debugging process that, before performing Python debugging, diagnoses problems in various software artifacts such as memory dumps, traces, and logs. Next, you'll learn to use various debugging patterns through Python case studies that model abnormal software behavior. You'll also be exposed to Python debugging techniques specific to cloud native and machine learning environments and explore how recent advances in AI/ML can help in Python debugging. Over the course of the book, case studies will show you how to resolve issues around environmental problems, crashes, hangs, resource spikes, leaks, and performancedegradatioTable of ContentsChapter 1: Fundamental Vocabulary.- Chapter 2: Pattern-Oriented Debugging.- Chapter 3: Elementary Diagnostics Patterns.- Chapter 4: Debugging Analysis Patterns.- Chapter 5: Debugging Implementation Patterns.- Chapter 6: IDE Debugging in Cloud.- Chapter 7: Debugging Presentation Patterns.- Chapter 8: Debugging Architecture Patterns.- Chapter 9: Debugging Design Patterns.- Chapter 10: Debugging Usage Patterns.- Chapter 11: Case Study: Resource Leaks.- Chapter 12: Case Study: Deadlock.- Chapter 13: Challenges of Python Debugging in Cloud Computing.- Chapter 14: Challenges of Python Debugging in AI and Machine Learning.- Chapter 15: What AI and Machine Learning Can Do for Python Debugging.- Chapter 16: The List of Debugging Patterns.
£38.24
APress Coding Art
Book SynopsisFinally, a book on creative programming, written directly for artists and designers! This second edition offers expanded and updated content incorporating the latest advancements and trends in the field of creative programming, also for creatives who want to work directly with P5.js and online. It delves deeper into the intricacies of computational art. Itincludes fresh case studies that explore real-world applications of coding art, inspiring readers to think beyond traditional boundaries. Rather than following a computer science curriculum, this book is aimed at creatives who are working in the intersection of design, art, and education. Following a real-world use case of computation art, you'll see how it relates back to the four key pillars, and addresses potential pitfalls and challenges in the creative process. All code examples are presented in a fully integrated Processing example library, making it easy for readers to get started.This unique and finely balanced approach betwTable of ContentsIntroductionPart I: Creative CodingIn the first main part of this book, we present a four-step working process when code is involved in art practice.Chapter 1: Idea to VisualsIn this chapter we show how creatives can translate their ideas into simple visual elements, and then work with these elements creatively, by animating them in motions and interaction. In this part, we move quickly from shaping up visual elements in static to animate and scale them in variants and complexity. We also make the comparatively large step to interaction as input for animating visual elements already in this first step. This allows creatives to directly experience the power and expressivity of a computational creative tool like Processing. We don’t hold back in this first step, because we see interaction (and ultimately data) as the important differentiator and driver behind the power of computational in creative practice. Even the raw understanding of interaction in code can help creatives ideate with minimal computation at an early stage of a project.Chapter 2: Composition and StructureIn this chapter, we align the structure of code and the visual structure to reinforce the initial momentum with transparent concepts in code. In this step, we list different code examples that are related to repetition and variation. These are all features related to the creation and manipulation of a Gestalt, introduced as the “many things as one” concept in the book. The reader learns about the shift from an individual element in repetition to many things in layers and alignment. While we introduce fewer new elements from Processing, we maintain the momentum for the reader in showing how they can, with a few lines of code, amplify the expressivity of their first tryouts. The divergence from traditional creative programming books is most visible in the second step, we leave the path of explaining Processing and let the creative process take charge.Chapter 3: Refinement and DepthIn this chapter, we use randomness and noise as sources for depth and entropy and explain how to refine and deepen the idea regarding controlling, selecting, and making choices. In this part, we specifically introduce new data structures as means to simplify and extend the design of aesthetics, rhythms and smoothness. We also return to interactivity at this developed stage and use interactivity as input to bring creative concepts closer to refinement and depth. Chapter 4: Completion and ProductionIn this chapter, we look at the backstage of coding an art piece for presentation and “show-time”. We show how to leverage the diversity of art code on other platforms like the web or in mobile applications. In this step, we also specify how to backstage, test and control the creative work in a less risky way on the final production stage.Part II: An Example: MOUNTROTHKOIn the second part of this book, we present a large example for computational art, MOUNTROTHKO (2018). This part shows how we applied many aspects of the first part of the book in a real project. We emphasize that what we write about in this book is what we also practice: we unfold MOUNTROTHKO from the very beginning by showing the conceptual and visual starting points. Then we walk through the four steps of the whole creative process in close relation to this example. In MOUNTROTHKO, certain steps were taken going back and forth, or in iteration, which underlines how the book is practically meaningful as a process reference.Chapter 5: InspirationChapter 6: From idea to completionPart III: Coding PracticeIn the last part of this book, we address common pitfalls and challenges of the creative process and formulate suggestions and tips for creatives based on our experience over the years. We indicate main problems that creatives might have in practice: how to help yourself, how to get help from others, and how to find and work with experts from other fields. Finally, we outline a continuation of the learning path for creatives alongside reading and making: this book ideally represents the starting of a personal creative journey working with both art and code.Chapter 7: Dealing with Problems Chapter 8: Learning PathChapter 9: Creative ProcessesConclusionEpilogue
£35.99
APress Building RealTime Marvels with Laravel
Book SynopsisDive into the diverse facets of the Laravel ecosystem. This comprehensive guide will put you on the fast track to becoming an expert in Laravel development. Starting with the fundamentals, you'll explore essential concepts, enabling you to grasp the framework's structure. Subsequent chapters cover intricate topics, such as advanced routing techniques, database management, and eloquent object relational mapping (ORM), allowing developers to build robust applications. The book offers comprehensive insights into building secure applications with authentication and authorization mechanisms, as well as constructing efficient APIs and employing caching techniques for enhanced performance. Chapters on real-time applications and queues offer practical knowledge to optimize application responsiveness. Advanced package development and performance monitoring provide valuable tools for developing high-quality Laravel packages and debugging. You'll also gain expertise in internationalization, frontTable of ContentsChapter 1: Understanding the Laravel Ecosystem.- Chapter 2: Advanced Routing Techniques.- Chapter 3: Database Management and Eloquent ORM.- Chapter 4: Authentication and Authorization.- Chapter 5: Building APIs with Laravel.- Chapter 6: Caching and Performance Optimization.- Chapter 7: Advanced Middleware Techniques.- Chapter 8: Real-Time Applications with Laravel.- Chapter 9: Testing and Test-Driven Development.- Chapter 10: Queues and Job Scheduling.- Chapter 11: Advanced Package Development.-Chapter 12: Performance Monitoring and Debugging.- Chapter 13: Scaling Laravel Applications.- Chapter 14: Security Best Practices.- Chapter 15: Advanced Performance Optimization.- Chapter 16: Continuous Integration and Deployment.- Chapter 17: Laravel and Microservices.- Chapter 18: Advanced Laravel Debugging and Troubleshooting.-Chapter 19: Building Internationalized Applications with Laravel.- Chapter 20: Advanced Frontend Development with Laravel.- Chapter 21: Advanced Error Handling and Exception Management.- Chapter 22: Advanced Database Techniques and Optimization.- Chapter 23: Laravel and Serverless Computing.- Chapter 24: Building Progressive Web Applications (PWAs) with Laravel.- Chapter 25: Advanced UI/UX Design Patterns for Laravel.- Chapter 26: Advanced Analytics and Reporting in Laravel.- Chapter 27: Building Microservices with Laravel and Docker.- Chapter 28: Advanced Third-Party Integrations.- Chapter 29: Securing Laravel Applications.- Chapter 30: Advanced DevOps and Infrastructure Automation Appendix A: Laravel Cheat Sheet .- Appendix B: Recommended Resources.- Appendix C: Glossary of Terms
£47.49
APress Master React in 5 Days
Book SynopsisDo you dream of learning React without spending months in endless tutorials? Then this book is for you! In just five days, you will acquire the fundamental skills to start developing exceptional applications using this revolutionary technology.Whether you prefer to follow the book independently or alongside other online resources, it will provide you with a solid foundation to harness the full potential of React. Immerse yourself in an accelerated learning method that will allow you to make giant strides. Chapters are carefully designed to teach you the essential concepts of React, such as components, props, state, events, lifecycle, and hooks, without wasting time on complex explanations. Thanks to a clear and accessible writing style, you'll be able to dive into the intricacies of React from the first page. Code examples are accompanied by detailed explanations, enabling you to quickly grasp the subtleties of this technology. You don't need to be an expert in programming; the book isTable of Contents
£38.24
O'Reilly Media Hack and HHVM
Book SynopsisHow can you take advantage of the HipHop Virtual Machine (HHVM) and the Hack programming language, two new technologies that Facebook developed to run their web servers? With this practical guide, Owen Yamauchi-a member of Facebook's core Hack and HHVM teams-shows you how to get started with these battle-tested open-source tools.
£25.59
O'Reilly Media Optimized C
Book SynopsisIn today's fast and competitive world, a program's performance is just as important to customers as the features it provides. This practical guide teaches developers performance-tuning principles that enable optimization in C++.
£35.99
O'Reilly Media Node.js for Embedded Systems
Book SynopsisThis practical guide shows hardware and software engineers, makers, and web developers how to talk in JavaScript with a variety of hardware platforms. Authors Patrick Mulder and Kelsey Breseman also delve into the basics of microcontrollers, single-board computers, and other hardware components.
£19.19
O'Reilly Media Introduction to JavaScript Object Notation
Book SynopsisThis concise guide helps busy IT professionals get up and running quickly with this popular data interchange format, and provides a deep understanding of how JSON works. Author Lindsay Bassett begins with an overview of JSON syntax, data types, formatting, and security concerns before exploring the many ways you can apply JSON today.
£19.19
O'Reilly Media Mastering Spark with R
Book SynopsisWith this practical book, data scientists and professionals working with large-scale data applications will learn how to use Spark from R to tackle big data and big compute problems.
£33.74
O'Reilly Media Jumpstarting C: Learn the All-Purpose Programming
Book SynopsisJumpstarting books provide an avenue for makers to quickly master topical knowledge! Each book starts with instructions on how to install or initialize the hardware or software needed to reach the "Hello, World" stage of getting started! The second project in the book builds on the first to use more of the hardware or software's capabilities. Later projects expand the user's knowledge into lesser-known aspects of the topic. All Jumpstarting projects are for Makers -- they provide hands-on, real-world experience in making the hardware or software do what you want it to do!
£9.98
O'Reilly Media Easy micro – bit Projects
Book SynopsisLearn the basics of using the micro: bit, an open source hardware ARM-based embedded system used to teach computer programming, to build a series of 10 different gadgets from scratch! You'll use the micro: bit to make: a scrolling name tag, animated LED displays a high-tech compass. a handheld tilting game with a buzzer and saved high score a carnival-like strength tester a powered cooling fan helmet an electronic musical instrument a security system that sends alerts to your computer when someone enters the room. a wheeled robot an alert to water your plants You will learn how simple electrical devices like speakers, motors, buzzers and fans work. You'll understand electronic components like resistors, force resistors, photoresistors, LEDs, and Op Amps, as well as Infrared distance sensors and soil moisture sensors. You'll also get a beginner's look at micropython, one of the fastest-growing computer languages. In this book you will combine multiple disciplines -- electronics, programming, and engineering -- to build a series of successful gadgets. Everything is explained with lots and lots of full-color line drawings. No prior experience is necessary. You'll have fun while you learn a t
£7.59
ISTE Ltd and John Wiley & Sons Inc Formal Languages, Automata and Numeration Systems
Book SynopsisFormal Languages, Automaton and Numeration Systems presents readers with a review of research related to formal language theory, combinatorics on words or numeration systems, such as Words, DLT (Developments in Language Theory), ICALP, MFCS (Mathematical Foundation of Computer Science), Mons Theoretical Computer Science Days, Numeration, CANT (Combinatorics, Automata and Number Theory). Combinatorics on words deals with problems that can be stated in a non-commutative monoid, such as subword complexity of finite or infinite words, construction and properties of infinite words, unavoidable regularities or patterns. When considering some numeration systems, any integer can be represented as a finite word over an alphabet of digits. This simple observation leads to the study of the relationship between the arithmetical properties of the integers and the syntactical properties of the corresponding representations. One of the most profound results in this direction is given by the celebrated theorem by Cobham. Surprisingly, a recent extension of this result to complex numbers led to the famous Four Exponentials Conjecture. This is just one example of the fruitful relationship between formal language theory (including the theory of automata) and number theory.Trade Review"This nice book is devoted to a quickly growing field, at the frontier between theoretical computer science, combinatorics, and number theory." (Zentralblatt MATH, 2016)Table of ContentsFOREWORD ix INTRODUCTION xiii CHAPTER 1. WORDS AND SEQUENCES FROM SCRATCH 1 1.1. Mathematical background and notation 2 1.1.1. About asymptotics 4 1.1.2. Algebraic number theory 5 1.2. Structures, words and languages 11 1.2.1. Distance and topology 16 1.2.2. Formal series 24 1.2.3. Language, factor and frequency 28 1.2.4. Period and factor complexity 33 1.3. Examples of infinite words 36 1.3.1. About cellular automata 43 1.3.2. Links with symbolic dynamical systems 46 1.3.3. Shift and orbit closure 59 1.3.4. First encounter with β-expansions 62 1.3.5. Continued fractions 69 1.3.6. Direct product, block coding and exercises 70 1.4. Bibliographic notes and comments 77 CHAPTER 2. MORPHIC WORDS 85 2.1. Formal definitions 89 2.2. Parikh vectors and matrices associated with a morphism 96 2.2.1. The matrix associated with a morphism 98 2.2.2. The tribonacci word 99 2.3. Constant-length morphisms 107 2.3.1. Closure properties 117 2.3.2. Kernel of a sequence 119 2.3.3. Connections with cellular automata 120 2.4. Primitive morphisms 122 2.4.1. Asymptotic behavior 127 2.4.2. Frequencies and occurrences of factors 127 2.5. Arbitrary morphisms 133 2.5.1. Irreducible matrices 134 2.5.2. Cyclic structure of irreducible matrices 144 2.5.3. Proof of theorem 2.35 150 2.6. Factor complexity and Sturmian words 153 2.7. Exercises 159 2.8. Bibliographic notes and comments 163 CHAPTER 3. MORE MATERIAL ON INFINITE WORDS 173 3.1. Getting rid of erasing morphisms 174 3.2. Recurrence 185 3.3. More examples of infinite words 191 3.4. Factor Graphs and special factors 202 3.4.1. de Bruijn graphs 202 3.4.2. Rauzy graphs 206 3.5. From the Thue–Morse word to pattern avoidance 219 3.6. Other combinatorial complexity measures 228 3.6.1. Abelian complexity 228 3.6.2. k-Abelian complexity 237 3.6.3. k-Binomial complexity 245 3.6.4. Arithmetical complexity 249 3.6.5. Pattern complexity 251 3.7. Bibliographic notes and comments 252 BIBLIOGRAPHY 257 INDEX 295 SUMMARY OF VOLUME 2 303
£125.06
Momentum Press Creating Data-Driven Web Sites: An Introduction to HTML, CSS, PHP, and MySQL
Book SynopsisThe purpose of this book is to provide an introduction to this set of technologies to teach a new programmer how to get started creating data-driven websites and to provide a jumping-off point for the reader to expand his or her skills. Today's modern world is heavily dependent on the World Wide Web. It affects the way we communicate, how we shop, and how we learn about the world. Every website, every page, consists of four fundamental elements: the structure, the style, the programming, and the data. These correspond to four different "languages," respectively: HTML, CSS, PHP, and MySQL. After learning the necessary components, users will have the understanding required to use the above technologies to create a working website. This book is aimed at the programmer or student who understands the basic building blocks of programming such as statements and control structures but lacks knowledge of the syntax and application of the above-mentioned technologies.
£38.66
Morgan & Claypool Publishers Verified Functional Programming in Agda
Book SynopsisAgda is an advanced programming language based on Type Theory. Agda's type system is expressive enough to support full functional verification of programs, in two styles. In external verification, we write pure functional programs and then write proofs of properties about them. The proofs are separate external artifacts, typically using structural induction. In internal verification, we specify properties of programs through rich types for the programs themselves. This often necessitates including proofs inside code, to show the type checker that the specified properties hold. The power to prove properties of programs in these two styles is a profound addition to the practice of programming, giving programmers the power to guarantee the absence of bugs, and thus improve the quality of software more than previously possible.Verified Functional Programming in Agda is the first book to provide a systematic exposition of external and internal verification in Agda, suitable for undergraduate students of Computer Science. No familiarity with functional programming or computer-checked proofs is presupposed.The book begins with an introduction to functional programming through familiar examples like booleans, natural numbers, and lists, and techniques for external verification. Internal verification is considered through the examples of vectors, binary search trees, and Braun trees. More advanced material on type-level computation, explicit reasoning about termination, and normalization by evaluation is also included. The book also includes a medium-sized case study on Huffman encoding and decoding.
£64.00
Morgan & Claypool Publishers Verified Functional Programming in Agda
Book SynopsisAgda is an advanced programming language based on Type Theory. Agda's type system is expressive enough to support full functional verification of programs, in two styles. In external verification, we write pure functional programs and then write proofs of properties about them. The proofs are separate external artifacts, typically using structural induction. In internal verification, we specify properties of programs through rich types for the programs themselves. This often necessitates including proofs inside code, to show the type checker that the specified properties hold. The power to prove properties of programs in these two styles is a profound addition to the practice of programming, giving programmers the power to guarantee the absence of bugs, and thus improve the quality of software more than previously possible.Verified Functional Programming in Agda is the first book to provide a systematic exposition of external and internal verification in Agda, suitable for undergraduate students of Computer Science. No familiarity with functional programming or computer-checked proofs is presupposed.The book begins with an introduction to functional programming through familiar examples like booleans, natural numbers, and lists, and techniques for external verification. Internal verification is considered through the examples of vectors, binary search trees, and Braun trees. More advanced material on type-level computation, explicit reasoning about termination, and normalization by evaluation is also included. The book also includes a medium-sized case study on Huffman encoding and decoding.
£81.75
Morgan & Claypool Publishers Shared-Memory Parallelism Can Be Simple, Fast,
Book SynopsisParallelism is the key to achieving high performance in computing. However, writing efficient and scalable parallel programs is notoriously difficult, and often requires significant expertise. To address this challenge, it is crucial to provide programmers with high-level tools to enable them to develop solutions easily, and at the same time emphasize the theoretical and practical aspects of algorithm design to allow the solutions developed to run efficiently under many different settings. This thesis addresses this challenge using a three-pronged approach consisting of the design of shared-memory programming techniques, frameworks, and algorithms for important problems in computing. The thesis provides evidence that with appropriate programming techniques, frameworks, and algorithms, shared-memory programs can be simple, fast, and scalable, both in theory and in practice. The results developed in this thesis serve to ease the transition into the multicore era.The first part of this thesis introduces tools and techniques for deterministic parallel programming, including means for encapsulating nondeterminism via powerful commutative building blocks, as well as a novel framework for executing sequential iterative loops in parallel, which lead to deterministic parallel algorithms that are efficient both in theory and in practice. The second part of this thesis introduces Ligra, the first high-level shared memory framework for parallel graph traversal algorithms. The framework allows programmers to express graph traversal algorithms using very short and concise code, delivers performance competitive with that of highly-optimized code, and is up to orders of magnitude faster than existing systems designed for distributed memory. This part of the thesis also introduces Ligra , which extends Ligra with graph compression techniques to reduce space usage and improve parallel performance at the same time, and is also the first graph processing system to support in-memory graph compression.The third and fourth parts of this thesis bridge the gap between theory and practice in parallel algorithm design by introducing the first algorithms for a variety of important problems on graphs and strings that are efficient both in theory and in practice. For example, the thesis develops the first linear-work and polylogarithmic-depth algorithms for suffix tree construction and graph connectivity that are also practical, as well as a work-efficient, polylogarithmic-depth, and cache-efficient shared-memory algorithm for triangle computations that achieves a 2–5x speedup over the best existing algorithms on 40 cores.This is a revised version of the thesis that won the 2015 ACM Doctoral Dissertation Award.Table of Contents Introduction Preliminaries and Notation Programming Techniques for Deterministic Parallelism Internally Deterministic Parallelism: Techniques and Algorithms Deterministic Parallelism in Sequential Iterative Algorithms A Deterministic Phase-Concurrent Parallel Hash Table Priority Updates: A Contention-Reducing Primitive for Deterministic Programming Large-Scale Shared-Memory Graph Analytics Ligra: A Lightweight Graph Processing Framework for Shared Memory Ligra : Adding Compression to Ligra Parallel Graph Algorithms Linear-Work Parallel Graph Connectivity Parallel and Cache-Oblivious Triangle Computations Parallel String Algorithms Parallel Cartesian Tree and Suffix Tree Construction Parallel Computation of Longest Common Prefixes Parallel Lempel-Ziv Factorization Parallel Wavelet Tree Construction Conclusion and Future Work Bibliography
£71.20
Morgan & Claypool Publishers Shared-Memory Parallelism Can Be Simple, Fast,
Book SynopsisParallelism is the key to achieving high performance in computing. However, writing efficient and scalable parallel programs is notoriously difficult, and often requires significant expertise. To address this challenge, it is crucial to provide programmers with high-level tools to enable them to develop solutions easily, and at the same time emphasize the theoretical and practical aspects of algorithm design to allow the solutions developed to run efficiently under many different settings. This thesis addresses this challenge using a three-pronged approach consisting of the design of shared-memory programming techniques, frameworks, and algorithms for important problems in computing. The thesis provides evidence that with appropriate programming techniques, frameworks, and algorithms, shared-memory programs can be simple, fast, and scalable, both in theory and in practice. The results developed in this thesis serve to ease the transition into the multicore era.The first part of this thesis introduces tools and techniques for deterministic parallel programming, including means for encapsulating nondeterminism via powerful commutative building blocks, as well as a novel framework for executing sequential iterative loops in parallel, which lead to deterministic parallel algorithms that are efficient both in theory and in practice. The second part of this thesis introduces Ligra, the first high-level shared memory framework for parallel graph traversal algorithms. The framework allows programmers to express graph traversal algorithms using very short and concise code, delivers performance competitive with that of highly-optimized code, and is up to orders of magnitude faster than existing systems designed for distributed memory. This part of the thesis also introduces Ligra , which extends Ligra with graph compression techniques to reduce space usage and improve parallel performance at the same time, and is also the first graph processing system to support in-memory graph compression.The third and fourth parts of this thesis bridge the gap between theory and practice in parallel algorithm design by introducing the first algorithms for a variety of important problems on graphs and strings that are efficient both in theory and in practice. For example, the thesis develops the first linear-work and polylogarithmic-depth algorithms for suffix tree construction and graph connectivity that are also practical, as well as a work-efficient, polylogarithmic-depth, and cache-efficient shared-memory algorithm for triangle computations that achieves a 2–5x speedup over the best existing algorithms on 40 cores.This is a revised version of the thesis that won the 2015 ACM Doctoral Dissertation Award.Table of Contents Introduction Preliminaries and Notation Programming Techniques for Deterministic Parallelism Internally Deterministic Parallelism: Techniques and Algorithms Deterministic Parallelism in Sequential Iterative Algorithms A Deterministic Phase-Concurrent Parallel Hash Table Priority Updates: A Contention-Reducing Primitive for Deterministic Programming Large-Scale Shared-Memory Graph Analytics Ligra: A Lightweight Graph Processing Framework for Shared Memory Ligra : Adding Compression to Ligra Parallel Graph Algorithms Linear-Work Parallel Graph Connectivity Parallel and Cache-Oblivious Triangle Computations Parallel String Algorithms Parallel Cartesian Tree and Suffix Tree Construction Parallel Computation of Longest Common Prefixes Parallel Lempel-Ziv Factorization Parallel Wavelet Tree Construction Conclusion and Future Work Bibliography
£89.25
Springer Nature Switzerland AG SSA-based Compiler Design
Book SynopsisThis book provides readers with a single-source reference to static-single assignment(SSA)-based compiler design. It is the first (and up to now only) book that coversin a deep and comprehensive way how an optimizing compiler can be designed usingthe SSA form. After introducing vanilla SSA and its main properties, the authorsdescribe several compiler analyses and optimizations under this form. They illustratehow compiler design can be made simpler and more efficient, thanks to the SSA form.This book also serves as a valuable text/reference for lecturers, making the teaching ofcompilers simpler and more effective. Coverage also includes advanced topics, such ascode generation, aliasing, predication and more, making this book a valuable referencefor advanced students and practicing engineers. Table of Contents1. Introduction 2. Properties and flavors3. Standard Construction and Destruction Algorithms4. Advanced Construction Algorithms for SSA5. SSA Reconstruction6. Functional Representations of SSA7. Introduction8. Propagating Information using SSA9. Liveness10. Loop Tree and Induction Variables11. Redundancy Elimination12. Introduction13. Static Single Information form 14. Graphs and Gating Functions 15. Psi-SSA Form 16. Hashed SSA form: HSSA 17. Array SSA Form 18. SSA Form and Code Generation 19. Instruction Code Selection 20. If-Conversion 21. SSA Destruction for Machine Code 22. Register Allocation 23. Hardware Compilation using SSA 24. Building SSA in a Compiler for PHP
£85.49
Springer Nature Switzerland AG Luminescence Signal Analysis Using Python
Book SynopsisThis book compiles and presents a complete package of open-access Python software code for luminescence signal analysis in the areas of radiation dosimetry, luminescence dosimetry, and luminescence dating. Featuring more than 90 detailed worked examples of Python code, fully integrated into the text, 16 chapters summarize the theory and equations behind the subject matter, while presenting the practical Python codes used to analyze experimental data and extract the various parameters that mathematically describe the luminescence signals. Several examples are provided of how researchers can use and modify the available codes for different practical situations. Types of luminescence signals analyzed in the book are thermoluminescence (TL), isothermal luminescence (ITL), optically stimulated luminescence (OSL), infrared stimulated luminescence (IRSL), timeresolved luminescence (TR) and dose response of dosimetric materials. The open-access Python codes are available at GitHub.The book is well suited to the broader scientific audience using the tools of luminescence dosimetry: physicists, geologists, archaeologists, solid-state physicists, medical physicists, and all scientists using luminescence dosimetry in their research. The detailed code provided allows both students and researchers to be trained quickly and efficiently on the practical aspects of their work, while also providing an overview of the theory behind the analytical equations.Table of ContentsTL Signals from Delocalized Transitions: Models.- Analysis of TL Signals from Delocalized Transitions.- TL from Quantum Tunneling Processes: Models.- Analysis of TL from Quantum Tunneling Processes.- Isothermal Luminescene (ITL) Signals: Models and Analysis.- TL Signals from Localized Transitions: Models and Analysis.- OSL from Delocalized Transitions: Models.- Analysis of OSL from Delocalized Transitions.- Infrared Stimulated Luminescene Signals: Models.- Analysis of IRSL Signals.- Time-Resolved Luminescene: Models.- Analysis of Time-Resolved Luminescene Signals L.- Dose Response of Dosimetric Materials: Models.- Analysis of Dose Response of Luminescene Signals.- Radiofluorescene Signals: Models and Analysis.- Radiophotoluminescene Signals: Models and Analysis
£123.49
Springer Nature Switzerland AG Programming Languages and Systems: 31st European
Book SynopsisThis open access book constitutes the proceedings of the 31st European Symposium on Programming, ESOP 2022, which was held during April 5-7, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 21 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. They deal with fundamental issues in the specification, design, analysis, and implementation of programming languages and systems. Table of ContentsCategorical Foundation of Gradient-Based Learning.- Compiling Universal Probabilistic Programming Languages with Efficient Parallel Sequential Monte Carlo Inference.- Foundations for Entailment Checking in Quantitative Separation Logic.- Extracting total Amb programs from proofs.- Why3-do: The Way of Harmonious Distributed System Proofs.- Relaxed virtual memory in Armv8-A.- Verified Security for the Morello Capability-enhanced Prototype Arm Architecture.- The Trusted Computing Base of the CompCert Verified Compiler.- View-Based Owicki-Gries Reasoning for Persistent x86-TSO.- Abstraction for Crash-Resilient Objects.- Static Race Detection for Periodic Programs.- Probabilistic Total Store Ordering.- Linearity and Uniqueness: An Entente Cordiale.- A Framework for Substructural Type Systems.- A Dependent Dependency Calculus.- Polarized Subtyping.- Structured Handling of Scoped Effects.- Region-based Resource Management and Lexical Exception Handlers in Continuation-Passing Style.- A Predicate Transformer for Choreographies.- Comparing the expressiveness of the -calculus and CCS.- Concurrent NetKAT.
£33.24
Springer International Publishing AG Logic, Language, Information, and Computation:
Book SynopsisEdited in collaboration with FoLLI, the Association of Logic, Language and Information this book constitutes the refereed proceedings of the 28th Workshop on Logic, Language, Information and Computation, WoLLIC 2022, Iasi, Romania, in September 2022. The 25 full papers presented included with 8 extra abstracts, 5 invited talks and 3 tutorials were fully reviewed and selected from 46 submissions. The conference aims fostering interdisciplinary research in pure and applied logic.Table of ContentsProof theory,.- Model theory.- Modal and temporal logics.- Automated reasoning.-Constraint and logic programming.- Constructive mathematics.- Equational logic and rewriting.- Finite Model Theory.- Descriptive complexity,.- Higher order logic.- Programming logic.- Model checking.- Type theory.- Lambda calculus.- Semantics of programming languages.- Computational linguistics.-Language and computation.- Logic and language.
£42.74
Springer International Publishing AG Genetic Programming: 26th European Conference,
Book SynopsisThis book constitutes the refereed proceedings of the 26th European Conference on Genetic Programming, EuroGP 2023, held as part of EvoStar 2023, in Brno, Czech Republic, during April 12–14, 2023, and co-located with the EvoStar events, EvoCOP, EvoMUSART, and EvoApplications. The 14 revised full papers and 8 short papers presented in this book were carefully reviewed and selected from 38 submissions. The wide range of topics in this volume reflects the current state of research in the field. The collection of papers cover topics including developing new variants of GP algorithms for both optimization and machine learning problems as well as exploring GP to address complex real-world problems.
£56.99
Springer Programming Language Design and Implementation
Book Synopsis1. A Brief History of Programming Languages.- 2. Implementation Strategies.- 3. Syntax.- 4. Memory Management.- 5. Scopes, Functions, and Parameter Passing.- 6. Control Structures.- 7. Types.- 8. Language Paradigms.- 9. Modularisation.- 10. Domain-Speci?c Programming Languages.- 11. Specifying the Semantics of a Programming Language.- 12. Exploring the Limits.
£64.99
Springer International Publishing AG Systems Programming in Unix/Linux
Book SynopsisCovering all the essential components of Unix/Linux, including process management, concurrent programming, timer and time service, file systems and network programming, this textbook emphasizes programming practice in the Unix/Linux environment. Systems Programming in Unix/Linux is intended as a textbook for systems programming courses in technically-oriented Computer Science/Engineering curricula that emphasize both theory and programming practice. The book contains many detailed working example programs with complete source code. It is also suitable for self-study by advanced programmers and computer enthusiasts.Systems programming is an indispensable part of Computer Science/Engineering education. After taking an introductory programming course, this book is meant to further knowledge by detailing how dynamic data structures are used in practice, using programming exercises and programming projects on such topics as C structures, pointers, link lists and trees.This book provides a wide range of knowledge about computer systemsoftware and advanced programming skills, allowing readers to interface with operatingsystem kernel, make efficient use of system resources and develop application software.It also prepares readers with the needed background to pursue advanced studies inComputer Science/Engineering, such as operating systems, embedded systems, databasesystems, data mining, artificial intelligence, computer networks, network security,distributed and parallel computing.Table of ContentsChapter 1. Introduction to Unix/Linux.- Chapter 2. Programming Background.- Chapter 3 Process Management in Unix/Linux.- Chapter 4 Concurrent Programming.- Chapter 5 Timers and Time Service.- Chapter 6 Signals and Signal Processing.- Chapter 7 File Operations.- Chapter 8 System Calls for File Operations.- Chapter 9 Library I/O FunctionsChapter 10 Sh Programming.- Chapter 11 EXT2 File System.- Chapter 12. Block Device I/O and Buffer Management.- Chapter 13 TCP/IP and Network Programming.
£67.49
Springer Fachmedien Wiesbaden Programmieren mit PostScript: Eine umfassende
Book SynopsisTable of Contents1 Einleitung.- 1.1 Zur Entstehung von PostScript.- 1.2 Die Seitenbeschreibungssprache PostScript.- 1.3 Zielrichtung dieses Buches.- 2 Grundlagen.- 2.1 Der Stack und einfache Arithmetik.- 2.2 Weitere arithmetische Befehle.- 2.3 Koordinatensystem und aktueller Punkt.- 2.4 Einfache Textausgabe.- 2.4.1 Das Font.- 2.4.2 Strings und der Befehl »show«.- 2.4.3 Programm-Struktur.- 2.5 Linien.- 2.6 Spezielle Befehle für die Stackverwaltung.- 3 Variablen, Prozeduren und Schleifen.- 3.1 Variablen.- 3.2 Aufbau von Namen und Zahlen.- 3.3 Prozeduren.- 3.4 Schleifen.- 3.4.1 Der Befehl »loop«.- 3.4.2 Der Befehl »repeat«.- 3.4.3 Der Befehl »for«.- 4 Füllen.- 4.1 Graue Flächen und Linien.- 4.2 Die Befehle »gsave« und »grestore«.- 4.3 Die Füllregeln.- 4.3.1 Die »Non-Zero-Winding-Rule«.- 4.3.2 Die »Even-Odd-Rule«.- 5 Kurven.- 5.1 Kreise.- 5.2 Bezier-Kurven.- 5.3 Abgerundete Ecken.- 6 Arrays, Dictionaries und Strings.- 6.1 Die Arrays.- 6.1.1 Der Befehl »setdash«.- 6.1.2 Spezielle Befehle für Arrays.- 6.1.3 Spezielle Befehle für Markierungen.- 6.2 Die Dictionaries.- 6.3 Eintragungen in Dictionaries.- 6.4 Spezielle Befehle für Strings.- 6.4.1 Die Befehle »string« und »cvs«.- 6.4.2 Der Suchbefehl »search«.- 6.5 Gemeinsame Befehle für Arrays, Dictionaries und Strings.- 6.5.1 Der Befehl »put«.- 6.5.2 Der Befehl »get«.- 6.5.3 Der Befehl »length«.- 6.5.4 Der Befehl »copy«.- 6.5.5 Die Befehle »putinterval« und »getinterval«.- 6.5.6 Der Befehl »forall«.- 6.6 Zugriffsrechte.- 7 Abfragen in PostScript.- 7.1 Die Vergleichsoperationen.- 7.2 Verknüpfung von logischen Werten.- 7.3 Die Befehle »if« und »ifelse«.- 8 Fonts.- 8.1 Die Organisation der Fonts.- 8.2 Ausgabe einer Liste aller verfügbaren Fonts.- 8.3 Aktivierung von Umlauten in PostScript.- 8.4 Outline-Fonts.- 8.5 Userfonts.- 8.5.1 Ein einfaches Userfont.- 8.5.2 Ein vollwertiges Userfont.- 8.5.3 Spezialitäten mit Userfonts.- 9 Transformationen.- 9.1 Der Befehl »translate«.- 9.2 Der Befehl »scale«.- 9.3 Rotation.- 9.4 Der Aufbau der Transformationsmatrix.- 9.5 Die Befehle »transform« und »itransform«.- 9.6 Transformation eines Fonts.- 10 Clipping.- 11 Bildverarbeitung.- 11.1 Aufbau des Bildes.- 11.2 Der Befehl »image«.- 11.3 Der Befehl »imagemask«.- 11.4 Rasterzellen.- 11.5 Der Aufbau der Rasterzelle.- 11.6 Die Transferfunktion.- 12 Ein- und Ausgaben in PostScript.- 12.1 Lesen von Daten aus Datenströmen.- 12.2 Ausgabe von Daten auf Datenströme.- 12.3 Ausführung einer Datei.- 12.4 Erweiterungen für die Dateienverwaltung.- 13 Druckerspezifische Befehle.- 13.1 Allgemeine Druckereinstellungen.- 13.2 Spezielle Befehle für Laserdrucker.- 13.3 Spezielle Befehle für Belichter.- 14 Speicherverwaltung und Programmausführung.- 14.1 Der Befehl »bind« und die Funktion »//«.- 14.2 Die Speicherverwaltung.- 14.3 Die Befehle »exec« und »execstack«.- 14.4 Die Befehle »stop« und »stopped«.- 14.5 Zusammenfassung der PostScript-Typen.- 15 Der graphische Status.- 16 Fehlerbehandlung.- 16.1 Fehler und ihre möglichen Ursachen.- 17 Kommentar-Konventionen.- A ASCII-Tabellen.- B Zahlensysteme.- C Lösungen zu den Aufgaben.- D Literaturverzeichnis.- E Sachwortverzeichnis.
£49.49
Springer Fachmedien Wiesbaden COBOL — Das Handbuch für den professionellen
Book SynopsisCOBOL dürfte die am meisten angewendete Programmiersprache seit ihrer ersten Veröffentlichung im Jahre 1960 sein. Man schätzt, daß etwa 40% aller geschriebenen Programme in COBOL abgefaßt worden sind, wobei der Trend eher als zunehmend zu beurteilen ist. Der Grund für dieses gesteigerte Interesse liegt vor allem in der ständig zu nehmenden Aufbereitung und Verarbeitung von Massendaten aus allen wirtschaftlich orientierten Bereichen, wofür COBOL hervorragend ge eignet ist. Da die anwenderbezogenen Anforderungen an die Verar beitung dieser Daten einer ständigen Entwicklung unterliegen, muß auch COBOL dieser Entwicklung gerecht werden. Seit 1968 hat das American National Standards Institute (ANS I) , dem auch ein inter nationaler Beraterkreis angehört, die Standardisierung der COBOL Entwicklung übernommen. Dadurch wurde der Grundstein für die Kompatibilität der Sprache gelegt. Heute sind alle publizierten COBOL Versionen aufwärtskompatibel. Das heißt, daß auch Programme, die in älteren Versionen geschrieben wurden, beim Einsatz neuer Compiler Versionen unter geringfügigen Quell-Code-Änderungen läuffähig bleiben. Damit ist COBOL zu einer lebendigen Programmiersprache geworden, die eine zukünftige Entwicklung bereits in sich trägt und universell einsetzbar ist. Da COBOL für die Verarbeitung großer Datenmengen geschaffen wurde, war ihr Einsatz in der Vergangenheit auf Großrechner be schränkt. Durch die rasche Hardware-Entwicklung, die vor allem durch immer schnellere Rechner und größere Speicherkapazitäten auf kleinstem Raum zum Ausdruck kommt, können COBOL-Programme auch zunehmend auf mittleren und Kleinanlagen eingesetzt werden. Die Computer-Hersteller haben dieser Entwicklung Rechnung getragen und eine Reihe sehr guter Compiler entwickelt, die auf dem PC einsetzbar sind.Table of Contents1 Entwicklung von COBOL.- 2 COBOL-Notation (Syntax).- 3 Die COBOL-Programmstruktur.- 3.1 Die Divisions.- 3.2 Der COBOL-Zeichenvorrat.- 3.3 COBOL-Zeichenfolgen.- 3.3.1 COBOL-Wortarten.- 3.3.1.1 Programmierer-Wörter.- 3.3.1.2 Systemnamen.- 3.3.1.3 Reservierte Wörter.- 3.3.2 Literate.- 3.3.2.1 Numerische Literate.- 3.3.2.2 Nichtnumerische Literate.- 3.3.3 PICTURE-Zeichenfolgen.- 3.4 Das Standard-COBOL-Format.- 3.4.1 Zeilenfortsetzung.- 3.4.1.1 Trennen von Wörtern und numerischen Literaten.- 3.4.1.2 Trennen von nichtnumerischen Literaten.- 3.4.2 Kommentarzeilen.- 3.4.3 Leerzeilen.- 3.5 Das COBOL-Quellprogramm.- 4 Identification Division.- 4.1 Der Paragraph PROGRAM-ID.- 4.2 Die wahlfreien Paragraphen.- 5 Environment Division.- 5.1 Configuration Section.- 5.1.1 Der Paragraph SOURCE-COMPUTER.- 5.1.1.1 WITH DEBUGGING MODE-Klausel.- 5.1.2 Der Paragraph OBJECT-COMPUTER.- 5.1.2.1 MEMORY SIZE-Klausel.- 5.1.2.2 SEGMENT-LIMIT-Klausel.- 5.1.2.3 PROGRAM COLLATING SEQUENCE-Klausel.- 5.1.3 Der Paragraph SPECIAL-NAMES.- 5.1.3.1 Funktionsname-1 IS Merkname-Klausel.- 5.1.3.2 Funktionsname-2 IS Merkname-Klausel.- 5.1.3.3 ALPHABET Alphabetname-Klausel.- 5.1.3.4 CURRENCY SIGN-Klausel.- 5.1.3.5 DECIMAL-POINT IS COMMA-Klausel.- 5.1.3.6 CLASS-Klausel.- 5.2 Input-Output Section.- 5.2.1 Dateiorganisationsformen und Zugriffsmethoden.- 5.2.1.1 Sequentielle Organisationsform.- 5.2.1.2 Indizierte Organisationsform.- 5.2.1.3 Relative Organisationsform.- 5.2.1.4 Sequentieller Zugriff.- 5.2.1.5 Wahlfreier Zugriff.- 5.2.1.6 Dynamischer Zugriff.- 5.3 Der Paragraph FILE-CONTROL.- 5.3.1 SELECT-Klausel.- 5.3.2 ASSIGN-Klausel.- 5.3.3 RESERVE-Klausel.- 5.3.4 ORGANIZATION-Klausel.- 5.3.5 ACCESS MODE-Klausel.- 5.3.6 PADDING CHARACTER-Klausel.- 5.3.7 RECORD DELIMITER-Klausel.- 5.3.8 RECORD KEY-Klausel.- 5.3.9 ALTERNATE RECORD KEY-Klausel.- 5.3.10 FILE STATUS-Klausel.- 5.4 Der Paragraph I-O-CONTROL.- 5.4.1 RERUN-Klausel.- 5.4.2 SAME AREA-Klausel.- 5.4.3 MULTIPLE FILE TAPE-Klausel.- 5.4.4 APPLY WRITE ONLY-Klausel.- 6 Data Division.- 6.1 File Section.- 6.1.1 BLOCK CONTAINS-Klausel.- 6.1.2 RECORD CONTAINS-Klausel.- 6.1.3 LABEL RECORD-Klausel.- 6.1.4 VALUE OF-Klausel.- 6.1.5 DATA RECORDS-Klausel.- 6.1.6 LINAGE-Klausel.- 6.1.7 RECORDING MODE-Klausel.- 6.1.8 CODE SET-Klausel.- 6.2 Datenbeschreibung.- 6.2.1 Stufennummern.- 6.2.1.1 Stufennummern für die Satzbeschreibung.- 6.2.1.2 Spezielle Stufennummern.- 6.3 Datenerklärung.- 6.3.1 Datennamen.- 6.3.1.1 Die Feldbezeichnung FILLER.- 6.3.2 PICTURE-Klausel.- 6.3.2.1 Datenklassen und Datenkategorien.- 6.3.2.2 Alphabetische Datenelemente.- 6.3.2.3 Numerische Datenelemente.- 6.3.2.4 Alphanumerische Datenelemente.- 6.3.2.5 Aufbau der PICTURE-Zeichenfolge.- 6.3.2.6 PICTURE-Symbole für die Druckaufbereitung.- 6.3.2.7 Mindestlange der PICTURE-Zeichenfolge.- 6.3.3 SIGN-Klausel.- 6.3.4 REDEFINES-Klausel.- 6.3.4.1 Implizite Redefinition (FILE SECTION).- 6.3.4.2 Explizite Redefinition.- 6.3.4.3 Mehrmalige Redefinition eines Datenbereichs.- 6.3.4.4 Redefinition von Einzelfeldern.- 6.3.4.5 Datenübertragungen in redefinierte und redefinierende Felder.- 6.3.5 BLANK WHEN ZERO-Klausel.- 6.3.6 JUSTIFIED RIGHT-Klausel.- 6.3.7 OCCURS-Klausel.- 6.3.8 SYNCHRONIZED-Klausel.- 6.3.8.1 Einfügung von Füll-Bytes durch den Compiler.- 6.3.8.2 Einfügung von Füll-Bytes durch den Programmierer.- 6.3.9 USAGE-Klausel.- 6.3.9.1 Usage Is Display.- 6.3.9.2 Usage Is Binary.- 6.3.9.3 Usage Is Computational (COMP).- 6.3.9.4 Usage Is Index.- 6.3.9.5 Usage Is Packed-Decimal.- 6.3.9.6 Vorzeichenverarbeitung unter VS COBOL II.- 6.3.9.7 Einfluß des Datenformats auf die Effizienz arithmetischer Operationen.- 6.3.10 VALUE-Klausel.- 6.3.11 RENAMES-Klausel.- 6.3.12 Stufennummer 88.- 7 Procedure Division.- 7.1 Die Struktur der PROCEDURE DIVISION.- 7.1.1 Der selbstdefinierte Dateistatus.- 7.2 Datenübertragungen.- 7.2.1 ACCEPT-Anweisung.- 7.2.1.1 Übertragung von Daten.- 7.2.1.2 Übertragung von Systeminformationen.- 7.2.2 DISPLAY-Anweisung.- 7.2.3 MOVE-Anweisung.- 7.2.4 MOVE CORRESPONDING-Anweisung.- 7.2.5 STRING-Anweisung.- 7.2.6 UNSTRING-Anweisung.- 7.2.7 INSPECT-Anweisung.- 7.2.8 INITIALIZE-Anweisung.- 7.2.8.1 Initialisierung von Tabellen.- 7.3 Arithmetische Ausdrücke.- 7.3.1 Arithmetische Operatoren.- 7.4 Bedingungen.- 7.4.1 Einfache Bedingungen.- 7.4.1.1 Klassenbedingungen.- 7.4.1.2 Vorzeichenbedingungen.- 7.4.1.3 Vergleichsbedingungen.- 7.4.1.4 Bedingungsnamen-Bedingungen.- 7.4.2 Zusammengesetzte Bedingungen.- 7.5 Bedingte Anweisungen.- 7.5.1 IF-Anweisung.- 7.5.1.1 Geschachtelte IF-Anweisungen.- 7.5.1.2 IF-Anweisungen mit Leerzweigen.- 7.5.2 CONTINUE-Anweisung.- 7.5.3 EVALUATE-Anweisung.- 7.5.3.1 Verarbeitung von Entscheidungstabellen.- 7.6 Arithmetische Anweisungen.- 7.6.1 ROUNDED-Angabe.- 7.6.2 ON SIZE ERROR-Angabe.- 7.6.3 NOT ON SIZE ERROR-Angabe.- 7.6.4 END-Begrenzungen.- 7.6.5 ADD-Anweisung.- 7.6.6 SUBTRACT-Anweisung.- 7.6.7 MULTIPLY-Anweisung.- 7.6.8 DIVIDE-Anweisung.- 7.6.9 COMPUTE-Anweisung.- 7.7 Eingabe-/Ausgabeanweisungen.- 7.7.1 OPEN-Anweisung.- 7.7.2 CLOSE-Anweisung.- 7.7.3 READ-Anweisung.- 7.7.4 WRITE-Anweisung.- 7.7.5 REWRITE-Anweisung.- 7.7.6 START-Anweisung.- 7.7.7 DELETE-Anweisung.- 7.8 Programmverzweigungen.- 7.8.1 PERFORM-Anweisung.- 7.8.1.1 Tabellverarbeitung mit PERFORM VARYING.- 7.8.1.2 Geschachtelte PERFORM-Anweisungen.- 7.8.2 EXIT-Anweisung.- 7.8.3 GO TO-Anweisung.- 7.8.4 GO TO ... DEPENDING ON-Anweisung.- 7.8.5 STOP-Anweisung.- 7.8.6 ALTER-Anweisung.- 7.9 Tabellenverarbeitung.- 7.9.1 OCCURS-Klausel.- 7.9.1.1 Normalindizierung (Subscripting).- 7.9.1.2 Spezialindizierung (Indexing).- 7.9.1.3 Mehrdimensionale Tabellen.- 7.9.2 SET-Anweisung.- 7.9.3 SEARCH-Anweisung.- 7.9.3.1 Sequentielles Durchsuchen einer Tabelle.- 7.9.3.2 Binares Durchsuchen einer Tabelle.- 7.10 Änderung von Quell-Text.- 7.10.1 COPY-Anweisung.- 7.10.2 REPLACING-Anweisung.- 7.10.3 BASIS-Anweisung.- 8 Externe Unterprogramme.- 8.1 CALL-Anweisung.- 8.1.1 USING-Zusatz.- 8.1.1.1 Using by Reference/Content.- 8.2 USING-Zusatz in der PROCEDURE DIVISION des Unterprogramms.- 8.3 LINKAGE SECTION.- 8.4 EXIT PROGRAM-Anweisung.- 8.5 CANCEL-Anweisung.- 8.6 ENTRY-Anweisung.- 9 Sortieren und Mischen.- 9.1 Sortieren von Dateien (SORT).- 9.1.1 SELECT/ASSIGN-Klausel.- 9.1.2 SD-Eintragung.- 9.1.3 SORT-Anweisung.- 9.1.4 RELEASE-Anweisung.- 9.1.5 RETURN-Anweisung.- 9.2 Mischen von Dateien (MERGE).- 9.2.1 MERGE-Anweisung.- 9.3 Das IBM-Dienstprogramm DFSORT.- 9.3.1 Die IBM-Sonderregister.- 10 Declaratives.- 10.1 USE-Anweisung.- 11 Dialog-orientierte Programmierung.- 11.1 Menü-Technik mit MS-COBOL.- 11.1.1 Positionierung des Cursors.- 11.1.1.1 Cursor-Klausel (CURSOR IS daten-name).- 11.1.2 Löschen des Bildschirms.- 11.1.3 Struktur der Aus- und Eingabebereiche.- 11.2 Menü-Technik mit den Mitteln des ANSI-Standards unter VS COBOL II.- 12 Grundlagen der strukturierten Programmierung.- 12.1 Der logische Aufbau eines strukturierten Programms.- 12.1.1 Der Haupt-Modul.- 12.2 COBOL-Tools für die strukturierte Programmierung.- 12.3 Allgemeine Regeln und Empfehlungen zur Erstellung eines strukturierten Programms.- 12.3.1 Maßnahmen zur Verbesserung der Lesbarkeit des Quell-Programms.- 12.3.2 Kennzeichnung der Paragraphen-Namen.- 12.3.3 Der eingeschränkte Gebrauch von GO TO.- 12.3.4 Der Programmentwurf im Strukturtext.- 12.4 Struktogramm-Technik.- 12.4.1 Einfacher Strukturblock.- 12.4.2 Bedingungs-Strukturblock.- 12.4.3 CASE-Strukturblock.- 12.4.4 CYCLE-Strukturblock.- 12.4.4.1 Realisierung eines CYCLE-Blocks durch das IN-LINE-PERFORM.- 12.4.5 Prozeduraufruf-Strukturblock.- 12.4.6 BREAK-Strukturblock.- 12.4.7 Klammer-Strukturblock.- Anhang 1: ASCII-Sortierfolge (8-Bit-Code).- Anhang 2: EBCDIC-Sortierfolge (IBM-Standard U.S.).- Anhang 3: Liste der reservierten COBOL-Wörter.- Sachwortverzeichnis.
£58.49
Springer Fachmedien Wiesbaden Java üben mit dem Plotter: Ein Überblick für
Book SynopsisDieses essential zeigt, wie man in Java-Anwendungen mit dem Plotter grafische Darstellungen erzeugen kann. Mit dem Plotter-Objekt – angelehnt an den Stiftplotter, der sich mit Steuerbefehlen über Papier bewegt – wird eine einfache Schnittstelle zur grafischen Programmierung angeboten. Bereits beim Einstieg in die Programmierung entstehen so erste grafische Darstellungen wie z.B. Funktionsverläufe und Simulationsergebnisse. Durch einfache Programmierbeispiele und Aufgaben wird der Umgang mit grundlegenden Konzepten wie Variablen, Kontrollstrukturen, Methoden und Klassen geübt. Table of ContentsJava Plotter – grafische Darstellung mit unterschiedlichen Linienarten und Farben.- Beispiele mit Quell-Code – LineStyle Demo, Spirale und mehr.- Übungsaufgaben zu Kurven, Simulationen mit Zufallszahlen und Feldern.
£11.77
Springer Vieweg Die Modularität von Java 9
Book Synopsis
£21.84
Springer Fachmedien Wiesbaden C++ für Ingenieure: Effizient Programmieren
Book SynopsisDer Student und Praktiker erhält Lösungen von einfachen und komplexen technischen Fragestellungen auf der Basis einer soliden C++ Programmierung. Ein Schwerpunkt liegt dabei auf der objektorientierten und generischen Programmierung. Das breite Spektrum von Anwendungsbeispielen ist leicht nachvollziehbar und erlaubt schrittweise eine Steigerung des Niveaus. Das Buch enthält ebenso Anregungen zu weiterführenden Arbeiten.Table of ContentsGrundlagen der Programmierung - Prozedurale Programmierung - Modulare Programmierung - Objektorientierte Programmierung - Generische Programmierung
£28.49
Springer Fachmedien Wiesbaden Car Multimedia Systeme Modell-basiert testen mit
Book SynopsisOliver Alt beschreibt sein Verfahren, Testfälle für den Systemtest von Car Multimedia Systemen automatisiert aus einem speziell konzipierten Systemmodell zu generieren. Neue Ansätze sind dabei die durchgängige Modellierung mit Hilfe von Aktivitätsdiagrammen, die Anwendung funktional gleicher Testfälle auf technisch verschiedene Systeme und der Einsatz der Systembeschreibungssprache OMG SysMLTable of ContentsElektronische Systeme im Fahrzeug – Entwicklung und Test im Telematikbereich – Modell-basiertes Testen – Konzeption und Lösungsansatz – Generierung funktionaler und produktspezifischer Testfälle – Beispiel MOST Audio System
£49.49
Springer Fachmedien Wiesbaden Java will nur spielen: Programmieren lernen mit
Book SynopsisSpielen macht nicht nur einfach Spaß – über das Spiel entwickelt der „homo ludens“ (lat. der spielende Mensch) seine Fähigkeiten. Dieser Kurs nutzt den Spieltrieb um Programmieren zu lehren und zeigt wie spannend, kreativ und gesellig es sein kann. Als Programmiersprache dient hierzu Java in der aktuellen Version 1.6. Zuerst werden einige Grundlagen des Programmierens besprochen. Die treibende Kraft zum Erlernen der Sprache ist die Entwicklung von unterschiedlichen Spielen: angefangen von einfachen Reaktionsspiele mit beweglichen Objekten im 2-dimensionalen Raum über Strategie- und Denkspiele, die über Algorithmen der künstlichen Intelligenz gelöst werden, bis hin zu verteilten Spielen in einem Netzwerk. Dabei werden nicht nur Spiele per Anwendung, Applet oder auch für das Handy entwickelt, sondern quasi nebenbei objektorientierte Programmierung und Technologien wie XML und RMI erlernt. Über den zugehörigen Online-Service können alle Quellcodes aus dem Buch sowie Lösungen zu den Aufgaben heruntergeladen werden.Trade Review"Unter dem kessen Titel 'Java will nur spielen' gibt Sven Panitz eine muntere Einführung in die Spielprogrammierung mit Java in der Version 1.6. Dabei wird ganz nebenbei die spielerische Seite des Programmierens in den Blick gerückt, um Einsteigern im Kampf mit dem Code etwas von der Lockerheit zu erhalten, der für kreative Lösungen meist Voraussetzung ist." Buchhändler heute, 03/2009Table of ContentsGrundlagen der Programmierung in Java - 2-dimensionale jump-and-run-Spiele - Denk- und Logikspiele - Netzwerkspiele - Spiele als Applet - Spiele für das Handy
£26.59
Springer R Programming
Book SynopsisIntroduction to R programming and RStudio Integrated Development Environment (IDE).- Working with Data in R: Objects, Vectors, Factors, Packages and Libraries, and Data Visualization.- Test of Normality and Reliability of Data in R.- Choosing between Parametric and Non-Parametric Tests in Statistical Data Analysis.- Understanding Dependent and Independent Variables in Research Experiments and Hypothesis Testing.- Understanding the Different Types of Statistical Data Analysis and Methods.- Regression Analysis in R: Linear and Logistic Regression.- T-test Statistics in R: Independent samples, Paired sample, and One sample ttests.- Analysis of Variance (ANOVA) in R: One-way and Two-way ANOVA.- Chi-squared (X2) Statistical Test in R.- Mann Whitney U test and Kruskal Wallis H test Statistics in R.- Correlation Tests in R: Pearson cor, Kendall's tau, and Spearman's rho.- Wilcoxon Statistics in R: Signed-Rank test and Rank-Sum test.
£152.99
Springer Verlag, Singapore FPGA EDA: Design Principles and Implementation
Book SynopsisThis book focuses on FPGA EDA tools, the very foundation of FPGA technology. Instead of illustrating how to use them, this book dives into the tools themselves, revealing how these tools are being designed and how they may improve. Unlike other semiconductors, FPGA has a distinctive two-stage EDA system: chip design EDA and application design EDA.State-of-the-art algorithms, data models and design methodologies/standards are the main concerns of this book, and these will be very helpful for FPGA EDA engineers and researchers to obtain a bird’s eye view of this complicated knowledge system. In the chip design EDA part, full-custom and semicustom methodologies bring up ASIC-like EDA tools, and in the application design EDA side, typical topics including high-level synthesis, logic synthesis, physical implementation, bitstream configuration, etc., are well discussed.Table of ContentsPart I: Introduction Chapter1: Introduction 1.1 FPGA Hardware Brief Introduction 1.1.1 FPGA Concept 1.1.2 FPGA Hardware Evolution 1.1.3 FPGA Compares With Other Architectures 1.2 FPGA EDA Brief Introduction 1.2.1 FPGA EDA Concept . 1.2.2 FPGA chip design EDA 1.2.3 FPGA application design EDA Part II: FPGA Chip Design EDA Chapter2: Full-custom EDA Chapter3: Semi-custom EDA Part III: FPGA Application Design EDA Chapter4: FPGA Device Modelling 3.1 Device Info Description Level 3.2 Device Info Model Classification 3.3 Device Info Model Instances 3.4 Device Info Data Structure Chapter5:FPGA Design Modelling 4.1 Design Info Description Level 4.2 Design Info Model Classification 4.3 Design Info Model Instances 4.4 Design Info Data Structure Chapter6: High Level Synthesis (HLS) 5.1. HLS Concept( Introduction) 5.2. HLS Data Models and General Techniques 5.3. HLS Advanced Techniques 5.3.1 SDC-Based Modulo Scheduling 5.3.2 Dynamic Scheduling 5.3.3 Polyhedral Analysis and Optimization 5.4. Current Status and Future Outlook 5.4.1 Where is HLS Used Today 5.4.2 Comercial HLS Tools 5.4.3 Academic HLS Tools 5.4.4 What Are We Still Missing? Chapter7: Logic Synthesis (LGS) 6.1 LGS Concept(Introduction) 6.2 Boolean Logic Fundamentals 6.2.1 Functional Representations 6.2.2 Directed-Acyclic-Graph(DAG) Boolean Networks 6.2.3 Formal methods 6.3 LGS Data Models and General Techniques 6.3.1 Data Models 6.3.2 Front End 6.3.3 Elaboration -DAG aware methods -Exact methods -Sequential methods 6.3.4 Mapping -Flow-based methods -Cut-based methods -Exact methods 6.3.5 Back End 6.4 LGS Advanced Techniques 6.4.1 Machine Learning 6.4.2 HPC Accelerated 6.5 Current Status and Future Outlook 6.4.2 Comercial LGS Tools 6.4.3 Academic LGS Tools 6.4.4 What Are We Still Missing? Chapter8: Physical Implementation 7.1 Packing 7.2 Placement 7.3 Routing 7.4 Performance(Timing) Analysis 7.5 Power Analysis 7.6 Area(Resource) Analysis 7.7 Engine Fusion Chapter9: Bitstream Configuration 8.1 Bitstream Generation 8.2 Bitstream Compression 8.3 Bitstream Encryption 8.4 Device Programming 8.5 Partial Reconfiguration Chapter10: Generic GUI Framework . Part IV: Summary and Outlook Chapter11: Summary and Outlook
£42.74
Springer International Publishing AG Foundations of Programming Languages
Book SynopsisThis clearly written textbook provides an accessible introduction to the three programming paradigms of object-oriented/imperative, functional, and logic programming. Highly interactive in style, the text encourages learning through practice, offering test exercises for each topic covered. Review questions and programming projects are also presented, to help reinforce the concepts outside of the classroom. This updated and revised new edition features new material on the Java implementation of the JCoCo virtual machine.Topics and features: includes review questions and solved practice exercises, with supplementary code and support files available from an associated website; presents an historical perspective on the models of computation used in implementing the programming languages used today; provides the foundations for understanding how the syntax of a language is formally defined by a grammar; illustrates how programs execute at the level of assembly language, through the implementation of a stack-based Python virtual machine called JCoCo and a Python disassembler; introduces object-oriented languages through examples in Java, functional programming with Standard ML, and programming using the logic language Prolog; describes a case study involving the development of a compiler for the high level functional language Small, a robust subset of Standard ML.Undergraduate students of computer science will find this engaging textbook to be an invaluable guide to the skills and tools needed to become a better programmer. While the text assumes some background in an imperative language, and prior coverage of the basics of data structures, the hands-on approach and easy to follow writing style will enable the reader to quickly grasp the essentials of programming languages, frameworks, and architectures.Table of ContentsIntroductionSyntaxAssembly LanguageObject-Oriented ProgrammingFunctional ProgrammingCompiling Standard MLLogic ProgrammingStandard ML Type InferenceAppendix A: The JCoCo Virtual Machine Specification Appendix B: The Standard ML Basis Library
£51.15
Taylor & Francis ObjectOriented Engineering Building Engineering Systems Using Smalltalk80 Building Engineering Systems Usig Smalltalk80
a huge range and FREE tracked UK delivery on ALL orders.
£25.99
Taylor & Francis Ltd Fortran 2018 with Parallel Programming
a huge range and FREE tracked UK delivery on ALL orders.
£133.00
Taylor & Francis Ltd Essentials of Microservices Architecture
a huge range and FREE tracked UK delivery on ALL orders.
£59.84
Taylor & Francis Ltd Modelling Hydrology Hydraulics and Contaminant Transport Systems in Python
a huge range and FREE tracked UK delivery on ALL orders.
£104.50
Taylor & Francis Ltd Research and Evidence in Software Engineering From Empirical Studies to Open Source Artifacts
a huge range and FREE tracked UK delivery on ALL orders.
£123.50
Taylor & Francis Ltd Formal Languages and Computation Models and Their Applications
a huge range and FREE tracked UK delivery on ALL orders.
£54.14
Taylor & Francis Ltd Introduction to Concurrency in Programming Languages
a huge range and FREE tracked UK delivery on ALL orders.
£56.99
Taylor & Francis Ltd Security Software Development
a huge range and FREE tracked UK delivery on ALL orders.
£54.14
Taylor & Francis The Logic of Commands
a huge range and FREE tracked UK delivery on ALL orders.
£82.64
Taylor & Francis The Logic of Commands
a huge range and FREE tracked UK delivery on ALL orders.
£31.99
Taylor & Francis Ltd Metaheuristic Computation with MATLAB
a huge range and FREE tracked UK delivery on ALL orders.
£109.25
Taylor & Francis Ltd Languages for Developing User Interfaces
a huge range and FREE tracked UK delivery on ALL orders.
£54.14