[self-interest] programming and knowledge representation

Dobes Vandermeer dobes at dobesland.com
Tue Jan 23 00:44:44 UTC 2001

Thilo Schwidurski wrote:
> Dear members,
> the group lately adressed unification of languages (vs. "Babel
> effect") and metaprogramming and other philosophical concepts. So I
> felt that it might be a good place for a discussion of some thoughts
> about programming and more general about knowledge representation.
> Please forgive in the case that I even use whole phrases that were
> already written here (or elsewhere) without quoting properly - in the
> end nothing I have to say is possibly really new - maybe/hopefully
> except of the overall picture. But I can say that I definitly got
> inspired and encouraged by the Self-, the Merlin- (Jecels not Suns),
> the Tunes project and of course of all of what I read from you that
> are devoted to thinking about programming in this group (and a couple
> of others).
> A first helpful step to deal with the "Babel effect"-problem could be
> changing the view on what programming is. I see Programming (perhaps a
> bit more general as usual) as gaining and writing down knowledge. You
> could associate "gaining knowledge" with "designing/architecturing
> programs".
> I don't see so much use any more in the partitioning of knowledge in
> data and programs/algorithms. An example: every program code that
> contains constants contains "plain" data. Every database that contains
> a kind of rules (I am thinking of values of string-fields that contain
> code) contains programs.

This much of your message I found to agree quite strongly with my own
view of programming in the '00's.  Largely as software engineers we are
charged with finding and encoding knowledge/techniques into programs and
data.  The representation of the data, and implementation details are
not core to the idea, obviously.  I think computing has reached the
point where people are able to finally step back from implementation
details/syntax and design future languages and environments around the
concept of knowledge encoding rather than "program writing".  You can
see evidence of this if you re-write from scratch a program you have
already written; you'll notice it goes much faster becuase you already
have all the knowledge.

I think the day of language advocacy is going to pass soon, and in the
future tools will usually be built using a combination of languages.


More information about the Self-interest mailing list