Structure and Interpretation of Computer Programs

Author: Harold Abelson

Publisher: Mit Press

ISBN: 9780262011532

Category: Computers

Page: 657

View: 4259

Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises. In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.
Posted in Computers

Structure and Interpretation of Classical Mechanics

Author: Gerald Jay Sussman,Jack Wisdom

Publisher: MIT Press

ISBN: 0262028964

Category: Science

Page: 584

View: 6666

The new edition of a classic text that concentrates on developing general methods for studying the behavior of classical systems, with extensive use of computation.
Posted in Science

The Reasoned Schemer

Author: Daniel P. Friedman,William E. Byrd,Oleg Kiselyov

Publisher: MIT Press

ISBN: 0262562146

Category: Computers

Page: 169

View: 936

The goal of The Reasoned Schemer is to help the functional programmer think logically and the logic programmer think functionally. The authors of The Reasoned Schemer believe that logic programming is a natural extension of functional programming, and they demonstrate this by extending the functional language Scheme with logical constructs -- thereby combining the benefits of both styles. The extension encapsulates most of the ideas in the logic programming language Prolog. The pedagogical method of The Reasoned Schemer is a series of questions and answers, which proceed with the characteristic humor that marked The Little Schemer and The Seasoned Schemer. Familiarity with a functional language or with the first eight chapters of The Little Schemer is assumed. Adding logic capabilities required the introduction of new forms. The authors' goal is to show to what extent writing logic programs is the same as writing functional programs using these forms. In this way, the reader of The Reasoned Schemer will come to understand how simple logic programming is and how easy it is to define functions that behave like relations.
Posted in Computers

How to Design Programs

An Introduction to Programming and Computing

Author: Matthias Felleisen,Robert Bruce Findler,Shriram Krishnamurthi,Matthew Flatt

Publisher: MIT Press

ISBN: 9780262062183

Category: Computers

Page: 693

View: 9101

Processing simple forms of data - Processing arbitrarily large data - More on processing arbitrarily large data - Abstracting designs - Generative recursion - Changing the state of variables - Changing compound values.
Posted in Computers

Concepts, Techniques, and Models of Computer Programming

Author: Peter Van-Roy,Seif Haridi

Publisher: MIT Press

ISBN: 9780262220699

Category: Computers

Page: 900

View: 3492

Running the Example Programs - Introduction to Programming Concepts - General computation models : Declarative Computation Model - Declarative Programming Techniques - Declarative Concurrency - Message-Passing Concurrency - Explicit State - Object-Oriented Programming - Shared-State Concurrency - Relational Programming - Specialized computation models : Graphical User Interface Programming - Distributed Programming - Constraint Programming - Semantics : Language Semantics.
Posted in Computers

Structure and Interpretation of Computer Programs - 2nd Edition

Author: Harold Abelson ,Gerald Jay Sussman,Julie Sussman

Publisher: Justin Kelly

ISBN: N.A

Category: Computers

Page: N.A

View: 3441

Structure and Interpretation of Computer Programs by Harold Abelson and Gerald Jay Sussman is licensed under a Creative Commons Attribution-NonCommercial 3.0 License.
Posted in Computers

Essentials of Programming Languages

Author: Daniel P. Friedman,Mitchell Wand

Publisher: MIT Press

ISBN: 0262062798

Category: Computers

Page: 410

View: 3414

1. Inductive sets of data 2. Data abstraction 3. Expressions 4. State 5. Continuation-passing interpreters 6. Continuation-passing style 7. Types 8. Modules 9. Objects and classes.
Posted in Computers

Simply Scheme

Introducing Computer Science

Author: Brian Harvey,Matthew Wright

Publisher: MIT Press

ISBN: 9780262082815

Category: Computers

Page: 579

View: 6719

Showing off scheme - Functions - Expressions - Defining your own procedures - Words and sentences - True and false - Variables - Higher-order functions - Lambda - Introduction to recursion - The leap of faith - How recursion works - Common patterns in recursive procedures - Advanced recursion - Example : the functions program - Files - Vectors - Example : a spreadsheet program - Implementing the spreadsheet program - What's next?
Posted in Computers

Paradigms of Artificial Intelligence Programming

Case Studies in Common LISP

Author: Peter Norvig

Publisher: Morgan Kaufmann

ISBN: 9781558601918

Category: Computers

Page: 946

View: 1020

Paradigms of AI Programming is the first text to teach advanced Common Lisp techniques in the context of building major AI systems. By reconstructing authentic, complex AI programs using state-of-the-art Common Lisp, the book teaches students and professionals how to build and debug robust practical programs, while demonstrating superior programming style and important AI concepts. The author strongly emphasizes the practical performance issues involved in writing real working programs of significant size. Chapters on troubleshooting and efficiency are included, along with a discussion of the fundamentals of object-oriented programming and a description of the main CLOS functions. This volume is an excellent text for a course on AI programming, a useful supplement for general AI courses and an indispensable reference for the professional programmer.
Posted in Computers

Programming and Meta-Programming in Scheme

Author: Jon Pearce

Publisher: Springer Science & Business Media

ISBN: 1461216826

Category: Computers

Page: 341

View: 1728

