Why should a Java developer learn about functional programming (FP)? After all, hasn’t
functional programming been safely hidden in academia for decades? Isn’t objectoriented
programming (OOP) all we really need? This book explains why functional
programming has become an important tool for the challenges of our time and how...
Parallel programming truly redefines the programming model for multicore architecture,
which has become commonplace. For this reason, parallel programming has been elevated to
a core technology in the Microsoft .NET Framework 4. In this version of the .NET Framework,
the Task Parallel Library (TPL) and the System.Threading.Tasks...
The IBM Vienna Laboratory has made a significant contribution to the work on
the semantic description of computer systems. Both the operational semantics
descriptions ("VDL") and the later work on denotational semantics ("Meta-IV",
"VEM") contain interesting scientific ideas. Partly because of the large...
Clustering is an important unsupervised classification technique where a set of patterns,
usually vectors in multidimensional space, are grouped into clusters based
on some similarity or dissimilarity criteria. In crisp clustering, each pattern is assigned
to exactly one cluster, whereas in fuzzy clustering, each pattern is given a...
KEY BENEFIT: Learn the fundamentals of processor and computer design from the newest edition of this award winning text. KEY TOPICS: Introduction; Computer Evolution and Performance; A Top-Level View of Computer Function and Interconnection; Cache Memory; Internal Memory Technology; External Memory; I/O;...
It may sound surprising that in computing, a field which develops so fast that the future often becomes the past without having been the present, there is nothing more stable and worthwhile learning than its foundations.
It may sound less surprising that in a field with such a revolutionary methodological impact on all sciences and...
Write High-Performance, Highly Scalable Multicore Applications for Leading Platforms Multicore Application Programming is a comprehensive, practical guide to high-performance multicore programming that any experienced developer can use.
High-performance system architectures are increasingly exploiting heterogeneity: multi- and manycore-based systems are complemented by coprocessors, accelerators, and reconfigurable units providing huge computational power. However, applications of scientific interest (e.g. in high-performance computing and numerical simulation) are not yet...
This book offers a unique insight into the building of virtual machines for sequential, object-oriented and parallel languages, and uses comparisons of different VMs to provide actual, practical examples.
State transitions are used as a formal technique for the specification of virtual machines throughout and – in addition...
This book covers technologies, applications, tools, languages, procedures, advantages, and disadvantages of reconfigurable supercomputing using Field Programmable Gate Arrays (FPGAs). The target audience is the community of users of High Performance Computers (HPC) who may benefit from porting their applications into a reconfigurable...
In the decade since the publication of the first edition of “Explorations in Quantum Computing” the field has blossomed into a rich and diverse body of knowledge, and tremendous progress has been made on building functional quantum computer hardware. Yet I find that a discussion of applications of quantum computers still remains...
Space support in databases poses new challenges in every part of a database management system & the capability of spatial support in the physical layer is considered very important. This has led to the design of spatial access methods to enable the effective & efficient management of spatial objects.