![]() |
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
The art, craft, discipline, logic, practice and science of developing large-scale software products needs a professional base. The textbooks in this three-volume set combine informal, engineeringly sound approaches with the rigor of formal, mathematics-based approaches. This volume covers the basic principles and techniques of specifying systems and languages. It deals with modelling the semiotics (pragmatics, semantics and syntax of systems and languages), modelling spatial and simple temporal phenomena, and such specialized topics as modularity (incl. UML class diagrams), Petri nets, live sequence charts, statecharts, and temporal logics, including the duration calculus. Finally, the book presents techniques for interpreter and compiler development of functional, imperative, modular and parallel programming languages. This book is targeted at late undergraduate to early graduate university students, and researchers of programming methodologies. Vol. 1 of this series is a prerequisite text.
This is a monograph about logic. Specifically, it presents the mathe matical theory of the logic of bunched implications, BI: I consider Bl's proof theory, model theory and computation theory. However, the mono graph is also about informatics in a sense which I explain. Specifically, it is about mathematical models of resources and logics for reasoning about resources. I begin with an introduction which presents my (background) view of logic from the point of view of informatics, paying particular attention to three logical topics which have arisen from the development of logic within informatics: * Resources as a basis for semantics; * Proof-search as a basis for reasoning; and * The theory of representation of object-logics in a meta-logic. The ensuing development represents a logical theory which draws upon the mathematical, philosophical and computational aspects of logic. Part I presents the logical theory of propositional BI, together with a computational interpretation. Part II presents a corresponding devel opment for predicate BI. In both parts, I develop proof-, model- and type-theoretic analyses. I also provide semantically-motivated compu tational perspectives, so beginning a mathematical theory of resources. I have not included any analysis, beyond conjecture, of properties such as decidability, finite models, games or complexity. I prefer to leave these matters to other occasions, perhaps in broader contexts.
This remarkable anthology allows the pioneers who orchestrated the major breakthroughs in operating system technology to describe their work in their own words. From the batch processing systems of the 1950s to the distributed systems of the 1990s, Tom Kilburn, David Howarth, Bill Lynch, Fernando Corbato, Robert Daley, Sandy Fraser, Dennis Ritchie, Ken Thompson, Edsger Dijkstra, Per Brinch Hansen, Soren Lauesen, Barbara Liskov, Joe Stoy, Christopher Strachey, Butler Lampson, David Redell, Brian Randell, Andrew Tanenbaum, and others describe the systems they designed. The volume details such classic operating systems as the Atlas, B5000, Exec II, Egdon, CTSS, Multics, Titan, Unix, THE, RC 4000, Venus, Boss 2, Solo, OS 6, Alto, Pilot, Star, WFS, Unix United, and Amoeba systems. An introductory essay on the evolution of operating systems summarizes the papers and helps puts them into a larger perspective. This provocative journey captures the historic contributions of operating systems to software design, concurrent programming, graphic user interfaces, file systems, personal computing, and distributed systems. It also fully portrays how operating systems designers think. It's ideal for everybody in the field, from students to professionals, academics to enthusiasts.
We are pleased to present the proceedings of the Second International Conf- ence on Software LanguageEngineering (SLE 2009). The conference was held in Denver, Colorado (USA) during October 5-6, 2009 and was co-located with the th 12 IEEE/ACM International Conference on Model-Driven Engineering L- th guages and Systems (MODELS 2009) and the 8 ACM International Conf- ence on Generative Programming and Component Engineering (GPCE 2009). TheSLEconferenceseriesisdevotedtoawiderangeoftopicsrelatedtoarti?cial languages in software engineering. SLE is an international research forum that brings together researchers and practitioners from both industry and academia to expand the frontiers of software language engineering. SLE'sforemostmissionis to encourageand organizecommunicationbetween communities that have traditionally looked at software languagesfrom di?erent, more specialized, and yet complementary perspectives. SLE emphasizes the f- damental notion of languages, as opposed to any realization in speci?c technical spaces. In this context, the term "software language" comprises all sorts of - ti?cial languages used in software development, including general-purpose p- gramming languages, domain-speci?c languages, modeling and meta-modeling languages, data models, and ontologies. Software language engineering is the application of a systematic, disciplined, quanti?able approach to the devel- ment, use, andmaintenanceoftheselanguages. TheSLEconferenceisconcerned with all phases of the lifecycle of software languages; these include the design, implementation, documentation, testing, deployment, evolution, recovery, and retirement of languages. Of special interest are tools, techniques, methods, and formalisms that support these activities. In particular, tools are often based on, or automatically generated from, a formal description of the language.
The need for a comprehensive survey-type exposition on formal languages and related mainstream areas of computer science has been evident for some years. In the early 1970s, when the book Formal Languages by the second mentioned editor appeared, it was still quite feasible to write a comprehensive book with that title and include also topics of current research interest. This would not be possible anymore. A standard-sized book on formal languages would either have to stay on a fairly low level or else be specialized and restricted to some narrow sector of the field. The setup becomes drastically different in a collection of contributions, where the best authorities in the world join forces, each of them concentrat ing on their own areas of specialization. The present three-volume Handbook constitutes such a unique collection. In these three volumes we present the current state of the art in formallanguage theory. We were most satisfied with the enthusiastic response given to our request for contributions by specialists representing various subfields. The need for a Handbook of Formal Languages was in many answers expressed in different ways: as an easily accessible his torical reference, a general source of information, an overall course-aid, and a compact collection of material for self-study. We are convinced that the final result will satisfy such various needs."
The A-calculus was invented by Church in the 1930s with the purpose of sup plying a logical foundation for logic and mathematics 25]. Its use by Kleene as a coding for computable functions makes it the first programming lan guage, in an abstract sense, exactly as the Thring machine can be considered the first computer machine 57]. The A-calculus has quite a simple syntax (with just three formation rules for terms) and a simple operational seman tics (with just one operation, substitution), and so it is a very basic setting for studying computation properties. The first contact between A-calculus and real programming languages was in the years 1956-1960, when McCarthy developed the LISP programming language, inspired from A-calculus, which is the first "functional" program ming language, Le., where functions are first-dass citizens 66]. But the use of A-calculus as an abstract paradigm for programming languages started later as the work of three important scientists: Strachey, Landin and B6hm."
As today's most complex computing environment, the Internet confronts IT researchers, system designers, and application developers with completely new challenges and, as a fascinating new computing paradigm, agent technology has recently attracted broad interest and strong hopes for shaping the future information society. Relating both, the Internet and agents, opens up a whole new range of advanced applications in vibrant subfields of information technology such as middleware, mobile commerce, e-learning, collaborative working, and intelligent information services. Many modern advanced systems are likely to exploit Internet agents - and exploiting Internet agents mostly means dealing with coordination models and technologies of various sorts. This monograph-like anthology is the first systematic guide to models and enabling technologies for the coordination of intelligent agents on the Internet and respective applications.
This book is the third in a series of books collecting the best papers from the three main regional conferences on electronic system design languages, HDLCon in the United States, APCHDL in Asia-Pacific and FDL in Europe. Being APCHDL bi-annual, this book presents a selection of papers from HDLCon'Ol and FDL'OI. HDLCon is the premier HDL event in the United States. It originated in 1999 from the merging of the International Verilog Conference and the Spring VHDL User's Forum. The scope of the conference expanded from specialized languages such as VHDL and Verilog to general purpose languages such as C++ and Java. In 2001 it was held in February in Santa Clara, CA. Presentations from design engineers are technical in nature, reflecting real life experiences in using HDLs. EDA vendors presentations show what is available - and what is planned-for design tools that utilize HDLs, such as simulation and synthesis tools. The Forum on Design Languages (FDL) is the European forum to exchange experiences and learn of new trends, in the application of languages and the associated design methods and tools, to design complex electronic systems. FDL'OI was held in Lyon, France, around seven interrelated workshops, Hardware Description Languages, Analog and Mixed signal Specification, C/C++ HW/SW Specification and Design, Design Environments & Languages, Real-Time specification for embedded Systems, Architecture Modeling and Reuse and System Specification & Design Languages.
This book constitutes the refereed proceedings of the Third
International Symposium on NASA Formal Methods, NFM 2011, held in
Pasadena, CA, USA, in April 2011.
Declarative programs consist of mathematical functions and relations and are amenable to formal specification and verification, since the methods of logic and proof can be applied to the programs in a well-defined manner. Here Dr Padawitz emphasizes verification based on logical inference rules, i.e. deduction (in contrast with model-theoretic approaches, deductive methods can be automated to some extent). His treatment of the subject differs from others in that he tries to capture the actual styles and applications of programming; neither too general with respect to the underlying logic, nor too restrictive for the practice of programming. He generalizes and unifies results from classical theorem-proving and term rewriting to provide proof methods tailored to declarative program synthesis and verification. Detailed examples accompany the development of the methods, whose use is supported by a documented prototyping system. The book can be used for graduate courses or as a reference for researchers in formal methods, theorem-proving and declarative languages.
This book constitutes the refereed proceedings of the 12th International Conference on Software Reuse, ICSR 2011, held in Pohang, South Korea, in June 2011. The 16 revised full papers were carefully reviewed and selected from 43 submissions. They are presented together with one keynote, three workshop papers, a doctoral symposium report and two tutorials. Topics of interest are domain analysis and modeling; asset search and retrieval; architecture-centric approaches to reuse; component-based reuse; COTS-based development; generator-based techniques; domain-specific languages; testing in the context of software reuse; aspect-oriented techniques; model-driven development; reuse of non-code artifacts; reengineering for reuse; software product line techniques; quality-aspects of reuse; economic models of reuse; benefit and risk analysis, scoping; legal and managerial aspects of reuse; transition to software reuse; industrial experience with reuse; light-weight approaches; software evolution and reuse.
Describes how to design object-oriented code and accompanying algorithms that can be reverse engineered for greater flexibility in future code maintenance and alteration.
Illustrates by example the typical steps necessary in computer science to build a mathematical model of any programming paradigm .
Temporal logic has developed over the last 30 years into a powerful formal setting for the specification and verification of state-based systems. Based on university lectures given by the authors, this book is a comprehensive, concise, uniform, up-to-date presentation of the theory and applications of linear and branching time temporal logic; TLA (Temporal Logic of Actions); automata theoretical connections; model checking; and related theories. All theoretical details and numerous application examples are elaborated carefully and with full formal rigor, and the book will serve as a basic source and reference for lecturers, graduate students and researchers.
This book constitutes the refereed proceedings of the 14th International Conference on Foundations of Software Science and computational Structures, FOSSACS 2011, held in Saarbrucken, Germany, March 26-April 3, 2011, as part of ETAPS 2011, the European Joint Conferences on Theory and Practice of Software. The 30 revised full papers presented together with one full-paper length invited talk were carefully reviewed and selected from 100 submissions. The papers are organized in topical sections on coalgebra and computability, type theory, process calculi, automata theory, semantics, binding, security, and program analysis."
The art, craft, discipline, logic, practice, and science of developing large-scale software products needs a believable, professional base. The textbooks in this three-volume set combine informal, engineeringly sound practice with the rigour of formal, mathematics-based approaches. Volume 1 covers the basic principles and techniques of formal methods abstraction and modelling. First this book provides a sound, but simple basis of insight into discrete mathematics: numbers, sets, Cartesians, types, functions, the Lambda Calculus, algebras, and mathematical logic. Then it trains its readers in basic property- and model-oriented specification principles and techniques. The model-oriented concepts that are common to such specification languages as B, VDM-SL, and Z are explained here using the RAISE specification language (RSL). This book then covers the basic principles of applicative (functional), imperative, and concurrent (parallel) specification programming. Finally, the volume contains a comprehensive glossary of software engineering, and extensive indexes and references. These volumes are suitable for self-study by practicing software engineers and for use in university undergraduate and graduate courses on software engineering. Lecturers will be supported with a comprehensive guide to designing modules based on the textbooks, with solutions to many of the exercises presented, and with a complete set of lecture slides.
This handbook is a reference for those interested in information technologies and emerging management practices in China. The emphasis on information technologies and management provides a unique proposition and gives characteristics of flexibility and adoption to diverse audiences. The subject area is a combination of global information technology and management along with strategic management of IT. The handbook exploits state-of-the-art and emerging trends in theory and technology. This handbook is primarily designed for a professional and academic audience.
The Extreme Programming Pocket Guide covers XP assumptions, principles, events, artifacts, roles, and resources, and more. It concisely explains the relationships between the XP practices. If you want to adopt XP in stages, the Extreme Programming Pocket Guide will help you choose what to apply and when. Concise and easy to use, this handy pocket guide to XP is a must-have quick reference for anyone implementing a test-driven development environment.
Machine Learning a branch of Artificial Intelligence is influencing the society, industry and academia at large. The adaptability of Python programming language to Machine Learning has increased its popularity further. Another technology on the horizon is Internet of Things (IoT). The present book tries to address IoT, Python and Machine Learning along with a small introduction to Image Processing. If you are a novice programmer or have just started exploring IoT or Machine Learning with Python, then this book is for you. Features: Raspberry Pi as IoT is described along with the procedure for installation and configuration. A simple introduction to Python Programming Language along with its popular library packages like NumPy, Pandas, SciPy and Matplotlib are dealt in an exhaustive manner along with relevant examples. Machine Learning along with Python Scikit-Learn library is explained to audience with an emphasis on supervised learning and classification. Image processing on IoT is introduced to the audience who love to apply Machine Learning algorithms to Images The book follows hands-on approach and provide a huge collection of Python programs.
This book offers a venue for rapidly learning the language of C++ by concisely revealing its grammar, syntax and main features, and by explaining the key ideas behind object oriented programming (OOP) with emphasis on scientific computing. The book reviews elemental concepts of computers and computing, describes the primary features of C++, illustrates the use of pointers and user-defined functions, analyzes the construction of classes, and discusses graphics programming based on VOGLE and OpenGL. In short, the book is a basic, concise introduction to C++ programming for everyone from students to scientists and engineers seeking a quick grasp of key topics.
A number of widely used contemporary processors have instruction-set extensions for improved performance in multi-media applications. The aim is to allow operations to proceed on multiple pixels each clock cycle. Such instruction-sets have been incorporated both in specialist DSPchips such as the Texas C62xx (Texas Instruments, 1998) and in general purpose CPU chips like the Intel IA32 (Intel, 2000) or the AMD K6 (Advanced Micro Devices, 1999). These instruction-set extensions are typically based on the Single Instruc tion-stream Multiple Data-stream (SIMD) model in which a single instruction causes the same mathematical operation to be carried out on several operands, or pairs of operands, at the same time. The level or parallelism supported ranges from two floating point operations, at a time on the AMD K6 architecture to 16 byte operations at a time on the Intel P4 architecture. Whereas processor architectures are moving towards greater levels of parallelism, the most widely used programming languages such as C, Java and Delphi are structured around a model of computation in which operations takeplace on a single value at a time. This was appropriate when processors worked this way, but has become an impediment to programmers seeking to make use of the performance offered by multi-media instruction -sets. The introduction of SIMD instruction sets (Peleg et al."
This book constitutes the thoroughly refereed post-proceedings of the Third International Conference on Software Language Engineering, SLE 2010, held in Eindhoven, The Netherlands, in October 2010. The 24 papers presented were carefully reviewed and selected from 79 submissions. The book also contains the abstracts of two invited talks. The papers are grouped in topical sections on grammarware, metamodeling, evolution, programming, and domain-specific languages. The short papers and demos included deal with modeling and transformations and translations.
Automatic Program Development is a tribute to Robert Paige (1947-1999), our accomplished and respected colleague, and moreover our good friend, whose untimely passing was a loss to our academic and research community. We have collected the revised, updated versions of the papers published in his honor in the Higher-Order and Symbolic Computation Journal in the years 2003 and 2005. Among them there are two papers by Bob: (i) a retrospective view of his research lines, and (ii) a proposal for future studies in the area of the automatic program derivation. The book also includes some papers by members of the IFIP Working Group 2.1 of which Bob was an active member. All papers are related to some of the research interests of Bob and, in particular, to the transformational development of programs and their algorithmic derivation from formal specifications. Automatic Program Development offers a renewed stimulus for continuing and deepening Bob's research visions. A familiar touch is given to the book by some pictures kindly provided to us by his wife Nieba, the personal recollections of his brother Gary and some of his colleagues and friends."
This book constitutes the thoroughly refereed post proceedings of the 5th International Haifa Verification Conference, HVC 2009, held in Haifa, Israel in October 2009. The 11 revised full papers presented together with four abstracts of invited lectures were carefully reviewed and selected from 23 submissions. The papers address all current issues, challenges and future directions of verification for hardware, software, and hybrid systems and present academic research in the verification of systems, generally divided into two paradigms - formal verification and dynamic verification (testing).
New software tools and a sophisticated methodology above RTL are required to answer the challenges of designing an optimized application specific processor (ASIP). This book offers an automated and fully integrated implementation flow and compares it to common implementation practice. It provides case-studies that emphasize that neither the architectural advantages nor the design space of ASIPs are sacrificed for an automated implementation. |
You may like...
Dungeons & Dragons: Mini Dice Dungeon
Brenna Dinon, Dungeons & Dragons
Paperback
World of Warcraft Unshackled An Escape…
Blizzard Entertainment
Novelty book
R468
Discovery Miles 4 680
Contre le Chaos - Sept scenarios d'epee…
Tom Griffith, Keane Peterson, …
Paperback
R691
Discovery Miles 6 910
I Love My Life - Card Game and Oracle…
Sophia Wise One
Hardcover
|