Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Tcl as an AI language

72 views
Skip to first unread message

Cris A. Fugate

unread,
Oct 9, 1998, 3:00:00 AM10/9/98
to
Has anybody else considered Tcl as an AI language? I think it is good
AI language and I have
already developed some list and frames extensions for it. Does anybody
else have an opinion
on this? I am considering writting a paper on this topic so any input
would be appreciated.

Cris A. Fugate
cafu...@worldnet.att.net


Georgem6

unread,
Oct 9, 1998, 3:00:00 AM10/9/98
to

Chris,

At work a couple of the developers used Tcl to create a gui front end to and to
generate non-spacial behaviours for a aircraft simulator. (The way they wrote
it the front end was also the generator.) They thought that it was the
greatest. They compared the same program in C++ as taking, at a minimum, three
times as long to write without nearly the same flexilbity.

E-mail me if you would like to contact the person who did the most to make this
work.

I think that a paper would be a great idea.

gmills ----- gmi...@acm.org

David Barnard

unread,
Oct 11, 1998, 3:00:00 AM10/11/98
to
Cris A. Fugate wrote:

I know that some will revolt at the notion, but personally, I'd
consider Perl to be a more natural choice. It already does so many things
that Tcl dosn't do. For instance, the arbitrary data structures that Perl
allows so easily could be put to great use in an AI system. Some will
reject Perl because it's "a scripting language" but it's very object
oriented and extremely flexible and powerfull.

Comments?

David


Randolph M. Jones

unread,
Oct 13, 1998, 3:00:00 AM10/13/98
to

Cris A. Fugate wrote:

> Has anybody else considered Tcl as an AI language? I think it is good
> AI language and I have
> already developed some list and frames extensions for it. Does anybody
> else have an opinion
> on this? I am considering writting a paper on this topic so any input
> would be appreciated.
>
> Cris A. Fugate
> cafu...@worldnet.att.net

I believe that Tcl's string- and list-processing functions make it
appropriate
for a number of AI applications. This semester, I am teaching my "Intro to
AI" students Tcl, rather than Lisp or Prolog. We have so far done
Eliza-like programs in Tcl, and the current project is to do interactive
fiction using Tcl. I have also developed a system in Tcl/Tk for students
to explore a variety of search methods. The final project will be to write

teams for a simple soccer-like game using either Tcl or C.

Randy Jones


Cris A. Fugate

unread,
Oct 18, 1998, 3:00:00 AM10/18/98
to
David Barnard wrote:

> Cris A. Fugate wrote:
>
> > Has anybody else considered Tcl as an AI language? I think it is good
> > AI language and I have
> > already developed some list and frames extensions for it. Does anybody
> > else have an opinion
> > on this? I am considering writting a paper on this topic so any input
> > would be appreciated.
> >
> > Cris A. Fugate
> > cafu...@worldnet.att.net
>

> I know that some will revolt at the notion, but personally, I'd
> consider Perl to be a more natural choice. It already does so many things
> that Tcl dosn't do. For instance, the arbitrary data structures that Perl
> allows so easily could be put to great use in an AI system. Some will
> reject Perl because it's "a scripting language" but it's very object
> oriented and extremely flexible and powerfull.
>
> Comments?
>
> David

I disagree. I don't think Perl has what it takes to be used in
Artificial Intelligence.
Not at least according to the requirements of AI languages in "Artificial
Intelligence
and the Design of Expert Systems" by Luger and Stubblefield. However, Tcl
does
meet these requirements.
Sure there are lots of things that Perl can do that Tcl can't straight out
of the box,
but Tcl is just as flexable, and just as potentially powerful because of its
extensibility.
On the other hand, Perl is famous for being unreadable and confusing.

Cris A. Fugate
cafu...@worldnet.att.net


Cris A. Fugate

unread,
Oct 18, 1998, 3:00:00 AM10/18/98
to
Randolph M. Jones wrote:

> Cris A. Fugate wrote:
>
> > Has anybody else considered Tcl as an AI language? I think it is good
> > AI language and I have
> > already developed some list and frames extensions for it. Does anybody
> > else have an opinion
> > on this? I am considering writting a paper on this topic so any input
> > would be appreciated.
> >
> > Cris A. Fugate
> > cafu...@worldnet.att.net
>

> I believe that Tcl's string- and list-processing functions make it
> appropriate
> for a number of AI applications. This semester, I am teaching my "Intro to
> AI" students Tcl, rather than Lisp or Prolog. We have so far done
> Eliza-like programs in Tcl, and the current project is to do interactive
> fiction using Tcl. I have also developed a system in Tcl/Tk for students
> to explore a variety of search methods. The final project will be to write
>
> teams for a simple soccer-like game using either Tcl or C.
>
> Randy Jones

Tcl has other things which make it suitable for AI applications besides
strings and lists,
but Im happy to see it being taught as an AI language. Don't know if I would
exclude
introductions to LISP and PROLOG though. These languages are still used by
most
people in the field.

Cris A. Fugate
cafu...@worldnet.att.net


Philip John

unread,
Oct 23, 1998, 3:00:00 AM10/23/98
to
Cris A. Fugate wrote:

