New programming language - Extention

View: New views
12 Messages — Rating Filter:   Alert me  

New programming language - Extention

by Lucifer Satan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

>From what I read I understood that Prolog stores sorts of lists and structures and RELATIONS.

What I'm thinking of is of a language in which the relations between things are defined as certain symbols - or might just as well be words, but just for example, 'cuz words sometimes don't grasp the complete meaning, And with this the machine will work it's way through words and sentences, in conversation.

What Prolog gives is not enough, because the computer doesn't understand the meaning. But once we give it to it as GIVEN - This is a relation bla bla bla... you don't have to know anything about it (though you do define relations between relations), it can be used to calculate.

The built in relations in Prolog and any other language are Mathematical, and I think they should be expended, and extended to none-mathematic things.

It should also have an "add new relation" feature, and to have an executable function that can be ran while running.

That's the basics, I hope it answered some of the questions.

mail: sickX6@...

Gili.

Re: New programming language - Extention

by Nicolas Pelletier-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

On Sun, Apr 27, 2008 at 3:57 PM, Lucifer Satan <sickx6@...> wrote:
>
> What Prolog gives is not enough, because the computer doesn't understand the
> meaning. But once we give it to it as GIVEN - This is a relation bla bla
> bla... you don't have to know anything about it (though you do define
> relations between relations), it can be used to calculate.

You might want to search for the terms "semantic web", "onthologies"
or "RDF" with a search engine. No matter what your aim is, you will
need to model how your system represents and reasons about these
"relations" (the more interesting, but more difficult part is in the
bla, bla, bla... ;-) )

Hope this helps,

--
Nicolas

------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: New programming language - Extention

by Jean-Marc Vanel-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Please read to the end.

2008/4/27 Lucifer Satan <sickx6@...>:
> >From what I read I understood that Prolog stores sorts of lists and
> structures and RELATIONS.
>
> What I'm thinking of is of a language in which the relations between things
> are defined as certain symbols - or might just as well be words, but just
> for example, 'cuz words sometimes don't grasp the complete meaning, And with
> this the machine will work it's way through words and sentences, in
> conversation.

Indeed there are (at least) 2 levels:
-1. at a basic level objects belong to classes and have properties (
like in RDF or relational databases )
-2. at a human understandable level there are words

There can be a level 1.5 like OWL. The advantage of Prolog at this
level is that the kind of inference rules you can write is not
limited; OWL (a kind of "description logic") limits the patterns of
inference rules, in order to ensure tractabilty in all cases, to a few
patterns such as class inheritance, transitive properties, etc.

About level 2, there exists several linguistic and ontology resources
to ensure that the meaning of a word is not ambiguous; it also enables
communication between unrelated programs. WordNet is the most famous
linguistic repository. It has a Prolog version.

I like the idea of conversation.

>
> What Prolog gives is not enough, because the computer doesn't understand the
> meaning. But once we give it to it as GIVEN - This is a relation bla bla
> bla... you don't have to know anything about it (though you do define
> relations between relations), it can be used to calculate.

Right . The meaning is just relations with other concepts, all the way
down to some primitive concepts that are just identifiers. And the set
of primitives depends on what kind of inferences you want to make.

>
> The built in relations in Prolog and any other language are Mathematical,
> and I think they should be expended, and extended to none-mathematic things.
>
> It should also have an "add new relation" feature,

You can achieve that by "reiying" relation, that is having a predicate property:
property(ObjectId, PropertyId, Value ).

> and to have an executable
> function that can be ran while running.

