Programming and Meta-Programming in Scheme

Programming and Meta-Programming in Scheme

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.


Book Synopsis Programming and Meta-Programming in Scheme by : Jon Pearce

Download or read book Programming and Meta-Programming in Scheme written by Jon Pearce and published by Springer Science & Business Media. This book was released on 2012-12-06 with total page 352 pages. Available in PDF, EPUB and Kindle. Book excerpt: 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.


The Scheme Programming Language

The Scheme Programming Language

Author: R. Kent Dybvig

Publisher: Prentice Hall

Published: 1996

Total Pages: 282

ISBN-13:

DOWNLOAD EBOOK

Basic, no nonsense introduction to the programming language Scheme


Book Synopsis The Scheme Programming Language by : R. Kent Dybvig

Download or read book The Scheme Programming Language written by R. Kent Dybvig and published by Prentice Hall. This book was released on 1996 with total page 282 pages. Available in PDF, EPUB and Kindle. Book excerpt: Basic, no nonsense introduction to the programming language Scheme


Practical Common Lisp

Practical Common Lisp

Author: Peter Seibel

Publisher: Apress

Published: 2006-11-01

Total Pages: 506

ISBN-13: 1430200170

DOWNLOAD EBOOK

* Treats LISP as a language for commercial applications, not a language for academic AI concerns. This could be considered to be a secondary text for the Lisp course that most schools teach . This would appeal to students who sat through a LISP course in college without quite getting it – so a "nostalgia" approach, as in "wow-lisp can be practical..." * Discusses the Lisp programming model and environment. Contains an introduction to the language and gives a thorough overview of all of Common Lisp’s main features. * Designed for experienced programmers no matter what languages they may be coming from and written for a modern audience—programmers who are familiar with languages like Java, Python, and Perl. * Includes several examples of working code that actually does something useful like Web programming and database access.


Book Synopsis Practical Common Lisp by : Peter Seibel

Download or read book Practical Common Lisp written by Peter Seibel and published by Apress. This book was released on 2006-11-01 with total page 506 pages. Available in PDF, EPUB and Kindle. Book excerpt: * Treats LISP as a language for commercial applications, not a language for academic AI concerns. This could be considered to be a secondary text for the Lisp course that most schools teach . This would appeal to students who sat through a LISP course in college without quite getting it – so a "nostalgia" approach, as in "wow-lisp can be practical..." * Discusses the Lisp programming model and environment. Contains an introduction to the language and gives a thorough overview of all of Common Lisp’s main features. * Designed for experienced programmers no matter what languages they may be coming from and written for a modern audience—programmers who are familiar with languages like Java, Python, and Perl. * Includes several examples of working code that actually does something useful like Web programming and database access.


LISP 1.5 Programmer's Manual

LISP 1.5 Programmer's Manual

Author: John McCarthy

Publisher: MIT Press

Published: 1962-08-15

Total Pages: 116

ISBN-13: 9780262130110

DOWNLOAD EBOOK

The manual describes LISP, a formal mathematical language. LISP differs from most programming languages in three important ways. The first way is in the nature of the data. The LISP language is designed primarily for symbolic data processing used for symbolic calculations in differential and integral calculus, electrical circuit theory, mathematical logic, game playing, and other fields of artificial intelligence. The manual describes LISP, a formal mathematical language. LISP differs from most programming languages in three important ways. The first way is in the nature of the data. In the LISP language, all data are in the form of symbolic expressions usually referred to as S-expressions, of indefinite length, and which have a branching tree-type of structure, so that significant subexpressions can be readily isolated. In the LISP system, the bulk of the available memory is used for storing S-expressions in the form of list structures. The second distinction is that the LISP language is the source language itself which specifies in what way the S-expressions are to be processed. Third, LISP can interpret and execute programs written in the form of S-expressions. Thus, like machine language, and unlike most other high level languages, it can be used to generate programs for further executions.


Book Synopsis LISP 1.5 Programmer's Manual by : John McCarthy

