Newbies What Next ? News Forums Calendar


News Sections
General News (3973/0)
Reviews (628/0)
Press Releases (464/0)
Distributions (187/0)
Software (859/0)
Hardware (522/0)
Security (192/0)
Tutorials (344/0)
Off Topic (181/0)

User Functions


Don't have an account yet? Sign up as a New User

There are no upcoming events

6 Invaluable Free Scheme Books - Page 1

6 Invaluable Free Scheme Books

Scheme is a general-purpose, functional, programming language that is descended from Lisp and Algol. It is a statically scoped and properly tail-recursive dialect of Lisp.

Scheme is a very simple language with a very simple syntax based on s-expressions. Its simplicity has been fundamental in making it a popular introductory language. It follows a minimalist design philosophy specifying a small standard core with powerful tools for language extension. This philosophy helps make Scheme a programming language that can be learned over a weekend. Nevertheless, Scheme is a very versatile language and has been used to write a diverse range of applications such as financial analysis tools, compilers, virtual reality systems, as well as more mundane software.

Scheme is used in computing education and research as well as a wide range of industrial applications.

The focus of this article is to select some of the finest free Scheme books which help programmers quickly master this language. To cater for all tastes, we have selected a diverse range of informative books on Scheme. All of the texts here come with our recommendation. So get reading (and learning).

1. The Scheme Programming Language

Scheme Programming Language
Author R. Kent Dybvig
Format HTML
Pages 504

Scheme is now a complete general-purpose programming language, though it still derives its power from a small set of key concepts.

This book is intended to provide an introduction to the Scheme programming language but not an introduction to programming in general. The reader is expected to have had some experience programming and to be familiar with terms commonly associated with computers and programming languages. This book covers the language of the Revised 6 Report.

  • Introduction - describes the properties and features of Scheme that make it a useful and enjoyable language to use and describes Scheme's notational conventions and the typographical conventions employed in this book
  • Getting Started - an introduction to Scheme programming for the novice Scheme programmer that leads the reader through a series of examples, beginning with simple Scheme expressions and working toward progressively more difficult ones
  • Going Further - covers more advanced features and concepts such as syntactic extension, continuations, and libraries
  • Procedures and Variable Bindings - describes operations for creating procedures and variable bindings including variable references, lambda, case-lambda, local binding and more
  • Control Operations - examines program control operations
  • Operations on Objects - operations on the various object types (including lists, numbers, and strings)
  • Input and Output - transcoders, opening files, standard ports, string and bytevector ports, opening custom ports, port operations, input operations, output operations, convenience I/O, filesystem operations, and bytevector/string conversions
  • Syntactic Extension - looks at keyword bindings, syntax-rules transformers, syntax-case transformers
  • Records - record-type definitions
  • Libraries and Top-Level Programs - standard libraries, defining new libraries, and top-level programs
  • Exceptions and Conditions
  • Extended Examples

2. How to Use Scheme: The Book

How to Use Scheme: The Book
Author Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi, Paul Steckler
Format HTML
Pages -

How to Use Scheme bridges the gap between the basic steps of how to design programs and how to design large programs that interact with all kinds of items in our computer and the network to which it is connected. It introduces the reader to some pretty basic ideas, such as file input and output, to more advanced things, such simple GUI design and Web scripting.

Chapters cover:

  • File Input and Output
    • S-expressions
    • XML and X-expressions
    • The Conventiona Way
    • Reading and Writing Binary Data
  • Ports:
    • Ports
    • Files and Ports
    • Strings and Ports
    • Networking and Ports
    • Creating Your Own Ports
  • Strings and Regular Expressions
  • Scheme Programs and Shell Scripts
  • Files and Directories
  • CGI Scripts
  • Threads and Custodians
  • Modules and Collections
  • Classes and Interfaces
  • The Graphics Toolbox
  • COM Scripting and Dynamic HTML

The Web tree is the publisher-endorsed, on-line version of the book.

3. Simply Scheme: Introducing Computer Science

Simply Scheme: Introducing Computer Science
Author Brian Harvey, Matthew Wright
Format HTML
Pages 611

This introduction to computer science and computer programming in Scheme is for non-computer science majors with a strong interest in the subject and for computer science majors who lack prior programming experience.

The text allows the student to experience the computer as a tool for expressing ideas, not as a frustrating set of mathematical obstacles. This goal is supported by the use of Scheme, a modern dialect of Lisp, designed to emphasize symbolic programming.

Chapters cover:

  • Introduction - introduces the Scheme programming language. It provides a collection of short Scheme programs, presented to show off what Scheme can do
  • Composition of Functions - explores functions in some detail. This chapter separate she idea of functions from the complexities of programming language notation
  • Functions as Data - looks at higher-order functions, lambda, as well as a tic-tac-toe example
  • Recursion - Introduction to recursion, moves on to build up to a recursive procedure by writing a number of special-case nonrecursive procedures, starting with small arguments and working toward larger ones. Later chapters look at recursion in more detail, common patterns in recursive procedures, with an extended example showing off what the reader has been learning to accomplish
  • Abstraction - takes a closer look at two specific kinds of abstraction. One is data abstraction, which means the invention of new data types. The other is the implementation of higher-order functions, an important category of the same process abstraction of which third-person is a trivial example
  • Sequential Programming - input and output, an example: the functions program, files, vectors, a further example: a spreadsheet program

Next Section: 6 Invaluable Free Scheme Books - Part 2

Bookmark and Share

Last Updated Sunday, May 25 2014 @ 10:37 AM EDT

We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).

Group Tests
All Group Tests

Top Free Software
6 Office Suites
7 Document Processors
6 Lean Desktops
6 Desktop Search
9 Project Management
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 DVD Tools
21 Window Managers
21 Productivity Tools
9 Terminal Emulators
21 Financial Tools
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
11 Remote Display Apps
42 Best Games
42 More Games
21 More Games
21 Notable Games (1)
21 Notable Games (2)
21 Notable Games (3)
8 ASCII Games
9 Educational Games
42 Audio Apps
42 Video Apps
6 Screencasting Apps
80 Security Apps
9 System Monitoring
6 Family History Apps
11 PDF Tools
6 Music Servers
6 Collection Managers
7 Calculator Apps
8 Geometry Apps
Free Console Apps
14 Multimedia
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
'Free' Proprietary
21 Closed-Source Apps
Top Commercial Apps
42 Games
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

All Group Tests

Other Articles
Migrating from Windows
Back up your data
Distribution Guide
Distro Portal Pages
20 Free Linux Books
Running Linux Under Windows

Older Stories
Sunday 03/30
  • Increasing Lab Efficiency with an Open Source LIMS (0)
  • Keep a Watchful Eye with these Console Based Process Viewers (0)

  • Saturday 03/15
  • Focus on Your Writing by Using Markdown Editors (0)

  • Sunday 03/09
  • Experience Home Computers that Missed the Big Time (0)

  • Monday 03/03
  • Molly: Children of the Universe (0)

  • Sunday 03/02
  • Up-and-Coming Clients to Tweet (0)
  • Reminiscing the Wonderful ZX Spectrum (0)

  • Monday 02/17
  • Need a Good Bitcoin Client? (0)

  • Sunday 02/09
  • 5 Highly Promising Cross-Platform IDEs (0)
  • Play the Best Linux Puzzle Games (0)

  • Vote

    What do you find MOST attractive about Open Source software?

    Amount of customization
    Freedom provided
    Speed of development
    Multiple versions
    Potential to contribute
    Ability to modify code
    4720 votes | 2 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 - All rights reserved