Live data from Hacker News

A brief interview with Common Lisp co-creator Dr. Scott Fahlman

pldb.com

31–40 of 161 posts

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#31
post #29

Earlier quoted context omitted.

I think S-expressions are fundamentally too difficult to work with, without good editor support, to make Lisp anything other than a niche power tool for the highly motivated. I love CL, Scheme, Clojure, Janet, Fennel, etc. but I don't blame anyone for finding them inaccessible. I think Python, JavaScript, and Go have caught on for somewhat similar reasons, compared to Java and C#: they are easier to get started with,…

I have never really understood people‘s aversion to parentheses. Many languages require them in ad-hoc ways to groups expressions. For S-expressions, you give up some mild convenience and looks for extremely consistent semantics.

It's not so much an aversion to parentheses as an aversion to nothing but parentheses. Other languages use other brackets to indicate different contexts, but s-expressions can more difficult to read. The idiom of putting all of your end parens on a single line doesn't help.

And for most people, the mild convenience of readability is preferable to the consistent semantics.

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#32

Earlier quoted context omitted.

But, you always have good editor support. Lisp/Scheme has traditionally been coded using Emacs or its equivalent. With that support, the parens seem to disappear after you've been writing lisp for awhile. Beginner lispy languages come with a suitable beginner IDE, e.g. Racket or Logo. A typical lisp statement has a leading '(' and a trailing ')', which replaces the ';' in Algol-like languages. So, one additional char…

I think the parent comment is alluding to the notion that the very entry level programmer enjoys being able to use notepad. That is to say the initial barrier of eMacs is just too much. Obviously worth it in the long run though.

“eMacs” is the wrong capitalization. It’s “Emacs”.

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#34

He certainly implies that he thinks Common Lisp (and maybe Dylan) would have been as popular as Java is today if the lottery had played out differently. I wonder if anyone else feels this way. The programming world would be a different place. I can’t help but fantasize about how incredible eMacs would be by now if that had been the case. (Not that it isn’t already incredible.)

Honestly it would have turned into something like Java if it had become popular in the industry. OOP and functional programming are really just different ways to encapsulate data and control dispatch. They don't change the fundamental nature of the work.

Ultimately what happened to Java was the same thing that would have happened to any other dominant language that the industry uses to build heavy duty enterprise software: stuff like ORM frameworks, data transfer objects, servlet containers, some kind of web integration like JSP, RPC frameworks, SOAP, REST, etc.

Would it be easier or better to do that stuff in Lisp? Maybe. But not by a huge amount. The beauty of the language would certainly end up being obscured by the boring, complex, practical work that we would all be doing with it. And most programmers would not be better than they are now -- instead they would force an imperative model on top of whatever substrate they are given, just like they do today.

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#35
post #30
post #5

Earlier quoted context omitted.

