Live data from Hacker News

Common Lisp homepage

lisp-lang.org

191–200 of 313 posts

Re: Common Lisp homepage

#191
post #84

Earlier quoted context omitted.

Pascal, perl, ASP, every ML, Fortran, Cobol, Eiffel, Modula, all "4GL" languages.

Perl, ML, Fortran, Cobol has not faded. You might not like them, you might not use them. But there are tons of them out there and being used in the real world and production systems.

I think it's fair to say those languages have "faded"

I would also say Python 2 has "faded" or started to.

Faded doesn't mean it isn't used anymore. It mean it's retreated into a niche, and is no longer on the short list for new development, and no longer interesting to most developers.

Re: Common Lisp homepage

#192
post #144

Earlier quoted context omitted.

I say this with a perspective of watching it happen over forty years. I'll get all kinds of heck if I start saying this or that language has faded. But many languages have changed over time, sometimes in breaking ways, as their developers work to make them more expressive and add features. Code that is written one year often doesn't work a few years later - that's a kind of fading as specific reference implementation…

Thing is, except for CS theory evolving, the programming language environment from 30 years ago is in my opinion irrelevant from a maturity perspective. The number of practitioners was probably 1 million or so worldwide, now there’s probably 20-40+ million programmers worldwide. We didn’t have widespread internet access, barely a handful of Open Source communities, compilers were generally commercial and extremely ex…

>Also, languages are a lot more similar to each other than they used to be, in terms of expressiveness and power. Lisp was a “lightsaber” to the “stones” of the 80’s, now it’s at most a slightly more powerful “machine-gun”, at best.

Please elaborate more and explain.

Re: Common Lisp homepage

#193
post #128
post #68

Earlier quoted context omitted.

Lisp ran on the first UNIX workstations too, Franz Lisp ran fine on even the earliest Sun machines. Lucid pivoted from Lisp on UNIX to C++ on UNIX, they didn't have anything to do with Lisp Machines.

Correct, but it wasn't part of the platform tooling, requiring an additional expense, with a price tag which on the 80's computing world very few companies were willing to shell out. Yep, I always get that part of Lucid's history wrong.

Franz Lisp was free.

Re: Common Lisp homepage

#194
post #144

Earlier quoted context omitted.

Thing is, except for CS theory evolving, the programming language environment from 30 years ago is in my opinion irrelevant from a maturity perspective. The number of practitioners was probably 1 million or so worldwide, now there’s probably 20-40+ million programmers worldwide. We didn’t have widespread internet access, barely a handful of Open Source communities, compilers were generally commercial and extremely ex…

Common Lisp has: generic functions, homo-iconic macros written in Common Lisp, reflection, multiple dispatch, closures, optional typing, correct implementation of lexical scope, dynamically scoped variables, a metaobject protocol, conditions & restarts, and a compiler that is available for customization. One or a few of these have made it into other languages in some form or another - but not all together. Common Lis…

>Just the macros - my goodness - in Common Lisp you can write programs that write programs!!

... and at runtime OR compile-time (your choice!)

... and by using plain, simple Common Lisp; no special, cumbersome AST-transformation libraries needed!

Re: Common Lisp homepage

#195
post #81

Earlier quoted context omitted.

> how I don't have to worry about it fading like the next programming fad. I'm not sure I understand this bit. What other programming language has "faded" and how has it "faded"? At least since the more mature age of software, which I'd say started around '95 or so (so 20+ years).

I say this with a perspective of watching it happen over forty years. I'll get all kinds of heck if I start saying this or that language has faded. But many languages have changed over time, sometimes in breaking ways, as their developers work to make them more expressive and add features. Code that is written one year often doesn't work a few years later - that's a kind of fading as specific reference implementation…

"C++ template programming is to Common Lisp macros what IRS tax forms are to poetry."

I will definitely be stealing this quote in the future! Well put.

Re: Common Lisp homepage

#196
post #144

Earlier quoted context omitted.

I say this with a perspective of watching it happen over forty years. I'll get all kinds of heck if I start saying this or that language has faded. But many languages have changed over time, sometimes in breaking ways, as their developers work to make them more expressive and add features. Code that is written one year often doesn't work a few years later - that's a kind of fading as specific reference implementation…

