Thursday, September 08, 2005

Implementing Things

Ok. Lets get into implementation details.

Things represent all the stuff you stick together as a programmer: modules, scripts, html files, database queries, log files, configuration files, templates, test files etc. To enable The Goo to help you stick these Things together it makes a number of assumptions:
  • all Things have a filename suffix (e.g., "pm" for Perl modules, "pl" for Perl scripts, "sql" for SQL queries etc.)
  • each type of Thing has a global "goo" configuration file (e.g., pm.goo, pl.goo, sql.goo etc)
  • the goo configuration file includes a title, description and a set of locations (e.g., CGI scripts are foung/home/web/cgi-bin/)
  • the goo config file also includes all the actions you can perform on a Thing (e.g., Profile, Clone, Delete, Jump etc.)
Here is the contents of the config file, goo.goo:

title = Goo Configuration
filename = goo.goo
description = Meta details about Goo configuration files
locations = /home/search/goo/things/goo
[M]ake = GooMaker
[E]dit = Editor
[P]rofiler = ConfigProfiler
[D]eleter = FileDeleter
[C]lone = Cloner
E[X]it = Exiter

More implementation details to follow ....

0 comments: