From: Devin Currie
Subject: Settings and configurations
Date: 
Message-ID: <jkfics4u5d53mtd960agsn2ebirm7ib195@4ax.com>
Hello,

I have had this problem going on for quite a while now.

Each time I start up or minimize/maximize Allegro Lite 5.0.1, all of
the Allegro's windows would overlap each other across the centre of my
monitor. I am aware that all settings and configurations are saved in
prefs.cl and can be accessed by clicking on Tools | Save Options Now
or Tools | Save Options on Exit (checked). This way, Allegro can
"remember" where the windows (i.e. editor, debug, etc.) are when I
exit Allegro. For some reason, Allegro is not loading in the prefs.cl
as I get the default settings instead of those which I have specified
in the prefs.cl file.

Thanks,

Devin

From: Marie Boran
Subject: warning: Im a LISP newbie!
Date: 
Message-ID: <ilTy4.2898$xA.9231@news.iol.ie>
Im trying to do this project called The Pig Puzzle where I have 9 square
cards with 4 sides, each side has half a coloured pig -a top or bottom half.
The aim is to arrange the cards into a 3*3 large square so that all the
half-pigs match up to form whole pigs. I ahve created a defstruct for a
piece, and for a 3*3 grid, and a defparameter for a list of unrotated
pieces, and I have afunction which determines the opposite edge of a
supplied piece, a function to extract a given edge code of a particular
piece rotated a given no. of right-angles, also a function to determines
whether the 2 pieces match up.
the question (at last!): what function would determine whether a particular
piece in a particular orientation could be added to a given existing grid?
It must determine which edges of the new piece must match up with which
edges of existing pieces. help!
From: Thomas A. Russ
Subject: Re: warning: Im a LISP newbie!
Date: 
Message-ID: <ymiwvn668ma.fsf@sevak.isi.edu>
"Marie Boran" <·······@iol.ie> writes:

> the question (at last!): what function would determine whether a particular
> piece in a particular orientation could be added to a given existing grid?
> It must determine which edges of the new piece must match up with which
> edges of existing pieces. help!

This seems more a program design, than lisp question, but:

It would appear that you have almost all the pieces to the puzzle that
you need.  (Groan.  Sorry :).  I would start by writing a function that
will return a list of the neighboring pieces for the given grid
location.  If you have the neighbors, then you can simply go down the
list and check if the candidate piece in its candidate orientation
satisfies the constraints of the problem.

It might be easier if you used an array for the 3x3 grid rather than a
defstruct.  That might make it easier to write a function that
determines the neighbors.  It would also be easier to then generalize to
a 4x4 grid, etc.

-- 
Thomas A. Russ,  USC/Information Sciences Institute          ···@isi.edu