Live data from Hacker News

Why Racket? Why Lisp? (2014)

practicaltypography.com

41–50 of 168 posts

Re: Why Racket? Why Lisp? (2014)

#41
post #37

Earlier quoted context omitted.

I'd encourage you to give it a longer try. When selecting a language, just pick R(5,6,7)RS and you're set. Liking syntax sugar is hardly a reason not to use the language with the most powerful macros around. You can write macros to provide nice literal syntax for whatever you want - this is part of the fun.

Have not yet learned to use or appreciate macros. The idea of everyone having to come up with their own syntax for such commonly-needed things as, say, hashes, seems counter-productive to me. That would lead to everyone's code looking like a different language.

I never said "with lisp, everyone has to come up with their own syntax for commonly-needed things". But it sounds your mind is already made up by hypothetical prejudices.

You said you stick with Clojure over Scheme on account of some syntax. I said you can have that syntax in Scheme. You then said the non-sequitur "the idea I created in my mind of each individual user coming up with their own syntax is absurd", which I agree with. I don't know what to tell you but you seem confused. What you said is not a response to what I told you. I eliminated the difference you complained about, and you complained that in Scheme it's possible to solve the issue you have with it.

There's no pleasing some people.

Re: Why Racket? Why Lisp? (2014)

#42
How production ready or mature are Racket libs for creating CRUD web services? skimming through the Racket website one can see Racket has the basics, a http server and a library for interacting with databases like postgresql, as someone relative new to programming/webdev, would I face to much "reinvent the wheel" versus Clojure or Javascript?

Re: Why Racket? Why Lisp? (2014)

#44
> What's in it for me? Expressiveness.

I appreciate the author's wanting a more explicit and practical answer to this question, but I don't think his answer here ("expressiveness") does any better job than the other explanations he criticizes.

> But [learning Lisp] also requires an investment of about 100–200 hours. That's asking too much.

No, it's not. That's how long it takes sometimes, or longer. Why do we all expect answers and understanding to come so quickly and easily? It'd be a nice world otherwise, but almost always enlightenment comes at a cost: patient focus and study.

Re: Why Racket? Why Lisp? (2014)

#45

Earlier quoted context omitted.

Practical Common Lisp by Peter Seibel: http://www.gigamonkeys.com/book/

PCL is a good book but too wordy for my taste. Paul Graham's ANSI Common Lisp will get an advanced programmer up to an advanced level more quickly and efficiently. http://www.paulgraham.com/acl.html

I'd say both are essential, but PCL should be digested first (no need to read every paragraph). On Lisp is IMHO a lambda power user guide and not a good general introduction to CL.

Re: Why Racket? Why Lisp? (2014)

#46
post #18

I have so far stuck with Clojure instead of a Scheme primarily because of the nice literal syntax for maps, sets, vectors, and regexes that Clojure supports. I don't want to give that up and just use cons/car/cdr. And also, last time I looked at Racket, it seemed very focused on academics. I just wanted to write some simple Scheme in a .scm file and try it out (a script), but I think I had to choose a language first…

I'd encourage you to give it a longer try. When selecting a language, just pick R(5,6,7)RS and you're set. Liking syntax sugar is hardly a reason not to use the language with the most powerful macros around. You can write macros to provide nice literal syntax for whatever you want - this is part of the fun.

When selecting a language, just pick R(5,6,7)RS and you're set.

Might as well use `#lang racket` and get the already-existing regular expression literals, "batteries included" libraries, etc.

Re: Why Racket? Why Lisp? (2014)

#47

It's about a month since I've started seriously diving into lisp. The last couple of weeks I've spent my days reading 'The joy of Clojure', Structure and Interpretation of Computer programs, lots of tutorials and documentation, playing around in the repl + experimenting with all kinds of frameworks and libs in clojure (eg. Om). I've spent today implementing the brainfuck interpreter in Racket. I can't explain it, it'…

It's not so sudden. HN itself is written in a LISP [1], and Paul Graham's pre-YC claim to fame was Viaweb, a store platform written in LISP that became Yahoo Stores. This community has been above-average LISP friendly for a long time.

LISP's also has a long history of popping up all over the place because they are extremely implementation-friendly (if you want to write a simple language; if you want to make things fast they get trickier, thought by no means impossible) given the simple syntax.

So you'll also find a lot of people (like me) who don't really like LISPy languages, but who still end up dabbling with related technologies occasionally (my very-slowly-in-progress Ruby compiler uses s-expression syntax (though no LISP semantics to speak of) to express a tiny language to implement some of the lower-level plumbing to bootstrap the Ruby core classes, for example)

[1] http://arclanguage.org/

Re: Why Racket? Why Lisp? (2014)

#48
"Paul Graham’s programming language Arc, a dialect of Lisp, was built on top of Racket."

Since that statement occurs in a section about Racket languages, I should probably clarify. Arc isn't technically a Racket language—that is, it doesn't use any of Racket's facilities for defining new languages. It compiles to Racket (and so you're all using it right now), but has its own distinct implementation.

Historically, Arc wasn't built on top of Racket. I think pg may have started on Common Lisp, then went to Scheme 48, Mz Scheme, and so on. Probably the most accurate thing to say is that Arc was built in pg's head after years of thinking about Lisp. It doesn't have a particularly close relationship to any of those underlying platforms. Semantically it's closest to Common Lisp, but don't tell pg I said that.

Re: Why Racket? Why Lisp? (2014)

#49

is there a tl;dr. After about 45 secs of reading author did not answer why racket or why lisp

1 - Everything is an expression so it's easier to snap code together. 2 - List based = flexibility, get more done faster because lists are simple and everywhere 3 - Strongly nudges in the direction of functional programming 4 - Rocking documentation, advanced libraries 5 - The Dr Racket GUI IDE 6 - X-expressions (don't know what they are) 7 - Hygienic macros 9 - Easy to write powerful DSLs 10 - Many low hanging fruit…

Dr Racket is a horrible IDE. Routinely uses ungodly amounts of ram, ever try scrolling through your code because it spends 30 seconds in some paren matching loop.

Re: Why Racket? Why Lisp? (2014)

#50
post #49

Earlier quoted context omitted.

1 - Everything is an expression so it's easier to snap code together. 2 - List based = flexibility, get more done faster because lists are simple and everywhere 3 - Strongly nudges in the direction of functional programming 4 - Rocking documentation, advanced libraries 5 - The Dr Racket GUI IDE 6 - X-expressions (don't know what they are) 7 - Hygienic macros 9 - Easy to write powerful DSLs 10 - Many low hanging fruit…

Dr Racket is a horrible IDE. Routinely uses ungodly amounts of ram, ever try scrolling through your code because it spends 30 seconds in some paren matching loop.

I wouldn't say "horrible." I haven't used it for large projects, only for tinkering, but for that purpose, it's excellent.
Post reply on HN