Recreational Programming - racket/racket GitHub Wiki

These are intended to be a collection of fun topics to explore, intended as exercises or mini-projects, but also interesting in their own right. If you implement one, then leave a link: different solutions can lead to comparisons of style and constructive suggestions. Finally, don't be afraid to add more ideas ...

Remember the Racket Documentation is your friend for solving problems, DrRacket is a powerful IDE that can help write and debug your code (and macros), and don't forget to check the Racket Package Repository for packages that can help you complete your project.

  • Graphics
    • Draw some fractals: Mandelbrot set; Julia set; L-systems; Sierpinski gasket; Koch snowflake; space-filling curves
    • Make a random maze; animate the drawing
    • Tile a plane: rectangles - grid or herringbone; triangles; hexagons; Penrose tilings; quilt designs
    • Animate a classic looking clock
    • Animate a word clock
  • Wordplay
    • Find anagrams (example)
    • Find palindromes (example)
    • Make a scrabble or crossword helper
    • Scan a text for haikus
  • Puzzles
  • Calendars
    • Day of the week of any given date
    • When is Easter (and other holidays) in a given year?
  • Cryptography
    • Encrypt / decrypt simple ciphers and codes
    • rot13
    • Crack simple ciphers
  • Programming tools
    • Reimplement some standard library operations
    • Reimplement some of the standard Unix tools
  • Classical mechanics
    • Animate a bouncing ball, then balls
    • Simulate planets in orbit (e.g. solar sim, or universe version solar.rkt )
    • Pendulum
    • Newton's cradle
  • Math
  • Games