Explore the latest books of this year!
Bookbot

Shriram Krishnamurthi

    How to Design Programs
    Compiler construction
    • InhaltsverzeichnisArchitecture.New Algorithms for SIMD Alignment.Preprocessing Strategy for Effective Modulo Scheduling on Multi-issue Digital Signal Processors.An Array Allocation Scheme for Energy Reduction in Partitioned Memory Architectures.Garbage Collection and Program Analysis.Using Prefetching to Improve Reference-Counting Garbage Collectors.Accurate Garbage Collection in Uncooperative Environments with Lazy Pointer Stacks.Correcting the Dynamic Call Graph Using Control-Flow Constraints.Obfuscating Java: The Most Pain for the Least Gain.Register Allocation.A Fast Cutting-Plane Algorithm for Optimal Coalescing.Register Allocation and Optimal Spill Code Scheduling in Software Pipelined Loops Using 0-1 Integer Linear Programming Formulation.Extended Linear Scan: An Alternate Foundation for Global Register Allocation.Program Analysis.Program Refactoring, Program Synthesis, and Model-Driven Development.A Practical Escape and Effect Analysis for Building Lightweight Method Summaries.Layout Transformations for Heap Objects Using Static Access Patterns.A New Elimination-Based Data Flow Analysis Framework Using Annotated Decomposition Trees.A Declarative Framework for Analysis and Optimization.

      Compiler construction
    • How to Design Programs

      An Introduction to Programming and Computing - Second Edition

      • 792 pages
      • 28 hours of reading

      A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming.This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.

      How to Design Programs