Thing is, except for CS theory evolving, the programming language environment from 30 years ago is in my opinion irrelevant from a maturity perspective. The number of practitioners was probably 1 million or so worldwide, now there’s probably 20-40+ million programmers worldwide. We didn’t have widespread internet access, barely a handful of Open Source communities, compilers were generally commercial and extremely ex…

"And a programmer in your average mainstream language in 2018 could reasonably expect to be working in the same language in 2018."

Pretty radical claim there, are you sure about that? :)

Re: Common Lisp homepage

#197
post #9

Often those who are curious to try Lisp are faced with a number of choices: Which dialect to choose? Which implementation to choose? Which book or tutorial should one follow? Is it necessary use Emacs? SLIME? Here are my recommendations: - Choose Common Lisp because it has been the most popular dialect of Lisp in the overall history of Lisp. It is more convenient than Scheme if one decides to develop serious software…

- Choose SBCL (Steel Bank Common Lisp) as the implementation.[1][2] It is the most popular Common Lisp implementation and is recommended in many online discussions.

And note that if you find its interactive interface very spartan, you're not doing anything wrong. It is very spartan. It's not really meant for direct human use; you're supposed to throw expressions at it from your editor. (Do one thing and do it well and all that.)

Re: Common Lisp homepage

#198
post #7

Lisp is quite popular at my current workplace. A few popular open source projects published by our organization have been written in Clojure (a dialect of Lisp that runs on JVM and CLR). A few domain specific languages used internally in our organization are also inspired by Lisp. On a more personal front, I find Lisp to be simple, elegant, and expressive. I use Common Lisp (SBCL) for personal use. Working with Lisp…

"I sometimes wonder why Lisp has not been more popular in the technology industry."

One historical reason:

https://en.wikipedia.org/wiki/AI_winter#The_collapse_of_the_...

Re: Common Lisp homepage

#199

Earlier quoted context omitted.

Type declarations in Common Lisp are unsafe. Violating a declaration at runtime is UB. What SBCL is doing to Common Lisp is similar to what C compiler vendors did to C. In order to win at benchmarks, C compiler vendors started to use UB as a license to miscompile optimized code, which got them better benchmarks. Common Lisp has very little UB, so the C strategy is harder to execute. SBCL basically first needs to suck…

Type declarations in Common Lisp support (safety ) and (speed ) syntax for configuring, you guessed it, safety and speed. The undefined behavior kicks in when you explicitly defeat safety. (safety 0) (speed 3) means "throw out the life jackets and assume that these declarations are true, making the code as fast as possible". If you don't have the confidence for this over some piece of code, then just ... don't do tha…

> Type declarations in Common Lisp support (safety ) and (speed ) syntax

To be pedantic, those aren't type declarations. More importantly, the (un)safety of a type declaration isn't predicated on any specific safety/speed settings. The mere use of a type declaration implies that the programmer certifies their accuracy inside its scope; an additional optimize declaration is not required.

It bears repeating: While Common Lisp has "type declarations", they don't behave as they do in statically typed languages. The are certificates, assurances by the programmer to be exploited at will by the implementation.

Re: Common Lisp homepage

#200

Earlier quoted context omitted.

>3.) the lisp ecosystem is fractured into too many lisps like SBCL, Clojure, Racket, Allegro, Franz, Picolisp, ABCL, Shen...etc, so some confusion amongst those that are new You are mixing things into that list. Common Lisp, Racket, Clojure, and Shen are different languages, serving different purposes, etc. "Franz", "Allegro", "ABCL", "SBCL" are implementations of Common Lisp, exactly the same language. ALGOL-family…

You quoted two companies using Lisp when there are millions of Java devs. That's like a boxer with a record of 1-500. I love Lisp, but c'mon...I guarantee it has far more hobby users than professional users. ABCL, FRANZ, ALLEGRO, SBCL, CLISP, GNU CL, Clozure might all be common lisp, but they are different implementations with different tools that will confuse a new person and several cost money. Practical Common Lis…

"they are different implementations with different tools that will confuse a new person and several cost money."

Right, just like all of these stop developers from learning Java:

https://en.wikibooks.org/wiki/Java_Programming/Java_IDEs

"SICP is great for a mind-opening experience, but not super useful on how to write modern software and is why the creators dropped it at MIT."

Bullshit.

Anyone who can understand and apply the lessons in SICP will be far more productive developers than someone who just memorized some git commands and knows how to bang their head against Spring Boot until something almost useful eventually comes out.

Outside of those two points, I mostly agree with your general thesis.

Post reply on HN