Home / code / include
Name Modified Size InfoDownloads / Week
Parent folder
stringutils.h 2010-03-19 35.8 kB
poc.h 2010-03-19 84.2 kB
Totals: 2 Items   120.1 kB 0
This project is incomplete.  I cannot finish it.  So I am hoping someone or many someones will.  The idea is to develop a language I like to call the Computer-Human Interface Language (CHIL).  The language is based on the construct of: It has a X, or It doen't have an X.  So the language has a list of commands which amout to verbs:

definitition commands
   has
   not have
   is just before
   is just after
   has caps
   has no caps
   has length

positional commands
    crlf between
    commas between
    tabs between
    spaces between

further explaination of these is in file poc.h starting at line 636

The definition commands help ID words in a document.  By a document, I mean a human readable document like from a memo to a book.  The positional commands help to ID positions of words identified in relation to each other.  The idea is that you can then find word constructs in a document.  Like an postal address or a sentence.

poc.h is the main file to develop.  pocex.cpp is how poc.h gets executed as an example.  stringutils.h is a custom string library that poc.h depends on.  Why a custom string library?  Well if this project is successful, then it could require as much processing and memory resources you can give it.  The faster it can ingest documents the better for possible applications.

In poc.h I created a class called arrayutil (line 78).  What arrayutil does is hold positions of words in a string poc.h is analyzing.  The idea is to id everything by reference first and then parse things out at the end when it goes to output.

This project is made in gnu c++.  That's pretty straight forward.

What else does pocex.cpp do?  Well I was making it to read a textfile that held the CHIL script.  pocex.cpp would process it and execute it and use it on a document and then output it in a comma delimited file that represented the words categorized.  Examples of these files are found in testing folder.

Applications:
I origionally geared this project to find addresses anywhere in a document.  For that I had to id every word I needed, wheather it was a name, state, or zip code.  Actually I started with the zip code, in previous attempts, and then by position id the rest of the address.  That seemed pretty straight forward.  But the magic of this is that you don't need a tag positioned for the software to get its bearings on the document.  Concievably this project could id parts of a senentce wheather it is a noun, verb, subject, object, even clauses and conjuntions.  To see the idea how, check the .jpg files in the theory folder.

My idea was to develop the poc.h and use it as an 'ear' for the computer.  It would upload the categorized words into a database that would define words, sentences, paragraphs, chapters, document, and even conversations.  And by means of relationships in such a database, the computer could possibly have a conversation with a human like Dave did with HAL in 2001 Space Odyssey.

If you decide to use the ideas and or the code here (feel free by the way), be aware it will take a long time to develop.  The reason is not because of the code, but because of the advanced mental concepts you have to manipulate.  

Eric Holm (holmec)


Source: ReadMe, updated 2010-03-19