Iddo Lev's Smart Programming Page


Purpose

This page is intended for smart programmers who develop sophisticated software and want to instruct the computer to do what they want with the least development effort and time possible.

Lisp is the Best

The best industry-strength programming language as far as programming efficiency is concerned is Common Lisp. This isn't only my opinion, it happens to be the objective truth. ;-) To get convinced, look at the Lisp is the Best section.

Starting with Lisp

After you get convinced, you'll want to learn Lisp. You'll be pleasantly surprised to find out that the learning curve is faster than for any other language. Look here for the fastest way to start working with Lisp and to learn Lisp. Look below for a comparison between two Lisp environments.

Connecting Lisp with the World

You may not be able to convince your boss or fellow co-workers that Lisp is the best, because they may be closed-minded or influenced by false myths about Lisp. (This was unfortunately the case in the company where I worked -- Baobab Technologies -- and was one of the main reasons for the failure of the company). In that case there is something very simple to do: tell them that you are going to develop your part of the system (or at least a prototype) much faster than the expected time, and that you will provide them with a library file (such as a dll file) that they will be able to use like they know. Read about this on the integrating Lisp with the world section.

Expert Lisp

To improve your efficiency in commanding the computer, you will take advantage of the many resources available for programming in Lisp.

Comparing Lisp Environments

I have experience with two Lisp environments: Allegro Common-Lisp by Franz Inc., and LispWorks by Xanalys. The former is a bit easier to start working with because a few steps are necessary to make the LispWoks environment comfortable in Windows. However, the latter is easier if you want to connect your Lisp program with the external world -- more on that in Integrating Lisp with the World. LispWorks is also much cheaper than Allegro, in two ways: the LispWorks development environment costs much less than Allegro, and even more crucially, Franz requires you to pay them "royalties" on each copy of the software you develop and sell, whereas there is no such thing at all with LispWorks.

Both products come in a free lightweight version downloadable from their websites (but the lightweight versions do not support delivery, i.e. producing exe and dll files from a Lisp program). There are also other free environments [More coming soon ...]