Programming and Meta-Programming in Scheme

Programming and Meta-Programming in Scheme PDF

Author: Jon Pearce

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 352

ISBN-13: 1461216826

DOWNLOAD EBOOK →

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.

Scheme and the Art of Programming

Scheme and the Art of Programming PDF

Author: George Springer

Publisher:

Published: 1990

Total Pages: 344

ISBN-13:

DOWNLOAD EBOOK →

This is the first introduction to computer programming text to focus on functional programming which is not too mathematically rigorous for freshmen. The text features an introduction to the Scheme programming language and real-world examples and exercises which are easy to follow and learn from.

Programming in SCHEME

Programming in SCHEME PDF

Author: Mark Watson

Publisher: Springer

Published: 2012-12-06

Total Pages: 242

ISBN-13: 1461223946

DOWNLOAD EBOOK →

Scheme provides a flexible and powerful language for programming embodying many of the best features of logical and functional programming. This enjoyable book provides readers with an introduction to programming in Scheme by constructing a series of interesting and re-usable programs. The book includes two diskettes containing MIT Scheme to run on Windows PCs.

The Scheme Programming Language

The Scheme Programming Language PDF

Author: R. Kent Dybvig

Publisher: MIT Press

Published: 2003

Total Pages: 318

ISBN-13: 9780262541480

DOWNLOAD EBOOK →

The thoroughly updated third edition of a popular introductory and reference text for standard Scheme, with examples and exercises.

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs PDF

Author: Harold Abelson

Publisher: MIT Press

Published: 2022-05-03

Total Pages: 642

ISBN-13: 0262367629

DOWNLOAD EBOOK →

A new version of the classic and widely used text adapted for the JavaScript programming language. Since the publication of its first edition in 1984 and its second edition in 1996, Structure and Interpretation of Computer Programs (SICP) has influenced computer science curricula around the world. Widely adopted as a textbook, the book has its origins in a popular entry-level computer science course taught by Harold Abelson and Gerald Jay Sussman at MIT. SICP introduces the reader to central ideas of computation by establishing a series of mental models for computation. Earlier editions used the programming language Scheme in their program examples. This new version of the second edition has been adapted for JavaScript. The first three chapters of SICP cover programming concepts that are common to all modern high-level programming languages. Chapters four and five, which used Scheme to formulate language processors for Scheme, required significant revision. Chapter four offers new material, in particular an introduction to the notion of program parsing. The evaluator and compiler in chapter five introduce a subtle stack discipline to support return statements (a prominent feature of statement-oriented languages) without sacrificing tail recursion. The JavaScript programs included in the book run in any implementation of the language that complies with the ECMAScript 2020 specification, using the JavaScript package sicp provided by the MIT Press website.

Crafting Interpreters

Crafting Interpreters PDF

Author: Robert Nystrom

Publisher: Genever Benning

Published: 2021-07-27

Total Pages: 1021

ISBN-13: 0990582949

DOWNLOAD EBOOK →

Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam. That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun. This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused. Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.

The Reasoned Schemer, second edition

The Reasoned Schemer, second edition PDF

Author: Daniel P. Friedman

Publisher: MIT Press

Published: 2018-03-09

Total Pages: 206

ISBN-13: 0262535513

DOWNLOAD EBOOK →

A new edition of a book, written in a humorous question-and-answer style, that shows how to implement and use an elegant little programming language for logic programming. The goal of this book is to show the beauty and elegance of relational programming, which captures the essence of logic programming. The book shows how to implement a relational programming language in Scheme, or in any other functional language, and demonstrates the remarkable flexibility of the resulting relational programs. As in the first edition, the pedagogical method 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 five chapters of The Little Schemer is assumed. For this second edition, the authors have greatly simplified the programming language used in the book, as well as the implementation of the language. In addition to revising the text extensively, and simplifying and revising the “Laws” and “Commandments,” they have added explicit “Translation” rules to ease translation of Scheme functions into relations.

Structure and Interpretation of Computer Programs, second edition

Structure and Interpretation of Computer Programs, second edition PDF

Author: Harold Abelson

Publisher: MIT Press

Published: 1996-07-25

Total Pages: 685

ISBN-13: 0262510871

DOWNLOAD EBOOK →

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.