News for hackers. Stuff that matters.
Re:How Lisp Became God's Own Programming Language by varjag on Tuesday October 16, 2018 @02:34AM (#18227132)
There are perhaps languages out there which are better than Lisp for maintenance in some respect, but it's none of the mainstream ones. Lisp code is not particularly harder or easier to maintain; most of that depends on the original author(s) as with any codebase.
Re:How Lisp Became God's Own Programming Language by crdoconnor on Tuesday October 16, 2018 @03:02AM (#18227249)
It's the reason Aaron Swartz gave for rewriting reddit in python:

>The others knew Lisp (they wrote their whole site in it) and they knew Python (they rewrote their whole site in it) and yet they decided liked Python better for this project. The Python version had less code that ran faster and was far easier to read and maintain.

http://www.aaronsw.com/weblog/rewritingreddit

I suspect the problem is that LISP is too powerful. Language power is inversely related to maintainability/readability, as per the greatly underrated rule of least power: https://en.wikipedia.org/wiki/Rule_of_least_power

Re:How Lisp Became God's Own Programming Language by collyw on Tuesday October 16, 2018 @04:04AM (#18227548)
> Language power is inversely related to maintainability/readability,

Is that really True?

Having worked on VB6 codebases in the past, the less powerful nature of the language just meant a LOT more code which is definitely harder to maintain.

Re:How Lisp Became God's Own Programming Language by rboyd on Tuesday October 16, 2018 @05:21AM (#18227923)
No, it’s not, and even if it were true it wouldn’t disqualify lisp, since you can quite happily wield lisp in a context which lets you express logic in simpler/constrained forms. Consider hiccup, datalog DSLs, etc.
Re:How Lisp Became God's Own Programming Language by crdoconnor on Tuesday October 16, 2018 @04:25AM (#18227653)
It's inversely proportional to length too. Maintainability is about maintaining a delicate a balancing act between several competing fundamental concerns - two of which are expressiveness and verbosity.

I think python's popularity is partly because it found a sweet spot that was neither too expressive nor too verbose. It's certainly possible to dial up the expressiveness (LISP, Perl) or dial it down (Golang, VB) and get something that is harder to maintain both ways.

Re:How Lisp Became God's Own Programming Language by dpwm on Tuesday October 16, 2018 @08:16AM (#18228717)
Python derives a fair amount of expressiveness from the power it gives to library authors. A lot of this in turn comes from its dynamic implementation.

