6 ms·
Peter tech-reviewed the second edition of my Java AI book and made the comment that Java was half as good as Common Lisp for AI and that was probably good enoug
by mark_l_watson 7y ago
Peter tech-reviewed the second edition of my Java AI book and made the comment that Java was half as good as Common Lisp for AI and that was probably good enough (we had both written Common Lisp books). He then went to Google and I had lunch with him; I was surprised that he was using Python.
I like his poem in the article!
A little off topic, but I retired (that is a bit of a joke) and at the age of 69, this year I decided that for maximum programming enjoyment I would only use Lisp languages (linking in Python and TensorFlow on occasion). I am approaching 40 years using Common Lisp and using the language is so much fun. I bought a license for LispWorks and using it for developing a semantic web app.
- thanksforfish 7y agoYou may also enjoy: https://github.com/hylang/hy https://github.com/hylang/hy
- mark_l_watson 7y agoI wrote a short book on Hy last year. A very cool language and just about perfect for using TensorFlow (or PyTorch) in a Lisp language. I am working on a second edition, adding examples converted from my recent work using Common Lisp.
- thanksforfish 7y agoOh cool. I'll link the book for anyone interested: https://leanpub.com/hy-lisp-python https://leanpub.com/hy-lisp-python
- theboywho 7y agoOut of curiosity, what are your thoughts on Clojure ? Also have you heard of Janet* ? what are your thoughts on such an approach ? * https://janet-lang.org https://janet-lang.org
- mark_l_watson 7y agoFor a few years, most of my consulting gigs used Clojure and I donated financial support in the early days. Great community around Clojure. That said, I like Common Lisp and Scheme better. I had not heard of Janet, thanks for the link.
- PythagoRascal 7y agoIf I may ask, what references would you recommend to someone interested in something like Lisp, but who has never touched a functional language before?
- pcr910303 7y agoNot OP, but Lisp isn’t really a functional language — it’s a usual language that also has some functional ideas inside. Mutation is common, don’t think Lisp will be a language like Haskell. For resources, I would recommend Practical Common Lisp[0] and PAIP[1]. For some modern development practices, the Common Lisp Cookbook[2] is great. [0]: http://www.gigamonkeys.com/book/ http://www.gigamonkeys.com/book/ [1]: https://github.com/norvig/paip-lisp https://github.com/norvig/paip-lisp [2]: http://lispcookbook.github.io/cl-cookbook/ http://lispcookbook.github.io/cl-cookbook/
- PythagoRascal 7y ago> Lisp isn't really a functional language I guess I have even more to learn then :). Thank you for the links.
- deleted 7y ago[deleted]
- 7thaccount 7y agoCommon Lisp can be used as a functional language, or imperative, or extremely advanced OO (see CLOS). There are lots of different Lisp's though. Clojure is the most popular one that runs on the JVM and idiomatic Clojure is generally pretty functional although it calls out to lots of Java which is OO.
- DonHopkins 7y agoLisp DEFs the FUN in FUNCTIONAL.
- munificent 7y ago> Lisp isn’t really a functional language — it’s a usual language that also has some functional ideas inside. The idea that "functional language" means "purity" is something that was retconned onto functional programming in the 90s decades after Lisp had defined functional programming to mean programming in terms of expressions that produce values. I like the ML/Miranda/Haskell lineage of languages a lot, but it really bugs me when people in that camp lay claim to some notion of being a "better" functional language than the older Lisp family. (Lispers, while smug about many other things, are generally less smug about how "pure" their languages' approach to functional programming is.) This is like arguing that Lagavulin isn't "really" whiskey because real whiskeys are made in the US from corn mash.
- w3mmpp 7y agoIf I may ask, what are the benefits of building this app in LispWorks instead of any other implementation (sbcl or else)?
- 7thaccount 7y agoI've never used LispWorks, but I think they have their own GUI, support, built-in logic programming (Prolog) for starters. They also have IDE like tools that are probably ready to go outside the box. Emacs with Slime isn't for everyone (I find it to be a big initial hurdle). Although I'm sure this guy is an Uber emacs expert. Perhaps we can summon u/lispm for an answer here. I think he possibly works for LispWorks and is usually one of the lisp users on HN & Reddit that can answer questions pretty quick.
- w3mmpp 7y agoHaving worked for a long time with emacs and slime, I'd have the opposite fear, to have to develop anything in lisp without them, like this is the case for LispWorks.
- kgwgk 7y ago> like this is the case for LispWorks. I'm not sure I understand what you meant there, but you can use LispWorks with Emacs/Slime.
- w3mmpp 7y agoOh then it's interesting because I thought it required to use their IDE. With Emacs/Slime, is it as integrated as with sbcl for example?
- kgwgk 7y agoNo, you may still want to use the IDE to access functionality that is not available through slime. But you have the choice. According to the slime documentation: "Most features work uniformly across implementations, but some are prone to variation. These include the precision of placing compiler-note annotations, XREF support, and fancy debugger commands (like 'restart frame')."
- slifin 7y agoWe have good interop into python libraries via libpython-clj in Clojure too, this was relatively recent for us https://nextjournal.com/kommen/gigasquids-libpython-clj-examples https://nextjournal.com/kommen/gigasquids-libpython-clj-exam...