[gambit-list] developing with gambit

Jeff Read bitwize at gmail.com
Thu Jul 27 02:16:55 EDT 2023


Hi Will,

On Tue, Jul 25, 2023 at 10:52 PM Will Senn <will.senn at gmail.com> wrote:

> Hi all,
>
> I am a new gambit user. I am working through some scheme texts and gambit
> fits the bill nicely. I am curious as to how most folks develop in gambit.
> Do you use a terminal and text editor, emacs, or what? So far, I have been
> using terminal and kate, but it would be nice to have some integration. I
> was thinking along the lines of what a primitive ide provides where you
> edit your whatever.scm and then execute it or parts of it on demand from
> the editor.
>
>
Most of us use Emacs, I'd wager -- I know I do -- but a terminal and text
editor is a perfectly cromulent, if cumbersome, way to develop in Scheme.
In general, I've come to believe that Emacs is now a liability for the Lisp
community, rather than a strength. By giving the impression that Emacs is a
requirement, or darn near a requirement, to develop in Lisp, we risk
alienating a large chunk of the base of potential new developers. Therefore
I would strongly urge anyone interested in developing in Lisp (whether CL,
Scheme, or otherwise) to do so, irrespective of whether they intend to
learn Emacs; and for hackers on other editors to build out better Lisp
tooling -- in particular, most new programmers these days use Visual Studio
Code; we've got to meet them where they are and have better Scheme
integration for VSCode.


> I'm a vi guy, so I don't know much about emacs, but folks seem to like
> that environment, especially when it comes to lisp, et. al. If you're using
> emacs, and think that's the way to go, please give me a clue where to
> start. I can M-x run-scheme and it pulls up gambit in a scheme inferior
> mode (whatever that is) and it'll let me run gambit in the window, but that
> doesn't seem any  more useful than doing it in terminal.
>
>
"Inferior" means Emacs starts and controls the Scheme process. In
particular, Emacs can send whatever it likes to the Scheme process to be
evaluated by Scheme.

The upshot of this is, if you have a running inferior scheme, there are
keybindings in every scheme-mode buffer that let you push a chunk of that
buffer (region, last sexpr, etc.) to the running inferior scheme. This
alone is worth its weight in gold, because it makes things much faster than
pasting into a terminal repl. Geiser gives you even more convenience. Say
C-h f inferior-scheme-mode for more information (or C-h f geiser-mode once
you install Geiser).

There's also Neovim with the conjure extension:
https://github.com/Olical/conjure
  <https://mailman.iro.umontreal.ca/cgi-bin/mailman/listinfo/gambit-list>
Hope that gives you options to think about.

--Jeff
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20230727/9e32b6e6/attachment.htm>


More information about the Gambit-list mailing list