4 ms·
Hi eudox, I would love to use CL for my projects - I've read (most of) Norvig's and Graham's books, written small programs etc. I really like most of the langu
by bainsfather 12y ago
Hi eudox, I would love to use CL for my projects - I've read (most of) Norvig's and Graham's books, written small programs etc. I really like most of the language, especially the 'break into debugger on error'.
But, when I came to write CL for a project that needed gui, web scraping, using APIs etc (i.e. I wanted to connect it to the outside world) I was stumped. Unlike in e.g. python, there was no nice gui library that I could just use. Now maybe people will reply telling me that something exists, but compared to python, the difference in ecosystem is massive. (possibly some commercial CL environment has this, but I am unwilling to pay for something that is closed).
I really want to use CL for more than just toy programs, but I don't/can't.
So, when you are asking yourself "Is it worth it? Whose lives will it change?" - the answer is mine, but only if you think you are able to fix this.
Good luck.
- crazypyro 12y agoI've had good luck using Haskell for similar things that you are describing. Hackage has a good variety of packages that do similar things to beautifulsoup, numpy, pandas, etc. Generally, I've found them to be less built up, but they still provide a decent level of abstraction. Cabal hell is real though.
- codygman 12y agoRegarding CL with some quick googling (searched "common lisp html parser" and "common lisp http client") I found: Html Parser: http://www.cliki.net/cl-html-parse http://www.cliki.net/cl-html-parse Http client: http://weitz.de/drakma/ http://weitz.de/drakma/ I'm not sure why you are/were stumped? I could search for qt bindings for you, but I'm sure they exist and are pretty mature.
- bainsfather 12y agoThanks for that. Maybe I will try again some time. I'm not saying it is impossible, rather that it is hard work compared to e.g. python. I recall looking through a few promising google results and finding e.g. that the library is no longer maintained, has bits missing etc. With python, when I use e.g. beautiful soup, it just works - I lose almost no time getting setup. When doing a project that needs many external libraries, that makes a big difference. e.g. the first item on http://www.cliki.net/GUI http://www.cliki.net/GUI has its last news item from 2007, and the mailing list gives 'not found'. But there is a new(er) github page with the comment "I cleaned up the library just in case I needed GUI in Lisp, but it turned out that I did not. Hence, the primary extent of my testing is running test-gtk:gtk-demo application. Bug reports and/or patches are welcome." Since the parent was talking about ecosystems etc, I thought my experiences were worth mentioning - "Python novice uses python to get stuff done" but "CL novice gets lost in old/unmaintained libraries, gives up and sticks with c++ & python". I mean no disrespect to the people who write these libraries etc., I am just describing what I found as a novice in CL.
- lispm 12y agoMany people who actually write GUI software in Lisp use one of the commercial offerings, typically either LispWorks and Allegro CL. That's one of their advantages: they offer maintained and cross platform GUI libraries. One can for example also use Clozure CL for advanced GUI stuff, but that is best on the Mac. For example http://opusmodus.com http://opusmodus.com is a composition software using Clozure CL. Other composition environments are written with LispWorks: PWGL, OpenMusic, Symbolic Composer, ScoreCloud. http://www2.siba.fi/PWGL/ http://www2.siba.fi/PWGL/ http://repmus.ircam.fr/openmusic/home http://repmus.ircam.fr/openmusic/home http://www.symboliccomposer.com http://www.symboliccomposer.com http://scorecloud.com http://scorecloud.com
- bainsfather 12y agoThanks for the info. I just had a quick look at Clozure CL - as you say, the main Gui library is for apple. The other gui library is labelled 'under development' but also 'last modified: 6 years ago' :( I wonder whether the (I'm told) good commercial lisp offerings have hampered lisp adoption, in that people who use lisp a lot, pay for commercial offerings, leaving the free stuff less used and maintained? Then newcomers, who don't want to pay to do hobby projects in a new language, are discouraged by the less maintained free stuff.
- lispm 12y agohttp://www.crategus.com/books/cl-cffi-gtk/ http://www.crategus.com/books/cl-cffi-gtk/ http://www.crategus.com/books/cl-gtk/gtk-tutorial.html#SEC_Top http://www.crategus.com/books/cl-gtk/gtk-tutorial.html#SEC_T... https://github.com/crategus/cl-cffi-gtk https://github.com/crategus/cl-cffi-gtk