He's overlooking an incredibly important factor: Java and C++ had capable, even enterprise quality free compilers at a time when Common Lisp environments were typically either hideously expensive or poorly supported or both. You could grab Sun's JDK for free, or GCC, or (later) Visual Studio Express at a time when the best options for Common Lisp were thousands of dollars per seat, or barely working on x86 (CMUCL did…

I think that is just a facet of his point. It was Sun's corporate backing and muscle that enabled you to get their SDK for free. And this is ignoring the reach out into education markets to get Java as the 101 level course for an absurd number of students.

[deleted]

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#36
post #30
post #5

Earlier quoted context omitted.

He's overlooking an incredibly important factor: Java and C++ had capable, even enterprise quality free compilers at a time when Common Lisp environments were typically either hideously expensive or poorly supported or both. You could grab Sun's JDK for free, or GCC, or (later) Visual Studio Express at a time when the best options for Common Lisp were thousands of dollars per seat, or barely working on x86 (CMUCL did…

I think that is just a facet of his point. It was Sun's corporate backing and muscle that enabled you to get their SDK for free. And this is ignoring the reach out into education markets to get Java as the 101 level course for an absurd number of students.

> It was Sun's corporate backing and muscle that enabled you to get their SDK for free.

You could get GCC for free before Java 1.0 was released. My personal introduction to GCC was Walnut Creek's Hobbes OS/2 CD-ROM from 1994, the EMX port. Paid for the CD-ROM, but we could have downloaded it for free if we had Internet access. EMX did DOS too, and DJGPP was also available at the same time (and ended up overtaking EMX under DOS).

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#37
post #29

Earlier quoted context omitted.

I think S-expressions are fundamentally too difficult to work with, without good editor support, to make Lisp anything other than a niche power tool for the highly motivated. I love CL, Scheme, Clojure, Janet, Fennel, etc. but I don't blame anyone for finding them inaccessible. I think Python, JavaScript, and Go have caught on for somewhat similar reasons, compared to Java and C#: they are easier to get started with,…

I have never really understood people‘s aversion to parentheses. Many languages require them in ad-hoc ways to groups expressions. For S-expressions, you give up some mild convenience and looks for extremely consistent semantics.

> I have never really understood people‘s aversion to parentheses

A common refrain from Lisp family language enthusiasts. (Personally I prefer Smalltalk-style "conversational" syntax to Lisp-style or C-style syntax, yet it's similarly unpopular.)

For better or for worse, the vast majority of programmers seem to have voted with their feet for C-style syntax (C/C++/Java/JavaScript/etc.) and its variants (Python). In a C/C++/Java/JavaScript world, C syntax has a fair amount of leverage.

It's a shame that Dylan didn't continue, as it seems to have taken a decent crack at adding algebraic syntax to Common Lisp - arguably realizing McCarthy's original vision of infix M-expressions as a more programmer-friendly syntax. I wonder how hard it would be to add a Dylan-style syntax layer to modern CL?

Be that as it may, one can readily write Lisp/Scheme-style programs in JavaScript. See Crockford's "The Little JavaScripter."[1] The major omission/deficiency being macros for JavaScript syntax.

[1] https://www.crockford.com/little.html

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#38
post #30

Earlier quoted context omitted.

I think that is just a facet of his point. It was Sun's corporate backing and muscle that enabled you to get their SDK for free. And this is ignoring the reach out into education markets to get Java as the 101 level course for an absurd number of students.

> It was Sun's corporate backing and muscle that enabled you to get their SDK for free. You could get GCC for free before Java 1.0 was released. My personal introduction to GCC was Walnut Creek's Hobbes OS/2 CD-ROM from 1994, the EMX port. Paid for the CD-ROM, but we could have downloaded it for free if we had Internet access. EMX did DOS too, and DJGPP was also available at the same time (and ended up overtaking EMX…

Right. Gcc was free. And had wider reach than lisp. Not sure how this is a counter point?

You could somewhat freely get some compilers. Sun paid a ton to get Java to people.

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#39
post #30

Earlier quoted context omitted.

I think that is just a facet of his point. It was Sun's corporate backing and muscle that enabled you to get their SDK for free. And this is ignoring the reach out into education markets to get Java as the 101 level course for an absurd number of students.

> It was Sun's corporate backing and muscle that enabled you to get their SDK for free. You could get GCC for free before Java 1.0 was released. My personal introduction to GCC was Walnut Creek's Hobbes OS/2 CD-ROM from 1994, the EMX port. Paid for the CD-ROM, but we could have downloaded it for free if we had Internet access. EMX did DOS too, and DJGPP was also available at the same time (and ended up overtaking EMX…

djgpp + allegro

That combination was killer for a broke teenager in the 90s.

Re: A brief interview with Common Lisp co-creator Dr. Scott Fahlman

#40
post #38

Earlier quoted context omitted.

> It was Sun's corporate backing and muscle that enabled you to get their SDK for free. You could get GCC for free before Java 1.0 was released. My personal introduction to GCC was Walnut Creek's Hobbes OS/2 CD-ROM from 1994, the EMX port. Paid for the CD-ROM, but we could have downloaded it for free if we had Internet access. EMX did DOS too, and DJGPP was also available at the same time (and ended up overtaking EMX…

Right. Gcc was free. And had wider reach than lisp. Not sure how this is a counter point? You could somewhat freely get some compilers. Sun paid a ton to get Java to people.

> > It was Sun's corporate backing and muscle that enabled you to get their SDK for free.

It was GCC being free, and on DOS thanks to djgpp, that made it successful; and it didn't need corporate megabucks to do it.

Post reply on HN