Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Independent

Teach Yourself Scheme in Fixnum Days

via Independent

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Dive into the world of Scheme programming with this comprehensive tutorial. Learn the fundamentals of Scheme, starting from basic data types and progressing to advanced concepts like macros, objects, and nondeterminism. Explore practical applications through shell scripts, CGI programming, and numerical techniques. Master recursion, I/O operations, and system interfaces while gaining insights into different Scheme dialects. Engage with hands-on examples and logic puzzles to reinforce your understanding of this powerful functional programming language.

Syllabus

  Preface

    1  Enter Scheme

    2  Data types
        2.1  Simple data types
            2.1.1  Booleans
            2.1.2  Numbers
            2.1.3  Characters
            2.1.4  Symbols
        2.2  Compound data types
            2.2.1  Strings
            2.2.2  Vectors
            2.2.3  Dotted pairs and lists
            2.2.4  Conversions between data types
        2.3  Other data types
        2.4  S-expressions

    3  Forms
        3.1  Procedures
            3.1.1  Procedure parameters
            3.1.2  Variable number of arguments
        3.2  apply
        3.3  Sequencing

    4  Conditionals
        4.1  when and unless
        4.2  cond
        4.3  case
        4.4  and and or

    5  Lexical variables
        5.1  let and let*
        5.2  fluid‑let
        5.3  Pseudorandom-number generators

    6  Recursion
        6.1  letrec
        6.2  Named let
        6.3  Iteration
        6.4  Mapping a procedure across a list

    7  I/O
        7.1  Reading
        7.2  Writing
        7.3  File ports
            7.3.1  Automatic opening and closing of file ports
        7.4  String ports
        7.5  Loading files

    8  Macros
        8.1  Specifying the expansion as a template
        8.2  Avoiding variable capture inside macros
        8.3  fluid‑let

    9  Structures
        9.1  Default initializations
        9.2  defstruct defined

    10  Alists and tables

    11  System interface
        11.1  Checking for and deleting files
        11.2  Calling operating-system commands
        11.3  Environment variables

    12  Objects and classes
        12.1  A simple object system
        12.2  Classes are instances too
        12.3  Multiple inheritance

    13  Jumps
        13.1  call‑with‑current‑continuation
        13.2  Escaping continuations
        13.3  Tree matching
        13.4  Coroutines
            13.4.1  Tree-matching with coroutines
            13.4.2  Getting wet

    14  Nondeterminism
        14.1  Description of amb
        14.2  Implementing amb in Scheme
        14.3  Using amb in Scheme
        14.4  Logic puzzles
            14.4.1  The Kalotan puzzle
            14.4.2  Map coloring

    15  Engines
        15.1  The clock
        15.2  Flat engines
        15.3  Nestable engines

    16  Shell scripts
        16.1  Hello, World!, again
        16.2  Scripts with arguments
        16.3  Example

    17  CGI scripts
        17.1  Example: Displaying environment variables
        17.2  Example: Displaying selected environment variable
        17.3  CGI script utilities
        17.4  A calculator via CGI

    A  Scheme dialects
        A.1  Invocation and init files
        A.2  Shell scripts
        A.3  define‑macro
        A.4  load‑relative

    B  DOS batch files in Scheme

    C  Numerical techniques
        C.1  Simpson’s rule
        C.2  Adaptive interval sizes
        C.3  Improper integrals

    D  A clock for infinity

    E  References

    F  Index

Taught by

Dorai Sitaram

Reviews

Start your review of Teach Yourself Scheme in Fixnum Days

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.