![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Programming languages > General
Logic Programming is the name given to a distinctive style of programming, very different from that of conventional programming languages such as C++ and Java. By far the most widely used Logic Programming language is Prolog. Prolog is a good choice for developing complex applications, especially in the field of Artificial Intelligence. Logic Programming with Prolog does not assume that the reader is an experienced programmer or has a background in Mathematics, Logic or Artificial Intelligence. It starts from scratch and aims to arrive at the point where quite powerful programs can be written in the language. It is intended both as a textbook for an introductory course and as a self-study book. On completion readers will know enough to use Prolog in their own research or practical projects. Each chapter has self-assessment exercises so that readers may check their own progress. A glossary of the technical terms used completes the book. This second edition has been revised to be fully compatible with SWI-Prolog, a popular multi-platform public domain implementation of the language. Additional chapters have been added covering the use of Prolog to analyse English sentences and to illustrate how Prolog can be used to implement applications of an 'Artificial Intelligence' kind. Max Bramer is Emeritus Professor of Information Technology at the University of Portsmouth, England. He has taught Prolog to undergraduate computer science students and used Prolog in his own work for many years.
Two central ideas in the movement toward advanced automation systems are the office-of-the-future (or office automation system), and the factory of-the-future (or factory automation system). An office automation system is an integrated system with diversified office equipment, communication devices, intelligent terminals, intelligent copiers, etc., for providing information management and control in a dis tributed office environment. A factory automation system is also an inte grated system with programmable machine tools, robots, and other pro cess equipment such as new "peripherals," for providing manufacturing information management and control. Such advanced automation systems can be regarded as the response to the demand for greater variety, greater flexibility, customized designs, rapid response, and 'Just-in-time" delivery of office services or manufac tured goods. The economy of scope, which allows the production of a vari ety of similar products in random order, gradually replaces the economy of scale derived from overall volume of operations. In other words, we are gradually switching from the production of large volumes of standard products to systems for the production of a wide variety of similar products in small batches. This is the phenomenon of "demassification" of the marketplace, as described by Alvin Toffier in The Third Wave."
Compilers and operating systems constitute the basic interfaces between a programmer and the machine for which he is developing software. In this book we are concerned with the construction of the former. Our intent is to provide the reader with a firm theoretical basis for compiler construction and sound engineering principles for selecting alternate methods, imple menting them, and integrating them into a reliable, economically viable product. The emphasis is upon a clean decomposition employing modules that can be re-used for many compilers, separation of concerns to facilitate team programming, and flexibility to accommodate hardware and system constraints. A reader should be able to understand the questions he must ask when designing a compiler for language X on machine Y, what tradeoffs are possible, and what performance might be obtained. He should not feel that any part of the design rests on whim; each decision must be based upon specific, identifiable characteristics of the source and target languages or upon design goals of the compiler. The vast majority of computer professionals will never write a compiler. Nevertheless, study of compiler technology provides important benefits for almost everyone in the field . * It focuses attention on the basic relationships between languages and machines. Understanding of these relationships eases the inevitable tran sitions to new hardware and programming languages and improves a person's ability to make appropriate tradeoft's in design and implementa tion .
This book constitutes the proceedings of the 15th International Symposium on Research in Attacks, Intrusions and Defenses, former Recent Advances in Intrusion Detection, RAID 2012, held in Amsterdam, The Netherlands in September 2012. The 18 full and 12 poster papers presented were carefully reviewed and selected from 84 submissions. The papers address all current topics in virtualization, attacks and defenses, host and network security, fraud detection and underground economy, web security, intrusion detection.
Ada 2012 is the latest version of the international standard for the programming language Ada. It is designated ISO/IEC 8652:2012 (E) and is a new edition replacing the 2005 version. The primary goals for the new version were to further enhance its capabilities particularly in those areas where its reliability and predictability are of great value. Many important new features have been included such as those defining dynamic contracts and for handling multiprocessors and are integrated within the existing language framework in an elegant and coherent manner. The Ada 2012 Rationale describes not only the changes from Ada 2005 but also the reason for the changes. It starts with an introduction providing a general overview and this is followed by seven chapters focusing on contracts and aspects; extended expressions; structure and visibility; tasking and real time; iterators and pools; predefined library and containers. The book concludes with an epilogue largely concerned with compatibility issues.
Many students and programmers familiar with Pascal are now looking to upgrade their skills to a well-structured object-oriented programming language such as C++. This textbook provides such an "upgrade path" by presenting a course on C++ in the spirit of structured programming. Both authors teach this material to a wide variety of students and include numerous programming exercises to test a reader's understanding and to increase their confidence in programming in C++.
This book constitutes the refereed proceedings of the 8th European Conference on Modelling Foundations and Applications, held in Kgs. Lyngby, Denmark, in July 2012. The 20 revised full foundations track papers and 10 revised full applications track papers presented were carefully reviewed and selected from 81 submissions. Papers on all aspects of MDE were received, including topics such as architectural modelling and product lines, code generation, domain-specic modeling, metamodeling, model analysis and verication, model management, model transformation and simulation. The breadth of topics, as well as the high quality of the results presented in these accepted papers, demonstrate the maturity and vibrancy of the field.
This book constitutes the refereed proceedings of the 9th International Colloquium on Theoretical Aspects of Computing, ICTAC 2012 held in Bangalore, India, in September 2012. The 16 revised full papers presented together with the abstracts of three keynote talks were carefully reviewed and selected from 73 submissions. The papers cover various topics related to both theoretical aspects of computing and the exploitation of theory through methods and tools for system development.
In short, to-the-point chapters, Practical C++ Programming covers all aspects of programming including style, software engineering, programming design, object-oriented design, and debugging. It also covers common mistakes and how to find (and avoid) them. End of chapter exercises help you ensure you've mastered the material. Steve Oualline's clear, easy-going writing style and hands-on approach to learning make Practical C++ Programming a nearly painless way to master this complex but powerful programming language.
Formal Methods for Open Object-Based Distributed Systems IV presents the leading edge in the fields of object-oriented programming, open distributed systems, and formal methods for object-oriented systems. With increased support within industry regarding these areas, this book captures the most up-to-date information on the subject. Papers in this volume focus on the following specific technologies: * components; * mobile code; * Java(R); * The Unified Modeling Language (UML); * refinement of specifications; * types and subtyping; * temporal and probabilistic systems. This volume comprises the proceedings of the Fourth International Workshop on Formal Methods for Open Object-Based Distributed Systems (FMOODS 2000), which was sponsored by the International Federation for Information Processing (IFIP) and held in Stanford, California, USA, in September 2000.
This book constitutes the thoroughly refereed proceedings of the 23rd International Conference on Concurrency Theory, CONCUR 2012, held in Newcastle upon Tyne, UK, September 4-7, 2012. The 35 revised full papers presented together with 4 invited talks were carefully reviewed and selected from 97 submissions. The papers are organized in topics such as reachability analysis; qualitative and timed systems; behavioural equivalences; temporal logics; session types; abstraction; mobility and space in process algebras; stochastic systems; probabilistic systems; Petri nets and non-sequential semantics; verification; decidability.
I felt deeply honored when Professor Sumit Ghosh asked me to write the foreword to his book with an extraordinary perspective. I have long admired him, ?rst as a student leader at Stanford, where he initiated the ?rst IEEE Computer Society's student chapter, and later as an esteemed and inspiring friend whose transdisciplinary research broadened and enhanced the horizons of practitioners of computer science and engineering, including my own. His ideas, which are derived from his profound vision, deep critical thinking, and personal intuition, reach from information technology to bioscience, as - hibited in this excellent book. To me, an ordinary engineer, it opens up a panoramic view of the Universe of Knowledge that keeps expanding and - spiring,likethegoodIndianproverb,whichsays,"agoodbookinformsyou,an excellent book teaches you, and a great book changes you. " I sincerely believe that Professor Ghosh's book will help us change and advance the methods of systems engineering and technology. Vision Inspired vision sees ahead of others what will or may come to be, a vivid, imagined concept or anticipation. An inspired vision personi?es what is good and what like-minded individuals hope for. Our vision is one of creating an Internet of minds, where minds are Web sites or knowledge centers, which create, store, and radiate knowledge through interaction with other minds connected by a universal shared network. This vision will not just hasten the death of distance, but will also - carcerate ignorance.
The 8th volume of ToPNoC contains revised and extended versions of a selection of the best workshop papers presented at the 33rd International Conference on Application and Theory of Petri Nets and Other Models of Concurrency (Petri Nets 2012). The 10 papers cover a diverse range of topics including model checking and system verification, refinement and synthesis, foundational work on specific classes of Petri nets, and innovative applications of Petri nets and other models of concurrency. Application areas covered in this volume are: biological systems, communication protocols, business processes, collaborative team work, and Petri net education. Thus this volume gives a good view of ongoing concurrent systems and Petri nets research.
This book introduces the fundamental concepts and practical simulation te- niques for modeling different aspects of operating systems to study their g- eral behavior and their performance. The approaches applied are obje- oriented modeling and process interaction approach to discrete-event simu- tion. The book depends on the basic modeling concepts and is more specialized than my previous book: Practical Process Simulation with Object-Oriented Techniques and C++, published by Artech House, Boston 1999. For a more detailed description see the Web location: http: //science.kennesaw.edu/ jgarrido/mybook, html. Most other books on performance modeling use only analytical approaches, and very few apply these concepts to the study of operating systems. Thus, the unique feature of the book is that it concentrates on design aspects of operating systems using practical simulation techniques. In addition, the book illustrates the dynamic behavior of different aspects of operating systems using the various simulation models, with a general hands-on approac
This book constitutes the refereed proceedings of the 14th IFIP WG 6.1 International Conference on Formal Methods for Open Object-Based Distributed Systems, FMOODS 2012, and the 32nd IFIP WG 6.1 International Conference on Formal Techniques for Networked and Distributed Systems, FORTE 2012, held in Stockholm, Sweden, in June 2012, as one of the DisCoTec 2012 events. The 16 revised full papers presented were carefully reviewed and selected from 42 submissions. They cover a wide range of topics combining theory and practice in application areas of telecommunication services, Internet, embedded and real-time systems, networking and communication security and reliability, sensor networks, service-oriented architecture, and Web services.
"Combinatorial Programming" are two words whose juxtaposition still strike us as unusual, nevertheless their association in recent years adequately reflects the preoccupations underlying differing work fields, and their importance will increase both from methodology and application view points. To those who like definitions and consider the function of this book to furnish one for combinatorial programming, I will simply say that it is precise ly this which is exclusively treated here and which in the eyes of the autors is the heart of this branch of applied mathematics. Such was the initial intention of those who in the spring of 1973 gathered tog ther in Paris to state the work of the Advanced Study Institute from which this book arises. As young as combinatorial programming is, it was easy to see that a two week school was insufficient to cover the subject in an exhaustive manner. Finally the decision had to be taken to reduce to book form, and to organise within this particular means of expression, the essential syntheses and communications. Unfortunately the discussions, the round tables, and the majority of the case studies could not be included in this book which is more of a hand-book on the subject. XIV PREFACE The choice and orientation of the surveys has been guided by two criteria: the importance of already accomplished work, and the originality of the survey to be undertaken."
The book constitutes the refereed proceedings of the 11th International Conference on Software Composition, SC 2012, held in Prague, Czech Republic, in May/June 2012, co-located with TOOLS 2012 Federated Conferences. The 12 revised full papers were carefully reviewed and selected from 42 submissions for inclusion in the book. The papers reflect all current research in software composition and are organized in topical sections on software composition in specification languages; context-aware and dynamic composition; composition in software development; and applications of software composition.
This book constitutes the thoroughly refereed post-conference proceedings of the Second International Conference on Runtime Verification, RV 2011, held in San Francisco, USA, in September 2011. The 24 revised full papers presented together with 3 invited papers, 4 tutorials and 4 tool demonstrations were carefully reviewed and selected from 71 submissions. The papers are organized in topical sections on parallelism and deadlocks, malware detection, temporal constraints and concurrency bugs, sampling and specification conformance, real-time, software and hardware systems, memory transactions, tools; foundational techniques and multi-valued approaches.
This book constitutes the refereed proceedings of the 5th International Conference, ICMT 2012, held in Prague, Czech Republic, in May 2012, co-located with TOOLS 2012 Federated Conferences. The 18 full papers presented together with one invited paper were carefully revised and selected from numerous submissions. Topics addressed are such as testing, typing and verification; bidirectionality; applications and visualization; transformation languages, virtual machines; pattern matching; and transformations in modelling, reutilization.
This book constitutes the refereed proceedings of the 6th International Conference on Test and Proofs, TAP 2012, held in Prague, Czech Republic, in May/June 2012, as part of the TOOLS 2012 Federated Conferences. The 9 revised full papers presented together with 2 invited papers, 4 short papers and one tutorial were carefully reviewed and selected from 29 submissions. The papers are devoted to the convergence of tests and proofs for developing novel techniques and application that support engineers in building secure, safe, and reliable systems. Among the topics covered are model-based testing; scenario-based testing; complex data structure generation; and the validation of protocols and libraries.
This book constitutes the refereed proceedings of the 11th International Conference on Mathematics of Program Construction, MPC 2012, held in Madrid, Spain, in June 2012. The 13 revised full papers presented together with three invited talks were carefully reviewed and selected from 27 submissions. The papers are organized in topical sections on security and information flow, synchronous and real-time systems, algorithms and games, program calculi, tool support, algebras and datatypes, and categorical functional programming.
This book constitutes the refereed proceedings of the International Conference on Multiscore Software Engineering, Performance, and Tools, MSEPT 2012, held in Prague in May/June 2012. The 9 revised papers, 4 of which are short papers were carefully reviewed and selected from 24 submissions. The papers address new work on optimization of multicore software, program analysis, and automatic parallelization. They also provide new perspectives on programming models as well as on applications of multicore systems.
This Festschrift published in honor of Vladimir Lifschitz on the occasion of his 65th birthday presents 39 articles by colleagues from all over the world with whom Vladimir Lifschitz had cooperation in various respects. The 39 contributions reflect the breadth and the depth of the work of Vladimir Lifschitz in logic programming, circumscription, default logic, action theory, causal reasoning and answer set programming.
This book presents a powerful new language and methodology for programming complex reactive systems in a scenario-based manner. The language is live sequence charts (LSCs), a multimodal extension of sequence charts and UML's sequence diagrams, used in the past mainly for requirements. The methodology is play-in/play-out, an unusually convenient means for specifying inter-object scenario-based behavior directly from a GUI or an object model diagram, with the surprising ability to execute that behavior, or those requirements, directly. The language and methodology are supported by a fully implemented tool the Play-Engine which is attached to the book in CD form. Comments from experts in the field: The design of reactive systems is one of the most challenging problems in computer science. This books starts with a critical insight to explain the difficulty of this problem: there is a fundamental gap between the scenario-based way in which people think about such systems and the state-based way in which these systems are implemented. The book then offers a radical proposal to bridge this gap by means of playing scenarios. Systems can be specified by playing in scenarios and implemented by means of a Play-Engine that plays out scenarios. This idea is carried out and developed, lucidly, formally and playfully, to its fullest. The result is a compelling proposal, accompanied by a prototype software engine, for reactive systems design, which is bound to cause a splash in the software-engineering community. Moshe Y. Vardi, Rice University, Houston, Texas, USA Scenarios are a primary exchange tool in explaining system behavior to others, but their limited expressive power never made them able to fully describe systems, thus limiting their use. The language of Live Sequence Charts (LSCs) presented in this beautifully written book achieves this goal, and the attached Play-Engine software makes these LSCs really come alive. This is undoubtedly a key breakthrough that will start long-awaited and exciting new directions in systems specification, synthesis, and analysis. Gerard Berry, Esterel Technologies and INRIA, Sophia-Antipolis, France The approach of David Harel and Rami Marelly is a fascinating way of combining prototyping techniques with techniques for identifying behavior and user interfaces. Manfred Broy, Technical University of Munich, Germany" |
You may like...
Future Computer and Information Systems…
Akira Ishikawa
Hardcover
|