Se prefiere el formulario (ns ...) ya que su código se leerá más fácilmente. Todas las declaraciones del espacio de nombres se recogerán en la parte superior del archivo. vea esto impuesto por el compilador en idiomas como Java. Además, el macro ns que contiene elimina la necesidad de que usted cite símbolos. Lo mismo puede decirse del uso, importación, referencia, etc.
Creo que elEl acceso directo de babaenviará el fragmento de código al servidor swank conectado y lo evaluará. Por ejemplo la forma:
(ns my.test
(:require [clojure.contrib.logging :as log])
(:import [java.io File]))
va a crear un nuevo espacio de nombres llamado My.Test que incluye la tala contrib y java.io Archivo. No cambiará el espacio de nombre de la réplica. Para hacerlo, presione C-c M-p
desde el archivo que está editando, y se le preguntará con el nombre del espacio de nombres de ese archivo para cambiar (a menos que ya se encuentre en ese espacio de nombres). Presione enter para seleccionar.C-c C-z
debe cambiar a la respuesta. Ahora, en lugar de la solicitud user=>
, debería ver my.test=>
, lo que indica que se encuentra en ese espacio de nombres.
El flujo de trabajo he puesto en marcha es compilar todo el archivo al guardarlo, usando:
(defun ed/clojure-compile-on-save (&optional args)
"Compile with slime on save"
(interactive)
(if (and (eq major-mode 'clojure-mode)
(slime-connected-p))
(slime-compile-and-load-file)))
(add-hook 'after-save-hook 'ed/clojure-compile-on-save)
De esa manera, cuando cada vez que guarda el archivo, que se compila y se carga por el servidor ostentoso, y Utilizo el repl para experimentos en el espacio de nombres en el que estoy trabajando.
Su último punto no está nada claro para mí. ¿Estás golpeando ',' dentro del archivo en el que estás trabajando? ¿No sería simplemente insertar una coma y una 'i'? – ftravers
Cuando el cursor está en el búfer Slime REPL, antes de escribir algo más en el indicador, escriba un ','. Esto hará que el texto 'Command:' aparezca en el mini-buffer. Ahora inmediatamente escriba 'i', y verá que el texto' Package: 'aparece en el mini-buffer. Ahora comience a escribir el nombre de su paquete, usando el tab-completion como desee, hasta que el nombre completo de su espacio de nombres esté en el mini-buffer. Presione 'ENTER' y su Slime REPL ahora estará en su espacio de nombres de destino. – semperos