Download or read book LISP 1.5 Programmer's Manual written by John McCarthy and published by MIT Press. This book was released on 1962-08-15 with total page 116 pages. Available in PDF, EPUB and Kindle. Book excerpt: The manual describes LISP, a formal mathematical language. LISP differs from most programming languages in three important ways. The first way is in the nature of the data. The LISP language is designed primarily for symbolic data processing used for symbolic calculations in differential and integral calculus, electrical circuit theory, mathematical logic, game playing, and other fields of artificial intelligence. The manual describes LISP, a formal mathematical language. LISP differs from most programming languages in three important ways. The first way is in the nature of the data. In the LISP language, all data are in the form of symbolic expressions usually referred to as S-expressions, of indefinite length, and which have a branching tree-type of structure, so that significant subexpressions can be readily isolated. In the LISP system, the bulk of the available memory is used for storing S-expressions in the form of list structures. The second distinction is that the LISP language is the source language itself which specifies in what way the S-expressions are to be processed. Third, LISP can interpret and execute programs written in the form of S-expressions. Thus, like machine language, and unlike most other high level languages, it can be used to generate programs for further executions.


Programming with Mathematica®

Programming with Mathematica®

Author: Paul Wellin

Publisher: Cambridge University Press

Published: 2013-01-10

Total Pages: 731

ISBN-13: 1107009464

DOWNLOAD EBOOK

This practical, example-driven introduction teaches the foundations of the Mathematica language so it can be applied to solving concrete problems.


Book Synopsis Programming with Mathematica® by : Paul Wellin

Download or read book Programming with Mathematica® written by Paul Wellin and published by Cambridge University Press. This book was released on 2013-01-10 with total page 731 pages. Available in PDF, EPUB and Kindle. Book excerpt: This practical, example-driven introduction teaches the foundations of the Mathematica language so it can be applied to solving concrete problems.


Metaprogramming Ruby 2

Metaprogramming Ruby 2

Author: Paolo Perrotta

Publisher:

Published: 2014

Total Pages: 0

ISBN-13: 9781941222126

DOWNLOAD EBOOK

Paolo Perrotta has fifteen years of experience as a developer, ranging from embedded to enterprise software, computer games, and web applications. Paolo lives a nomadic life, mentoring agile teams throughout Europe. He has a base camp in Bologna, Italy. He loves Ruby.


Book Synopsis Metaprogramming Ruby 2 by : Paolo Perrotta

Download or read book Metaprogramming Ruby 2 written by Paolo Perrotta and published by . This book was released on 2014 with total page 0 pages. Available in PDF, EPUB and Kindle. Book excerpt: Paolo Perrotta has fifteen years of experience as a developer, ranging from embedded to enterprise software, computer games, and web applications. Paolo lives a nomadic life, mentoring agile teams throughout Europe. He has a base camp in Bologna, Italy. He loves Ruby.


Meta-Programming and Model-Driven Meta-Program Development

Meta-Programming and Model-Driven Meta-Program Development

Author: Vytautas Štuikys

Publisher: Springer Science & Business Media

Published: 2012-08-21

Total Pages: 330

ISBN-13: 1447141261

DOWNLOAD EBOOK

Meta-Programming and Model-Driven Meta-Program Development: Principles, Processes and Techniques presents an overall analysis of meta-programming, focusing on insights of meta-programming techniques, heterogeneous meta-program development processes in the context of model-driven, feature-based and transformative approaches. The fundamental concepts of meta-programming are still not thoroughly understood, in this well organized book divided into three parts the authors help to address this. Chapters include: Taxonomy of fundamental concepts of meta-programming; Concept of structural heterogeneous meta-programming based on the original meta-language; Model-driven concept and feature-based modeling to the development process of meta-programs; Equivalent meta-program transformations and metrics to evaluate complexity of feature-based models and meta-programs; Variety of academic research case studies within different application domains to experimentally verify the soundness of the investigated approaches. Both authors are professors at Kaunas University of Technology with 15 years research and teaching experience in the field. Meta-Programming and Model-Driven Meta-Program Development: Principles, Processes and Techniques is aimed at post-graduates in computer science and software engineering and researchers and program system developers wishing to extend their knowledge in this rapidly evolving sector of science and technology.


Book Synopsis Meta-Programming and Model-Driven Meta-Program Development by : Vytautas Štuikys

Download or read book Meta-Programming and Model-Driven Meta-Program Development written by Vytautas Štuikys and published by Springer Science & Business Media. This book was released on 2012-08-21 with total page 330 pages. Available in PDF, EPUB and Kindle. Book excerpt: Meta-Programming and Model-Driven Meta-Program Development: Principles, Processes and Techniques presents an overall analysis of meta-programming, focusing on insights of meta-programming techniques, heterogeneous meta-program development processes in the context of model-driven, feature-based and transformative approaches. The fundamental concepts of meta-programming are still not thoroughly understood, in this well organized book divided into three parts the authors help to address this. Chapters include: Taxonomy of fundamental concepts of meta-programming; Concept of structural heterogeneous meta-programming based on the original meta-language; Model-driven concept and feature-based modeling to the development process of meta-programs; Equivalent meta-program transformations and metrics to evaluate complexity of feature-based models and meta-programs; Variety of academic research case studies within different application domains to experimentally verify the soundness of the investigated approaches. Both authors are professors at Kaunas University of Technology with 15 years research and teaching experience in the field. Meta-Programming and Model-Driven Meta-Program Development: Principles, Processes and Techniques is aimed at post-graduates in computer science and software engineering and researchers and program system developers wishing to extend their knowledge in this rapidly evolving sector of science and technology.


