Tuesday, April 18, 2006

Getting Started with Common Lisp, part 2

The first thing that you need to do when getting started with Common Lisp is to choose a Lisp implementation. Lisp has a standard, similar to C++. Choosing a Lisp implementation is similar to choosing a C++ compiler. Like C++ compilers, conformance to the standard varies. For this post I will only discuss Free CL implementations but there are a number of commercial CL implementations. If your lucky enough to be using Linux for development, there are quite a few Free CL implementations. You have the choice of CMUCL, SBCL, CLISP, GCL, and ECL. There are probably more but those are the ones I know of. I chose SBCL because of its speed and because ASDF comes pre-installed. (ASDF is a library management system similar to CPAN.) SBCL can produce standalone executables. If you're stuck running Windows for some reason then your choices are somewhat more limited. There is CLISP, GCL and ECL. Under windows I chose CLISP because of it's standards conformance and because there are a lot of libraries that are known to work with it. It is also very cross platform. It will pretty much run under whatever OS you want. There are also a number of interop libraries for it so you can make use of windows specific features easily. CLISP uses a VM and byte code system, similar to Java, so it is not as fast as some of the other LISPs but it is faster than Java.

Thursday, April 06, 2006

Getting Started with Common Lisp, part 1

I've spent the last couple of months learning Lisp. I would say the hardest part about the process has been figuring out how to get a proper development process setup and learning how to install libraries.
Lisp is a significantly different environment than any of the other languages I have learned. It's not the syntax that is the real issue. Once you get used to prefix notation and how the libraries work, you really start to appreciate the language. If you get emacs setup correctly then Lisp syntax is actually easier than the more common languages. The bug hurdle in my adjustment to Lisp was getting used to working with the repl, learning about application images, learning how to work with SLIME and learning the primary library and application management system, which is called ASDF. Once you learn how to install ASDF, getting and installing libraries becomes simple, somewhat like CPAN or Python's easyInstall. The next few posts will be about how I overcame each of these hurdles and learning to appreciate Lisp and the Lisp way.

Wednesday, March 08, 2006

Lisp in Python

I was browsing through some Lisp sites and came across this cool article. Describes and implements a Lisp interpreter in Python. There are some other cool articles on this site as well.

Monday, February 13, 2006

A nice series of introductory Python articles

This series (Part1, Part2, Part3, Part4 ) articles looks like a nice intro to Python.

Sunday, January 22, 2006

Mastering Ajax, Part 2: Make asynchronous requests with JavaScript and Ajax

Part 2 goes into more depth on using XMLHttpRequest. It details some basic uses like error handling and call backs. Nice article.

Read more at www-128.ibm.com/develop...

Mastering Ajax, Part 1: Introduction to Ajax

Yet another excellent Developer Works article. A nice intro to Ajax. Covers the basics of using the XMLHttpRequest object, including cross browser issues.

Read more at www-128.ibm.com/develop...

Wednesday, January 11, 2006

Another nice Python Tutorial

Nice tutorial. The color scheme is not so hot though.

Tuesday, January 10, 2006

Discover Python

There is a nice set of introductory Python articles over on Developer works.