Show HN: Modern demo of Douglas Hofstadter et al.'s 2001 Letter Spirit project

Paul-G21 pts0 comments

GitHub - Paul-G2/letter-spirit-2-js: A JavaScript implementation of Letter Spirit 2 · GitHub

/" data-turbo-transient="true" />

Skip to content

Search/

Sign in<br>Sign upAppearance settings

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

Paul-G2

letter-spirit-2-js

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Latest commit

History<br>29 Commits<br>29 Commits

Folders and files<br>NameNameLast commit message<br>Last commit date<br>dist

dist

src

src

.gitignore

.gitignore

LICENSE

LICENSE

README.md

README.md

sample_results.jpg

sample_results.jpg

screenshot.jpg

screenshot.jpg

View all files

Repository files navigation

letter-spirit-2-js

This is a JavaScript implementation of Letter Spirit 2,<br>a computer model of human high-level perception and creativity, in the realm of letter-design. The model was invented by<br>John Rehling,<br>Gary McGraw, and<br>Douglas Hofstadter.

You can try it out here.

Letter Spirit 2 is described in John Rehling's Ph.D. thesis.,<br>and in the book Fluid Concepts and Creative Analogies.

I got interested in Letter Spirit, and the Hofstadter group's other projects, after reading the Fluid Concepts and Creative Analogies book,<br>but I couldn't find demos that were easy to get up and running. Hence this repo, and my related repos for Copycat<br>and Letter Spirit Examiner.

My implementation is based entirely on Rehling's original Scheme code.<br>The look of the UI is based on screenshots contained in McGraw's thesis, and on James Marshall's Metacat.

A caveat: It's hard to be sure that I've ported the Scheme code correctly (not least because the algorithm is stochastic).<br>My implementation generates sensible-looking results, and I wrote a lot of unit tests for its various parts, but of course it's possible I may have got some things wrong. If you spot any problems, please submit an issue!

Here are some sample outputs produced by the app (with random seed = 123):

About<br>A JavaScript implementation of Letter Spirit 2<br>paul-g2.github.io/letter-spirit-2-js/index.html?seed=123<br>Topics<br>aiartificial-intelligencecognitive-sciencehofstadter<br>Resources<br>Readme<br>MIT license<br>Activity<br>Stars<br>2 stars<br>Watchers<br>1 watching<br>Forks<br>1 fork<br>Report repository

Releases

Packages

Contributors

Languages

You can’t perform that action at this time.

letter spirit implementation hofstadter github paul

Related Articles