Re: Are Tcl and Tk "inseparable"?



Surgeon wrote:

My area of interest is artificial intelligence. I tried C++, Java, Prolog and Lisp. You know C++ and Java so no need to mention them again. Prolog was a total culture shock. Lisp was good but I got tired with thos parantheses and prefix notion.

AIs my area too. Prolog and Lisp are both widely used, and good languages. Prolog is a culture shock, but one which is well worth going through.


If you don't like prefix notation, then Tcl probably isn't for you as it too is prefix. Less parentheses, though, and a few bits of sugar over Lisp.

Things I tend to look for in languages for AI work are that they be multi-paradigm (i.e. allowing you to code in functional, OO, rule-based etc ways) and that they provide some means to extend the language with new syntactic constructs, e.g. via macros or higher-order functions or some other means (Tcl's basic procs are very flexible). Generally these are features I look for in a language for *any* work.

One day, a Ruby user told me that "try Ruby a weekend and make your
decision". I did this half-heartedly. But when I saw Ruby I said
"That's it!".

Glad you've found a language you like. Ruby is quite a nice language. I like the notation for blocks/lambdas (as in Smalltalk).


Other languages you might like to look at:

Mercury (http://www.cs.mu.oz.au/research/mercury/): Basically a much updated Prolog.

Oz (http://www.mozart-oz.org/): A new language with lots of interesting features. It is a distant descendant of Prolog in that it uses assign-once logic variables, and can do back-tracking search etc. Based on constraint programming, and with cool ideas on concurrency etc. (The book "Concepts, Techniques, and Models of Computer Programming" by the Oz people is a great book.

Haskell (http://www.haskell.org/): Probably has the most language research buzz around it. A pure (no side-effects) non-strict functional language. This is another culture shock worth going through. Encourages equational reasoning.

If you like Haskell and Oz, then you might also be interested in Alice ML (http://www.ps.uni-sb.de/alice/) which is a strict functional language (based on Standard ML, another major language family) but with several of the features from Oz added.

-- Neil
.



Relevant Pages

  • Re: Lisp/AI, Carnegie Mellon University
    ... I tend to feel the same way about prolog, but people who are very fluent ... Firstly, Lisp is a functional, not ... Yes: I often hear it said that Lisp is a functional language: somehow ... I agree that Common Lisp is a multi-paradigm language, as is Pop11, ...
    (comp.lang.lisp)
  • Re: Lisp/AI, Carnegie Mellon University
    ... why is LISP so highly regarded in the AI ... > Lisp is a superbly designed language, ... >> Prolog might be better. ... Do your users want the best web-email gateway? ...
    (comp.lang.lisp)
  • Re: Does natural language skill translate to programming skill?
    ... was written entirely in Perl. ... If Spamassassin does language processing, then Google (and any other search ... reasoning with it, I would use Prolog. ... in Prolog or Lisp that have served a useful purpose beyond a) absorbing ...
    (sci.lang)
  • Recommended Sources?
    ... Completely and utterly new to Lisp, but it (or Prolog) has been recommended ... a language) on prolog or lisp. ... Recommendations for learning not-in-classroom ...
    (comp.lang.lisp)
  • Re: Mainstreaming Prolog a Pragmatic Approach?
    ... experience is that Prolog is an incredibly useful language for virtually all ... often than not end up using Prolog. ... I think you're right when you question whether logic programming really ...
    (comp.lang.prolog)