Live data from Hacker News

The rise and fall of Lisp at the Jet Propulsion Lab (2002)

flownet.com

141–150 of 153 posts

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#141
post #102

Earlier quoted context omitted.

The USA maintains military bases in all corners of the world. From Australia to Guam, Eastern Europe to Brazil. If they're not interested in hegemony and all they want is to spread democracy (sounds eerily similar to the jesuits in the 1500's trying to christen the savages) why would they do that?

If US is able to spread democracy all around the world, it will not be the "Hegemony of the US". It will be the "Hegemony of Democracy". Consider Germany after WW2. Allied won over Germany but did US establish a "US Hegemony" in Germany? No. They established Democracy in Germany. Once you give people the freedom to self-govern, you can not have hegemony over them, unless you are a corrupt state. But assuming that US…

It's telling you had to go back to 1945 for your example. A catalog of US foreign interference since then makes for pretty grim reading:

https://en.wikipedia.org/wiki/United_States_involvement_in_r...

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#142
post #89
post #57

Author here. AMA.

Since this essay cycles here on HN perennially and inevitably people are curious about how your views about lisp, or other languages have changed, you might want to have a follow up page that you forever keep on updating as your views change? Maybe linked from the original article? Such as: Year 2033 - lisp is still a great language for $xyz Year 2043 - I was wrong, I should have used COBOL all along, how was I so bl…

Here you go: https://news.ycombinator.com/item?id=34557347

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#143

Earlier quoted context omitted.

> to be productive and get things done in any Yeah, but the question is how productive are those things that are getting done. A 100% productive assembly language programmer is not the same as a 100% productive Python programmer.

That might be true for some developers in some contexts, but it has nothing to do with the point I am making.

If you don't like Java and generate your way around it, that's not a genuine measure of productivity in Java.

Just like using a HLL (which generates machine language) isn't a measure of machine language productivity.

Whatever approach you settle on is a language. E.g "Bob's Lisp-based Java Generator" is a language. It's neither Java, nor Lisp. That language helps give Bob a certain productivity.

What Bob is doing represents the vast minority, and could create a maintenance problem for the organization, and its army of people who know only Java. Code generation isn't a practical recipe by which every programmer everywhere can hit productivity in any language.

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#144

Earlier quoted context omitted.

That might be true for some developers in some contexts, but it has nothing to do with the point I am making.

If you don't like Java and generate your way around it, that's not a genuine measure of productivity in Java. Just like using a HLL (which generates machine language) isn't a measure of machine language productivity. Whatever approach you settle on is a language. E.g "Bob's Lisp-based Java Generator" is a language. It's neither Java, nor Lisp. That language helps give Bob a certain productivity. What Bob is doing rep…

The productivity I am talking about is $ generated per time/cost. Not what you call “language productivity”.

For example, you will be more productive using C than (say) Python if your Python solution requires more servers to run than your C solution. Even if it took longer to write the C solution. Because the long term cost of the servers will be higher than the development cost. Which is why Google and other companies often rewrite code that already works to C++.

Another example is that you will be more productive using C# and the Unity game engine to write a commercial game than (say) Python. Because the Unity engine takes care of all the hard stuff you would otherwise have to write yourself in Python.

And you will be infinitely more productive using C to write a hard real time kernel than Python. Since Python is too slow unless you pretty much spend all your time calling C code to make it fast enough. Heh I can just imagine somebody trying to convince Linus to rewrite the Linux kernel in Python to be more “language productive”. That would be a very short conversation :)

So your comments might be true or not but that’s besides the point. I simply don’t care about “language productivity”. I care about real measurable productivity. The kind of productivity that the CEO of a company recognises.

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#145
post #141

Earlier quoted context omitted.

If US is able to spread democracy all around the world, it will not be the "Hegemony of the US". It will be the "Hegemony of Democracy". Consider Germany after WW2. Allied won over Germany but did US establish a "US Hegemony" in Germany? No. They established Democracy in Germany. Once you give people the freedom to self-govern, you can not have hegemony over them, unless you are a corrupt state. But assuming that US…

It's telling you had to go back to 1945 for your example. A catalog of US foreign interference since then makes for pretty grim reading: https://en.wikipedia.org/wiki/United_States_involvement_in_r...

If you want a more recent example Iraq was crushed, but not put under the US’s boot. It may have failed nation building in Afghanistan, but it tried rather than adding more territory.

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#146

Earlier quoted context omitted.

If you don't like Java and generate your way around it, that's not a genuine measure of productivity in Java. Just like using a HLL (which generates machine language) isn't a measure of machine language productivity. Whatever approach you settle on is a language. E.g "Bob's Lisp-based Java Generator" is a language. It's neither Java, nor Lisp. That language helps give Bob a certain productivity. What Bob is doing rep…