??? not clear :-(

You should read the classical AIMA book : Artificial Intelligence: A
Modern Approach (http://aima.cs.berkeley.edu/).

I you want to tackle OWL , download the SWOOP application. It's much
better than the triple20 extension to SWI-Prolog.

--
Jean-Marc Vanel
http://jmvanel.free.fr/

------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Parent Message unknown Re: New programming language - Extention

by Josh Goldstein :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.
> What I'm thinking of is of a language in which the relations between things are defined as certain symbols - or might just as well be words, but just for example, 'cuz words sometimes don't grasp the complete meaning, And with this the machine will work it's way through words and sentences, in conversation.

> What Prolog gives is not enough, because the computer doesn't understand the meaning. But once we give it to it as GIVEN - This is a relation bla bla bla... you don't have to know anything about it (though you do define relations between relations), it can be used to calculate.

> The built in relations in Prolog and any other language are Mathematical, and I think they should be expended, and extended to none-mathematic things.

Can't you already make relations about non-Mathematical things? Like likesToEat(josh, apples); ?

> It should also have an "add new relation" feature, and to have an executable function that can be ran while running.

Doesn't prolog have this?



Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.

Re: New programming language - Extention

by Richard A. O'Keefe :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 27 Apr 2008, at 6:57 pm, Lucifer Satan wrote:
> >From what I read I understood that Prolog stores sorts of lists and  
> structures and RELATIONS.

I presume "structures" means "compound terms".
Prolog is based on a fragment of first order logic.
You can define prediates (relations) that relate data,
but not higher-order predicates (predicates with functions or
predicates as arguments).  There is a sort of "punning" technique
where data can serve as names for (partial applications of)
predicates, but while that is adequate for conventional higher-
order _programming_, it doesn't work the way that higher-order
_logic_ should.  In effect, Prolog data structures are
"labelled trees with holes".

> What I'm thinking of is of a language in which the relations between  
> things are defined as certain symbols - or might just as well be  
> words, but just for example, 'cuz words sometimes don't grasp the  
> complete meaning,

Never in the history of the universe has a WORD grasped any part of the
meaning of anything.

I am taking "symbol" as "element of a discrete finitely presented set".
(Another reading of "symbol" might have been
        "A written character or mark used to represent something;
         a letter, figure, or sign conventionally standing for some
         object, process, etc.  E.g. the figures denoting the planets,
         signs of the zodiac, etc. in astronomy; the letters and other
         characters denoting elements, etc. in chemistry, quantities,
         operations, etc. in mathematics, the faces of a crystal in
         crystallography." -- the Oxford English Dictionary
  but I've chosen a more general reading.)
I can perceive no useful distinction between "symbol" and "word" here;
both are arbitrary signs.  Wasn't it Drew McDermott who pointed out
that calling a procedure UNDERSTAND instead of G437 didn't actually
make the computer understand?

> And with this the machine will work it's way through words and  
> sentences, in conversation.

For some reason, this reminds me of John Andreae's PURR-PUSS.
See http://www.elec.canterbury.ac.nz/purr_puss/

> What Prolog gives is not enough, because the computer doesn't  
> understand the meaning.

You might want to look at
http://en.wikipedia.org/wiki/Physical_symbol_system

A computer is a physical symbol system.
A Prolog program is a description of a pattern of activity of a physical
symbol system.  If it is impossible for a running Prolog program to
understand, then it is impossible for ANY running computer program to
understand.

A number of philosophers have argued, as indeed has Rodney Brooks
in "Elephants don't play chess" (lovely title) that human beings are
*grounded* physical systems; that whatever "intellgence" means for
us it has something to do with having bodies inhabiting a real physical
world.  I can understand deskishness because I can see, touch, tap and
thus hear, smell, even, should I feel adventurous, taste the desk in
front of me.

Addressing a rather different point,
        "Moore famously put the point into dramatic relief with his
         1939 essay Proof of an External World, in which he gave a
         common sense argument against skepticism by raising his right
         hand and saying "here is a hand," and then raising his left
         and saying "and here is another"."
        See http://en.wikipedia.org/wiki/Here_is_a_hand
It's partly because I can say HERE is *my* HAND that I can understand
HERE and HAND.  "Here is a hand" is different from "here is 'hand'".

A symbol system in general has NO fixed meaning.
It is notoriously the case that the symbols and axioms of elementary
arithmetic admit multiple meanings.  It's the _groundedness_ of
reference that gives us hope that what we say means something, and it
is why there is as much translatability between human languages as
there is.  ("ringaringa" is usually translated as "hand", but it
includes the wrist and lower forearm as well.  However, it _does_
mean "a part of the body including palm and fingers", so when you see
"Horoi o ringaringa" in a toilet, reading it as "wash your hands"
won't mislead you too far.  This works because Maori people have hands
just like everybody else and wash them with the same kind of water for
the same reasons.  The important thing is the hands, the water, and
the washing, not "hand", or "water", or "wash".)
"
> But once we give it to it as GIVEN - This is a relation bla bla  
> bla... you don't have to know anything about it (though you do  
> define relations between relations), it can be used to calculate.

If you can "give" a symbol to a computer that doesn't "have to know  
anything
about it", you can give it to a Prolog program (or a Visual BASIC one,  
for
that matter).
>
>
> The built in relations in Prolog and any other language are  
> Mathematical, and I think they should be expended, and extended to  
> none-mathematic things.

Any program for a digital computer is a mathematical structure.
It might not be about numbers; it might be about permutations, or
paintings, or imaginary ants crawling over a musical soundscape.
(See "The Art of Artificial Evolution - A Handbook on Evolutionary
Art and Music", Springer 2008, and especially have fun with the CD.)
Whatever it is about, however, it is _as_ a mathematical structure
that it possesses this aboutness.

Computer-like things that are grounded physical systems embodied in the
real physical world we call robots.  A symbol in a robot's control
software can "mean" MOVE because activating it starts a causal chain
which normally results in the robot physically moving.  ("Mirror
neurons" are really fascinating:  the idea that we understand many
things by, in effect, simulating what it would be like for us to do
them sparks all sorts of ideas.)  It seems to me that if you want some
of the symbols (or relations, or whatever) in a program to have
non-mathematical reference, they have to be grounded in this kind of
way.  (You can simulate a robot, and I suppose we can agree at least
that symbols in a simulated robot *simulate* non-mathematical  
reference.)

>
>
> It should also have an "add new relation" feature, and to have an  
> executable function that can be ran while running.

Prolog lets you add new facts to an existing predicate at run time.
Prolog lets you add new predicates to an existing module at run time.
Prolog lets you add new modules at run time.
Prolog also lets you remove any of these things.
Prolog lets you construct a query as data and then execute it.
(Hmm.  I've just been reading some Postgresql documentation.
  Any modern database system also lets you do these things.)

> That's the basics, I hope it answered some of the questions.

It doesn't answer the question why you have adopted the pseudonym
"light-bearer accuser".  It's rather hard to take seriously.
>

--
Te Reo Ingarihi is a taonga of Te Iwi Pakeha,
ergo we should keep it pure, sans mélange, ruat caelum.






------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: New programming language - Extention

by Gerhard Wolfstieg :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Am Tue, 29 Apr 2008 11:38:50 +1200
schrieb "Richard A. O'Keefe" <ok@...>:
> Never in the history of the universe has a WORD grasped any part of
> the meaning of anything.

I disagree. With its sounding a word can have at least one aspect of
its meaning. For example take the English 'tree' and the German 'Baum':
Both point to the same, 'tree' shows the aspect of the high growing,
'Baum' means the widespread archaic. And therefore there are no two
words with the same meaning.

This point of view has let me trying to implement something as a
structure with a variable (set of) slot(s) and a definition of its type
to have variable possibilities and constraints of linking to other
structures of this kind (even recursively ...). These structures could
be words in contrary to symbols.

Could this be an approach for thinking about new programming languages?

     Grüße,  Gerhard

------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: New programming language - Extention

by Richard A. O'Keefe :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 2 May 2008, at 7:17 am, Gerhard Wolfstieg wrote:

> Am Tue, 29 Apr 2008 11:38:50 +1200
> schrieb "Richard A. O'Keefe" <ok@...>:
>> Never in the history of the universe has a WORD grasped any part of
>> the meaning of anything.
>
> I disagree. With its sounding a word can have at least one aspect of
> its meaning.  For example take the English 'tree' and the German  
> 'Baum':

> Both point to the same, 'tree' shows the aspect of the high growing,
> 'Baum' means the widespread archaic. And therefore there are no two
> words with the same meaning.

Er, how does this relate to my point?
I have no idea what you mean by 'with its sounding':  neither 'tree'
nor 'Baum' is in any way onomatopoeic or iconic.
Checking in the OED etymology, the ancestors and relatives of 'tree'
mean "wood", "log", "timber", and even "spear"; there certainly seems
to be no inherit reference to 'high growing'.
Perhaps unsurprisingly, the Maori word "raakau" also means (according
to Williams, the classic dictionary for Maori) "tree", "wood", "timber",
"stick", "mast", "spar", "weapon".  It looks very much as though people
tend to think about trees in terms of what they can make with them,
rather than their 'aspect of the high growing'.
For that matter, in constructions like "switching tree", there is not
only no height and no growth, but not even any timber; only the idea
of branching is present (via metaphor).

Let's take another word:  "poke".  In the dictionary I am looking at
right now, it means "appear as a spirit, haunt" (amongst other things).
Just how does the word "poke" know which of these meanings it is
supposed to grasp?

I never said anything about whether there are two words that have the
same meaning or not.  What I said was that the ***WORDS*** don't grasp
anything.  Words have neither brains nor souls nor hands; what could a
word grasp anything with?

I thought I was making the obvious point that words as such have no
mental capacities and therefore cannot grasp any meanings; the things
that grasp meanings are *PEOPLE*, arguably linguistic communities, and
perhaps including some dogs and the now sadly deceased African Grey
parrot, Alex.
>

> This point of view has let me trying to implement something as a
> structure with a variable (set of) slot(s) and a definition of its  
> type
> to have variable possibilities and constraints of linking to other
> structures of this kind (even recursively ...). These structures could
> be words in contrary to symbols.

How?  You are talking about mathematical constructions (some kind of
graph, perhaps).  They are symbols.  They have no intrinsic meaning.
They only bear some meaning for another person if *you* tell the other
person how you want them interpreted.  Certainly "these structures"
cannot "BE words", although you could use them to stand for or point
to words.

Our culture is saturated in "mechanical" words; written words on  
surfaces,
words "spoken" by automatic telephone systems, words mindlessly  
reiterated
until you wish a meteor would fall on the advertising agency responsible
for this meretricious drivel.  We get used to the idea that words mean
things all by themselves.  But they don't.  "Pie" doesn't mean "a food
encased in pastry" OR "a bird, the cry of which was regarded as an omen
of war" until some *person* has used.  If we go out through a door  
marked
"exit" and fall fifty stories, the paint is innocent and the door is
innocent, it was the painter who painted it and the person who ordered  
the
painter to do so who are culpable.  Many of the "mechanical" words I
complained of about (and do read "The Future Does Not Compute") are due
to people who are *hiding*.  I do appreciate the ads for Dilmah tea
because the man who appears in them really is the founder and head of  
the
company speaking in propria persona, and the words we hear are really
intended by someone who is taking responsibility for them.  But those  
are
a noble exception.
>

> Could this be an approach for thinking about new programming  
> languages?

That's for you to find out.  Me, my doubt on the subject is exceeding  
great.


------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: New programming language - Extention

by Tom Breton (Tehom) :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Guys, the "New programming language - Extention" thread has drifted pretty
far away from the topic of SWI Prolog.  May I suggest continuing it in
email?

Tom



------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Parent Message unknown Re: New programming language - Extention

by Gerhard Wolfstieg :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

     Hallo,

It was a discontinued work that I started more than ten years ago and
had to stop, because other things got more importand - like now: excuse
me, but in the last days ...

Am Thu, 1 May 2008 17:09:41 -0700 (PDT)
schrieb Josh Goldstein <oopjosh@...>:
> Sounds like a graph.  You might need to label the edges that connect
> the nodes.  But wouldn't that be the same as using prolog
> declarations like eats(horse, apple) drink(horse, water), where the
> atoms are the nodes and the function things are the edges?

Yes, it looked/looks like a graph - in an other meaning, more similar
to a Petri net, with triggers, possibility of infinite running, a
syntax which controls the connection of elements, and - important and
what I have forgot mention in the last mail - each
element/structure/word/? is part of a data flow with the ability of
changing data.
  It was written in C and for general purpose even though the first
test use was for composing music.

You can't exchange words like symbols. Words have some fixed built in.
The distinction between symbols and words and different kind of words
(action words, data words, "aspect of" words ...) - words in English,
German or Music
- maybe can lead to a new approach of thinking about designing new
programming languages ...


Something else:  'tree' and 'Baum' are highly onomatopoeic - as 'love',
'l'amour' and 'Liebe' and their differences. And this is a part of their
meaning. Perhaps it's a higher order onomatopoeic which determines the
(at least special) meaning of each word.
  Ok, words don't grasp anything (I read too quick). I know that words
are more than Symbols and have a non subjective determination. The
creation of meaning - is a question of belief, You can't a priori say:
a word or musical interval carries no meaning.

     Grüße,  Gerhard

------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: New programming language - Extention

by Lucifer Satan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

This thing has become a monster thread, I did not get to read all that.
 
If anyone is interested ON WORKING ON THIS PROJECT with me, e-mail NOT THROUGH THIS THREAD, to sickX6@... , with thw subject "Join AI project".
 
Thanx



Linux RPM problem

by Levin, Gary Marc :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I tried to install the current RPM (5.6.54) on Linux.  It fails,
reporting
        error: failed dependencies
                /usr/bin/../pl.sh is required by pl-5.6.54-319.i586

/usr/bin/../pl.sh would be /usr/pl.sh, an unlikely filename.
        is there perhaps a configuration variable I need to set to
        let the rpm know where pl.sh would reside?

        or is there another package I need to install first?

Thanks.

Gary Levin
RRC 1N345
Telcordia Technologies
 

------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...

Re: Linux RPM problem

by Jan Wielemaker :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wednesday 07 May 2008 20:56:00 Levin, Gary Marc wrote:

> I tried to install the current RPM (5.6.54) on Linux.  It fails,
> reporting
> error: failed dependencies
> /usr/bin/../pl.sh is required by pl-5.6.54-319.i586
>
> /usr/bin/../pl.sh would be /usr/pl.sh, an unlikely filename.
> is there perhaps a configuration variable I need to set to
> let the rpm know where pl.sh would reside?
>
> or is there another package I need to install first?

No.  pl.sh is a script used during the build.  It should not be noted
as a dependency.  For now, try adding --nodeps (check the name).  I'll
try to find out why this gets in there and remove it next release.

        --- Jan


------------
For further info, please visit http://www.swi-prolog.org/

To unsubscribe, send a plaintext mail with "unsubscribe prolog <e-mail>"
in its body to majordomo@...