An extensible FARG implementation

I have been meaning to write this post for a while, now. Over the last few years, the idea and urgent discussion regarding a hypothetical library that would allow a new FARG project to be achieved in a few keystrokes has surfaced, repeatedly, and has not led anywhere thus far. The latest outcropping was last week, and this post is an attempt to delineate what I believe needs to be done.

These days, I am working on my dissertation. I thought about what I want to say here, and what part of this I can use in the dissertation. I think I can use some parts of this post there.

The Current Problem: Starting from Scratch

Several FARG projects have been created thus far, and are listed in the following table. (FARG Historians and Lore Masters! Your help in filling and correcting this table will be much appreciated.) Programs that have not been completed are marked with an asterisk.

Program

Author

Language

Year

Domain

Jumbo

Douglas Hofstadter

Scheme?

1983?

Anagrams

Seek-Whence

Marsha Meredith

?

1986

Integer pattern sequences

Numbo

Daniel Defays

?

1986

 

Copycat

Melanie Mitchell

Franz Lisp

1990

Letter analogy puzzles

Tabletop

Bob French

?

1992

 

Letter Spirit

Gary McGraw

Scheme?

1995

Grid fonts

Metacat

Jim Marshall

Chez Scheme

1999

Letter analogy puzzles

Letter Spirit II

John Rehling

Scheme?

2001

Grid fonts

Phaeaco

Harry Foundalis

C++

2006

Bongard Problems

*Seqsee

Abhijit Mahabal

Perl

2008+

Integer pattern sequences

*Musicat

Eric Nichols

C#

2008+

 

*?

Francisco Lara-Dammer

Java

2008+

Geometry

Capyblanca

Alexander Linhares

Delphi?

2007?

Chess

 

Column 3 (“language”) is very diverse. For implementing a complex program, using a powerful language that the lone programmer knows inside out makes sense. Especially if there is no code to reuse, anyway, as has been the case so far. Other reasons that influence language choice (such as availability of people to hire who are skilled in that language) are simply non-existent in a PhD. Most PhD projects are prototypes, proofs of concepts.

Each project has consequently started from scratch (except for the obvious exceptions of Metacat and Letter Spirit II, both of which extended prior projects). Each project takes years to complete, and it is natural to wonder how much effort, if any, could have been saved if it had been possible to reuse some of the code. Michael Roberts, Alexander Linhares, Harry Foundalis, Eric Nichols, and I have again been discussing these issues recently.

My next post will examine (my guess about) what kinds of things may be shared between projects. A subset of what can be shared is the core of FARG architectures, the crux without which the program ceases to be a FARG implementation. I will try to spell out what I think is in the core.

[Edited: In his comment, A. Joseph Hagar pointed out several more projects which were not done here at the CRCC. I have listed these in the table below.]

Program

Author

Language

Year

Domain

Fluid Analogies Engine

Scott Bolland

Java

2005

Potentially General

*
B-Cat

Payel Ghosh, Ralf Juengling, Lanfranco Muzi, Mick Thomure

?

2007+

Bongard Problems

Starcat

Joseph Lewis et al.

?

2004

Potentially General

Advertisements
Explore posts in the same categories: Architecture, Author: Abhijit Mahabal

4 Comments on “An extensible FARG implementation”


  1. I know these were not created in-house, as it were, but there is also the Fluid Analogies Engine – Scott Bolland – Java – 2005+ – Potentially General (http://www.itee.uq.edu.au/~scottb/), Starcat – Joseph Lewis et al. – ? – 2004+ – Potentially General (http://starcat.org/), and *B-Cat – Payel Ghosh, Ralf Juengling, Lanfranco Muzi, Mick Thomure – ? – 2007+ – Bongard Problems (http://web.cecs.pdx.edu/~mm/PerceptionAndAnalogyMaking.html)

  2. amahabal Says:

    Thanks Joseph,
    I will update my entry. I was vaguely aware that somebody had attempted this, but I was certainly unaware that there are so many!
    — Abhijit


  3. Numbo was coded in List and yes, dude, I do have the code. Thank god for Daniel Defays!


  4. I mean, of course, LISP.

    By the way… there are projects by Stan Franklin and also that guy from the Netherlands who did a FARG system concerning auditory scene analysis.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: