Emacs+SBCL+slime을 쓰는데 C-c C-k가 제대로 안되는듯 합니다

아르아의 이미지

젠투에서 emacs, SBCL, slime을 깔았습니다
SBCL은 불안정(~x86)상태인 0.8.18을 emrge했고
emacs는 안정버전, slime은 1.0버전입니다.

slime모드 REPL버퍼에서 C-c C-k에서 .lisp파일을 불러오면
.fbsl파일이 생기는걸로 봐서 컴파일은 되는듯 한데 로드가 안되는것 같네요. 주
슬라임 메뉴얼에 C-c C-k는 slime-compile-and-load-file이라고 써있으니
로드도 자동으로 되야 할것 같은데 아닌가요?
(load "")명령어로 매번 다시 로드해주자니 불편하네요

C-x C-f로 직접 .lisp파일을 열은 다음에 C-c C-f하면
error while parsing arguments to DESTRUCTURING-BIND:
invalid number of elements in
()
to satisfy lambda list
((SWANK-BACKEND:: START . SWANK-BACKEND::END)):
exactly 1 expected, but 0 found
라고 하면서 안됩니다.

사실 slime도 emerge했는데 .emacs에
(add-to-list 'load-path "the path of your 'slime' directory")
부분에서 그 'slime'디렉토리가 뭔줄 몰라서
(/usr/share/emacs/site-lisp/slime인가 해서 해봤는데 에러나더군요)
slime은 slime홈피에서 다운받아서 제 디렉토리에 풀어서 설치했습니다.
난잡하게 설치한 셈인데 그때문일까요?
난감하네요.

정재윤의 이미지

slime설치는 간단히

(add-to-list 'load-path (expand-file-name "~/rep/slime/"))
(when (require 'slime nil t)
  (slime-setup :autodoc t))

이런 식으로 하시면 됩니다. ~/rep/slime을 적당히 slime.el등의 화일이 있는 디렉토리로 변경하세요. 어떤 lisp을 쓰고 계신가요? C-c C-k등을 할 때 slime의 상태는 어떤가요?

아르아의 이미지

slime.el같은 파일이 있는곳은
/usr/share/emacs/site-lisp/slime (emerge slime로 깔고 생긴 디렉토리)와
제가 slime을 직접 받아서 압축 푼 곳, 두군데 뿐인데요
/usr/share/emacs/site-lisp/slime의 경우 swank-loader.lisp파일의 내용이

;;; fake swank-loader.lisp file

(require :swank)

가 전부입니다. emerge slime하면 원래 그런걸까요?

C-c C-k을 하면 *inferior-lisp*버퍼에는 다음과 같이 나옵니다

This is SBCL 0.8.18, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
* STYLE-WARNING: redefining INPUT-FILES (COMPILE-OP UNIX-DSO) in DEFMETHOD
STYLE-WARNING: redefining OUTPUT-FILES (COMPILE-OP UNIX-DSO) in DEFMETHOD
STYLE-WARNING: redefining PERFORM :AFTER (COMPILE-OP UNIX-DSO) in DEFMETHOD
STYLE-WARNING: redefining OUTPUT-FILES (COMPILE-OP C-SOURCE-FILE) in DEFMETHOD
STYLE-WARNING: redefining PERFORM (COMPILE-OP C-SOURCE-FILE) in DEFMETHOD
STYLE-WARNING: redefining PERFORM (LOAD-OP C-SOURCE-FILE) in DEFMETHOD
STYLE-WARNING: redefining PERFORM (LOAD-OP UNIX-DSO) in DEFMETHOD
STYLE-WARNING: redefining PREFERRED-COMMUNICATION-STYLE NIL in DEFMETHOD
STYLE-WARNING: redefining EMACS-CONNECTED (T) in DEFMETHOD
STYLE-WARNING: redefining CALL-WITHOUT-INTERRUPTS (T) in DEFMETHOD
STYLE-WARNING: redefining LISP-IMPLEMENTATION-TYPE-NAME NIL in DEFMETHOD
STYLE-WARNING: redefining FORMAT-SLDB-CONDITION (T) in DEFMETHOD
STYLE-WARNING: redefining CONDITION-REFERENCES (T) in DEFMETHOD
STYLE-WARNING: redefining UNPROFILE-ALL NIL in DEFMETHOD
STYLE-WARNING: redefining INSPECTED-PARTS (T) in DEFMETHOD
STYLE-WARNING: redefining CALL-WITH-SYNTAX-HOOKS (T) in DEFMETHOD
STYLE-WARNING: redefining DEFAULT-READTABLE-ALIST NIL in DEFMETHOD
STYLE-WARNING: implicitly creating new generic function STREAM-READ-CHAR-NO-HANG
STYLE-WARNING:
   implicitly creating new generic function STREAM-READ-CHAR-WILL-HANG-P
WARNING: discarding unsupported DOCUMENTATION of type SYMBOL for object SYMBOL
WARNING: discarding unsupported DOCUMENTATION of type SYMBOL for object SYMBOL
WARNING: These Swank interfaces are unimplemented:
 (ALL-THREADS DISASSEMBLE-FRAME
              FIND-THREAD
              INTERRUPT-THREAD
              PROFILE-PACKAGE
              RECEIVE
              RESTART-FRAME
              SEND
              SLDB-STEP
              SPAWN
              THREAD-ID
              WHO-BINDS
              WHO-CALLS
              WHO-MACROEXPANDS
              WHO-REFERENCES
              WHO-SETS
              WHO-SPECIALIZES)

T
* ;; Swank started at port: 34160.
; Adding fd handler: 5 

34160
* ; Adding fd handler: 6 
; compiling file "/home/jihuni/from-windows/baseball.lisp" (written 08 FEB 2005 09:38:21 PM):
; recognizing DEFUN INTEGER-TO-LIST
; compiling DEFUN INTEGER-TO-LIST: 

; file: /home/jihuni/from-windows/baseball.lisp
; in: DEFUN INTEGER-TO-LIST
;     (MOD NUMBER 10)
; --> BLOCK LET IF AND IF AND IF PLUSP > 
; ==>
;   NUMBER
; 
; note: deleting unreachable code

; compiling top level form: 
; recognizing DEFUN LIST-TO-INTEGER
; compiling DEFUN LIST-TO-INTEGER: 
; compiling top level form: 
; recognizing DEFUN COMPUTE-STRIKE
; compiling DEFUN COMPUTE-STRIKE: 
; compiling top level form: 
; recognizing DEFUN COMPUTE-BALL
; compiling DEFUN COMPUTE-BALL: 
; compiling top level form: 
; recognizing DEFUN COMPUTE-STRIKE2
; compiling DEFUN COMPUTE-STRIKE2: 
; compiling top level form: 
; recognizing DEFUN COMPUTE-BALL2
; compiling DEFUN COMPUTE-BALL2: 
; compiling top level form: 
; recognizing DEFUN GET-RANDOM-NUMBER
; compiling DEFUN GET-RANDOM-NUMBER: 
; compiling top level form: 
; recognizing DEFUN GET-NUMBER
; compiling DEFUN GET-NUMBER: 
; compiling top level form: 
; recognizing DEFUN DUPLICATE?
; compiling DEFUN DUPLICATE?: 
; compiling top level form: 

; file: /home/jihuni/from-windows/baseball.lisp
; in: DEFUN FIND-BEST-GUESS
;     #'(LAMBDA (NUM SCORE)
;       (IF (OR (ZEROP BEST-SCORE) (< SCORE BEST-SCORE)) (SETF BEST-SCORE SCORE)))
; 
; caught STYLE-WARNING:
;   The variable NUM is defined but never used.

; compiling DEFUN AGENT-SMITH: 
; compiling DEFUN SCORE1: 

; file: /home/jihuni/from-windows/baseball.lisp
; in: DEFUN SCORE1
;     #'(LAMBDA (K V) (INCF S (* V V)))
; 
; caught STYLE-WARNING:
;   The variable K is defined but never used.

; compiling DEFUN SCORE2: 

; file: /home/jihuni/from-windows/baseball.lisp
; in: DEFUN SCORE2
;     #'(LAMBDA (K V) (IF (> V S) (SETF S V)))
; 
; caught STYLE-WARNING:
;   The variable K is defined but never used.

; recognizing DEFUN ONE-TEMP
; compiling DEFUN ONE-TEMP: 
; compiling top level form: 
; recognizing DEFUN PLAYER
; compiling DEFUN PLAYER: 
; compiling top level form: 
; recognizing DEFUN PLAY
; compiling DEFUN PLAY: 
; compiling top level form: 
; compilation unit finished
;   caught 3 STYLE-WARNING conditions
;   printed 1 note

; /home/jihuni/from-windows/baseball.fasl written
; compilation finished in 0:00:01

#P"/home/jihuni/from-windows/baseball.fasl"
T
NIL
* 

윗부분은 slime시작하면서 나오는 내용이고 아랫부분이 C-c C-k할때 나온 내용이에요

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.