A comprehensive first course in Scheme, covering all of its major features: abstraction, functional programming, data types, recursion, and semantic programming. Although the primary goal is to teach students to program in Scheme, this will be suitable for anyone taking a general programming principles course. Each chapter is divided into three sections: core, appendix , and problems. Most essential topics are covered in the core section, but it is assumed that most students will read the appendices and solve most of the problems - all of which require short Scheme procedures. As well as providing a thorough grounding in Scheme, the author discusses different programming paradigms in depth. An important theme throughout is that of "meta-programming", thus providing an insight into topics such as type-checking and overloading which might otherwise be missed.
Posted in Computers

Functional Differential Geometry

Author: Gerald Jay Sussman,Jack Wisdom,Will Farr

Publisher: MIT Press

ISBN: 0262019345

Category: Mathematics

Page: 228

View: 2938

Physics is naturally expressed in mathematical language. Students new to the subject must simultaneously learn an idiomatic mathematical language and the content that is expressed in that language. It is as if they were asked to read Les Misérables while struggling with French grammar. This book offers an innovative way to learn the differential geometry needed as a foundation for a deep understanding of general relativity or quantum field theory as taught at the college level. The approach taken by the authors (and used in their classes at MIT for many years) differs from the conventional one in several ways, including an emphasis on the development of the covariant derivative and an avoidance of the use of traditional index notation for tensors in favor of a semantically richer language of vector fields and differential forms. But the biggest single difference is the authors' integration of computer programming into their explanations. By programming a computer to interpret a formula, the student soon learns whether or not a formula is correct. Students are led to improve their program, and as a result improve their understanding.
Posted in Mathematics

The Elements of Computing Systems

Building a Modern Computer from First Principles

Author: Noam Nisan,Shimon Schocken

Publisher: MIT Press

ISBN: 9780262140874

Category: Computers

Page: 325

View: 9724

This title gives students an integrated and rigorous picture of applied computer science, as it comes to play in the construction of a simple yet powerful computer system.
Posted in Computers

Introduction to Computation and Programming Using Python

With Application to Understanding Data

Author: John V. Guttag

Publisher: MIT Press

ISBN: 0262529629

Category: Computers

Page: 472

View: 8009

The new edition of an introductory text that teaches students the art of computational problem solving, covering topics ranging from simple algorithms to information visualization.
Posted in Computers

Advanced Topics in Types and Programming Languages

Author: Benjamin C. Pierce

Publisher: MIT Press

ISBN: 9780262162289

Category: Computers

Page: 574

View: 9587

A thorough and accessible introduction to a range of key ideas in type systems for programming language. The study of type systems for programming languages now touches many areas of computer science, from language design and implementation to software engineering, network security, databases, and analysis of concurrent and distributed systems. This book offers accessible introductions to key ideas in the field, with contributions by experts on each topic. The topics covered include precise type analyses, which extend simple type systems to give them a better grip on the run time behavior of systems; type systems for low-level languages; applications of types to reasoning about computer programs; type theory as a framework for the design of sophisticated module systems; and advanced techniques in ML-style type inference. Advanced Topics in Types and Programming Languages builds on Benjamin Pierce's Types and Programming Languages (MIT Press, 2002); most of the chapters should be accessible to readers familiar with basic notations and techniques of operational semantics and type systems--the material covered in the first half of the earlier book. Advanced Topics in Types and Programming Languages can be used in the classroom and as a resource for professionals. Most chapters include exercises, ranging in difficulty from quick comprehension checks to challenging extensions, many with solutions.
Posted in Computers

Purely Functional Data Structures

Author: Chris Okasaki

Publisher: Cambridge University Press

ISBN: 9780521663502

Category: Computers

Page: 220

View: 4781

This book describes data structures and data structure design techniques for functional languages.
Posted in Computers

Anatomy of Lisp

Author: John Allen

Publisher: McGraw-Hill College

ISBN: N.A

Category: Computers

Page: 446

View: 2919

Shows Why LISP is an Ideal Vehicle for Explaining Data Structures, Symbolic Computation, & Compiler Writing
Posted in Computers

The Little Typer

Author: Daniel P. Friedman,David Thrane Christiansen

Publisher: MIT Press

ISBN: 0262536439

Category: Computers

Page: 424

View: 7702

An introduction to dependent types, demonstrating the most beautiful aspects, one step at a time. A program's type describes its behavior. Dependent types are a first-class part of a language, and are much more powerful than other kinds of types; using just one language for types and programs allows program descriptions to be as powerful as the programs they describe. The Little Typer explains dependent types, beginning with a very small language that looks very much like Scheme and extending it to cover both programming with dependent types and using dependent types for mathematical reasoning. Readers should be familiar with the basics of a Lisp-like programming language, as presented in the first four chapters of The Little Schemer. The first five chapters of The Little Typer provide the needed tools to understand dependent types; the remaining chapters use these tools to build a bridge between mathematics and programming. Readers will learn that tools they know from programming—pairs, lists, functions, and recursion—can also capture patterns of reasoning. The Little Typer does not attempt to teach either practical programming skills or a fully rigorous approach to types. Instead, it demonstrates the most beautiful aspects as simply as possible, one step at a time.
Posted in Computers