Live data from Hacker News

Ooh Ooh My Turn Why Lisp? (2008)

smuglispweeny.blogspot.com

71–80 of 160 posts

Re: Ooh Ooh My Turn Why Lisp? (2008)

#71
I'm of the opinion that there is only one lisp right now with some serious potential to dominate in the future, and that is Racket. Why? For one very simple reason: unlike all other lisps, there is serious, ongoing, and lengthy research into correctly bringing a static type-checking process to the language. Clojure's core.typed doesn't count here, as it is full of significant holes that invalidate its entire point -- though, those holes are very possibly getting filled in the coming years as they attempt to refactor core.typed following the Racket model. But the Racket team is doing something with lisp that is true to its core, not just with types, but with many other features as well.

Interesting piece of trivia: this website you are reading right now is built on top of Racket.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#72
post #51

Earlier quoted context omitted.

I dislike Lisp (and Lisp-inspired languages like Scheme and Clojure) for two reasons: 1. their weak and dynamic type system, and 2. they don't control side-effects.

Haskel programmers: you can spot them by that constant pained look, as if they have to step in horse poop whenever they go outside.

Why did you feel the need to deride someone for simply expressing their opinion? Do you think it helps the discussion?

Re: Ooh Ooh My Turn Why Lisp? (2008)

#73
post #51

Earlier quoted context omitted.

I dislike Lisp (and Lisp-inspired languages like Scheme and Clojure) for two reasons: 1. their weak and dynamic type system, and 2. they don't control side-effects.

Haskel programmers: you can spot them by that constant pained look, as if they have to step in horse poop whenever they go outside.

Your comment is almost accurate when referring to Haskell programmers who have not used the language for very long.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#75

For UI application programming You can do without FP language features. Hell, you can even do without smart pointers checked arrays or GC. But you cannot do without a decent desktop or web development experience. I got involved with pretty large desktop applications written in delphi. The design-time, the debugger, native compilation without having to install some msvc runtime, deriving and combining visual component…

> For UI application programming You can do without FP language features.

Wow, do I ever disagree with you on this. The absolute best UI development process I've ever had -- super easy, fun, fast, painless -- was using Clojurescript's Om, which is functional to the core. Doing anything else, like going back to the polished UI API's of Apple still feels arcane by comparison.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#76
post #14

It's a nice perspective. Very practical and down to earth. There is another side though, and that is that learning to think of code as data is extremely empowering and translates well when working with a fairly large set of other languages (Perl, Python, Ruby, and now even Java). Learning Lisp turns you into a better programmer.

I like Scheme/Lisp but I don't know if I buy the whole "learning Lisp turns you into a better programmer". Maybe more knowledgeable but not necessarily a better a developer. In some ways learning a really flexible language like Lisp can turn you even into a really bad developer. I say "developer" instead of "programer" because I want to emphasize working with others and thus sharing code with others. Of course this i…

I think that more specifically, "Learning FP makes you a better programmer", and you often learn FP when learning lisp, so the original statement is often true as well.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#77
post #46
post #37

Earlier quoted context omitted.

You confuse powerful with popular. Many startups don't need powerful tools, other than a CRUD framework and JQuery. Also, existence and abundance of libraries is a factor, and Lisp didn't get much love from the OSS web folks til recently.

Well, no, I'm not confusing powerful and popular. I'm asking why, for all lisp's power, there's almost no examples of that power actually doing anyone any good. Is it because most projects don't need something powerful? The benefits of that power aren't actually that great compared to the rest of the lisp baggage? We have this trope of the smug lisp weenie and there's definitely a whiff of high wizardry around lisp,…

Emacs's been shipping for three decades. It's the eldest of the living open source software.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#78
post #19
post #14

Earlier quoted context omitted.

I like Scheme/Lisp but I don't know if I buy the whole "learning Lisp turns you into a better programmer". Maybe more knowledgeable but not necessarily a better a developer. In some ways learning a really flexible language like Lisp can turn you even into a really bad developer. I say "developer" instead of "programer" because I want to emphasize working with others and thus sharing code with others. Of course this i…

I'm biased, but there's a big difference between "learning lisp" (well enough to transliterate that python program) and really getting the code as data concept. I'd say that learning X really well is always a positive because whenever you learn something in depth you can then apply the concepts elsewhere. And there are still lisp-only concepts, so learning lisp is positive. ML is good too. Also spending time with a w…

I personally think the "code as data" concept is not so important in lisp. It is critical to writing macros, but you often don't write macros and beginners to lisp often abuse macros.

I've written Clojure professionally now for a couple years and am pretty fast and proficient at it, but when I write a function call, I don't think of it as a list, even though that is what it is. I don't think any lisper does. It's just a function with arguments and I'm writing in the syntax necessary, which happens to be a list.

In those rare occasions where I think a macro is necessary, sure, it helps that a function call is a list, but that's hardly the main role in a day's work.

Re: Ooh Ooh My Turn Why Lisp? (2008)

#79
post #62
post #18

"The question is where will we be in five years, the answer is using Common Lisp, because of language features" says the author in the comments. This was 8 years ago. Kind of rude of me to take that potshot, but it's there. I've been reading these "Why Lisp?" Arguments for years and yet it still remains pretty niche. The longer this goes on the more I am unable tell Lisp advocates apart from Perl advocates. They both…

Well, I'm still using Common Lisp. If there was anything better, I'd have probably switched.

[deleted]

Re: Ooh Ooh My Turn Why Lisp? (2008)

#80
post #59
post #18

"The question is where will we be in five years, the answer is using Common Lisp, because of language features" says the author in the comments. This was 8 years ago. Kind of rude of me to take that potshot, but it's there. I've been reading these "Why Lisp?" Arguments for years and yet it still remains pretty niche. The longer this goes on the more I am unable tell Lisp advocates apart from Perl advocates. They both…

I like niche stuff. What language doesn't result in unmaintainable code, really? And let me just say... it's a bit rude to spread this rumor that Lisp is anti-social and bad for business when you've barely even tried it. Seriously. "Prove me wrong" is not a good way to discuss. See for yourself instead: learn Lisp and try to use it to write maintainable code.

I think you touch an interesting area. For me, figuring out how to make code maintainable (including error handling) is still an area of research, and I'm not a newbie. At least Lisp, with its metaprogramming facilities, gives you some good tools for experimenting. And I do think that the experimental character of the original problem space when Lisp was discovered plays an important role there.
Post reply on HN