Paradigms of Artificial Intelligence Programming

Paradigms of Artificial Intelligence Programming

Author: Peter Norvig

Publisher: Morgan Kaufmann

Published: 2014-06-28

Total Pages: 946

ISBN-13: 0080571158

DOWNLOAD EBOOK

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.


Book Synopsis Paradigms of Artificial Intelligence Programming by : Peter Norvig

Download or read book Paradigms of Artificial Intelligence Programming written by Peter Norvig and published by Morgan Kaufmann. This book was released on 2014-06-28 with total page 946 pages. Available in PDF, EPUB and Kindle. Book excerpt: 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.


Realm of Racket

Realm of Racket

Author: Matthias Felleisen

Publisher: No Starch Press

Published: 2013-06-13

Total Pages: 320

ISBN-13: 1593274920

DOWNLOAD EBOOK

Racket is a descendant of Lisp, a programming language renowned for its elegance, power, and challenging learning curve. But while Racket retains the functional goodness of Lisp, it was designed with beginning programmers in mind. Realm of Racket is your introduction to the Racket language. In Realm of Racket, you'll learn to program by creating increasingly complex games. Your journey begins with the Guess My Number game and coverage of some basic Racket etiquette. Next you'll dig into syntax and semantics, lists, structures, and conditionals, and learn to work with recursion and the GUI as you build the Robot Snake game. After that it's on to lambda and mutant structs (and an Orc Battle), and fancy loops and the Dice of Doom. Finally, you'll explore laziness, AI, distributed games, and the Hungry Henry game. As you progress through the games, chapter checkpoints and challenges help reinforce what you've learned. Offbeat comics keep things fun along the way. As you travel through the Racket realm, you'll: –Master the quirks of Racket's syntax and semantics –Learn to write concise and elegant functional programs –Create a graphical user interface using the 2htdp/image library –Create a server to handle true multiplayer games Realm of Racket is a lighthearted guide to some serious programming. Read it to see why Racketeers have so much fun!


Book Synopsis Realm of Racket by : Matthias Felleisen

Download or read book Realm of Racket written by Matthias Felleisen and published by No Starch Press. This book was released on 2013-06-13 with total page 320 pages. Available in PDF, EPUB and Kindle. Book excerpt: Racket is a descendant of Lisp, a programming language renowned for its elegance, power, and challenging learning curve. But while Racket retains the functional goodness of Lisp, it was designed with beginning programmers in mind. Realm of Racket is your introduction to the Racket language. In Realm of Racket, you'll learn to program by creating increasingly complex games. Your journey begins with the Guess My Number game and coverage of some basic Racket etiquette. Next you'll dig into syntax and semantics, lists, structures, and conditionals, and learn to work with recursion and the GUI as you build the Robot Snake game. After that it's on to lambda and mutant structs (and an Orc Battle), and fancy loops and the Dice of Doom. Finally, you'll explore laziness, AI, distributed games, and the Hungry Henry game. As you progress through the games, chapter checkpoints and challenges help reinforce what you've learned. Offbeat comics keep things fun along the way. As you travel through the Racket realm, you'll: –Master the quirks of Racket's syntax and semantics –Learn to write concise and elegant functional programs –Create a graphical user interface using the 2htdp/image library –Create a server to handle true multiplayer games Realm of Racket is a lighthearted guide to some serious programming. Read it to see why Racketeers have so much fun!


How to Design Programs, second edition

How to Design Programs, second edition

Author: Matthias Felleisen

Publisher: MIT Press

Published: 2018-05-25

Total Pages: 793

ISBN-13: 0262344122

DOWNLOAD EBOOK

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.


Book Synopsis How to Design Programs, second edition by : Matthias Felleisen

Download or read book How to Design Programs, second edition written by Matthias Felleisen and published by MIT Press. This book was released on 2018-05-25 with total page 793 pages. Available in PDF, EPUB and Kindle. Book excerpt: 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.