# KEHOME/doc/iconnews.txt
# Mar/1/2003 revised for current syntax, web address
# Mar/1/2003 revised for open source license


The Icon Newsletter, No. 52, April 1, 1997

Knowledge Explorer
==================
Knowledge Explorer (KE) is an interactive tool for organizing
knowledge.  It can be viewed as a super-intelligent filing system,
which will restructure itself on command.  The foundation of KE
is my knowledge representation language (KR), which is based on
the unique theory of knowledge developed by Ayn Rand ("Introduction
to Objectivist Epistemology", Expanded Second Edition, Meridian,
1990).  KR is similar to English, with keywords which have specialized
meanings.  Sentences which KE does not understand are simply recorded
as "newstatement"s.

KE uses lists, sets, and associative tables to represent knowledge,
which is why I chose to implement it using Icon (Ralph E. Griswold
and Madge T. Griswold, "The Icon Programming Language", Third Edition,
Peer-to-Peer Commmunications, 1996).  The pattern matching capabilities
of Icon were used to implement a front end parser for KR.  During the
development of the initial version of KE, from October 1996 to March
1997, I made significant changes every day, and did major rewrites
about once a month.  This rapid evolution would not have been possible
without using Icon.

Here is a small sampling of statements in KR:

animal isc man,cat,dog;			# hierarchy
Dick   isa person;			# hierarchy
Dick   is  Richard H. McCullough;	# identity/alias
Dick   has sex=male;			# attribute
Dick   do  go to store done;		# action/event (unit of change) 
man    isa animal with rational;	# definition
phone-list is relation with		# define & load relation
  format=[phone:1, person:2],
  meaning={$2 has phone=$1;};
do read from phone-list.rel done;

at view=vname {				# define new knowledge unit
  ...
};

ke      has  ?;				# display all attributes
Dick    do   ?  done;			# display all action/events
apple   ?    orange;			# determine relation of concepts
apple   isa* ?;				# walk up hierarchy
animal  isc* ?;				# display subhierarchy
do check od definition done;		# display undefined concepts
set hfocus=[event,newword,newstatement];# concepts to write
set hformat=ho;				# write format

I have made Knowledge Explorer available on the Internet as
an open source product using GNU GPL license.
Binary versions are available for Windows and UNIX.
It can be downloaded from
	http://rhm.cdepot.net/
For details, contact:
	Dick McCullough
	mailto:rhm@cdepot.net
	http://rhm.cdepot.net/
