[REBOL] Re: Morphing (was: About CONTINUATIONS)
From: joel:neely:fedex at: 26-Feb-2002 7:00
Hi, Chaz,
I don't know if it's still in print, but a *very* good introduction
to LISP, requiring only standard programming skills, is in
_Functional_Programming_Application_and_Implementation_
by Peter Henderson,
Prentice-Hall, 1980
ISBN: 0-13-331579-7
It introduces functional programming, contrasts it with imperative
programming, designs and implements LispKit LISP, and adds some
interesting features (e.g. lazy evaluation, nondeterminism...)
I'd recommend that one first, followed by SICP, of course.
_Structure_and_Interpretation_of_Computer_Programs_
Abelson, Sussman, Sussman
MIT Press, 1985
ISBN: 0-262-01077-1
or
McGraw-Hill
ISBN: 0-07-000-422-6
which should be on every programmer's bookshelf (well-thumbed with
lots of bookmarks sticking out of it... ;-)
-jn-
chaz wrote:
> Where would a developer begin, if one had an interest in implementing Scheme
> in REBOL?
>
> ----- Original Message -----
> From: "Gabriele Santilli" <[g--santilli--tiscalinet--it]>
> To: <[rebol-list--rebol--com]>
> Sent: Monday, February 25, 2002 9:14 AM
> Subject: [REBOL] Re: About CONTINUATIONS
>
> At 10.10 25/02/02, Maarten wrote:
>
> >If REBOL (and the likes) offer anything, it is the ability to morph it into
> >whatever you like. So if it is not there, try to add it yourself and make
> it
> >available. It is something RT does not stress enough: if you need it and it
> >is not there, morph it into what you want.
>
> I agree wholeheartedly! This point should REALLY be stressed.
>
> Regards,
> Gabriele.
> --
> Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer
> Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r
>
> --
> To unsubscribe from this list, please send an email to
> [rebol-request--rebol--com] with "unsubscribe" in the
> subject, without the quotes.
>
> --
> To unsubscribe from this list, please send an email to
> [rebol-request--rebol--com] with "unsubscribe" in the
> subject, without the quotes.
--
; sub REBOL {}; sub head ($) {@_[0]}
REBOL []
# despam: func [e] [replace replace/all e ":" "." "#" "@"]
; sub despam {my ($e) = @_; $e =~ tr/:#/.@/; return "\n$e"}
print head reverse despam "moc:xedef#yleen:leoj" ;