From: Mayuresh K. <may...@ka...> - 2015-03-24 19:00:22
|
On 2015-03-25 00:03, Pascal J. Bourguignon wrote: > Mayuresh Kathe <may...@ka...> writes: > >> Hi, >> >> I am awaiting receipt of Mr. Touretzky's book on introduction to >> Common >> Lisp to begin my self-training regimen. >> >> Will be using CLISP as the environment for the same. >> >> After my training has completed, would like to focus on CLISP as the >> primary tool for all of my development going forward. >> >> Given my inexperience, would like to pose a naive question. >> What be the capabilities not provided by CLISP but be available under >> the so called modern programming languages like Python/Ruby/Lua and >> their frameworks? > > There are none, because clisp is not a programming language, it's an > implementation of a programming language! > > There is nothing that you can do in other programming languages that > you > cannot do (even better and more easily) with Common Lisp, if only for a > fundamental theoric reason: Turing equivalence. Great, that means, I can use just one tool with multiple capabilities to accomplish different tasks. I have grown tired of having to learn multiple programming languages and mess things up when moving from one to another frequently. > You can do anything from the smallest script to a successful startup > software with clisp (eg. Paul Graham used clisp to write ViaWeb and > sell > out to Yahoo, and then go on being a VC at http://ycombinator.com). He > could as well have made a SpaceY like Elon Musk's SpaceX, so I'd say > the > sky's not even the limit! That's nice, though, for me, the real reason is as mentioned above, "Peace of mind". :) >> My domain of work would be computer network related tools for >> monitoring >> and analysis of failures, etc. > > While it's little known, nowadays there are several implementations of > python, ruby or lua. There are also several implementations of Common > Lisp, of which clisp is but a single one. > > clisp is a good CL implementation (as I said, Paul Graham earned > millions with it), but eventually you may want to deploy some > applications or programs using another CL implementation more adapted > to > the specific case. I intend to build an appliance around the Raspberry-Pi 2 running GNU/Linux with CLISP for the actual application. I'll be writing a separate mail, but, hope CLISP can be really shrunk down to a compact disk size. > [snip] > > The point is that if you learn Common Lisp, and are careful to write > conforming code, then you will be able to use this code with any > conforming CL implementation. > > So for example, when you learn clisp, while it has a very good FFI > package, and a nice SCREEN package and raw KEYBOARD, a very nice SOCKET > package, etc, it may be preferable to learn to use portability > libraries > such as CFFI, cl-charms (ncurses), usocket or iolib.trivial-sockets > instead of using clisp specific features directly, since those > libraries > will allow you to run your code as well on other CL implementations, > which you may have to do in a few years when your software is > completed, > for delivery for such customer or in such environmented that you don't > know today. Thanks for this one too, is there any way to find out where those libraries be found? Is there any kind of a centralized repository which I could visit to find out more? Or would Google be my good friend? :) Best regards, ~Mayuresh |