all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* How to use Emacs with Scheme without tears and joint pain?
@ 2009-08-15  1:23 fft1976
  2009-08-15  2:10 ` Giorgos Keramidas
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: fft1976 @ 2009-08-15  1:23 UTC (permalink / raw)
  To: help-gnu-emacs

I tried to use Emacs as suggested in the Gambit manual, and I also
tried the
Quack mode. Either I'm not using them right, or they just don't
provide the functionality I need. I'm not looking for something as
advanced as SLIME necessarily (which AFAIK only works with Scheme48),
but at least something like what you get with ELISP:

When you are editing a file, and eval an expression to the REPL, you
get an answer in the minibuffer (which should temporarily expand if
necessary) Also, if there is an error, you get a kind of pop-up window
that's easy to dismiss and get to the top level of the REPL. I don't
get these with Quack or Gambit mode.

How do you make this work with Emacs? Commercial IDEs ruined this for
me.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to use Emacs with Scheme without tears and joint pain?
  2009-08-15  1:23 How to use Emacs with Scheme without tears and joint pain? fft1976
@ 2009-08-15  2:10 ` Giorgos Keramidas
  2009-08-15  2:54 ` Pascal J. Bourguignon
  2009-08-15  9:00 ` Helmut Eller
  2 siblings, 0 replies; 6+ messages in thread
From: Giorgos Keramidas @ 2009-08-15  2:10 UTC (permalink / raw)
  To: help-gnu-emacs

On Fri, 14 Aug 2009 18:23:52 -0700 (PDT), fft1976 <fft1976@gmail.com> wrote:
> I tried to use Emacs as suggested in the Gambit manual, and I also
> tried the
> Quack mode. Either I'm not using them right, or they just don't
> provide the functionality I need. I'm not looking for something as
> advanced as SLIME necessarily (which AFAIK only works with Scheme48),
> but at least something like what you get with ELISP:
>
> When you are editing a file, and eval an expression to the REPL, you
> get an answer in the minibuffer (which should temporarily expand if
> necessary) Also, if there is an error, you get a kind of pop-up window
> that's easy to dismiss and get to the top level of the REPL. I don't
> get these with Quack or Gambit mode.
>
> How do you make this work with Emacs? Commercial IDEs ruined this for
> me.

I like `M-x run-scheme' a bit.  Setting `scheme-program-name' to "guile"
allows me to run guile(1) from within Emacs and keep a log of my scheme
sessions as I go.



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to use Emacs with Scheme without tears and joint pain?
  2009-08-15  1:23 How to use Emacs with Scheme without tears and joint pain? fft1976
  2009-08-15  2:10 ` Giorgos Keramidas
@ 2009-08-15  2:54 ` Pascal J. Bourguignon
  2009-08-15  7:36   ` fft1976
  2009-08-15  9:00 ` Helmut Eller
  2 siblings, 1 reply; 6+ messages in thread
From: Pascal J. Bourguignon @ 2009-08-15  2:54 UTC (permalink / raw)
  To: help-gnu-emacs

fft1976 <fft1976@gmail.com> writes:

> I tried to use Emacs as suggested in the Gambit manual, and I also
> tried the
> Quack mode. Either I'm not using them right, or they just don't
> provide the functionality I need. I'm not looking for something as
> advanced as SLIME necessarily (which AFAIK only works with Scheme48),
> but at least something like what you get with ELISP:
>
> When you are editing a file, and eval an expression to the REPL, you
> get an answer in the minibuffer (which should temporarily expand if
> necessary) Also, if there is an error, you get a kind of pop-up window
> that's easy to dismiss and get to the top level of the REPL. I don't
> get these with Quack or Gambit mode.
>
> How do you make this work with Emacs? Commercial IDEs ruined this for
> me.

Apart from the popup window, inferior-lisp provides the minimal needed
features.  With C-x C-e I'm happy.

Then you could take the port of swank to scheme48, and adapt it to the
schemes you use, so you could take advantage of slime.

