Jordan Schatz wrote at 12/11/2011 10:15 PM:
On Sun, Dec 11, 2011 at 04:25:46PM -0600, Gerry Weaver wrote:
I am new to Racket and Lisp/Scheme in general. I am trying to write a
simple rest web service in Racket, but I'm not making much
progress.
It's doable with the Racket Web Server. Part of the difficulty people
might be seeing is that the Racket Web Server is big on
continuation-based Web serving, which is both very powerful and very
difficult to understand initially. If you're trying to "write Fortran
in any language" by doing non-continuation-based serving, there's a lot
of other stuff there to confuse you.
Also, don't get frustrated by the documentation: when I first did a Web
app using the Racket Web Server, I had 10 years of Racket/Scheme
experience, and I was still confused about which choices I should be
making and how to do familiar things within those. Once I found some
things that worked, however, I blew through the app more quickly than I
could've with any language and framework I've seen.
(At this point, the author(s) of the Racket Web Server might be thinking
"We've put expert person-years into design, code, entire manuals, and
tutorials... what more could anyone need?" :)
So I have started to collect
the info I find, problems I encounter etc into a "missing manual" and
would love to collaborate on it if you are interested. I intend for it to
be something of a quick start for someone who already knows how to
develop, but is new to lisp, functional programing, and the racket web
server.
I have been working, on-and-off, on such a book recently. If only
billionaire J.K. Rowling's publisher would answer my phone calls and
letters about a hefty advance against royalties, my attention would not
be so divided.
Incidentally, there is an awkward situation with Racket books targeting
professional developers: every time nowadays I have to do something in
Java (I was an early Java app developer), and Google for answers to
technical questions about contemporary Java frameworks and libraries, I
am horrified that the vast majority of people attempting answers in
developer forums seem to have little idea what they're doing. So, while
I would like my book to poach from among the smartest 20% of Java
developers, I think that the lower 80% need a very different book before
they could do good work in Racket, and I wouldn't even try to write that
book for the 80%. Here's an early rough draft of paragraphs 2-4 of my
irreverent book for the 20%, right before paragraph 5 puts any surviving
readers into the pool. I'll revisit the intro if the rest of the book
ever gets done.
> [TITLE] is targeted at people who already have software
> development experience, and who are smarter than the
> average bear. Smarter, in the sense of learning from their
> experience, and continually finding and adopting better
> ways to do things.
> Is [TITLE] not yet for you? People who are new to
> Computer Science, or who do not have much experience with
> programming languages, are better served by first working
> their way through the textbook,
> @hyperlink["http://www.htdp.org/"]{@italic{How to Design
> Programs} (HtDP)}. HtDP will not teach you Racket, but it
> will help build you up from ground zero to think about
> problem-solving, laying a good foundation for then
> learning Racket.
> The mention above of [TITLE] being for people who are
> smarter than the average bear is not only a clever ploy to
> increase book sales by flattering the reader. Some people
> are more comfortable, in the work aspects of their lives,
> relaxing into the leisurely pace of, say, a pigeon. A
> pigeon's life is simple, if slow and tedious. There is
> nothing wrong with that, and indeed pigeons perform a
> useful function of cleaning urban parks of lunch scraps.
> Pigeons also defecate all over everything, and their guano
> can even infect others with disease. Racket is not for
> pigeons.
--
http://www.neilvandyke.org/
_________________________________________________
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/users