diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-08-14 21:48:10 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-08-14 21:48:10 +0200 |
commit | 203b248cd24a86934fb61183d44b16ceb82eef3b (patch) | |
tree | fa990ab0521d84241baca24d2d3afb6708058bd8 /doc/fun.texi | |
parent | 468f82fcb4a77f3386f1ae1744314a2007bf22df (diff) | |
download | geiser-203b248cd24a86934fb61183d44b16ceb82eef3b.tar.gz geiser-203b248cd24a86934fb61183d44b16ceb82eef3b.tar.bz2 |
New restart repl command and a bit more docs.
Diffstat (limited to 'doc/fun.texi')
-rw-r--r-- | doc/fun.texi | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/doc/fun.texi b/doc/fun.texi index 13c5c72..71490d5 100644 --- a/doc/fun.texi +++ b/doc/fun.texi @@ -294,6 +294,35 @@ with all supported Schemes, no strings attached. @node Evaluating Scheme code, Jumping around, Documentation helpers, Fun between the parens @section Evaluating Scheme code +One of Geiser's main goals is to facilitate incremental development. You +might have noticed that i've made a big fuss of Geiser's ability to +recognize context, by being aware of the namespace where its operations +happen. + +That awareness is specially important when evaluating code in your +scheme buffers, using the commands described below. They allow you to +send code to the running Scheme with a granularity ranging from whole +files to single s-expressions. That code will be evaluated in the module +associated with the file you're editing, allowing you to redefine values +and procedures to your heart's (and other modules') content. + +Macros are, of course, another kettle of fish: one needs to re-evaluate +uses of a macro after redefining it. That's not a limitation imposed by +Geiser, but a consequence of how macros work in Scheme (and other +Lisps). There's also the risk that you lose track of what's actually +defined and what's not during a given session. But, +@uref{http://programming-musings.org/2009/03/29/from-my-cold-prying-hands/,in +my opinion}, those are limitations we lispers are aware of, and they +don't force us to throw the baby with the bathwater and ditch +incremental evaluation. Some people disagree; if you happen to find +@uref{http://blog.racket-lang.org/2009/03/drscheme-repl-isnt-lisp.html, +their arguments} convincing, you don't have to throw away Geiser +together with the baby: @kbd{M-x geiser-restart-repl} will let you +restart the REPL as many times as you see fit. + +For all of you bearded old lispers still with me, here are the commands +performing incremental evaluation in Geiser: + @node Jumping around, Geiser writes for you, Evaluating Scheme code, Fun between the parens @section Jumping around |