But the world is far messier than that and if, like me, you come from a systems or real-time programming background then Lisp basically did not exist and you were using C-based languages (or even assembler) that were close to the metal so you could code interrupt handlers, asynchronous I/O drivers and the like. Obviously trying to tackle those kinds of problems from a Lisp-centric viewpoint would seem slightly crazy, so why bother?
How knowing Lisp destroyed my programming career (2006)
101–110 of 433 posts
Re: How knowing Lisp destroyed my programming career (2006)
#102Earlier quoted context omitted.
I'd put it differently. Software development severely lacks any objective metrics of performance and quality. We just haven't invented any(at least any practical enough to become mainstream). As a result, we quite often misjudge our(and others') skill and make bad decisions. It's the goal of software to provide more and more features. The problem is, we usually achieve those features by abusing abstractions we are us…
> we are fundamentally unable to reuse already written code on scale Actually I disagree - it's just that when something does become reusable it immediately vanishes from people's consciousness. You can see this both in things that become standard library features, and open source components that end up ubiquitous. The list of "incorporates software from" in licenses gets ever longer as people embed copies of SQLite,…
Re: How knowing Lisp destroyed my programming career (2006)
#103Using any language for twenty years straight is going to make you complacent - but goodness, how many languages would have given you that luxury?
The APL / J / K family of languages seems to be very strong with this effect. If it fits your problem domain, it's (apparently) so powerful that using anything else feels like a frustrating waste of time.
HN discussion(2010) : https://news.ycombinator.com/item?id=1041500
Re: How knowing Lisp destroyed my programming career (2006)
#104For a while now I've had a feeling that all the comments about lack of engineers(especially in software) are vastly underestimated. Probably around 10% of us is capable of doing actual software development. The rest writes plumbing and can handle the project for only as long as abstractions available through libraries can hold the complexity. If we assume most of us don't really know what we're doing, that totally ex…
Re: How knowing Lisp destroyed my programming career (2006)
#105Earlier quoted context omitted.
I think of those C and Perl fit the most. You can't write C++ or Java like you did 20 years ago (of course, you could but you shouldn't ). Both languages and their whole ecosystems have evolved tremendously in 2 decades. The C and Perl style OTOH has changed less. A programmer of those language from 20 years ago that is transported to the present day will have much less problems fitting in than a programmer of C++ an…
This depends on your target platform. Mine: > cl.exe Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
I hope they pay you enough for the pain and suffering of using it. :-)
Re: How knowing Lisp destroyed my programming career (2006)
#106Honestly curious why Lisp has so much admiration and praise on HN. I played around with Scheme some long time ago, read SICP, learned a lot. And I know Lisp inspired many programmers like the founder of Ruby. But I would not think of Lisp when it comes to solving day to day problems. I rather pick Python because it helps me solve all kinds of problems. There are many more solutions I can think of (Ruby, Node, Go, eve…
Paul Graham and Robert Tappan Morris, two of the founders of YCombinator, love Lisp/Scheme. They got rich by selling their company Viaweb to Yahoo. You guessed it: Viaweb was written in LISP and Paul Graham believes that this was their secret weapon:
> http://www.paulgraham.com/avg.html
Also the software that drives Hacker News is written in Arc, a Lisp dialect that was invented by Paul Graham.
So Hacker News and YCombinator are indeed at least historically very attached to Lisp/Scheme.
Re: How knowing Lisp destroyed my programming career (2006)
#107Earlier quoted context omitted.
> "actual software development" and "plumbing" is elitist, Perhaps, but you are the person who prepended 'mere' in front of plumbing.
I'll take it out again if people are going to argue by string matching rather than reading the tone of the original post.
Re: How knowing Lisp destroyed my programming career (2006)
#108For a while now I've had a feeling that all the comments about lack of engineers(especially in software) are vastly underestimated. Probably around 10% of us is capable of doing actual software development. The rest writes plumbing and can handle the project for only as long as abstractions available through libraries can hold the complexity. If we assume most of us don't really know what we're doing, that totally ex…
Re: How knowing Lisp destroyed my programming career (2006)
#109> knowing Lisp made me all too keenly aware of Java's shortcomings, and I had a very hard time not being angry at how stupid it was that I was being forced to use it. I would take this as a the thing to remember from this. When you are too angry at something, you cant learn it. I have seen the emotional refusal to learn new inferior thing (or read comments that amounted to the same) many times already. It is somethin…
I'm interested in knowing your secret to finding inferior new things interesting.
So, the secret is to be alone in a room, so you can swear freely. Walk around when angry and complain to yourself. But always go back and continue using it and eventually, that phase will pass. After that you will build new set of habits that work around disadvantages and use advantages.
Re: How knowing Lisp destroyed my programming career (2006)
#110I came to Lisp (Scheme/Racket) from that another side (C++, Java, Perl) and it was an enlightening experience. Now I use Lisp nearly everywhere in a form of a small .NET runtime module. Lisp is excellent at templating tasks. Just for comparison: StringTemplate for .NET is a whooping 400 kB of compiled binary code while my implementation of Lisp is just 35 kB (!). Sure enough, Lisp does the very same thing as StringTe…
Although that approach to string creation tends to fall apart quickly in non-English languages: adjectival agreement, plural rules etc.
"David has %n% apple%(when (> n 1) "s")%."
You can move that rule to function etc. You can tweak that for the language you use in an endless number of ways.