## Tuesday, July 13, 2010

### Crazy person thinks ``Lisp sucks''

In this post, a person going by the initials CC declares:
There's a good reason almost no software has been written in lisp. Lisp sucks. Not just lisp, but the whole way the logic is arranged as nested things. The simplest problem becomes a mind-bending puzzle.
```if (a equals b) {
c = not d;
} else {
c = d + b;
}```
You have this nested inner to outer logic where if is a function.
```c = if(equals(a,b), not(d), plus(d,b))
```
The first is definitely more readible [sic] and it reads like we think of the logic. No one thinks of if as a function that takes three arguments, and forcing you to work that way just makes you crazy.
I suppose it is futile to argue with an admittedly crazy person, but perhaps being forced to work with conditionals has made me crazy as well. A closer translation of the original code would be this:
```(if (equals a b)
(setq c (not d))
(setq c (+ d b)))
```
If these sorts of differences are a ``mind-bending puzzle'', perhaps the author should consider a career in the housekeeping or food-service industries.