About Pig!

Main Points

History

If you follow my tinylog, you'll notice that I keep dabbling in different programming languages. Before I joined Gemini back in 2020, my interest in programming had waned significantly over the span of many years. My main job wasn't coding and I have a home, spouse, and kids to keep me busy. However, Gemini reignited my interest in programming by lowering the barrier to entry.

Fast-forward a few years, and I'd abandonded Python for Pascal, and then moved onto Go. Fill! is created entirely in Go, and I even re-coded Farkle in Go, but as of this writing, I have yet to finish it. About a year ago @stack starting talking about the greatness of Lisp, so I dove in head-first trying to figure it out (I wrote a gemlog on this [1]), but I eventually abandoned it and took a hiatus from Gemini (I tend to do this in warmer months).

About a month ago, while finishing up Farkle in Go, I got the idea to look at Lisp or Lisp derivatives again since I was getting frustrated with Go / my Farkle project. I discovered Racket and found it much easier to absorb than Lisp and as a bonus, the website / documentation [2] is geared for beginners, students, educators, and professionals alike. So I dove in.

My first mini-project: SCGI

I get bored writing practice problems just to do practice problems. There's some great exercises in the (free) Racket textbooks [3][4], but I figured if I was going to do this, I wanted a project that meant something to me, so I picked a SCGI parser built entirely in Racket. It took about a week due to my needing to dive into the docs for every little thing, but I eventually got it, which I then rolled this into Pig!

Follow-on project: Pig!

Pig! is my proof-of-concept. It's a milestone for me that I've completed a program in a Lisp-like functional programming language. I've ascended the first peak of a giant mountain, and it was actually pretty fun. I like Racket but I wonder if my interest will wane just as it did with Go and Pascal; I always want something new.

Anyways, if you read this far, thank you for playing Pig! and taking an interest in my journey through yet another programming language. Props to @stack for being a Lisp proponent and talking about it on BBS.

References

[1] My Foray Into Racket Programming

[2] Racket Documentation

[3] Racket Textbook - How to Design Programs

[4] Racket Textbook - Programming Languages: Application and Interpretation

Play Pig!

~Gritty (2026-03-21)