exercism / common-lisp

Exercism exercises in Common Lisp.
https://exercism.org/tracks/common-lisp
MIT License
82 stars 77 forks source link

Track is missing an docs/ABOUT.md #89

Closed verdammelt closed 8 years ago

verdammelt commented 8 years ago

If you visit http://exercism.io/languages/lisp and then click on 'About the Common Lisp Track' it says "We're missing a short introduction about the language.". And to put that text into docs/ABOUT.md.

So I guess we need on of those.

kytrinyx commented 8 years ago

Yes, please :)

The idea behind the introduction is not to be wikipedia, but to tell people why they'd want to play with it.

wobh commented 8 years ago

Why would someone want to use Common Lisp? I know my reasons, but I expect them to be idiosyncratic.

canweriotnow commented 8 years ago

LISP is worth learning for a different reason — the profound enlightenment experience you will have when you finally get it. That experience will make you a better programmer for the rest of your days, even if you never actually use LISP itself a lot. (You can get some beginning experience with LISP fairly easily by writing and modifying editing modes for the Emacs text editor, or Script-Fu plugins for the GIMP.) — ESR

verdammelt commented 8 years ago

Why would anyone use Common Lisp?! :) All the cool kids are using Clojure, the academically minded are using some version of Scheme. Common Lisp was built by committee and that shows in spots.

Maybe I shouldn't write it? :)

I use Common Lisp for conscious and unconscious reasons. Its syntax is mostly sparse and clean, but not as far as Scheme goes. It has good support for any style of programming you want, whether that style had been around when it was standardized or not. It has a reasonably wide language set so there is very often the function you need there in the language. It does not attempt to solve the problem of unhygienic macros - which is a boon when you don't want them - but gives you the tools to write them if you want them. It has crazy little quirks that make me smile or say "WTF" (but not in bad ways like other languages (Looking at you CoffeeScript (most recently)) - like the ~R directive to format. I think there is also some nostalgia I feel for this language which I've been playing with for so many years, lurking in comp.lang.lisp...

Every point above I could turn into a negative too probably. No language is perfect, and Common Lisp definitely isn't perfect (hash tables are a pain to use for example) - but I know that if I don't like something about this language I can add something myself and make it the language I want.

"Lisp isn't a language, it's a building material."

  • Alan Kay
kytrinyx commented 8 years ago

I actually think all of the above makes good intro material. We're not trying to sell anything, and I think these things are perfect for whetting people's curiosity.

wobh commented 8 years ago

How I hate that ESR quote. Not wild about the Kay one either, although years later (only recently, really) I've come to see why he said that. I'm glad they've been brought up though, because it reminds me that there's an astonishing amount of CL and general Lisp hype and antihype, written over the decades which I think worth warning newbies to treat with extreme skepticism when they come across it. I feel uncomfortable adding to it here, but we could provide a bunch of links to various things:

Others as I think of them.

kytrinyx commented 8 years ago

[T]here's an astonishing amount of CL and general Lisp hype and antihype, written over the decades which I think worth warning newbies to treat with extreme skepticism when they come across it.

Excellent point, and something that makes the language even more interesting, to my mind.

Here's one random fun one I saw a few years ago, entitled something like "proof that god used lisp"

god-used-lisp

wobh commented 8 years ago

Ron Garret's recent Why Lisp: http://blog.rongarret.info/2015/05/why-lisp.html and rather less recent Lisping at JPL http://www.flownet.com/gat/jpl-lisp.html

More Kent Pitman, answering questions from Slashdot:

Peter Siebel's Why Lisp? http://www.gigamonkeys.com/book/introduction-why-lisp.html introduction to Practical Common Lisp

Peter Norvig's preface to Paradigms of Artificial Intelligence Programming: http://www.norvig.com/paip-preface.html

CLISP Propaganda: http://clisp.org/propaganda.html

Lispworks Common Lisp - Myths and Legends http://www.lispworks.com/products/myths_and_legends.html

John McCarthy Lisp-Notes on its Past and Future http://www-formal.stanford.edu/jmc/lisp20th/lisp20th.html

canweriotnow commented 8 years ago

Well, let's not forget Gabriel's Lisp: Good News, Bad News, How to Win Big, aka "Worse Is Better"

Or, for that matter, Paul Graham's big Lisp essays:

Beating The Averages

(Sorry, @wobh, for citing an essay that cites that ESR essay :-p)

Revenge of The Nerds

I guess the answer to "why learn Common Lisp?" is "it sure beats writing Blub!"

wobh commented 8 years ago

I had, by no means, forgotten those. ;-)

canweriotnow commented 8 years ago

Any movement on this? I'd be happy to write a draft sometime this weekend and post it for comment.

verdammelt commented 8 years ago

Haven't had the time lately. Been trying to get back to #69 first. Feel free to take a stab at this. (assign it to yourself if you will do it).

wobh commented 8 years ago

Thank you!

canweriotnow commented 8 years ago

Sounds good. I'm going to do it from scratch in org format if no one objects, since I plan on running pandoc to org-ify the rest re #101

verdammelt commented 8 years ago

@canweriotnow any update?

wobh commented 8 years ago

Okay if I take this one over?

wobh commented 8 years ago

Please review ☝️ https://github.com/wobh/xlisp/commit/7de2bbda388530f6608eaf7080e97cfb3a2a7d22

verdammelt commented 8 years ago

@wobh Looks good. But maybe we want to add a little prompting people to give it a try.

Something about: multi-paradigm, strong function & OO facilities, clean syntax, wide standard library, macros etc.?

verdammelt commented 8 years ago

Hey @wobh I've decided I'd like to merge this in. Either go ahead and push your change to xlisp or submit a pull request and I'll merge.

wobh commented 8 years ago

Thanks! All but forgot.