Tibor's Musings

Common Lisp Interpreted vs Compiled

Is there a difference between running interpreted and compiled Common Lisp code?

Your collaborators told you that:

I believe that the disappointment is largely related to the misunderstanding regarding Common LISP compilation method: Common LISP can NOT be executed interpreted - it is always compiled. [...] Accordingly, by proclaiming compilation of a …

Common Lisp Extensibility

A friend suggested that object orientation may have been added to Lisp in an "usine à gaz" sort of way. This post is an extended answer to that claim.

Firstly I'll mention how the extensibility is at the very heart of Lisp and how easy it is to add OO …

Common Lisp Object System

In a previous post, I looked at Common Lisp extensibility, how easy and how natural it is to implement single-method dispatch in the language; and how "unnecessary" it actually is, given the other powerful constructs of the language. Let's now look at CLOS, the Common Lisp Object System, to see …

Common Lisp Runtime Redefinition

I think Lisp is the ideal enviroment for rapid prototyping: even better than Python. One example is that you can modify your code on-the-fly while running it; there is no better debugging tool.

Dynamic redefinition of class methods

Consider the following rectangle class [you can type "lisp" on pcdh91 and …

Average Style of Programming

A danger of machinable software engineering factory: average style of programming.

The problem with software engineering methodologies is that they often promote a kind of "average" style of programming, often leading to mediocrity, or even worse, unnecessary overbloatedness. My favourite quote illustrating this problem comes from an excellent book by …