The thing about Lisp-like languages is that they have some superficial similarities which get them lumped together, because programmers expect to be able to classify programming languages based on superficial similarities. If it has symbols encased in parentheses, it&#x27;s some kind of Lisp (even if the authors don&#x27;t use that word in the name).<p>They are not all the same any more than languages which have braces for block structure and f(x, y) function calls are the same!<p>Languages which have a complicated surface syntax tend to distinguish themselves sharply on that syntax. Thus we can regard PL&#x2F;I, Pascal, C, Ada, Rust, Go and Java to be semantic offshoots of the Algol family: new dialects of Algol.<p>If you invent a new dialect of Algol with new keywords and new syntactic gadgets for declaring, calling, throwing, catching, structuring, flowing, and so on --- old semantics with a new skin --- nobody accuses you of making just a dialect of Algol.<p>If you make a new language with S-expressions for its syntax, but new semantics under the hood, it is &quot;just another Lisp&quot; that some university kids can throw together in an afternoon.<p>Syntax is semantics is the popular view; you can&#x27;t possibly have new semantics if you don&#x27;t <i>look</i> different. And the presence of some old semantics exhibited in a few examples of course confirms that you don&#x27;t have new semantics. Hey look, functions look the same, and there is let and lambda. Same old junk!