Skip to content

MaterDev/SICP-ExercisesAndCode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SICP-ExercisesAndCode

Cover Image

This repository is dedicated to my journey through the renowned computer science book, "Structure and Interpretation of Computer Programs" (SICP), by Harold Abelson, Gerald Jay Sussman, and Julie Sussman.

This repo will serve as a collection of my exercises, code snippets, and personal notes as I delve into the depths of this influential work.

About the Book

"Structure and Interpretation of Computer Programs" is a seminal work in computer science, exploring the principles and techniques of software design and programming. The book emphasizes the role of abstraction and the use of Lisp (more specifically, the Scheme dialect) to illustrate fundamental concepts in computer science and software engineering.

Goals and Objectives

  • Deep Understanding: To gain a profound understanding of the principles of computer science and software engineering as presented in SICP.
  • Practical Application: To apply the concepts learned in practical exercises and projects.
  • Continuous Learning: To document my learning process and reflect on my progress throughout the journey.

Using LISP, Racket, and #lang sicp

For the exercises and code in this repository, I am using:

  • LISP: A historical and foundational language in computer science, essential for understanding SICP's core concepts.
  • Racket: A modern dialect of LISP, providing a rich set of features and tools for an enhanced programming experience.
  • #lang sicp: An extension in Racket specifically designed for SICP, allowing the code to align closely with the book's examples.

Requirements

To run and use the code from this repository, you will need:

  1. Racket: Install Racket from https://racket-lang.org/.
  2. #lang sicp Package: After installing Racket, install the sicp package by running raco pkg install sicp in your terminal.

With these tools installed, you can clone this repository and experiment with the exercises and code snippets, furthering your understanding of SICP's principles.

Contributing

While this is a personal learning project, I welcome insights, suggestions, and contributions from fellow learners and enthusiasts. If you have ideas, corrections, or feedback, feel free to open an issue or submit a pull request.

License

This project is open-sourced under the GNU.

Acknowledgments

  • Harold Abelson, Gerald Jay Sussman, and Julie Sussman for their monumental work on SICP.

About

Structure and Interpretation of Computer Programs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages