문제

내 기분에 따라 Lisp-1과 Lisp-2 사이를 오가는 것 같습니다.안타깝게도 명백한 이름 공간 차이를 넘어 서면 모든 종류의 재미있는 함수 이름 / 등 문제가 발생합니다.예를 들어, 오늘 밤 코드를 작성하려고 시도했지만 CL에서 전혀 작동하지 않는 (map # 'function listvar) 시도했습니다.내가지도가 아닌지도 차를 원했던 것을 기억하기 위해 조금 더 시간을 보냈습니다.물론 slime / emacs가지도 IS가 무언가로 정의 된 것을 보여줄 때 도움이되지는 않습니다. 물론 전혀 같은 기능은 아니지만

어떻게하면이 문제를 최소화 할 수 있는가?

도움이 되었습니까?

해결책

지도 는 맵카보다 더 일반적입니다. 예를 들어지도 차를 사용하지 말고 다음을 수행하십시오. 라코 디스

내 머릿속에서 계획과 CL을 분리하려면 어떻게해야합니까?나는 당신이 두 언어를 충분히 잘 알고있을 때 당신은 단지 어떤 것이 작동하는지 다른 언어가 아니라는 것을 알 것입니다.구문 상 유사성에도 불구하고 스타일 측면에서 상당히 다른 언어입니다.

다른 팁

글쎄요, 두 언어에 대한 충분한 경험을 얻으면 문제가되지 않을 것입니다 (이탈리아어와 스페인어와 같은 유사한 자연어의 경우).일반적으로 한 언어로 프로그래밍하고 가끔씩 만 다른 언어로 전환하면 안타깝게도 Common Lisp를 Scheme으로 작성하거나 그 반대로 작성해야합니다.)

도움이되는 한 가지는 다른 색상 등으로 구문 강조를 사용하여 두 언어에 대해 뚜렷한 시각적 환경을 만드는 것입니다. 그러면 최소한 Common Lisp 또는 Scheme 모드에 있는지 항상 알 수 있습니다.

구 사적 차이가 있다는 것을 확실히 알고 있지만 아직 자동으로 사용할 수있을만큼 유창하지는 않지만 현재 코드가 훨씬 더 비슷해 보입니다;-)

당신의 대답이 그럴 것이라고 생각했지만, 언제나 지름길 <_ <을 희망 할 수 있습니다.

두 언어를 똑바로 유지하는 가장 쉬운 방법은 Common Lisp에서 생각하고 코드를 작성하는 것입니다.Common Lisp 코드는 비교적 쉽게 Scheme 코드로 변환 할 수 있습니다.그러나 Scheme에서 Common Lisp로 이동하면 몇 가지 두통이 발생할 수 있습니다.Scheme에서 letrec를 사용하여 변수와 함수를 모두 저장하고 변수와 함수 네임 스페이스에 대해 각각 별도의 CL 함수로 분할해야했던 곳이 기억납니다.

실용적으로 CL 코드를 작성하는 습관을 들이지 않는데, 이로 인해 시간이 더욱 고통스러워집니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top