>
> David Barnard wrote:
>
> > Cris A. Fugate wrote:
> >
> > > Has anybody else considered Tcl as an AI language? I think it is good
> > > AI language and I have
> > > already developed some list and frames extensions for it. Does anybody
> > > else have an opinion
> > > on this? I am considering writting a paper on this topic so any input
> > > would be appreciated.
> > >
> > > Cris A. Fugate
> > > cafu...@worldnet.att.net
> >
> > I know that some will revolt at the notion, but personally, I'd
> > consider Perl to be a more natural choice. It already does so many things
> > that Tcl dosn't do. For instance, the arbitrary data structures that Perl
> > allows so easily could be put to great use in an AI system. Some will
> > reject Perl because it's "a scripting language" but it's very object
> > oriented and extremely flexible and powerfull.
> >
> > Comments?
> >
> > David
>
> I disagree. I don't think Perl has what it takes to be used in
> Artificial Intelligence.
> Not at least according to the requirements of AI languages in "Artificial
> Intelligence
> and the Design of Expert Systems" by Luger and Stubblefield. However, Tcl
> does
> meet these requirements.
> Sure there are lots of things that Perl can do that Tcl can't straight out
> of the box,
> but Tcl is just as flexable, and just as potentially powerful because of its
> extensibility.
> On the other hand, Perl is famous for being unreadable and confusing.
>
> Cris A. Fugate
> cafu...@worldnet.att.net


Have any of you considered using Pop-11 or the Poplog system...it's
great for a number of reasons...

a) It's been developed by University researchers...and so reflects most
of the current thinking...

b) It is fully programmable, i.e. if it doesn't do something YOU want it
to do...you can extend it by introducing your own commands

and...

c)It's also got Lisp and Perl built in...


Well...that's my two cents...


Philip John

ug8...@cs.bham.ac.uk

Randolph M. Jones

unread,
Oct 23, 1998, 3:00:00 AM10/23/98
to

Cris A. Fugate wrote:

> Tcl has other things which make it suitable for AI applications besides
> strings and lists,
> but Im happy to see it being taught as an AI language. Don't know if I would
> exclude
> introductions to LISP and PROLOG though. These languages are still used by
> most
> people in the field.
>

They'll learn Lisp and Prolog in the programming languages class, and giventhe
idiosyncrasies of those languages, I'd much rather they learn them there than
in an AI class where I'd rather focus on AI concepts. That's not to say, of
course,
that Tcl isn't full of idiosyncrasies, but it least these students have all seen
C-like syntax before.

As for wide-spread use, it seems clear that many people have found ``standard''
programming languages suitable for their AI needs (both research and
applications). For my own systems, I occasionally still find Prolog the best
choice,
but I am always able to find preferable alternatives to Lisp. I used Lisp
extensivley as a grad student, but I just don't find it worth the trouble any
more.

Randy Jones


spider

unread,
Oct 26, 1998, 3:00:00 AM10/26/98
to
There is nothing called as AI Language. Every single one of special purpose
so called AI languages have failed pretty bad so far, lisp, prolog etc.
Because,
they all lack of flexibility. I always doubt using a very high level
interpreter for
performance crucial jobs like AI. TCL is written in C; you can use its
source code which is free to emulate the functionalities of it that you like
in
C/C++. This will give you the performance, an almost unlimited flexibility
and the robustness.

Cris A. Fugate wrote in message <362A3A2D...@worldnet.att.net>...


>David Barnard wrote:
>
>> Cris A. Fugate wrote:
>>
>> > Has anybody else considered Tcl as an AI language? I think it is good
>> > AI language and I have
>> > already developed some list and frames extensions for it. Does anybody

List and frames? are these what you mean with AI language?

>> > else have an opinion
>> > on this? I am considering writting a paper on this topic so any input
>> > would be appreciated.

To me, dont waste your time. There is this Lisp; use Lisp instead.

>> >
>> > Cris A. Fugate
>> > cafu...@worldnet.att.net
>>
>> I know that some will revolt at the notion, but personally, I'd
>> consider Perl to be a more natural choice. It already does so many
things


Perl for AI? unbelivable! how is Quick Basic for AI purposes then, or C
shell,
or Awk?

>> that Tcl dosn't do. For instance, the arbitrary data structures that
Perl
>> allows so easily could be put to great use in an AI system. Some will
>> reject Perl because it's "a scripting language" but it's very object
>> oriented and extremely flexible and powerfull.
>>
>> Comments?
>>
>> David
>
> I disagree. I don't think Perl has what it takes to be used in
>Artificial Intelligence.
>Not at least according to the requirements of AI languages in "Artificial
>Intelligence
>and the Design of Expert Systems" by Luger and Stubblefield. However, Tcl
>does
>meet these requirements.

Why are only interpreters considered as so called AI language choice
around here?

> Sure there are lots of things that Perl can do that Tcl can't straight
out
>of the box,
>but Tcl is just as flexable, and just as potentially powerful because of
its
>extensibility.
>On the other hand, Perl is famous for being unreadable and confusing.
>
>Cris A. Fugate
>cafu...@worldnet.att.net
>


As far as I see, AI research has been getting extremely fossilized.


Cris A. Fugate

unread,
Oct 31, 1998, 3:00:00 AM10/31/98
to
spider wrote:

> There is nothing called as AI Language. Every single one of special purpose
> so called AI languages have failed pretty bad so far, lisp, prolog etc.
>

Failed? I think they have been very successful at many things they have
beenused for.

> Because,
> they all lack of flexibility. I always doubt using a very high level
> interpreter for
> performance crucial jobs like AI. TCL is written in C; you can use its
> source code which is free to emulate the functionalities of it that you like
> in
> C/C++. This will give you the performance, an almost unlimited flexibility
> and the robustness.
>

Ok, lets all go back to using assemblers then. I don't think so!! The purpose
ofAI languages is exploration, not efficiency. I would never use C/C++ for
exploration, but I might for real time applications.

> Cris A. Fugate wrote in message <362A3A2D...@worldnet.att.net>...
> >David Barnard wrote:
> >
> >> Cris A. Fugate wrote:
> >>
> >> > Has anybody else considered Tcl as an AI language? I think it is good
> >> > AI language and I have
> >> > already developed some list and frames extensions for it. Does anybody
>
> List and frames? are these what you mean with AI language?
>

