From: ········@gmail.com
Subject: Crossword puzzle site written in Lisp
Date: 
Message-ID: <1182877575.516846.134680@u2g2000hsc.googlegroups.com>
http://clutu.com/

Found on news.ycombinator.com:

http://news.ycombinator.com/item?id=30819

"clutu runs in sbcl, using hunchentoot as its web server, on an ubuntu
vps."

 -jimbo

From: ···············@gmail.com
Subject: Re: Crossword puzzle site written in Lisp
Date: 
Message-ID: <1183005479.137809.185560@i38g2000prf.googlegroups.com>
On Jun 26, 10:06 am, ········@gmail.com wrote:
> http://clutu.com/
>
> Found on news.ycombinator.com:
>
> http://news.ycombinator.com/item?id=30819
>
> "cluturuns in sbcl, using hunchentoot as its web server, on an ubuntu
> vps."
>
>  -jimbo

I wrote up a few more details of clutu's implementation here:
http://abstractstuff.livejournal.com/31576.html

Cheers,
Bill.
From: Dan Bensen
Subject: Re: Crossword puzzle site written in Lisp
Date: 
Message-ID: <f5vm3p$jlo$1@wildfire.prairienet.org>
It would be nice if the puzzle were fully connected.  A lot of
the fun is that, if you can't figure out one section, you might
find a hint for it by solving a nearby overlapping section.

-- 
Dan
www.prairienet.org/~dsb/
From: Don Geddis
Subject: Re: Crossword puzzle site written in Lisp
Date: 
Message-ID: <87odj0c527.fsf@geddis.org>
···············@gmail.com wrote on Thu, 28 Jun 2007:
> On Jun 26, 10:06 am, ········@gmail.com wrote:
>> http://clutu.com/
>>
> I wrote up a few more details of clutu's implementation here:
> http://abstractstuff.livejournal.com/31576.html

About the generation of the grids, I see that you wrote:

        The crosswords.

        You might think I used a somewhat clever algorithm to generate the
        crosswords. Actually I was thinking about doing a depth-first search,
        where each node in the search tree represents the placement of a word
        on the crossword grid, starting with an empty grid at the root.

        Then, just for a laugh, I did the simplest thing possible. I threw
        random words at a grid, starting from empty, until no more words
        would fit. Turns out that's just about good enough. I added some
        constraints to make sure the crosswords get 180-degree rotational
        symmetry, as is traditional, but that's about it.

        At some point I'll go back to this and do something more clever to
        get better grids. For comparison, a typical 15x15 commercial
        newspaper crossword will have about 45 crossing points. Clutu usually
        gets about 30-35 crossing points.

A bunch of years ago (~1992), I wrote a blank-crossword-grid generating
program.  We were using it for research in search algorithms, for trying to
populate the blank grids with letters to make valid words.  (We didn't bother
with the English clues necessary for a real human crossword puzzle.)

It might not fit into your architecture.  It seems you start with the words
first, and then let the grid flow from that.  But I thought I'd mention it,
in case you'd find it useful.  The code is in Common Lisp, and it generates
_much_ better crossword grids than your current program.  (For example: much
more symmetry, much more dense rectangles of words rather than just
T-crossings, etc.)  They look like real grids in real published crossword
puzzles.

Of course, such highly-connected grids become much more difficult to fill with
valid words, so you may not find it useful after all.

But let me know if you'd like to look at the code.  If so, I can clean it up
a bit and make it available to you.  (Public domain, or whatever is
convenient.)

        -- Don
_______________________________________________________________________________
Don Geddis                  http://don.geddis.org/               ···@geddis.org
A student, in hopes of understanding the Lambda-nature, came to Greenblatt.  As
they spoke a Multics system hacker walked by.  "Is it true," asked the student,
"that PL-1 has many of the same data types as Lisp?"  Almost before the student
had finished his question, Greenblatt shouted, "FOO!", and hit the student with
a stick.
From: Don Geddis
Subject: Re: Crossword puzzle site written in Lisp
Date: 
Message-ID: <877ipn4dnz.fsf@geddis.org>
Don Geddis <···@geddis.org> wrote on Thu, 28 Jun 2007:
> ···············@gmail.com wrote on Thu, 28 Jun 2007:
>> On Jun 26, 10:06 am, ········@gmail.com wrote:
>>> http://clutu.com/
>>>
>> I wrote up a few more details of clutu's implementation here:
>> http://abstractstuff.livejournal.com/31576.html
>
> About the generation of the grids, I see that you wrote:
>
>         I threw random words at a grid, starting from empty, until no more
>         words would fit. Turns out that's just about good enough. I added
>         some constraints to make sure the crosswords get 180-degree
>         rotational symmetry, as is traditional, but that's about it.
>
> A bunch of years ago (~1992), I wrote a blank-crossword-grid generating
> program.  Of course, such highly-connected grids become much more difficult
> to fill with valid words, so you may not find it useful after all.

You can find my code here:
        http://don.geddis.org/lisp/grid.lisp

Let me know if you think it is useful.

        -- Don
_______________________________________________________________________________
Don Geddis                  http://don.geddis.org/               ···@geddis.org
A famous Lisp Hacker noticed an Undergraduate sitting in front of a Xerox 1108,
trying to edit a complex Klone network via a browser.  Wanting to help, the
Hacker clicked one of the nodes in the network with the mouse, and asked "what
do you see?"  Very earnesty, the Undergraduate replied "I see a cursor."  The
Hacker then quickly pressed the boot toggle at the back of the keyboard, while
simultaneously hitting the Undergraduate over the head with a thick Interlisp
Manual.  The Undergraduate was then Enlightened.
From: ···············@gmail.com
Subject: Re: Crossword puzzle site written in Lisp
Date: 
Message-ID: <1183321024.373553.312070@a26g2000pre.googlegroups.com>
On Jun 28, 11:22 am, Don Geddis <····@geddis.org> wrote:
> ···············@gmail.com wrote on Thu, 28 Jun 2007:
>
> > On Jun 26, 10:06 am, ········@gmail.com wrote:
> >>http://clutu.com/
>
> > I wrote up a few more details ofclutu'simplementation here:
> >http://abstractstuff.livejournal.com/31576.html
>
> It might not fit into your architecture.  It seems you start with the words
> first, and then let the grid flow from that.  But I thought I'd mention it,
> in case you'd find it useful.

Sounds very interesting - thanks Don!  I'll take a look as soon as I
get a chance.

Cheers,
Bill.