As a library author you can write effective python at different levels. Some involve quite heavy meta-programming (jinja2, collections.namedtuple, django's ORM) and most users would never find this out.

Re:How Lisp Became God's Own Programming Language by pjmlp on Tuesday October 16, 2018 @10:06AM (#18229462)
Python has C++/Lisp level of power, but since many just do toy scripts they don't realize it.
Re:How Lisp Became God's Own Programming Language by collyw on Wednesday October 17, 2018 @08:45AM (#18238396)
Again I think Perl / Python are a perfect example of why post I was responding to is not true.

> Language power is inversely related to maintainability/readability,

Perl and Python are both considered equally powerful languages, yet Perl is a fair bit more expressive and as a result is often harder to maintain.

Re:How Lisp Became God's Own Programming Language by joe_the_user on Tuesday October 16, 2018 @02:43PM (#18232021)
Well,

The law of power linked above says to use the least powerful language appropriate for the task. So it's possible VB6 fell into the category not-powerful-enough/not-appropriate.

Re:How Lisp Became God's Own Programming Language by vnorilo on Tuesday October 16, 2018 @03:46AM (#18227456)
This. I find Lisp optimal for the small band of coder heroes scenario. They must align on cs philosophy, and taste. Grow the team, or have divergent approaches: the efficacy of Lisp quickly disappears and problems appear.
Re:How Lisp Became God's Own Programming Language by lispm on Tuesday October 16, 2018 @04:23AM (#18227645)
Is that hearsay, experience or a guess?

There have been a few projects with 10 to 100+ Lisp programmers. What was their experience?

Re:How Lisp Became God's Own Programming Language by vnorilo on Tuesday October 16, 2018 @06:08AM (#18228083)
I have experience of great success and productivity in small teams with Common Lisp and Clojure. I don't have direct experience of dysfunction in a larger Lisp team. That was a guess based on how being a senior dev in a 50 man C# shop felt :)
Re:How Lisp Became God's Own Programming Language by oblio on Tuesday October 16, 2018 @04:33AM (#18227690)
Well, at some point we have to face reality. There have been hundreds if not thousands of successful projects with teams of hundreds if not thousands of developers working on them, at the same time or over time. These projects have been generally in Cobol (ok, we can chalk that up to brute forcing a tech from they didn't know any better), C, C++, Java, C#.

There seems to be a connection between scaling a project regarding developer numbers and programming language "power". Having a smaller, shared vocabulary seems to greatly outweigh programming language "power" as the number of programmers goes up greatly.

Lisp had 60 years to prove its human scaling capabilities. So far it hasn't convinced.

Re:How Lisp Became God's Own Programming Language by lispm on Tuesday October 16, 2018 @05:16AM (#18227892)
> There seems to be a connection between scaling a project regarding developer numbers and programming language "power". Having a smaller, shared vocabulary seems to greatly outweigh programming language "power" as the number of programmers goes up greatly.

That goes against evidence from current enterprise software experience. The Java eco-system has the absolute largest programming vocabulary ever (J2EE, JEE, ...) and is widely used.

AT&T/Lucent once wrote the software for a telephony switch in Lisp - I think the project ran over a decade and created more than one generation of working/shipping hard&software. The team was easily 100+ people. I heard a talk of the responsible manager years ago. They wrote basically the same functionality as a ten times larger C++ project and the Lisp team lead was extremely satisfied with what they wrote.

AT&T Management favored the C++ project for mostly non-technical reasons - C++ being an 'industry language' with a larger supply of developers. Not surprising for AT&T - Ericsson made a similar decision at some point in time with their (later lifted) 'Erlang ban'.

Re:How Lisp Became God's Own Programming Language by thaumasiotes on Tuesday October 16, 2018 @04:39AM (#18227714)
> Lisp had 60 years to prove its human scaling capabilities. So far it hasn't convinced.

It can take more than you might expect to "convince".

> In 1601, an English sea captain did a controlled experiment to test whether lemon juice could prevent scurvy. He had four ships, three control and one experimental. The experimental group got three teaspoons of lemon juice a day while the control group received none. No one in the experimental group developed scurvy while 110 out of 278 in the control group died of scurvy. Nevertheless, citrus juice was not fully adopted to prevent scurvy until 1865.

( https://www.johndcook.com/blog/2008/03/25/innovation-ii/ )

Re:How Lisp Became God's Own Programming Language by dahauns on Tuesday October 16, 2018 @06:08AM (#18228082)
Sooo...what would be the "programmer scurvy" Lisp (and especially Lisp) could help to prevent?
Re:How Lisp Became God's Own Programming Language by trmsw on Tuesday October 16, 2018 @05:37AM (#18227977)
And even in 1911, Scott's expedition suffered from scurvy, mainly because they misunderstood its cause! http://idlewords.com/2010/03/scott_and_scurvy.htm
Re:How Lisp Became God's Own Programming Language by billfruit on Tuesday October 16, 2018 @09:56AM (#18229378)
I have heard that the British knew what caused scurvey, and how to treat it with citrus, but they kept it a closely guarded secret to keep an advantage vis-a-vis other countries navies.
Re:How Lisp Became God's Own Programming Language by thaumasiotes on Tuesday October 16, 2018 @08:40PM (#18234565)
That is more or less correct, but it's a very weird situation. Scurvy had been known -- along with effective cures -- for thousands of years. The method of curing scurvy hasn't been secret since -- at the latest -- the Ebers papyrus of ~1500 BC, which correctly prescribed feeding the patient an onion. And in fact cures were widely known throughout the world since that time, including in Europe. Note again that James Lancaster had heard that lemons were effective against scurvy, 200 years before the Navy got around to requiring them.

From https://tudorblog.com/2012/06/16/voyage-of-the-scurvy/ :

> from about 1500 to 1800 two million sailors are estimated to have died from scurvy on expeditions to Asia, Africa and the New World.

> Why no cure? In Tudor England an effective treatment, scurvy grass (a corruption of cress), was commonly recommended; at the same time the Portuguese knew a cure, and so did the Spanish and the Dutch. For unknown reasons such wisdom was applied inconsistently (even by Britain’s Royal Navy after the Napoleonic Wars) until the identification of vitamin C in the 20th century.

It looks more like a case of the people making the decisions being unfortunately disconnected from the people who knew what scurvy was and how to deal with it. (And wilfully ignoring those who tried to point it out to them.)

Re:How Lisp Became God's Own Programming Language by oblio on Tuesday October 16, 2018 @05:36AM (#18227975)
I know about that the whole lime - lemon thing. Two things:

1. That was before the scientific age. They didn't know about vitamin C at the time, they couldn't even see it, even if they'd somehow believe in it.

2. There is no scientific proof, 0, none, that Lisp is superior. And it's almost impossible to prove it, since it requires controlled studies at a large scale - good luck with taking away hundreds of productive programmers for that study :) All we have is hearsay and personal opinions.

Re:How Lisp Became God's Own Programming Language by thaumasiotes on Tuesday October 16, 2018 @10:29AM (#18229637)
> I know about that the whole lime - lemon thing.

Be careful; my quote has nothing to do with the confusion between lemons and limes that occurred hundreds of years later. The Navy instituted a lime juice ration in 1799. They switched out lemons ("limes") for what we would call limes in 1865, setting themselves up for the reintroduction of scurvy. But James Lancaster performed his experiment (and reported his result of 100% scurvy prevention to Naval authorities) in 1601.

Re:How Lisp Became God's Own Programming Language by pjmlp on Tuesday October 16, 2018 @06:50AM (#18228221)
And all managed languages that still provide halfway solutions for what was the Interlisp-D/Lisp Machines developer experience.
Re:How Lisp Became God's Own Programming Language by oblio on Tuesday October 16, 2018 @07:37AM (#18228459)
I love how I'm being downvoted for saying that there's no scientific proof that Lisp is superior. Come on, show it, I want to see it. I want to see thorough, statistically representative studies that show Lisp's superiority :)
Re:How Lisp Became God's Own Programming Language by pjmlp on Tuesday October 16, 2018 @10:11AM (#18229507)
"How the strengths of Lisp-family languages facilitate building complex and flexible bioinformatics applications."

https://www.ncbi.nlm.nih.gov/pubmed/28040748

-- US National Library of Medicine National Institutes of Health

"Clasp: Common Lisp using LLVM and C++ for Designing Molecules"

https://www.youtube.com/watch?v=0rSMt1pAlbE

-- GoogleTechTalks

Re:How Lisp Became God's Own Programming Language by oblio on Wednesday October 17, 2018 @04:09AM (#18237106)
That's nowhere near something like medical clinical trials, though.

Think of studies where you:

a) have statistically representative sample size (100+ developers)

b) actual numbers and compare them (the average development time needed for the Java/C++/etc. applications was Y and the average development time needed for Lisp applications was Y - Z, where Z > 0, etc.; the average execution time for Java/C++/etc. applications, etc., you get the idea)

Computer Science studies are still in their infancy.

All this Lisp hype is just hype and gut feelings.

Re:How Lisp Became God's Own Programming Language by DonaldFisk on Tuesday October 16, 2018 @11:39AM (#18230225)
There's Lisp as an Alternative to Java: http://www.flownet.com/gat/papers/lisp-java.pdf
Re:How Lisp Became God's Own Programming Language by fnordsensei on Tuesday October 16, 2018 @05:23AM (#18227928)
We have to decide what's enough to convince (and convince whom) I guess.

Just to throw out a couple of examples:

One of the larger businesses I'm aware of that's using a Lisp is Nubank in São Paulo. Valued at $1bn+ and 4 million paying customers[1]. Finance is a fairly complex domain.

King in Stockholm has also fairly recently rewritten their main game creation tooling in Clojure[2].

1: https://www.reuters.com/article/nubank-creditcards/brazilian...

2: https://techblog.king.com/how-we-use-clojure-at-king-to-writ...

Re:How Lisp Became God's Own Programming Language by regularfry on Tuesday October 16, 2018 @06:49AM (#18228217)
It strikes me as a matter of structure. Lisp provides almost none, whereas python provides more. Anything not provided by the language and environment must be provided by the team. If they can, that's great, but it's going to be easier to get a small team to agree on a structure than a large one.
Re:How Lisp Became God's Own Programming Language by varjag on Tuesday October 16, 2018 @06:59AM (#18228255)
Wouldn't say so, there are plenty of conventions and common practices shared by overwhelming majority of Lisp developers. Project structure, system definition, development environment, naming conventions, idiomatic use of data structures and object system, all that is established across the board.
Re:How Lisp Became God's Own Programming Language by varjag on Tuesday October 16, 2018 @05:14AM (#18227882)
Well I don't find mature Python codebases (e.g. Homeassistant) particularly easy to inspect or change. Guess that's where me and 2005 Aaron Swartz would disagree.
Re:How Lisp Became God's Own Programming Language by StavrosK on Tuesday October 16, 2018 @08:40AM (#18228843)
What language's mature codebases do you find particularly easy to inspect or change?
Re:How Lisp Became God's Own Programming Language by varjag on Tuesday October 16, 2018 @09:40AM (#18229248)
None, which was my original point. The difference between the projects/teams easily trumps whatever is there between the languages.
Re:How Lisp Became God's Own Programming Language by mark_l_watson on Tuesday October 16, 2018 @11:05AM (#18229958)
When I talked with Alexis Ohanian he told me that the Lisp version was difficult to keep running. I think the term he used was that it often fell down.
Re:How Lisp Became God's Own Programming Language by knowingpark on Tuesday October 16, 2018 @05:44AM (#18227999)
I don't use it, but I'm not noticing any such backlash for Clojure