No, lists and frames are tools which an AI language can use.

> >> > else have an opinion
> >> > on this? I am considering writting a paper on this topic so any input
> >> > would be appreciated.
>
> To me, dont waste your time. There is this Lisp; use Lisp instead.
>

To me, Tcl can be a better choice for AI than Lisp, and there are many Tcl
extensionsyou can choose to use which Lisp has no equivalent to.

> >> >
> >> > Cris A. Fugate
> >> > cafu...@worldnet.att.net
> >>
> >> I know that some will revolt at the notion, but personally, I'd
> >> consider Perl to be a more natural choice. It already does so many
> things
>
> Perl for AI? unbelivable! how is Quick Basic for AI purposes then, or C
> shell,
> or Awk?
>
> >> that Tcl dosn't do. For instance, the arbitrary data structures that
> Perl
> >> allows so easily could be put to great use in an AI system. Some will
> >> reject Perl because it's "a scripting language" but it's very object
> >> oriented and extremely flexible and powerfull.
> >>
> >> Comments?
> >>
> >> David
> >
> > I disagree. I don't think Perl has what it takes to be used in
> >Artificial Intelligence.
> >Not at least according to the requirements of AI languages in "Artificial
> >Intelligence
> >and the Design of Expert Systems" by Luger and Stubblefield. However, Tcl
> >does
> >meet these requirements.
>
> Why are only interpreters considered as so called AI language choice
> around here?
>

Because being able to be interpreted is important to exploratory programming.

> > Sure there are lots of things that Perl can do that Tcl can't straight
> out
> >of the box,
> >but Tcl is just as flexable, and just as potentially powerful because of
> its
> >extensibility.
> >On the other hand, Perl is famous for being unreadable and confusing.
> >
> >Cris A. Fugate
> >cafu...@worldnet.att.net
> >
>
> As far as I see, AI research has been getting extremely fossilized.

That is why you fail, young Skywalker..

Cris A. Fugate
fug...@worldnet.att.net


spider

unread,
Oct 31, 1998, 3:00:00 AM10/31/98
to

Cris A. Fugate wrote in message <363AB44E...@worldnet.att.net>...

>spider wrote:
>
>> There is nothing called as AI Language. Every single one of special
purpose
>> so called AI languages have failed pretty bad so far, lisp, prolog etc.
>>
>
>Failed? I think they have been very successful at many things they have
>beenused for.

In what areas were they succesful? what is your understanding of a success
in Articial Intelligence?

>
>> Because,
>> they all lack of flexibility. I always doubt using a very high level
>> interpreter for
>> performance crucial jobs like AI. TCL is written in C; you can use its
>> source code which is free to emulate the functionalities of it that you
like
>> in
>> C/C++. This will give you the performance, an almost unlimited
flexibility
>> and the robustness.
>>
>
>Ok, lets all go back to using assemblers then. I don't think so!! The
purpose
>ofAI languages is exploration, not efficiency. I would never use C/C++ for
>exploration, but I might for real time applications.


Exploration!! why cant you use C/C++ for exploration. And how do you use
C/C++ for real time applications. I was just curious Do you know what you
are
talking about?

>
>> Cris A. Fugate wrote in message <362A3A2D...@worldnet.att.net>...
>> >David Barnard wrote:
>> >
>> >> Cris A. Fugate wrote:
>> >>
>> >> > Has anybody else considered Tcl as an AI language? I think it is
good
>> >> > AI language and I have
>> >> > already developed some list and frames extensions for it. Does
anybody
>>
>> List and frames? are these what you mean with AI language?
>>
>
>No, lists and frames are tools which an AI language can use.

>
>> >> > else have an opinion
>> >> > on this? I am considering writting a paper on this topic so any
input
>> >> > would be appreciated.
>>
>> To me, dont waste your time. There is this Lisp; use Lisp instead.
>>
>
>To me, Tcl can be a better choice for AI than Lisp, and there are many Tcl
>extensionsyou can choose to use which Lisp has no equivalent to.


Could you gimme some examples?


I am under the impression that you have never used C/C++.

>
>> > Sure there are lots of things that Perl can do that Tcl can't
straight
>> out
>> >of the box,
>> >but Tcl is just as flexable, and just as potentially powerful because of
>> its
>> >extensibility.
>> >On the other hand, Perl is famous for being unreadable and confusing.
>> >
>> >Cris A. Fugate
>> >cafu...@worldnet.att.net
>> >
>>
>> As far as I see, AI research has been getting extremely fossilized.
>
>That is why you fail, young Skywalker..


Using Tcl will make you sky high on AI research, wont it? ;) You are talking
too big for a person who thinks that accompolishing exploration is still
the AI we are looking for. I believe thats why symbolics failed pretty
badly.

good luck.

>
>Cris A. Fugate
>fug...@worldnet.att.net
>


Cris A. Fugate

unread,
Nov 1, 1998, 3:00:00 AM11/1/98
to
spider wrote:

> Cris A. Fugate wrote in message <363AB44E...@worldnet.att.net>...
> >spider wrote:
> >
> >> There is nothing called as AI Language. Every single one of special
> purpose
> >> so called AI languages have failed pretty bad so far, lisp, prolog etc.
> >>
> >
> >Failed? I think they have been very successful at many things they have
> >beenused for.
>
> In what areas were they succesful? what is your understanding of a success
> in Articial Intelligence?
>

I am not thinking about specific areas, but the use of more general
methodologieswhich I do not wish to enumerate. However, I do think AI has been
successful
in areas such as expert systems and neural networks. I also do not wish to
enumerate the commercial uses of these.

