Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is like the third or fourth time I've seen Clojure and Lisp mentioned. I know I'm not answering your question (I'm the least able to do so probably on HN) but as a Java developer, I'd like to know why Lisp-like languages make them a "natural choice" for AI/machine learning?


I think this is so often mentioned, because of AI/Lisp's common history. I am in natural language processing (which is sometimes seen as a subbranch of AI) and I have rarely seen anyone who used Lisp (mostly Perl, Python, Java, Prolog, and C++). Also, most machine learning software is written in C, C++, Java, or Matlab, with a strong and growing Python presence (via NumPy/SciPy).


Homoiconicity (code and data having the same representation) is a commonly cited reason, which is key to the macro system in Lisp. Also commonly cited is the symbol type, which is also very useful in various AI contexts:

http://www.cs.st-andrews.ac.uk/research/aisc

This is not to say that you cannot do equivalent things in Java, but it is a lot easier in Lisp.


Theres a lot of history with lisp and a.i. Take for example the famous koza book for genetic programming in lisp. I think its to do with in lisp, the program is data which can be changed




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: