Skip to content

An implementation of TicTacToe in Emacs Lisp with a Reflexive Agent opponent

License

Notifications You must be signed in to change notification settings

brudgers/emacs-lisp-tictactoe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ticTacToe.el

This site has a web page: https://brudgers.github.io/emacs-lisp-tictactoe/

An implementation of TicTacToe (or Naughts and Crosses) in Emacs Lisp. It was written for the second round of interviews for the Spring 2017 batch at the Recuse Center. I was not admitted. My plan had been to work on ‘classic’ AI’s at the agent level of abstraction. It uses a rule based agent to implement a primitive AI (but that’s all the game really needs).

Playing

The setup for the game is rather cumbersome. The instructions are in the initial comments for the file

Experience

A big part of the exercise for me was learning more of Emacs. Challenges included adapting to Emacs Lisp from other Lisps and particularly Racket and learning how to perform input-output within the Emacs ecosystem.

But for the instructions, the code was largely written from top to bottom as it appears in the file. The moments spent in the trough of despair appear toward the bottom.

Rationale

In 2016 I chose Emacs as one of my core things to learn and kept it on the roster for 2017. I advanced to the second round of interviews on Monday Jan 10 and the same day a hard copy version of the Emacs Lisp manual arrived…I found it on Amazon; it is the most recent version. So in I dove. I learned a lot more Emacs and some more AI.

About

An implementation of TicTacToe in Emacs Lisp with a Reflexive Agent opponent

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published