> >
> >> Because,
> >> they all lack of flexibility. I always doubt using a very high level
> >> interpreter for
> >> performance crucial jobs like AI. TCL is written in C; you can use its
> >> source code which is free to emulate the functionalities of it that you
> like
> >> in
> >> C/C++. This will give you the performance, an almost unlimited
> flexibility
> >> and the robustness.
> >>
> >
> >Ok, lets all go back to using assemblers then. I don't think so!! The
> purpose
> >ofAI languages is exploration, not efficiency. I would never use C/C++ for
> >exploration, but I might for real time applications.
>
> Exploration!! why cant you use C/C++ for exploration. And how do you use
> C/C++ for real time applications. I was just curious Do you know what you
> are
> talking about?
>

You could use C/C++ for exploration, but it would be a big pain. You need to
dosome reading about what makes AI languages different from compiled languages
such as C/C++. If you don't know how to use C/C++ for real time applications
that suggests to me that you don't know much about C/C++ either. Given this,
I ask the same question to you, do you know what you are talking about?

> >
> >> Cris A. Fugate wrote in message <362A3A2D...@worldnet.att.net>...
> >> >David Barnard wrote:
> >> >
> >> >> Cris A. Fugate wrote:
> >> >>
> >> >> > Has anybody else considered Tcl as an AI language? I think it is
> good
> >> >> > AI language and I have
> >> >> > already developed some list and frames extensions for it. Does
> anybody
> >>
> >> List and frames? are these what you mean with AI language?
> >>
> >
> >No, lists and frames are tools which an AI language can use.
>
> >
> >> >> > else have an opinion
> >> >> > on this? I am considering writting a paper on this topic so any
> input
> >> >> > would be appreciated.
> >>
> >> To me, dont waste your time. There is this Lisp; use Lisp instead.
> >>
> >
> >To me, Tcl can be a better choice for AI than Lisp, and there are many Tcl
> >extensionsyou can choose to use which Lisp has no equivalent to.
>
> Could you gimme some examples?
>

Sure, but why don't you go look at some examples on the some of the Tcl web
sites:www.tclconsortium.org, www.scriptics.com, www.neosoft.com.

I too am under the impression that you have never used C,C++, Tcl or any
otherinterpreted language for that matter. As for me, I have used many
compiled
languages including C, C++, and too many others to go into here; also some
threaded languages, and several interpreted languages including LISP, Prolog,
Tcl, and also many others which I won't go into.

> >
> >> > Sure there are lots of things that Perl can do that Tcl can't
> straight
> >> out
> >> >of the box,
> >> >but Tcl is just as flexable, and just as potentially powerful because of
> >> its
> >> >extensibility.
> >> >On the other hand, Perl is famous for being unreadable and confusing.
> >> >
> >> >Cris A. Fugate
> >> >cafu...@worldnet.att.net
> >> >
> >>
> >> As far as I see, AI research has been getting extremely fossilized.
> >
> >That is why you fail, young Skywalker..
>
> Using Tcl will make you sky high on AI research, wont it? ;) You are talking
> too big for a person who thinks that accompolishing exploration is still
> the AI we are looking for. I believe thats why symbolics failed pretty
> badly.
>

Only because I like working with Tcl, and I would like to see Tcl succeed in
AIwere I think it would be very useful. Exploration is only part of the
picture of what
makes a particular language good for AI. Maybe the current AI languages have
failed in your eyes which means that they must evolve more. However, they are
currently being used successfully in commercial applications, and I expect that

will not change in the future.

Cris A. Fugate
fug...@worldnet.att.net


Rainer Joswig

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
In article <71ff17$qrg$1...@holly.prod.itd.earthlink.net>, "spider"
<bor...@earthlink.net> wrote:

> >> Why are only interpreters considered as so called AI language choice
> >> around here?
> >>
> >
> >Because being able to be interpreted is important to exploratory
> programming.
>
>
> I am under the impression that you have never used C/C++.

Hmm, I think you don't ever have used an advanced development environment
for Lisp, Smalltalk or Prolog.

By the way, all these languages have compilers. Lisp had already
compilers when most other languages even don't existed
(Lisp is 40 this year).

--
http://www.lavielle.com/~joswig

Rainer Joswig

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
In article <363CB8A8...@worldnet.att.net>, "Cris A. Fugate"
<cafu...@worldnet.att.net> wrote:

> I too am under the impression that you have never used C,C++, Tcl or any
> otherinterpreted language for that matter. As for me, I have used many
> compiled
> languages including C, C++, and too many others to go into here; also some
> threaded languages, and several interpreted languages including LISP, Prolog,
> Tcl, and also many others which I won't go into.

There are no "interpreted languages". Just implementations
that have an interpreter. Many Lisps have compilers.
Some don't have an interpreter. But most of these
compilers are incremental - you can develop with
these almost like with an interpreter.
Prolog is compiled, too. Same for Smalltalk.
I'd expect optimizing Lisp compilers to be generate code
several magnitudes faster than TCL at a lot of problems.

--
http://www.lavielle.com/~joswig

Mark Carroll

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
In article <joswig-0211...@pbg3.lavielle.com>,
Rainer Joswig <jos...@lavielle.com> wrote:
(snip)

>There are no "interpreted languages". Just implementations
>that have an interpreter. Many Lisps have compilers.
>Some don't have an interpreter. But most of these
>compilers are incremental - you can develop with
>these almost like with an interpreter.
>Prolog is compiled, too. Same for Smalltalk.
>I'd expect optimizing Lisp compilers to be generate code
>several magnitudes faster than TCL at a lot of problems.

