Domanda

Ho usato Schema PLT , ma presenta alcuni problemi. Qualcuno sa di una migliore implementazione per lavorare attraverso SICP?

È stato utile?

Soluzione

Utilizza Schema MIT .

È raccomandato dagli autori di SICP ed è usato al MIT per il corso 6.001: Struttura e interpretazione dei programmi per computer .

Altri suggerimenti

Usa Racket (precedentemente schema PLT).

L'IDE DrRacket è un ottimo punto di partenza per tutto ciò che riguarda lo Schema, incluso SICP.

Per cercare le parole chiave nella documentazione, posizionare il cursore sulla parola chiave e premere F1 . In DrRacket ora puoi vedere le immagini direttamente nel REPL (read-eval-print-loop).

Supporto SICP per DrRacket , di Neil van Dyke.

Aggiornamento: il nuovo pacchetto SICP è disponibile all'indirizzo http://pkgs.racket-lang.org / # [SICP]         Scaricalo con Package Manager (in DrRacket) o usa raco .          Manual

Aggiornamento2: anche se vuoi provare una nuova implementazione del linguaggio immagine SICP, quindi scarica SICP-pict2.rkt .

Schema MIT / GNU , assicurati di caricare la compatibilità SICP pacchetto (sì, forniscono librerie specifiche per migliorare la garanzia del funzionamento degli esercizi SICP).

Ho appena iniziato a fare SICP questa settimana.

Attualmente, MIT Scheme è stato introdotto in Ubuntu Linux (9.04 "jaunty"). Potrebbe funzionare in futuro.

DrScheme funziona e funziona bene. Puoi usare il pacchetto di soegard sopra elencato o il pacchetto di Neil Van Dyke, che si basa sul pacchetto di soegard ed è disponibile da http : //www.neilvandyke.org/sicp-plt/ . La cosa bella di questo pacchetto è che una volta installato, puoi usare la voce di menu Lingua | Scegli lingua .... per selezionare SICP.

È stato sorprendentemente fastidioso farlo su macOS. Ecco come funziona da oggi, supponendo che tu abbia Homebrew. (Potrebbe essere necessario eseguire brew update di tanto in tanto).

brew cask install racket
raco setup  # might be optional
raco pkg install sicp

Ora puoi (richiede sicp) o semplicemente eseguire

racket -l sicp --repl

Che potresti voler abbreviare in schema . In bash sarebbe

alias scheme='racket -l sicp --repl'

che puoi aggiungere al tuo ~/.bashrc

Schema PLT funziona abbastanza bene, oppure Schema MIT come suggerito da Keparo. Quali problemi stai riscontrando con esso?

Schema POLLO ha un libreria sicp che fornisce supporto per SICP. Puoi installarlo eseguendo chicken-install sicp e scrivendolo all'inizio del tuo codice sorgente: (usa sicp) .

Ora sto lavorando tramite SICP usando Chez Scheme . È un dialetto piuttosto vecchio di Scheme, quindi presumibilmente non è troppo lontano da quello in cui era scritto SICP.

Nota che la pagina del progetto Chez Scheme collega un binario e una sorgente di Windows che possono essere costruiti su piattaforme simili a Unix. Ma se sei su un Mac, probabilmente vorrai farlo

brew chezscheme
man chez

Supponendo di avere homebrew , che dovresti davvero.

Perché non lo schema MIT? Perché il front-end interattivo è Edwin, un editor che utilizza le convenzioni EMACS. (Attualmente, è una vera modalità EMACS, anche se era implementata in Scheme.) Conoscevo EMACS di base, ma le mie abilità si sono atrofizzate dal disuso, il che mi dice che imparare di nuovo questo editor non vale la pena.

Perché non DrRacket? Se avessi visto le istruzioni per la preparazione di @ frederick-squid, avrei potuto provarlo. Invece ho cercato di seguire le istruzioni ufficiali per Schema e Sicp, che sono seriamente obsolete. Quindi ho provato a far entrare l'IDE in modalità schema, che sembra essere intuitivo ma non lo è.

Troppi problemi. E non sono sicuro di voler entrare in un IDE per la progettazione di linguaggi fantasiosi, specialmente uno il cui scarso supporto di Scheme ha suscitato la domanda originale.

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