📘 Disclaimer: This book is published under a Creative Commons license and is freely available via GitHub.

Basic Lisp Techniques pdf

Basic Lisp Techniques -- David J. Cooper Jr. -- bookcover

Basic Lisp Techniques

✒️ By David J. Cooper Jr.



Basic Lisp Techniques by David J. Cooper Jr. is a friendly, practical guide for anyone interested in learning Lisp. Whether you’re just starting out or brushing up on old skills, this book offers clear explanations, handy examples, and tips that make even tricky concepts feel doable. It’s the kind of book that makes you want to open your editor and start coding right away. If you’re curious about Lisp or want a solid reference, this one’s worth a look.


Contents of the Book

Introduction

  • The Past, Present, and Future of Common Lisp
    • Lisp Yesterday
    • Lisp Today
    • Lisp Tomorrow
  • Convergence of Hardware and Software
  • The CL Model of Computation

Operating a CL Development Environment

  • Installing a CL Environment
  • Running CL in a Shell Window
    • Starting CL from a Terminal Window
    • Stopping CL from a Terminal Window
  • Running CL inside a Text Editor
    • A Note on Emacs and Text Editors
    • Emacs Terminology
    • Starting, Stopping, and Working With CL inside an Emacs Shell
  • Running CL as a subprocess of Emacs
    • Starting the CL subprocess within Emacs
    • Working with CL as an Emacs subprocess
    • Compiling and Loading a File from an Emacs buffer
  • Integrated Development Environment
  • The User Init File
  • Using CL as a scripting language
  • Debugging in CL
    • Common debugger commands
    • Interpreted vs Compiled Code
    • Use of (break) and C-c to interrupt
    • Profiling
  • Developing Programs and Applications in CL
    • A Layered Approach
    • Compiling and Loading your Project
    • Creating an Application “Fasl” File
    • Creating an Image File
    • Building Runtime Images
    • Using an Application Init File

The CL Language

  • Overview of CL and its Syntax
    • Evaluation of Arguments to a Function
    • Lisp Syntax Simplicity
    • Turning Off Evaluation
    • Fundamental CL Data Types
    • Functions
    • Global and Local Variables
  • The List as a Data Structure
    • Accessing the Elements of a List
    • The “Rest” of the Story
    • The Empty List
    • Are You a List?
    • The conditional If
    • Length of a List
    • Member of a List
    • Getting Part of a List
    • Appending Lists
    • Adding Elements to a List
    • Removing Elements from a List
    • Sorting Lists
    • Treating a List as a Set
    • Mapping a Function to a List
    • Property Lists
  • Control of Execution
    • If
    • When
    • Logical Operators
    • Cond
    • Case
    • Iteration
  • Functions as Objects
    • Named Functions
    • Functional Arguments
    • Anonymous Functions
    • Optional Arguments
    • Keyword Arguments
  • Input, Output, Streams, and Strings
    • Read
    • Print and Prin1
    • Princ
    • Format
    • Pathnames
    • File Input and Output
  • Hash Tables, Arrays, Structures, and Classes
    • Hash Tables
    • Arrays
    • Structures
    • Classes and Methods
  • Packages
    • Importing and Exporting Symbols
    • The Keyword Package
  • Common Stumbling Blocks
    • Quotes
    • Function Argument Lists
    • Symbols vs. Strings
    • Equality
    • Distinguishing Macros from Functions
    • Operations that cons

Interfaces

  • Interfacing with the Operating System
  • Foreign Function Interface
  • Interfacing with Corba
  • Custom Socket Connections
  • Interfacing with Windows (COM, DLL, DDE)
  • Code Generation into Other Languages
  • Multiprocessing
    • Starting a Background Process
    • Concurrency Control
  • Database Interfaces
    • ODBC
    • MySQL
  • World Wide Web
    • Server and HTML Generation
    • Client and HTML Parsing
  • Regular Expressions
  • Email
    • Sending Mail
    • Retrieving Mail

Squeakymail

  • Overview of Squeakymail
  • Fetching and Scoring
    • Tokenizing
    • Scoring
  • Browsing and Classifying

Squeakymail with Genworks’ GDL/GWL

  • Toplevel Squeakymail Home Page
  • Page for Browsing and Classifying

Bibliography

Emacs Customization

  • Lisp Mode
  • Making Your Own Keychords
  • Keyboard Mapping

Book Description

“Basic Lisp Techniques” by David J. Cooper Jr. is exactly what it sounds likea no-nonsense, approachable guide to the world of Lisp programming. You know how some programming books are so dense they make your eyes glaze over? Not this one! It’s direct, friendly, and packed with examples that actually make sense. If you’ve ever stared at parentheses and wondered what on earth was going on, this book will help clear things up without making you feel silly for asking.

Book Overview

This book digs into the essentials of Lisp, but it doesn’t stop at just listing syntax rules. Instead, it walks you through real-world scenarios, hands-on exercises, and practical advice that you can use immediately. The chapters are well-organizedeach building on the lastso you never feel lost or overwhelmed. From basic data structures to more advanced features like macros and recursion, “Basic Lisp Techniques” covers it all in an easy-to-follow way. And if you’re like me and love a little bit of programming history sprinkled in, you’ll appreciate the background info scattered throughout.

Why Read This Book

Let’s be honest: Lisp can seem intimidating at first glance. But this book makes it not just accessible but genuinely fun to learn. David J. Cooper Jr. has a knack for explaining tough concepts without dumbing them down or making you feel bored. You’ll find yourself actually enjoying the processimagine that! Plus, there’s a certain satisfaction in mastering a language as unique as Lisp. Want to impress your friends at your next coding meetup? This book might just give you some bragging rights.

Who This Book Is For

If you’re new to programming or just new to Lisp, this book’s for you. It’s perfect for students who want a solid foundation in functional programming, hobbyists looking to expand their toolkit, or even seasoned developers who want a refresher without wading through dry academic texts. Are you someone who learns best by doing? You’ll love the hands-on approach here. And if you’ve always been curious about those mysterious parentheses-heavy languages but didn’t know where to startwell, here’s your answer.

What You Will Learn

  • The basics of Lisp syntax (yes, even those wild parentheses!)
  • How to work with lists, symbols, and other core data types
  • Building functions and understanding recursion (it’s not as scary as it sounds)
  • Creating and using macros to make your code more powerful
  • Troubleshooting common mistakes (because we all make them!)
  • Best practices for writing clean, readable Lisp code
  • A bit of history behind Lisp and its influence on modern programming
  • How to apply functional programming principles in real projects
  • Tons of practical examples that actually work when you copy-paste them (no more head-scratching!)

Book Details


Length: 100

Language: English

PDF Size: 0.39

Category: 

Report Broken Link

File Copyright Claim

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Categories

Related Posts

Split List into Columns
PDF Viewer

Please wait while the PDF is loading...
📘 Download PDF Book