-- 
__Pascal Bourguignon__


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to use Emacs with Scheme without tears and joint pain?
  2009-08-15  2:54 ` Pascal J. Bourguignon
@ 2009-08-15  7:36   ` fft1976
  2009-08-15 10:44     ` Pascal J. Bourguignon
  0 siblings, 1 reply; 6+ messages in thread
From: fft1976 @ 2009-08-15  7:36 UTC (permalink / raw)
  To: help-gnu-emacs

On Aug 14, 7:54 pm, p...@informatimago.com (Pascal J. Bourguignon)
wrote:
> fft1976 <fft1...@gmail.com> writes:
> > I tried to use Emacs as suggested in the Gambit manual, and I also
> > tried the
> > Quack mode. Either I'm not using them right, or they just don't
> > provide the functionality I need. I'm not looking for something as
> > advanced as SLIME necessarily (which AFAIK only works with Scheme48),
> > but at least something like what you get with ELISP:
>
> > When you are editing a file, and eval an expression to the REPL, you
> > get an answer in the minibuffer (which should temporarily expand if
> > necessary) Also, if there is an error, you get a kind of pop-up window
> > that's easy to dismiss and get to the top level of the REPL. I don't
> > get these with Quack or Gambit mode.
>
> > How do you make this work with Emacs? Commercial IDEs ruined this for
> > me.
>
> Apart from the popup window, inferior-lisp provides the minimal needed
> features.  With C-x C-e I'm happy.
>

None of the features I asked about. C-x C-e doesn't send the output to
the minibuffer.

> Then you could take the port of swank to scheme48, and adapt it to the
> schemes you use, so you could take advantage of slime.
>

I don't know ELISP, and really don't feel like reading a book about it
and Emacs hacking just to get some basic Scheme development
functionality working.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to use Emacs with Scheme without tears and joint pain?
  2009-08-15  1:23 How to use Emacs with Scheme without tears and joint pain? fft1976
  2009-08-15  2:10 ` Giorgos Keramidas
  2009-08-15  2:54 ` Pascal J. Bourguignon
@ 2009-08-15  9:00 ` Helmut Eller
  2 siblings, 0 replies; 6+ messages in thread
From: Helmut Eller @ 2009-08-15  9:00 UTC (permalink / raw)
  To: help-gnu-emacs

* fft1976 [2009-08-15 03:23+0200] writes:

> How do you make this work with Emacs? Commercial IDEs ruined this for
> me.

Maybe you should continue to use the Commercial IDEs then.

For Emacs + Scheme (Guile or PLT) there is geiser mode:
http://programming-musings.org/2009/05/14/geiser/

Guile also ships with gds-mode:
http://article.gmane.org/gmane.lisp.guile.user/6423

Helmut


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to use Emacs with Scheme without tears and joint pain?
  2009-08-15  7:36   ` fft1976
@ 2009-08-15 10:44     ` Pascal J. Bourguignon
  0 siblings, 0 replies; 6+ messages in thread
From: Pascal J. Bourguignon @ 2009-08-15 10:44 UTC (permalink / raw)
  To: help-gnu-emacs

fft1976 <fft1976@gmail.com> writes:

> On Aug 14, 7:54 pm, p...@informatimago.com (Pascal J. Bourguignon)
> wrote:
>> fft1976 <fft1...@gmail.com> writes:
>> > I tried to use Emacs as suggested in the Gambit manual, and I also
>> > tried the
>> > Quack mode. Either I'm not using them right, or they just don't
>> > provide the functionality I need. I'm not looking for something as
>> > advanced as SLIME necessarily (which AFAIK only works with Scheme48),
>> > but at least something like what you get with ELISP:
>>
>> > When you are editing a file, and eval an expression to the REPL, you
>> > get an answer in the minibuffer (which should temporarily expand if
>> > necessary) Also, if there is an error, you get a kind of pop-up window
>> > that's easy to dismiss and get to the top level of the REPL. I don't
>> > get these with Quack or Gambit mode.
>>
>> > How do you make this work with Emacs? Commercial IDEs ruined this for
>> > me.
>>
>> Apart from the popup window, inferior-lisp provides the minimal needed
>> features.  With C-x C-e I'm happy.
>>
>
> None of the features I asked about. C-x C-e doesn't send the output to
> the minibuffer.

Try this:

(defun scheme-output-to-minibuffer (string)
  (let* ((string (let ((prompt (format "%s\\'" comint-prompt-regexp)))
                   (if (string-match prompt string)
                       (subseq string 0 (match-beginning 0))
                       string)))
         (string (if (string-match "\\`[\n\t ]*\\(.*[^\n\t ]\\)[\n\t ]*\\'" string)
                     (match-string 1 string)
                     string)))
    (message "%s" string)))


(add-hook 'inferior-scheme-mode-hook
          (lambda () (pushnew 'scheme-output-to-minibuffer
                               comint-output-filter-functions)))



>> Then you could take the port of swank to scheme48, and adapt it to the
>> schemes you use, so you could take advantage of slime.
>>
>
> I don't know ELISP, and really don't feel like reading a book about it
> and Emacs hacking just to get some basic Scheme development
> functionality working.

The fundamental essence of emacs is that you may change its behavior
if you don't like it.  You can do that by modifying customization
variables, try: M-x customize-group RET scheme RET and see if there is
an option to send scheme output to the minibuffer; or by modifying the
emacs program itself, writing emacs lisp code.  If you don't have a
customization option to do what you want, and you don't want to write
emacs lisp code, then the answer is that emacs cannot do what you
want.  Perhaps you should try another IDE.  PLT-scheme comes with a
nice IDE.

-- 
__Pascal Bourguignon__


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-08-15 10:44 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-15  1:23 How to use Emacs with Scheme without tears and joint pain? fft1976
2009-08-15  2:10 ` Giorgos Keramidas
2009-08-15  2:54 ` Pascal J. Bourguignon
2009-08-15  7:36   ` fft1976
2009-08-15 10:44     ` Pascal J. Bourguignon
2009-08-15  9:00 ` Helmut Eller

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.