Domanda

Faccio la maggior parte del mio sviluppo in Common Lisp, ma ci sono alcuni momenti in cui voglio passare a Scheme (mentre leggo Lisp in Small Pieces , quando voglio giocare con le continuazioni, o quando Voglio fare alcuni script in Gauche, per esempio). In tali situazioni, la mia principale fonte di disagio è che non ho Slime (sì, potresti chiamarmi tossicodipendente).

Qual è la controparte più vicina di Scheme a Slime? In particolare, sono più interessato a:

  • Integrazione di Emacs (questo punto è ovvio;))
  • Completamento della scheda decente (idealmente, la TAB c-w-c-c dovrebbe espandersi fino alla chiamata con continuazione corrente). Potrebbe anche essere basato su una tabella di simboli (cioè non deve notare una funzione che ho definito in un let contemporaneamente).
  • Suggerimenti sull'argomento della funzione nel minibuffer (se ho digitato (map |) (la posizione del cursore è indicata da | )), vorrei vedere (elenco predicato. liste) nel minibuffer
  • Invio di moduli all'interprete
  • Integrazione con un debugger.

Ho ordinato le funzionalità in ordine decrescente.

Le implementazioni preferite del mio schema sono:

  • MzScheme
  • Ikarus
  • Gauche
  • Bigloo
  • Pollo

Sarebbe bello se funzionasse almeno con loro.

È stato utile?

Soluzione

Potresti anche considerare Scheme Complete:

http://www.emacswiki.org/cgi-bin/wiki/SchemeComplete

Fornisce sostanzialmente il completamento delle schede.

Altri suggerimenti

La directory contrib di SLIME sembra avere implementazioni SWANK per MIT Scheme e Kawa.

Geiser offre un ambiente eccellente per Scheme. L'ultima versione ora può anche interagire con Chez Scheme , Schema di Chibi , Schema di pollo così come il vecchio standby Schema MIT , oltre a Guile e Racchetta . Suggerirei installandolo tramite Melpa , in particolare per ottenere l'ultima versione che gestisce la selezione molto più ampia di REPL.

Un commentatore ha detto: " DrScheme IDE ha le associazioni dei tasti emacs " ed è un IDE molto apprezzato con molte delle funzionalità che hai elencato esplicitamente.

Inoltre, la modalità schema per Emacs fornisce alcune delle funzionalità di SLIME: il REPL integrato, la possibilità di inviare moduli a quel REPL e di caricare interi file. Per quanto ne so, non esiste un equivalente, in generale, per lo schema che hai elencato, per cose come la connessione remota a un'immagine in esecuzione (rispetto a uno schema che sostituisce un buffer Emacs) o l'integrazione del debugger.

Beh ... direi che Melma per schema è la cosa più vicina a Slime per Schema;)

Per il mio lavoro con mzscheme di solito uso cmuscheme + ciarlatano, che fornisce quasi ciò di cui ho bisogno durante lo sviluppo.

Bigloo ha una modalità ape molto potente.

E per gauche puoi usare il pacchetto GCA che fornisce il completamento dei nomi, la visualizzazione delle descrizioni delle funzioni e amp; inserimento di modelli di codice

Aggiornamento : ho pubblicato articolo sull'integrazione di Scheme + Emacs sul mio sito

Puoi usare Chicken Scheme con melma usando swank-chicken.

Suggerirei di dare un'occhiata alla modalità geiser , ma al momento supporta solo Racket e Guile che non ho " vedere nella tua lista.

Non l'ho usato, ma potresti provare Quack con MzScheme .

SLIME è piuttosto difficile da battere però. C'è molta gentilezza in atto alla fine di SWANK.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top