What I learned from example and tictactoe


This post makes no effort to be scrutible.

In a sense, the make-tv macro is mostly a type specifier for a define-application-frame s-exp, particularly about layout. Maybe this is a general point about macros though; any product of this macro is the kind of thing that macro language makes.

This realisation makes me think that lisp users aren't going to use this macro directly themselves, rather there needs to be a straightforward and clearly delineated places for

  • buttons for commands
  • change-sensitive status displays
  • main/subject/object display defuns
    • Alternative layouts and alternate main/subject/object/buttons

} the obvious choice for me for these is Erik Sandewall's entity files, but these aren't common knowledge right now.

The idea of entity files is that humans can't really deal with usefully creating and storing data and program code. Instead, you have a robot descendent of Sandewall's Leonardo whom you talk to, and the robot stores and retrieves data in ways you couldn't do yourself reliably. The robot later uses entity files to generate program code that does things the particular robot thinks are good ideas. (This was basically Sandewall's life work, which got defunded back in 2005).

I'm not going to tangle with those concepts for at least two versions, and not make any changes before finishing #o10 games.

What we can do, right now, also known as tomorrow is use command table inheritance. When I noticed I was repeating the exact code to get working arrow keys, I guess, there has to be a common.lisp of parent application frames that have prior reuseable things.

We turn out to get this by using define-application-frame for a parent instead of just defclass. :lafs/game/common will super reduce repeated work.

A patch I *will* make is that iff there isn't one defined yet, default display functions are generated (I originally took this out, but I'm putting it back in).

If you've listened to either of the live shows, for the past couple of weeks I've kept saying "voronoi duality" in a way nobody has enjoyed or understood. The voronoi diagram of a cloud of points is dual to those points' convex hull, and this is a fairly useful and realisable idea in both 2D and 3D.

The surprising implication (sez me) is that hack and adventure are more or less the same game; hack (and hack clones) use top down graphics to convey the game, whereas adventure uses prose (writing) and first person. But these are dual. They are different but equivalent ways of viewing the same data.

Get LISP GAME SOFT CONS

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.