Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6383965
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T02:42:56+00:00 2026-05-25T02:42:56+00:00

I am a C++ programmer trying to learn Common Lisp. I have looked at

  • 0

I am a C++ programmer trying to learn Common Lisp. I have looked at some books like Land of Lisp and read numerous online articles about the various virtues of Lisp. However, I need some advice.

Almost everything I have read about Common Lisp has to do with how amazing it is and how amazingly fast you can get stuff done with it and how it amazingly solved many problems with modern programming languages 30 years ago. Also how amazing macros are, and how every every programming paradigm (OO, functional, actor based or whatever, etc) can be used in Lisp, and how lists are the ultimate data structure. Basically treating Lisp like a research language and saying how different and revolutionary it is.

And all that stuff is probably true, but the problem is I haven’t seen much stuff how to do practical things like read a file and split it into words and do some processing on it. I’m not interested in learning Common Lisp for the sake of learning Common Lisp, but for the sake of getting thing that I used to do in C++ done faster and with fewer errors.

So my question is what is the best resource (be it a website, book, anything) that focuses on teaching how to use Common Lisp to do common programming tasks like

  • How to read files
  • How to read a file, replace words in the file, and write the result back to the file
  • Iterate the files in a directory and other filesystem stuff
  • Interact with an SQL db
  • Do communications over sockets
  • Threading for stuff like a webserver
  • Create GUIs
  • Perform operations on binary files
  • Write a parser (not an interpreter for Lisp in Lisp, which as I understand is like 5 lines of Lisp)
  • Interact with the operating system (i.e. stuff written in C or C++) to do stuff Lisp can’t do natively
  • How to write Lisp extensions in C (is that possible?)
  • Embed a lua interpreter (is that possible?)

And also on a less immediately practical note, how to implement common data structures in lisp such as an heap, stack, binary search tree, etc. However that may be just using Lisp’s list operations like car and cdr in the right way. I don’t know.

I highly doubt that any of this (with the unlikely exception of the last two in the list) is impossible with Lisp or people wouldn’t love it so much. And the aforementioned stuff that I’ve read mentions plenty of real world software written in Lisp (Yahoo! web store comes to mind).

However, having programming in a (the?) imperative language before, I am anxious to get to using what new knowledge I get to write real-world applications. So what’s the quickest way to learn writing practical software with Lisp?

By the way, I have seen Peter Seibel’s Practical Common Lisp but, judging by the TOC, it only touches on some of the things I would like to learn to use Lisp to do.

One more question if I may (sorry if this is combining two questions into one), where can I find a reference to Lisp’s functions and stuff?

And I really want to like Lisp.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T02:42:58+00:00Added an answer on May 25, 2026 at 2:42 am

    I would propose reading ‘Practical Common Lisp‘, since it already answers some of your questions.

    There are probably three to four books you should read:

    • Basic introduction to Common Lisp: Common Lisp: A Gentle Introduction to Symbolic Computation
    • Practical introduction to Common Lisp: Practical Common Lisp
    • More advanced Common Lisp: Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp. The book is interesting also for non-AI programmers.
    • Lots of practical advice: Common Lisp Recipes.

    Common Lisp Reference

    • Reference: Common Lisp HyperSpec
    • Printable Quick Reference: Common Lisp Quick Reference
    • L1sp.org – redirect service for documentation

    Manuals

    Now the next thing you should check out is the manual of your Lisp implementation. It describes a lot of specific extensions: networking, threads, …

    Documentation for Common Lisp implementations:

    • Allegro Common Lisp
    • CLISP
    • Clozure Common Lisp
    • CMUCL
    • ECL
    • LispWorks
    • SBCL

    SLIME (the Emacs-based Lisp-IDE) has a SLIME User Manual.

    Documentation for Common Lisp libraries:

    • Quickdocs

    Libraries

    For libraries use

    • Quicklisp: supported Libraries.
    • CLIKI (gives some overview)

    Now looking at some of your points:

    • How to read files

    See the files and streams dictionary in the HyperSpec. WITH-OPEN-STREAM, READ, READ-LINE, READ-CHAR, READ-BYTE, READ-SEQUENCE, …

    • How to read a file, replace words in the file, and write the result back to the file

    Use above. See also: WRITE and related.

    • Iterate the files in a directory and other filesystem stuff

    See above. DIRECTORY, pathnames, …

    • Interact with an SQL db

    Use for example the CLSQL library.

    • Do communications over sockets

    See the manual of your Lisp or use one of the portable libraries. See Quicklisp.

    • Threading for stuff like a webserver

    See the manual of your Lisp or use one of the portable libraries. See Quicklisp.

    • Create GUIs

    Depends. See Quicklisp or an implementation specific library.

    • Perform operations on binary files

    See Hyperspec for file and stream operations. WRITE-BYTE, READ-BYTE. Open a stream as a binary stream.

    • Write a parser (not an interpreter for Lisp in Lisp, which as I understand is like 5 lines of Lisp)

    Use one of the existing tools for that. Study existing parsers. There are many parsers written in Lisp, but not much in books about that (other than natural language parsers, which are described in the AI literature).

    • Interact with the operating system (i.e. stuff written in C or C++) to do stuff Lisp can’t do natively

    Depends. See Quicklisp or an implementation specific library.

    • How to write Lisp extensions in C (is that possible?)

    Depends. See Quicklisp or an implementation specific library. -> FFI

    Final advice: Read code from other authors.

    Study other Lisp code. There is enough very diverse Lisp code out there. From web servers to music composition software.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm an experienced C++/.NET/Java Windows/web programmer trying to learn (Common) Lisp. I'm reading Practical
I'm a programmer trying to learn some css and I've already run into a
I'm an amateur C++ programmer trying to learn about basic shell scripting. I have
I'm a Perl5 programmer for 7 years and I'm trying to learn C++ now.
I am mainly a Python programmer. Now I am trying to learn C# .NET.
I am trying to be a good programmer and have unit tests for my
I have another programmer who I'm trying to explain why it is that a
Hi I'm a PHP developer and I have some experience with Java. I'm trying
I'm a newbie programmer doing his best to self learn PHP. I'm trying to
I am a fairly rookie programmer who is trying to learn the basics of

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.