Not that I disagree with the above, but it's worth mentioning that
some languages end up having to embed an interpreter or compiler in
the executable (whether via a shared library or whatever) - e.g. Lisp
and Perl - for when the execution of dynamically-generated bits of
code is necessary. It tends to be these languages that were designed
with interpretative execution (not to actually exclude compilation) in
mind. OTOH, languages like C and Modula-3 that were pretty much always
compiled, and it's hard to find an interpreter for them.

If any follow-ups go to comp.lang.misc, I'll read them there....

-- Mark

Mark Harrison

unread,
Nov 3, 1998, 3:00:00 AM11/3/98
to
spider wrote in message <71ff17$qrg$1...@holly.prod.itd.earthlink.net>...

>In what areas were they succesful? what is your understanding of a success
>in Articial Intelligence?


Success (defined for AI techniques): Becoming so useful and commonplace
that people don't recognize the technique as AI.

Example: "That's not AI! That's just coding!"

--
ma...@usai.asiainfo.com
Mark Harrison at AsiaInfo Computer Networks,
Beijing, China

spider

unread,
Nov 4, 1998, 3:00:00 AM11/4/98
to

Cris A. Fugate wrote in message <363CB8A8...@worldnet.att.net>...

>spider wrote:
>
>> Cris A. Fugate wrote in message <363AB44E...@worldnet.att.net>...
>> >spider wrote:
>> >
>> >> There is nothing called as AI Language. Every single one of special
>> purpose
>> >> so called AI languages have failed pretty bad so far, lisp, prolog
etc.
>> >>
>> >
>> >Failed? I think they have been very successful at many things they have
>> >beenused for.
>>
>> In what areas were they succesful? what is your understanding of a
success
>> in Articial Intelligence?
>>
>
>I am not thinking about specific areas, but the use of more general
>methodologieswhich I do not wish to enumerate. However, I do think AI has
been
>successful
>in areas such as expert systems and neural networks. I also do not wish to
>enumerate the commercial uses of these.
>

May be we have different interpretation of Aritificial intelligence.
Certainly,
I do not wish to call expert systems, pattern recognizers, explorers and
century's biggest joke neural networks as AI. To me, AI must be a Human
like Intelligence by all means.

>> >
>> >> Because,
>> >> they all lack of flexibility. I always doubt using a very high level
>> >> interpreter for
>> >> performance crucial jobs like AI. TCL is written in C; you can use its
>> >> source code which is free to emulate the functionalities of it that
you
>> like
>> >> in
>> >> C/C++. This will give you the performance, an almost unlimited
>> flexibility
>> >> and the robustness.
>> >>
>> >
>> >Ok, lets all go back to using assemblers then. I don't think so!! The
>> purpose
>> >ofAI languages is exploration, not efficiency. I would never use C/C++
for
>> >exploration, but I might for real time applications.
>>
>> Exploration!! why cant you use C/C++ for exploration. And how do you use
>> C/C++ for real time applications. I was just curious Do you know what you
>> are
>> talking about?
>>
>
>You could use C/C++ for exploration, but it would be a big pain. You need
to
>dosome reading about what makes AI languages different from compiled
languages


Why is that? cant you create relational lists and frames on C/C++? do you
need
to read a lot to accompolish these? of course you need to design the whole
thing which cant be avoided doing.

>such as C/C++. If you don't know how to use C/C++ for real time
applications


Perhaps, I do know all those but I decline to discuss it any further here.

>that suggests to me that you don't know much about C/C++ either. Given
this,
>I ask the same question to you, do you know what you are talking about?


Yes I do and you?

>
>> >
>> >> Cris A. Fugate wrote in message
<362A3A2D...@worldnet.att.net>...
>> >> >David Barnard wrote:
>> >> >
>> >> >> Cris A. Fugate wrote:
>> >> >>
>> >> >> > Has anybody else considered Tcl as an AI language? I think it is
>> good
>> >> >> > AI language and I have
>> >> >> > already developed some list and frames extensions for it. Does
>> anybody
>> >>
>> >> List and frames? are these what you mean with AI language?
>> >>
>> >
>> >No, lists and frames are tools which an AI language can use.
>>
>> >
>> >> >> > else have an opinion
>> >> >> > on this? I am considering writting a paper on this topic so any
>> input
>> >> >> > would be appreciated.
>> >>
>> >> To me, dont waste your time. There is this Lisp; use Lisp instead.
>> >>
>> >
>> >To me, Tcl can be a better choice for AI than Lisp, and there are many
Tcl
>> >extensionsyou can choose to use which Lisp has no equivalent to.
>>
>> Could you gimme some examples?
>>
>
>Sure, but why don't you go look at some examples on the some of the Tcl web
>sites:www.tclconsortium.org, www.scriptics.com, www.neosoft.com.


Thanks I skip that. I do not wish to write programs with a language which
was
indeed designed to be used with C if you would like to check the history of
the
Tcl. Using Tcl/Tk together to create cross patform rapid prototyping
purposes
is the only thing in my mind if I consider using Tcl. Uh, of course I will
use the
Tcl/Tk C libraries to do that.

I am truely sorry for my statement which was too hursh in this matter. I
didnt
mean disrespect or abuse of your knowledge.

