common-lisp

    1

    1답변

    common-lisp의 신속한 프로토 타이핑 목적을 위해 임의의 데이터 구조에서 객체를 쉽게 기능 - 수정하는 것이 편리 할 것입니다. 이것은 데이터 구조의 장소에서 임의의 함수를 호출하고 그 위치에있는 객체를 함수 호출의 결과로 대체하는 것과 관련이있는 것처럼 보일 것입니다. 공통 혀짤배기는 일반화 된 장소의 변경 (예를 들어, setf-second, s

    0

    2답변

    SBCL (Linux)에서 꼬리 재귀와 관련된 문제가 있습니다. (그게 무엇인지는 모르겠습니다.) 이번에는 코드를 추가하고 있습니다. (길어 보입니다. 두 개의 구조를 비교하는 'compare-pstructs'함수가 있습니다. 그러나 구조에는 구성 요소와 동일한 구조의 목록이있을 수 있습니다. 당연히 이것은 재귀적인 해결책을 요구한다. 위의 함수가 이러한

    0

    1답변

    알렉산드리아 패키지는 common-lisp 커뮤니티에서 널리 사용되는 것으로 보입니다. 그러나 찾은 유일한 설명서는 몇 가지 질문으로 이어지는 설명서의 초안 버전입니다. 1) "Conses"제목 아래에 나열된 과 같은 많은 매크로가 있습니다 하지만 일반적으로 "시퀀스"에도 적용되는 것으로 보입니다. (defparameter vec (vector 1 2 3)

    1

    2답변

    나는 왜 내가이 오류를 얻고 있는지 이해하려고 노력하고있다. 나는 사용자로부터 숫자 n을 취하는 함수를 만들고 그 번호를 기반으로 최대 다섯 개의 숫자의리스트를 만들고 싶다. 그런 다음 함수는 목록의 첫 번째 숫자를 가져와 목록의 끝으로 보냅니다. 예 것은 > (my_func 1) > (2 3 4 5 1) 이것은 내가 그러나 내가 첫 번째 요소를 보내는 방

    2

    2답변

    나는 목록을 포함하고있는 목록을 가지고 간략화 된 버전을 반환하는 것으로 가정되는 flatten이라는 함수를 작성 중이다. 내 기능을 실행하려고하면 점이있는 람다 목록은 매크로가 아니라 여기에 있습니다 : LIST "이 문제를 해결하는 방법에 대한 제안 사항은 무엇입니까? 이것은 현재 가지고있는 내용입니다. (defun flatten list (c

    1

    1답변

    는 그는 기호가 eql으로 한 단계 ... " (P138)에 비교 될 수 . 다음 두 가지 사례를 말한다 기호 비교 : (setq x 3) 3 (setq a 'x) X (setq b 'x) X (eq a b) T 그래서, 같은 기호 객체라는 X에 A와 B 지점 이후, 그들은 eq입니다 그러나. (setq a (copy-symbol 'x))

    3

    1답변

    저는 함수리스 선언에서 &rest을 볼 때 *args에있는 ruby과 비슷하다고 생각합니다. 그리고 나는 +과 똑같은 일을하기 위해 sumit 함수를 작성하기 시작했습니다. (defun sumit (&rest args) (if (null args) 0 (+ (car args) (sumit (cdr args))))) 하지만

    0

    1답변

    (defun test(n x) (let* (d (append (list n) x))) (if (= n 0) d (test (- n 1) d))) 그래서 이것은 lisp로 작성한 기본 테스트 함수입니다. 이 함수는 숫자 (n)와리스트 (x)를 취해서 n과 0 사이의 모든 숫자를 반환되는리스트에 추가합니다. 그러나, 내가 그것을

    3

    2답변

    The Common Lisp Hyperspec page for print이 언급 : 인쇄는 물체의 인쇄 된 표시가 개행 선행 및 공백 것을 제외 prin1 같다. 이 같은 일반적인 기능을 포함하는 기능에 드문 기능이 포함될 것으로 예상되지 않았기 때문에이 기능을 처음 보았습니다. 처음 사용했을 때 나를 버렸습니다. 나는 원래의 이유를 찾고있다. 나는 그것이

    0

    3답변

    나는 Lisp에서 k-d 트리를 개발 중이다. 나는 k-d 트리의 노드를 검색 할 수있는 함수를 작성하고있다. '((2 3) (5 4) (9 6) (4 7) (8 1) (7 2)) : 나는 다음과 같은 데이터로 트리를 구축 (defmethod find-node ((kdt kdtree) target &key (key #'value) (test #'equal)