Gjør som tusenvis av andre bokelskere
Abonner på vårt nyhetsbrev og få rabatter og inspirasjon til din neste leseopplevelse.
Ved å abonnere godtar du vår personvernerklæring.Du kan når som helst melde deg av våre nyhetsbrev.
The third edition of this textbook has been fully revised and adds material about the SSA form, polymorphism, garbage collection, and pattern matching. It presents techniques for making realistic compilers for simple to intermediate-complexity programming languages. The techniques presented in the book are close to those used in professional compilers, albeit in places slightly simplified for presentation purposes. "Further reading" sections point to material about the full versions of the techniques.All phases required for translating a high-level language to symbolic machine language are covered, and some techniques for optimising code are presented. Type checking and interpretation are also included.Aiming to be neutral with respect to implementation languages, algorithms are mostly presented in pseudo code rather than in any specific language, but suggestions are in many places given for how these can be realised in different language paradigms.Depending on how much of the material from the book is used, it is suitable for both undergraduate and graduate courses for introducing compiler design and implementation.
This invaluable textbook/reference provides an easy-to-read guide to the fundamentals of formal methods, highlighting the rich applications of formal methods across a diverse range of areas of computing.Topics and features: introduces the key concepts in software engineering, software reliability and dependability, formal methods, and discrete mathematics; presents a short history of logic, from Aristotle¿s syllogistic logic and the logic of the Stoics, through Boole¿s symbolic logic, to Frege¿s work on predicate logic; covers propositional and predicate logic, as well as more advanced topics such as fuzzy logic, temporal logic, intuitionistic logic, undefined values, and the applications of logic to AI; examines the Z specification language, the Vienna Development Method (VDM) and Irish School of VDM, and the unified modelling language (UML); discusses Dijksträs calculus of weakest preconditions, Hoare¿s axiomatic semantics of programming languages, and the classical approachof Parnas and his tabular expressions; provides coverage of automata theory, probability and statistics, model checking, and the nature of proof and theorem proving; reviews a selection of tools available to support the formal methodist, and considers the transfer of formal methods to industry; includes review questions and highlights key topics in every chapter, and supplies a helpful glossary at the end of the book.This stimulating guide provides a broad and accessible overview of formal methods for students of computer science and mathematics curious as to how formal methods are applied to the field of computing.
This book provides an introduction to the essential concepts in programming languages, using operational semantics techniques. It presents alternative programming language paradigms and gives an in-depth analysis of the most significant constructs in modern imperative, functional and logic programming languages.
Focus on issues and principles in context awareness, sensor processing and software design (rather than sensor networks or HCI or particular commercial systems). Designed as a textbook, with readings and lab problems in most chapters. Focus on concepts, algorithms and ideas rather than particular technologies.
It provides a thorough introduction to the concepts of PR and a systematic account of the major topics in PR besides reviewing the vast progress made in the field in recent times.
highlights the patterns which frequently appear when writing programs, reinforcing the application of these patterns for problem-solving through practice exercises; introduces the use of a debugger tool to inspect a program, enabling students to discover for themselves how programs work and enhance their understanding;
By introducing the principles of programming languages, using the Java language as a support, Gilles Dowek provides the necessary fundamentals of this language as a first objective. It is important to realise that knowledge of a single programming language is not really enough.
This book is an introduction to the design and implementation of operating systems using OSP 2, the next generation of the highly popular OSP courseware for undergraduate operating system courses. The book allows students to practice these skills in a realistic operating systems programming environment.
This textbook describes the approaches used by software engineers to build quality into their software. examines all aspects of the software development process, including project planning and tracking, software lifecycles, software inspections and testing, configuration management, and software quality assurance;
This easy-to-follow textbook/reference presents a concise introduction to mathematical analysis from an algorithmic point of view, with a particular focus on applications of analysis and aspects of mathematical modelling.
This easy-to-follow textbook provides a modern, algorithmic introduction to digital image processing. It concentrates on practical applications and working implementations whilst also presenting important formal details and the necessary mathematics.
Programming Languages is a self-contained approach to the topic, and differentiates between the design, implementation and pragmatic aspects of programming languages overall. The main programming paradigms are presented, in a straightforward way.
This classroom-tested textbook provides an accessible introduction to the design, formal modeling, and analysis of distributed computer systems.
Tracing the story of computing from Babylonian counting boards to smartphones, this inspiring textbook provides a concise overview of the key events in the history of computing, together with discussion exercises to stimulate deeper investigation into this fascinating area.
This accessible textbook supports a foundation or module course on A.I., covering a broad selection of the subdisciplines within this field. It provides study exercises at the end of each chapter, plus examples, definitions, theorems, and illustrations.
This book provides an undergraduate introduction to analysing data for data science, computer science, and quantitative social science students.
Programming language analysis and translation techniques are used in many software application areas.A Practical Approach to Compiler Construction covers the fundamental principles of the subject in an accessible way.
reviews the basic image processing methods for segmenting or enhancing certain features in an image, with a focus on morphology methods for binary images; describes how to change the geometry within an image, how to align two images so that they are as similar as possible, and how to detect lines and paths in images;
The other describes how to compile a C subset to real (x86) hardware, as a smooth extension of the previously presented compilers.The examples present several interpreters and compilers for toy languages, including compilers for a small but usable subset of C, abstract machines, a garbage collector, and ML-style polymorphic type inference.
The updated and expanded 4th edition of this book explores mathematical techniques and problem-solving strategies for computer games, animation, virtual reality, CAD and other areas of computer graphics. Includes 120 worked examples and some 270 illustrations.
Features: provides an introduction to the basic notation and mathematical concepts for describing an image and the key concepts for mapping an image into an image; explains the topologic and geometric basics for analysing image regions and distributions of image values and discusses identifying patterns in an image;
The coverage spans key concepts adopted from statistics and machine learning, useful techniques for graph analysis and parallel programming, and the practical application of data science for such tasks as building recommender systems or performing sentiment analysis.
This engaging text presents the fundamental mathematics and modelling techniques for computing systems in a novel and light-hearted way, which can be easily followed by students at the very beginning of their university education.
After a brief explanation of why modeling is an indispensable part of software development, the authors introduce the individual diagram types of UML (the class and object diagram, the sequence diagram, the state machine diagram, the activity diagram, and the use case diagram), as well as their interrelationships, in a step-by-step manner.
Abonner på vårt nyhetsbrev og få rabatter og inspirasjon til din neste leseopplevelse.
Ved å abonnere godtar du vår personvernerklæring.