>> >
>> >> > Sure there are lots of things that Perl can do that Tcl can't
>> straight
>> >> out
>> >> >of the box,
>> >> >but Tcl is just as flexable, and just as potentially powerful because
of
>> >> its
>> >> >extensibility.
>> >> >On the other hand, Perl is famous for being unreadable and confusing.
>> >> >
>> >> >Cris A. Fugate
>> >> >cafu...@worldnet.att.net
>> >> >
>> >>
>> >> As far as I see, AI research has been getting extremely fossilized.
>> >
>> >That is why you fail, young Skywalker..
>>
>> Using Tcl will make you sky high on AI research, wont it? ;) You are
talking
>> too big for a person who thinks that accompolishing exploration is still
>> the AI we are looking for. I believe thats why symbolics failed pretty
>> badly.
>>
>
>Only because I like working with Tcl, and I would like to see Tcl succeed
in
>AIwere I think it would be very useful. Exploration is only part of the
>picture of what
>makes a particular language good for AI. Maybe the current AI languages
have


what are the other parts? certainly, a True learning is quite impossible
with
lisp.

>failed in your eyes which means that they must evolve more. However, they
are
>currently being used successfully in commercial applications, and I expect
that

Again, our understanding of Artificial Intelligence is on totally different
tracks.
I think a little more futuristic and enthisuastic for a true Intelligence
like we
human beings have.

>
>will not change in the future.
>

Yes it will remain same. But, what I believe in will never be met
using the tools you have been advancing.

For a more advanced future,

Spider,

note: Again, I am sorry for my misdirection.

>Cris A. Fugate
>fug...@worldnet.att.net
>
>
>


spider

unread,
Nov 4, 1998, 3:00:00 AM11/4/98
to

Rainer Joswig wrote in message ...

>In article <71ff17$qrg$1...@holly.prod.itd.earthlink.net>, "spider"
><bor...@earthlink.net> wrote:
>
>> >> Why are only interpreters considered as so called AI language choice
>> >> around here?
>> >>
>> >
>> >Because being able to be interpreted is important to exploratory
>> programming.
>>
>>
>> I am under the impression that you have never used C/C++.
>
>Hmm, I think you don't ever have used an advanced development environment
>for Lisp, Smalltalk or Prolog.

I think not. Uh Smalltalk? why dont you list all the other languages too in
this
context?

>
>By the way, all these languages have compilers. Lisp had already
>compilers when most other languages even don't existed
>(Lisp is 40 this year).

Those compilers put the entire interpreter into the executable. Isnt it
ironic to see the naiveness of your example inwhich you try to present
yourself as a true believer of advanced development enviroments?

>
>--
>http://www.lavielle.com/~joswig


spider

unread,
Nov 4, 1998, 3:00:00 AM11/4/98
to

Rainer Joswig wrote in message ...
>In article <363CB8A8...@worldnet.att.net>, "Cris A. Fugate"
><cafu...@worldnet.att.net> wrote:
>
>> I too am under the impression that you have never used C,C++, Tcl or any
>> otherinterpreted language for that matter. As for me, I have used many
>> compiled
>> languages including C, C++, and too many others to go into here; also
some
>> threaded languages, and several interpreted languages including LISP,
Prolog,
>> Tcl, and also many others which I won't go into.
>
>There are no "interpreted languages". Just implementations
>that have an interpreter. Many Lisps have compilers.

Whats that?

>Some don't have an interpreter. But most of these

Really? how do they run the lisp code?

>compilers are incremental - you can develop with
>these almost like with an interpreter.
>Prolog is compiled, too. Same for Smalltalk.
>I'd expect optimizing Lisp compilers to be generate code
>several magnitudes faster than TCL at a lot of problems.

Ok then, good luck.

>
>--
>http://www.lavielle.com/~joswig


Rainer Joswig

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to
In article <71r6jf$3jd$1...@holly.prod.itd.earthlink.net>, "spider"
<bor...@earthlink.net> wrote:

> >By the way, all these languages have compilers. Lisp had already
> >compilers when most other languages even don't existed
> >(Lisp is 40 this year).
>
> Those compilers put the entire interpreter into the executable.

Really? Seems like you don't know anything about this topic.
Several Lisp systems don't even have an interpreter.

You can compile Lisp to native machine code just as you compile
C or C++ to native code.


