fixing some docs.
[feisty_meow.git] / readme.txt
1
2 This is the "feisty meow® concerns" codebase top folder.
3
4 ####
5
6 Feisty Meow Concerns Ltd. is a small software shop that concentrates on
7 building high quality, portable, open source projects in a variety of
8 languages (primarily bash, perl, python, C++, and Java).  Here are some
9 highlights of our main products:
10
11   Bookmark Processing Tools - can take a mozilla bookmark file or arbitrary
12      web page and extract all the links out of it, building a csv database of
13      web links.  Using that database, a variety of output formats are
14      provided, including one that outputs a mozilla bookmark file again.
15      The most useful feature is probably the marks checker that operates on
16      our csv format and that locates all unreachable links in the file and
17      separates them out.
18
19   CROMP protocol - supports transmission of objects across the network and
20      provides a platform independent method for RPC and other types of
21      communication.
22
23   Octopus design pattern - the underpinning of the CROMP protocol.  An octopus
24      has an arbitrary number of tentacles (no, not just eight) which are each
25      responsible for consuming a different type of object (or datum).
26
27   Fast Templates and Portable Abstractions - the class libraries of Feisty Meow
28      provide numerous different data structures and programming language
29      abstractions (like threads and state machines).  There are also some
30      fairly ancient templates (in use since late 80s) which in many cases
31      perform faster than their STL analogues.
32
33   CLAM System - Feisty Meow is the home site of the CLAM makefile system.  The
34      CLAM system is a flexible and extensible method for building C++ and
35      C# files using makefiles.
36
37 ####
38
39 Historical note:
40 Feisty Meow® Concerns codebase comprises some but probably not all of several projects that
41 have come before.  These include the Twain.COM library scripts, the Yeti / YetiCode library
42 scripts, the HOOPLE 1 and HOOPLE 2 C++ Codebases, the Fred Huffhines open source LSL scripts,
43 the CLAM build system, and a variety of other efforts.
44
45 ####
46
47 Directories and files of interest here...
48
49 scripts/
50     Stores the script files that we use a lot.  These are usually written in interpreted
51     languages, such as bash and perl.  These were the core of the YetiCode scripts library.
52
53 nucleus/
54     Source for the basic modules of the Feisty Meow® codebase.  This includes generic
55     data structures, useful utilities, and the like.  This hierarchy, plus octopi and graphiq,
56     formed the major parts of hoople1 and hoople2.
57
58 huffware/
59     The library of LSL scripts for osgrid and Second Life written by the avatar named Fred
60     Huffhines.  Fred Huffhines is a regular contributor and a well-loved member of our
61     development team.  He also happens to be a fictional sock-puppet for adventuring around
62     the grids, but a lot of code has been written in his name.  We are going to release the
63     full corpus of the Huffhines work over time.
64
65 octopi/
66     Octopus design pattern and CROMP protocol reference implementations.  Assorted applications
67     based on these.
68
69 database/
70     Some files considered critical to the operations of Feisty Meow Concerns Ltd.  This includes
71     the database of fortunes used by the Nechung Oracle Program.
72
73 doc/
74     Assorted documentation files for Feisty Meow and a code-scanning documentation generator
75     based on doxygen.
76
77 examples/
78     Some files that show how to get work done with Feisty Meow or that show how to do certain
79     tasks in different scripting / programming languages.
80
81 kona/
82     Our burgeoning Java libraries.  Not much to see here yet, but there is some code piling
83     up for these that we will try to release soon.
84
85 osgi/
86     Some example bundles for Java OSGi.  These may eventually fill out with real material,
87     but currently they are just tracking the investigation we did into creating bundles and
88     running using them.
89
90 production/
91     Machinery for getting releases out the door, including the generated files such as binaries
92     and build system tools.
93
94 graphiq/
95     GUI tools and components, somewhat busted or just absent right now.
96
97 webby/
98     Source code specifically for web programming and building sites.  Mainly a few javascript
99     files we keep around.
100
101 ####
102
103 Notable Prerequisites for Using the Feisty Meow® codebase:
104
105   Software required to compile under Linux:
106     Gnu C++
107     A few free source libraries (see "building.txt" for more information).
108
109   Software required to compiler under MS-windows:
110     The free Microsoft compiler should build the codebase but it is untested.
111     The full version of MS Visual Studio 2010 (version 10) is supported.
112       --but this has fallen into disrepair.
113     Gnu C++ should compile the codebase but it is also untested recently.
114
115 ####
116
117 More information is available at the official site http://feistymeow.org
118
119 ####
120