The productivity I am talking about is $ generated per time/cost. Not what you call “language productivity”. For example, you will be more productive using C than (say) Python if your Python solution requires more servers to run than your C solution. Even if it took longer to write the C solution. Because the long term cost of the servers will be higher than the development cost. Which is why Google and other compani…

That's a tricky one. If the product didn't sell, but the developers earned good salaries, was there productivity?

If a widely used, free program received $1500 in donations over fifteen years, is that $100/y productivity?

If I write the code and get paid, does it matter whether nobody runs it after that? Or whether it runs a lot without me getting paid more?

Basically, given $/t, whose $ and whose t are we talking about? Should these parameters not be constrained to be those of the same person or people? Or is it okay to divide the money made by some users of the software downstream, by the development time?

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#147

Earlier quoted context omitted.

The productivity I am talking about is $ generated per time/cost. Not what you call “language productivity”. For example, you will be more productive using C than (say) Python if your Python solution requires more servers to run than your C solution. Even if it took longer to write the C solution. Because the long term cost of the servers will be higher than the development cost. Which is why Google and other compani…

That's a tricky one. If the product didn't sell, but the developers earned good salaries, was there productivity? If a widely used, free program received $1500 in donations over fifteen years, is that $100/y productivity? If I write the code and get paid, does it matter whether nobody runs it after that? Or whether it runs a lot without me getting paid more? Basically, given $/t, whose $ and whose t are we talking ab…

Yep productivity is a complicated tricky subject. And yes if your work generates zero $ then your productivity is zero by my definition. Or actually negative if you spent money doing it. This is because I am thinking like a business person.

However you can use other definitions of productivity of course. You could define it to be issues fixed per month for example. However that is even more tricky. Because different issues require different skills and effort. And to make it even more complicated, an issue that is easy for Ada to fix might be hard for Bob. Simply because Ada have fixed similar issues before. So Ada using C++ might be way more productive than Bob using Python. But that doesn’t prove that C++ is more productive than Python of course.

Which is why studies using the same people to solve the same problem twice using 2 different languages to “prove” that language A is more productive than language B is non-scientific BS. Obviously solving the same problem the second time gives you a huge advantage. No matter the language you use. And obviously the people involved will know one of the languages better than the other. Which again makes the whole experiment non-scientific BS.

So yes productivity is a complicated slippery tricky thing to nail down. We all think we know what it means but the more objective/precise we try to be the more slippery and complicated it gets :)

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#148
post #145
post #141

Earlier quoted context omitted.

It's telling you had to go back to 1945 for your example. A catalog of US foreign interference since then makes for pretty grim reading: https://en.wikipedia.org/wiki/United_States_involvement_in_r...

If you want a more recent example Iraq was crushed, but not put under the US’s boot. It may have failed nation building in Afghanistan, but it tried rather than adding more territory.

Right, only authoritarian governments are interested in conquering territory.

Russia is trying its best to annex Ukraine to itself. But it is not "Russia" that is doing it, it is the authoritarian government of Russia. When did US last annex territories?

The workhorse of authoritarian politics is tribalism. They try to say it is a competition between countries and or races and or religions. They get supporters by making them believe it is their tribe against other tribes that is threatening their very existence.

But the real fight is not between countries or "tribes". It is between Democracy and Autocracy, and that fight is happening in every country.

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#149

Earlier quoted context omitted.

That's a tricky one. If the product didn't sell, but the developers earned good salaries, was there productivity? If a widely used, free program received $1500 in donations over fifteen years, is that $100/y productivity? If I write the code and get paid, does it matter whether nobody runs it after that? Or whether it runs a lot without me getting paid more? Basically, given $/t, whose $ and whose t are we talking ab…

Yep productivity is a complicated tricky subject. And yes if your work generates zero $ then your productivity is zero by my definition. Or actually negative if you spent money doing it. This is because I am thinking like a business person. However you can use other definitions of productivity of course. You could define it to be issues fixed per month for example. However that is even more tricky. Because different…

> yes if your work generates zero $ then your productivity is zero by my definition

Not only that, but you're not a good software developer, because you didn't "figure out how to be productive and get things done in any programming language".

Re: The rise and fall of Lisp at the Jet Propulsion Lab (2002)

#150

Earlier quoted context omitted.

Yes, but OO languages create the same spaghetti-code morass that imperative languages did. As opposed to, say, functional languages, for which it seems far harder for some reason to create spaghetticode

Some of the cleanest code I have ever seen was written in C/C++. And some of the worst spaghetti-code I have ever seen was written in C/C++. Bad developers write spaghetti-code. Languages don’t write anything.

Out of curiosity, can you point me to some of this very clean C/C++ code?
Post reply on HN