(proclaim '(optimize (speed 3)))
(defun fak (n)
(if (zerop n)
1
(* n (fak (1- n)))))

(disassemble #'fak)

L0
(TWNEI NARGS 4)
(MFLR LOC-PC)
(STWU SP -16 SP)
(STW FN 4 SP)
(STW LOC-PC 8 SP)
(STW VSP 12 SP)
(MR FN TEMP2)
(LWZ IMM0 -117 RNIL)
(TWLLT SP IMM0)
(:REGSAVE SAVE0 0)
(VPUSH SAVE0)
(MR SAVE0 ARG_Z)
(LWZ NARGS 331 RNIL)
(TWGTI NARGS 0)
(MR ARG_Y SAVE0)
(LI ARG_Z '0)
(BLA .SPBUILTIN-EQ)
(CMPW ARG_Z RNIL)
(BEQ L104)
(LI ARG_Z '1)
(LWZ SAVE0 0 VSP)
(LWZ LOC-PC 8 SP)
(MTLR LOC-PC)
(LWZ VSP 12 SP)
(LWZ FN 4 SP)
(LA SP 16 SP)
(BLR)
L104
(MR ARG_Y SAVE0)
(LI ARG_Z '1)
(BLA .SPBUILTIN-MINUS)
(SET-NARGS 1)
(MR TEMP2 FN)
(BL L0)
(MR ARG_Y SAVE0)
(LWZ SAVE0 0 VSP)
(LWZ LOC-PC 8 SP)
(MTLR LOC-PC)
(LWZ VSP 12 SP)
(LWZ FN 4 SP)
(LA SP 16 SP)
(BA .SPBUILTIN-TIMES)

Is this PowerPC machine code or what? Where is the interpreter?
Huh?

--
http://www.lavielle.com/~joswig

Rainer Joswig

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to
In article <71r6po$3vt$1...@holly.prod.itd.earthlink.net>, "spider"
<bor...@earthlink.net> wrote:

> Rainer Joswig wrote in message ...
> >In article <363CB8A8...@worldnet.att.net>, "Cris A. Fugate"
> ><cafu...@worldnet.att.net> wrote:
> >

> >> I too am under the impression that you have never used C,C++, Tcl or any
> >> otherinterpreted language for that matter. As for me, I have used many
> >> compiled
> >> languages including C, C++, and too many others to go into here; also
> some
> >> threaded languages, and several interpreted languages including LISP,
> Prolog,
> >> Tcl, and also many others which I won't go into.
> >

> >There are no "interpreted languages". Just implementations
> >that have an interpreter. Many Lisps have compilers.
>
> Whats that?

What?

> >Some don't have an interpreter. But most of these
>
> Really? how do they run the lisp code?

They run the machine code.

> Ok then, good luck.

Thanks.

--
http://www.lavielle.com/~joswig

spider

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to

Rainer Joswig wrote in message ...
>In article <71r6jf$3jd$1...@holly.prod.itd.earthlink.net>, "spider"
><bor...@earthlink.net> wrote:
>
>> >By the way, all these languages have compilers. Lisp had already
>> >compilers when most other languages even don't existed
>> >(Lisp is 40 this year).
>>
>> Those compilers put the entire interpreter into the executable.
>
>Really? Seems like you don't know anything about this topic.
>Several Lisp systems don't even have an interpreter.
>

Lisp systems? you mean those built by symbolics? do you
still use those? show me a lisp compiler on unix which
produces native machine code. Okey, if you are really into
Lisp stuff, I need a favor. Is there a multithreaded version
of Lisp? and also Is there a Lisp C/C++ library on unix which
must be thread safe? thanks for advance.

Rainer Joswig

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to
In article <71rjro$1qh$1...@birch.prod.itd.earthlink.net>, "spider"
<bor...@earthlink.net> wrote:

> Rainer Joswig wrote in message ...
> >In article <71r6jf$3jd$1...@holly.prod.itd.earthlink.net>, "spider"
> ><bor...@earthlink.net> wrote:
> >
> >> >By the way, all these languages have compilers. Lisp had already
> >> >compilers when most other languages even don't existed
> >> >(Lisp is 40 this year).
> >>
> >> Those compilers put the entire interpreter into the executable.
> >
> >Really? Seems like you don't know anything about this topic.
> >Several Lisp systems don't even have an interpreter.
> >
>
> Lisp systems? you mean those built by symbolics?

Symbolics Lisp systems usually have both: compiler and interpreter.
Their latest system is an emulated Lisp machine running
on DEC Alpha.

> do you still use those?

Yes.

> show me a lisp compiler on unix which
> produces native machine code.

CMU CL (freely available, has a Linux version).
Allegro Common Lisp from Franz Inc (version for Linux downloadable).
LispWorks from Harlequin.
Liquid Common Lisp from Harlequin.

All these are available for more than one Unix platform.

> Okey, if you are really into
> Lisp stuff, I need a favor. Is there a multithreaded version
> of Lisp?

See the above list.

--
http://www.lavielle.com/~joswig

spider

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to

Mark Harrison wrote in message <71lnkv$m16$1...@news-1.news.gte.net>...

>spider wrote in message <71ff17$qrg$1...@holly.prod.itd.earthlink.net>...
>>In what areas were they succesful? what is your understanding of a success
>>in Articial Intelligence?
>
>
>Success (defined for AI techniques): Becoming so useful and commonplace
>that people don't recognize the technique as AI.
>

Sorry but I failed to catch you point. Could you assert it a little further?

Cris A. Fugate

unread,
Nov 6, 1998, 3:00:00 AM11/6/98
to
spider wrote:

I agree with you. We know too little about human intelligence and it seems
thatwe have not made much progress in that direction.

I think there is a misunderstanding here. I should have been more clear. What
Iam talking about is interactive interpretation like BASIC, Forth, LISP, Tcl,
etc.
You cannot be directly interactive with compiled languages when they are
executing. With these languages I mentioned you can manipulate code directly
without the hassle of recompiling. Realy, I think this discussion is not
moving
in the direction I intended. This concept should be a given.

> >such as C/C++. If you don't know how to use C/C++ for real time
> applications
>
> Perhaps, I do know all those but I decline to discuss it any further here.
>
> >that suggests to me that you don't know much about C/C++ either. Given
> this,
> >I ask the same question to you, do you know what you are talking about?
>
> Yes I do and you?
>
>

Perhaps we both know what we are talking about, but we are talking past each
other.

Apology accepted. I am sorry that this discussion went the wrong direction.

You are correct. I am sorry if I gave you that impression. Our
understandingof AI and AI languages is different.

> >failed in your eyes which means that they must evolve more. However, they
> are
> >currently being used successfully in commercial applications, and I expect
> that
>
> Again, our understanding of Artificial Intelligence is on totally different
> tracks.
> I think a little more futuristic and enthisuastic for a true Intelligence
> like we
> human beings have.
>

I see. We are thinking differentIy. I am not propagating a type of intelligence
like humans have.I am talking about a limited kind of intelligence which has
already been implemented. It may not seem like human intelligence, but it has
made our lives better I think.

> >
> >will not change in the future.
> >
>
> Yes it will remain same. But, what I believe in will never be met
> using the tools you have been advancing.
>
> For a more advanced future,
>
> Spider,
>
> note: Again, I am sorry for my misdirection.
>

I agree that the tools we have cannot possibly create human intelligence.
However,they are quite powerful languages and very useful for the kind of AI I
have mentioned.
I too am sorry. I should have been more clear in what I was talking about.

Cris A. Fugate
fug...@worldnet.att.net

sha...@magibox.net

unread,
Nov 7, 1998, 3:00:00 AM11/7/98
to
In article <joswig-0211...@pbg3.lavielle.com>,

jos...@lavielle.com (Rainer Joswig) wrote:
> In article <363CB8A8...@worldnet.att.net>, "Cris A. Fugate"
> <cafu...@worldnet.att.net> wrote:
>
> > I too am under the impression that you have never used C,C++, Tcl or any
> > otherinterpreted language for that matter. As for me, I have used many
> > compiled
> > languages including C, C++, and too many others to go into here; also some
> > threaded languages, and several interpreted languages including LISP,
Prolog,
> > Tcl, and also many others which I won't go into.
>
> There are no "interpreted languages". Just implementations
> that have an interpreter. Many Lisps have compilers.
> Some don't have an interpreter. But most of these
> compilers are incremental - you can develop with
> these almost like with an interpreter.
> Prolog is compiled, too. Same for Smalltalk.
> I'd expect optimizing Lisp compilers to be generate code
> several magnitudes faster than TCL at a lot of problems.
>
> --
> http://www.lavielle.com/~joswig
>


I am not an AI expert, but I have had a class in LISP/Prolog and it seems to
me that the concept of "exploration" is not suited to compiled languages. As
I remember these AI languages allowed you to insert new rules, ie equivalent
to new code in a language like C, while that program is running. I have
never seen this done before in C/C++ although I wouldn't completely rule it
out. C/C++ does not seem like it would lend itself well to
changing/adding/removing code on the fly like that. I don't know if any
particular AI language environment compiles the code upon entry or change of
rules, but I would expect that it does not. I do know that you can compile
the code once you are finished, but he is talking about exploration here (ie
tinkering) with the code here.

-Dan Davis

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own

Rainer Joswig

unread,
Nov 7, 1998, 3:00:00 AM11/7/98
to
In article <721tpe$dfq$1...@nnrp1.dejanews.com>, sha...@magibox.net wrote:

> I am not an AI expert, but I have had a class in LISP/Prolog and it seems to
> me that the concept of "exploration" is not suited to compiled languages.

Why not? You just need an incremental compiler. An incremental
compiler can compile code snippets of any size.
Whether it is a single anonymous function, a larger form,
a large function definition, a file or a bunch of files.

Several fully compiled Lisp systems offer essentially the same
features as interpreters. They are as interactive as
interpreter based systems. Even the standard function
EVAL may then be just a call of the on the fly compiled
code.


Let's look at the ANSI Common Lisp standard:


Common Lisp has a function called COMPILE:

COMPILE name &optional definition
[Function]
compiles the function name, using the definition supplied by definition .
If definition is supplied, it should be a lambda-expression or a function to
be compiled; if not, the symbol-function of the symbol is extracted and
compiled. The resulting compiled code becomes the function definition of
name, and name is returned. name may be a symbol or a list whose car
is setf.


See also:
http://www.harlequin.com/education/books/HyperSpec/Body/fun_compile.html

Then there is the function COMPILE-FILE:

COMPILE-FILE filename &key :output-file :verbose :print
:load :features :save-local-symbols :save-doc-strings
:save-definitions
[Function]
produces a compiled version of the file filename. Compiled files (also
called fasl files) can be loaded much more quickly than source code files.
The default values of :verbose and :print are the values of
*compile-verbose* and *compile-print*. The default value of
:save-local-symbols is the value of *fasl-save-local-symbols*;
of :save-doc-strings, the value of *fasl-save-doc-strings*;; and
of save-definitions, the value of *fasl-save-definitions*. The
default value of :output-file is the input file with the file type
*.fasl-pathname*.

See:
http://www.harlequin.com/education/books/HyperSpec/Body/fun_compile-file.html


Then there is LOAD:

LOAD filename &key :verbose :print :if-does-not-exist
:foreign-files :system-libraries :unreferenced-lib-names
[Function]
loads the file named by filename into the Macintosh Common Lisp environment.
This is equivalent to opening an editor buffer to the file and evaluating
all the
forms in the buffer (which is equivalent to typing the forms into the
Listener).

See:
http://www.harlequin.com/education/books/HyperSpec/Body/fun_load.html

So this means the ANSI Common Lisp standard has following
functions:

- COMPILE : compiles code at runtime inside the running Lisp
- COMPILE-FILE : compiles source code into a binary file
- LOAD : loads either source code (which maybe
automatically compiled while loading)
or compiled files

Common Lisp has a lot additional support to generate fast code:

- type declarations
- various optimization levels
- stack allocation
- inline declaration
- compiler macros
- macros
- ...

This means that several Lisp systems at appropriate optimization
levels with declarations are generating code that can
be a C level or sometimes above (no runtime checks,
types fixed at runtime, routines inlined, recursion
replaced by jumps, ...).


Various Common Lisp systems have provided a lot of extensions to this -
like block compilation, type inference, tree shaking, inline C,
inline assembler, optimizer declarations, microcode generation,
lots of GC tuning, tail call removal, ...

--
http://www.lavielle.com/~joswig

Hoon Yoon

unread,
Nov 9, 1998, 3:00:00 AM11/9/98
to
Try www.python.org. A script language that has interpreter and probably
best C integration. It's a great OO language. I have seen some AI work
done already like Holmes and wraping of clips as well.

Following sites are relevant:

ftp://quasar.ipa.nw.ru/pub/avv/clips/clips-wrapper.tgz
check http://www.strout.net/python/ai/

Hoon,

0 new messages